24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

Нужны ли программисту математика и алгоритмы?

 Аноним 28/02/24 Срд 16:03:15 #1 №3067087 
1654226255607.png
1572432473247.png
1646387743097.png
1637389848101.jpg
Привет, Двач–Кодач!

Одни утверждают, что математика нахуй не нужна (разве что арифметика, чтобы сдачу в магазине считать), а до алгоритмов можно и самостоятельно додуматься.

Другие же утверждают, что надо, как минимум, уметь в интегральное исчисление и числовые ряды (особенно если инженерно-техническое симуляции, робототехника, либо бигдата, аль вовсе разработка ИИ), а знания алгоритмов и паттернов программирования прилично экономят время, чтобы самостоятельно не изобретать велосипед. И вообще, не читал SICP и TAOCP — не программист.

Кто прав? Первые спокойно говнокодят на 1С, получая зарплату выше среднего по городу; а вторые либо работают на оборонных заводах за 30–40 тысяч (алсо, многие люди с высшим образованием уходят в простые работяги, где обезьянка за станком с ЧПУ, которой просто показали какие кнопки тыкать и как загружать заготовку, может получать больше сотни тысяч в месяц), либо получают километровую зарплату в яндексах-хуяндекс, но попасть туда очень тяжело из-за огромного конкурса на место.

И в чём прикол всякие курсов погроммирования? Мне они кажутся скамом, ибо, когда учился в колледже, давали лишь самые верхи, а на двухмесячных курсах, наверное, всё должно быть ещё хуже. Алсо, старый препод в колледже (один из двух, кто действительно шарил) говорил, что вообще похуй какой язык программирования, если вы знаете алгоритмы, архитектуру ОС и т.д., также если читать про реализацию сложных вещей, то начинает быть охуевание с того, как же много матана всякого.

Правда, я сам отработал лишь менее недели эникеем в больнице, ибо испугался бабки-вахтёрши, что не пустила меня без бахил, а из универа меня пидорнули.

И какую бы книжку посоветовали дурачку, чтобы подтянуть математику? Вроде "Высшая математика для начинающих физиков и техников" Зельдовича и Яглома годная, но инфа в ней — первый курс универа, только чуть более подробно разжёвано. Интереса делать игры, в отличие от большинства вканутов в кодинг, делать нет — гамедаве меня крайне разочаровал, ибо en masse он представляет собой лишь мобильные параши, где рекламы больше, чем геймплея; а потому хочется делать что-то стоящее, а не тупую работу, которую даже ценят меньше, чем монотонное прикручивание одних и тех де гаек на конвейере.

P.S.

Некоторые говорят, что и английский язык нахой не нужон — по популярным технологиям инфу быстро переводят, а если что-то редкое, то и не нужно.
Аноним 28/02/24 Срд 16:29:21 #2 №3067117 
>>3067087 (OP)
Паттерны не математика. Устоявшиеся шаблонные практики. Без их знания сложнее разобраться в чужом коде, если он писал с их учетом. Как в шахматах. Большинство мыслит ходами, а гроссмейсетры партиями. Партии в этом случае паттерны.
Аноним 28/02/24 Срд 16:43:25 #3 №3067128 
Да математика не нужна, ты если шарагу не кончал и кодишь, то ты уже шаришь в булевой математике или как она там, просто не осознаешь этого. Лучше спросить, какая база нужна для прогера. Какие алгоритмы знать? Что почитать про устройство железа? Что почитать про паттерны проектирования или еще чего?
sage[mailto:sage] Аноним 28/02/24 Срд 21:13:29 #4 №3067445 
>>3067087 (OP)
>а до алгоритмов можно и самостоятельно додуматься.

На этом месте взрожал. Ну-ну Дохуя алгоритмов придумал? Хотя бы один?
Аноним 28/02/24 Срд 21:21:07 #5 №3067449 
>>3067128
Мне кажется, когда человек без знания математики говорит, что она нахуй не нужна, то это то же самое, как если бы неумеющий готовить говорил, что есть дошик и "Вкус очка" — ведь он не умеет, а потому и не находит этому применения в жизни.
Аноним 28/02/24 Срд 21:21:43 #6 №3067450 
>>3067445
В общем смысле слова любая прога будет алгоритмом.
sage[mailto:sage] Аноним 28/02/24 Срд 21:38:20 #7 №3067460 
>>3067087 (OP)
Не нужны.
/thread
Аноним 28/02/24 Срд 22:21:20 #8 №3067504 
>>3067087 (OP)
> до алгоритмов можно и самостоятельно додуматься
Можно. Как и до патернов, как и либы свои писать. Только когда ты что-то придумаешь, ты въебешь тонны ресурсов чтобы понять его область применимости. Большая часть эмпирических алгоритмов на графах очевидна, но у нас есть источники в которых описаны их плюсы, минусы и подводные камни. Если двигаешь кнопки, то хер забей на это всё, и учись двигать и красить кнопки быстро. Если нужно оптимальное решение в нагруженной среде, то потрать хоть пару часиков на поиск существующих алгоритмов тут бы неплохо уметь отображать свою задачу на задачу потока/графа/операцию над множествами, но наверное я много прошу .
Аноним 29/02/24 Чтв 10:39:10 #9 №3067814 
>>3067504
> тут бы неплохо уметь отображать свою задачу на задачу потока/графа/операцию над множествами
У-у-у, математика. Вы бы ещё ряды Фурье написали — половина двачеров о таком ни разу не слышала, наверное.
sage[mailto:sage] Аноним 29/02/24 Чтв 15:37:40 #10 №3068177 
не нужны
/thread
Аноним 29/02/24 Чтв 19:55:18 #11 №3068523 
Пару раз приходилось реализовывать алгоритмы, которых не было в универе. Знание математики и опыт помогли понять, как это работает и как это нормально реализовать.

Понимание сложности алгоритмов необходимо, чтобы не написать случайно ёбу, которая будет годами считаться.
Аноним 01/03/24 Птн 02:59:40 #12 №3068941 
>>3067087 (OP)
Конечно нужны. Вдруг тебя айтиборода пидор пригласит, а тебе повыебываться нечем будет?
Аноним 01/03/24 Птн 05:49:21 #13 №3068994 
image.png
image.png
Вот вам алгос с яндекса, хули.
Решите за O(1)
Когда сумма левой части больше правой, то к правую часть просто увеличить надо
А вот когда левая часть меньше правой, то мозгоебка начинается.
Решение просто добавлять + 1 к числу, пока левая и правая суммы не станут равны не считается, сложность будет O(n), думайте
Аноним 01/03/24 Птн 05:56:32 #14 №3069000 
>>3068994
Подумал и отправил резюме в сбер. Там и зп больше, и мозг не ебут дебильными задачками.
Аноним 08/03/24 Птн 18:01:51 #15 №3077800 
>>3068994
O(1) от чего? От длины числа?
Аноним 08/03/24 Птн 22:24:20 #16 №3078041 
>>3068994
Ну вроде как
Аноним 08/03/24 Птн 22:25:01 #17 №3078043 
>>3077800
-> >>3077800
Аноним 08/03/24 Птн 22:25:26 #18 №3078044 
>>3077800
-> >>3078041
Аноним 09/03/24 Суб 00:06:18 #19 №3078141 
>>3068994
По факту если меньше именно левая то проще провести полный перебор. Проверка на счастливый это О(1) всгда, сложность О(n) при N меньше миллиона(а это 100%) это вообще ахуено, тем более что О(n) это худший вариант.

Сосите жопу короче. Задача решается полным перебором за наносекунду.
Аноним 13/03/24 Срд 15:29:16 #20 №3084643 
>>3068994
Элементарно решается.
есть число - a1a2a3a4a5a6, где цифры это позиция.
П.1
Если a1+a2+a3 > a4+a5+a6 то считаем a1+a2+a3 - a4+a5+a6 = R
потом делаем по очереди проверки
9-a6 - R< 0
9-a6 + 9 - а5 - R < 0
9-a6 + 9 - а5 + 9 - а4 - R < 0
когда на каком-то шаге и получили тру мы получили искомое число
П.2
Если a1+a2+a3 < a4+a5+a6
то проверяем a5 < 9 && a1+a2+a3 > a4+a5+1+0 то есть обнуляем младший из разрядов, если успех, то мы свели задачу к П.1
если не успех, то проверяем a4< 9 && a1+a2+a3 > a4+0+0 обнуляем второй разряд
если успех то мы свели задачу к П.1
Если не успех то получаем a1+a2+a3+1 > 0 обнулили всё правое число и опять свели задчу к П.1
Я дольше описывал чем придумывал
Аноним 13/03/24 Срд 15:30:12 #21 №3084647 
>>3084643
ну и проебал +1 в a4< 9 && a1+a2+a3 > a4+1+0+0
Аноним 13/03/24 Срд 15:58:45 #22 №3084687 
>>3067087 (OP)
Алгоритмы и математика нужна программистам, но далеко не всем. Как не всем программистам нужен SQL или RegExp. Изучаешь их по мере необходимости.
А вот в паттернах приходится разбираться практически всем. Но и это не первичная задача. Это проблема комплексности и совместной работы, с этой проблемой сталкиваешься не сразу.
Аноним 13/03/24 Срд 16:18:39 #23 №3084704 
>>3084643
А это O(1)?
Аноним 13/03/24 Срд 16:25:05 #24 №3084713 
Для этой задачи да. Для более общей, в которой в числе m содержится 2n цифр, это работает за log(m)самого числа или O(n)количества цифр, в этом случае простой перебор работает за O(m).
Аноним 13/03/24 Срд 16:26:09 #25 №3084716 
>>3084713
O(log(m)) конечно же
быстрофикс
Аноним 16/03/24 Суб 04:13:13 #26 №3087784 
>>3084713
Но почему? O(1) - это константное время, а в твоём решении есть различные случаи, когда выполняется разное количество действий, пусть их и не много.
Аноним 16/03/24 Суб 06:09:09 #27 №3087792 
>>3067087 (OP)
>Нужны ли программисту математика и алгоритмы?

Нужны. А ещё логика и физика к примеру. И информатика офк.
Аноним 16/03/24 Суб 13:41:36 #28 №3088118 
>>3087792
А ещё химия и биология.
Аноним 16/03/24 Суб 14:03:06 #29 №3088146 
>>3088118
А так же литература, латынь и греческий.
Аноним 16/03/24 Суб 20:27:20 #30 №3088618 
>>3088146
Вот это я соснул.
Аноним 16/03/24 Суб 20:39:55 #31 №3088627 
>>3067087 (OP)
Про математику не скажу.
Но вот относительно посыла про деньги - не понимаю.
Типа. Ну как. Смотри. Мне нравится, когда мой код работает быстро. Ну, просто типа, я рос во времена XP, я знаю как бесит, когда у тебя игрулька загружается 20 минут, что можно сходить чай попить и серию мультека посмотреть. Или когда у тебя интерфейс лагает, или когда у тебя что-то зависло и "НЕ ОТВЕЧАЕТ". И все это вот. Это пиздец как бесило тогда. До того, что сейчас - я на малейшие задержки триггерюсь как ебанутый.
Ну так вот. Из-за этого, я в своем коде - стремлюсь к тому, чтобы все было МАКСИМАЛЬНО быстро. Весь перформанс, который можно выжать. Мне и так платят неплохо, но тут - я просто чувствую, что КАЙФ. Типа, блядь. Раньше обрабатывалось 10 запросов в секунду, теперь - 10к. Круто? Да пиздец как круто. А кто скажет что-то другое - пусть идет нахуй.
И да, адептам: Ряяя, преждевременные оптимизации... Ряяя, нада красивый код. Идите нахуй. Моя часть кода будет такой быстрой, какой я смогу ее сделать. А вы оправдывайте свою лоускильность тем, что заботитесь о качестве кода, который через полгода оказывается говном и его выкидывают нахуй.
Короче. Такие вот дела.
Аноним 16/03/24 Суб 21:18:03 #32 №3088694 
Ну мне нужна математика, например. Банально синусы-косинусы, чтобы всякие круглые штуки в гуи рисовать. Непонятно, как вообще некоторые избегают её.
Аноним 16/03/24 Суб 21:25:15 #33 №3088711 
>>3088627
>Да пиздец как круто. А кто скажет что-то другое - пусть идет нахуй.
Нахуй идёшь только ты тратя деньги бизнеса на какую-то хуйню вместо работы.
Тебя кто-то просил делать быстро?
Аноним 16/03/24 Суб 21:39:28 #34 №3088746 
>>3088711
Почему меня должен интересовать бизнес? Я не совладелец, не партнер и прочее. Я пришел получить деньги и весело провести время.
Аноним 16/03/24 Суб 22:46:55 #35 №3088839 
>>3088711
Про какой бизнес вы вообще всё время говорите? Вы думаете банкам и крупным компаниям не похуй, куда сливать бабло? Оно всё равно бесконечное и можно платить за перекладывание жсонов по 300к. В данном случае перформанс кода - не самое худшее вложение.
Аноним 22/03/24 Птн 18:38:37 #36 №3096212 
>>3088627
Пока ты не пишешь на ассемблере, вся твоя оптимизация это фуфло полное.
Аноним 25/03/24 Пнд 15:42:42 #37 №3099222 
>>3096212
Бред, оптимизирующие компиляторы уделают рукописный ассмблер.
comments powered by Disqus

Отзывы и предложения