Комментарии 378
- Хоботов, это упадничество! (с)
Зато много людей потратилось на курсы. Рекламные компании были грамотно и синхронно проведены. В принципе, похоже на МММ.
В принципе похоже на золотую лихорадку, только прийдя на участок, оказывается надо брать лопату и копать отсюда и до заката. В профессии 20+ лет, и как в первый день я ухожу домой с мыслями, что мне надо делать завтра. Может просто везёт с проектами и людьми
ухожу домой с мыслями, что мне надо делать завтра
Я ещё и во сне иногда продолжаю работать, и это ужасно, когда целая неделя сливается в один большой день. (ʘ‿ʘ)
Тоже самое. Всегда есть, хотя бы примерный, план на завтрашний день. Да и в обычной жизни всё равно чтото планируешь на условное завтра....
А в чём, собственно, проблема? Мне нравится под конец рабочего дня ставить цели на следующий
Зачем я Вас прочитал и полез в календврь ! Я ж был уверен, что сегодня пятница :(
Думал добить проблемку, что-бы на след.неделю не оставалась. А воно оно что оказывается :(
Жаль, что потом, когда просыпаешься, то все закоммиченное так и остаётся во сне, не переносится в реальный мир...
А я ждал твою версию цезаря :)
Я был слишком молод и глуп, и не знал как работает игрострой ;)
не знал как работает игрострой
А разверни мысль, пожалуйста ?
Полагаю имелись в виду кранчи
в какойто момент разработка игры стала занимать все доступное время, что не очень понравилось моей семье. А разборки с правообладателем, и последующая блокировка аккаунта в стиме, и попытки закрыть репо на гитхабе, окончательно похоронила проект. А стим особо не разбирается, прилетел страйк - акк банят. Доступ к репо и аккаунт я восстановил тольк спустя 5 лет. Ремейки игр, особенно без благославления, находятся в такой gray legal zone, что особо не знаешь откуда может прилететь. Меня спасло, что все это было оперсорс и бесплатно, отделался некоторыми расходами дензнаков.
В принципе так и сейчас происходит, и будет происходить снова и снова, до скончания веков.
А по «модным и денежным» профессиям, их сколько появлялось, и как туда народ тушкой и чучелом лез и ломился. На вскидку вспомню: бухгалтера, юристы, менеджеры, переводчики, модели, «путаны и братки» и так далее. Волна хайпа «вот тут настоящие бабки!» потом от этих специалистов не протолкнуться, куда не плюнь. А потом аллес, «сливай воду туши свет». «Кончились котлетки, без тебя обходимся»
Таки на лопатах заработали о ту пору больше, чем на золоте.
Вот что мне напомнили эти курсы ушлых инфоцыган, спасибо за подсказку.
В профессии 20+ лет и ухожу домой как в первый день с мыслями "вот это и это не знаю - подтянуть", "вот тут нужно курсы послушать", тут "коллеги ржут - ты откуда свалился это же все знают", а тут "блин какая классная вещь оказывается, надо почитать вон те две книжки на английском и потренироваться в облаке, где бы только времени найти на все".
От себя давнишного отличаюсь пониманием, что "не все так просто" и "Как так ты постоянно учишься? ты же уже не в универе? Ну ведь я в айти - тут не будешь бежать каждый день - моментально отстанешь"
Да, курсы вам могут помочь двигаться в нужном направлении. Но камон, это
не начальная и средняя школа, где вас в любом случае научат и выпустят
во взрослую жизнь! Кроме вас никто не будет учиться. И умение учиться и
самосовершенствоваться важнее десятка корочек о повышении квалификации
или курсов от учебных центров.Если вы ожидает что вас научат в рабочее и учебное время, то вы глубоко
заблуждаетесь. Этот пункт как и ваша мотивация - воспринимайте как
аксиому!
Вопрос какие курсы и мотивации обучающегося. Никто не отвечает за результаты вашей учебы! Некоторым людям так проще снять ответственность с себя, ну кто-то возможно верит в магические "корочки"...
Так это всегда так
Тоже самое с курсами по всяким методологиям и т.д.
Заработок точно у тех, кто ведет курсы :)
до сих пор считаю деньги потраченные на курс лучшей инвестицией в своей жизни
Типичное нытьё зумера-неосилятора. Аж захотелось поработать.
Ну, не совсем верно) Неосилятор , изначально, это человек неосвоивший линукс. То же самое как вантузятник. А линукс - моя любимая операционка. Но, я рад что вдохновил вас на работу.
А мне кофе попить и вытряхнуть вчерашние деньги из мешка в мусорку(не успел потратить), чтобы было куда сегодняшнюю ЗП складывать
Что можно заработать в ИТ
![](https://habrastorage.org/getpro/habr/upload_files/112/f81/e5c/112f81e5c81088ad978caba570723b39.png)
Мне даже снятся иногда ужасные слова "сервак упал, цех стоит".
А такого сна, где метеорит по серверной прилетел не было?:-)
есть гораздо более страшный вид кошмара: "сейчас мы это импортозаместим отечественным аналогом, не имеющим аналогов". Уж лучше бы датацентр сгорел, компетенции у сотрудников останутся. А вот когда целый департамент замедляется до уровня интернов и джунов, так как не понимает, как бороться с неведомой зверушкой из реестра "правильного" ПО, вот это действительно выстрел в ногу.
Так осталось ещё минимум два рабочих сервера. В ближайший рабочий день починим.
Нет резервных серверов, не догадались собрать геораспределенный отказоустойчивый кластер? Работа в IT - не ваше.
Нет резервных серверов, не догадались собрать геораспределенный отказоустойчивый кластер?
Покажите заводскому айти мастер-класс, как собрать геораспределенный отказоустойчивый кластер, когда у вас бюджет на 1 (один) сильно бушный сервер=)
Бекапы никто не отменял и они, кстати, тоже должны храниться не в серверной....
А один сервер быстро превращается в кластер после простоя завода вызванного первым выгаранием сервера.
А один сервер быстро превращается в кластер после простоя завода вызванного первым выгаранием сервера
или меняется на точно такое же б/у-шное барахло, потому что сам цех функционирует с массой нарушений, по сравнению с которыми сервер - сущий пустяк.
Бесспорно, где-то оно и так. Но если там в цепочке руководства есть кто-то что считает деньги, точнее потери...
У меня на старой работе не сервер, всего-лишь свитч выгорел. И всего один цех встал на 4 часа... Но потери исчислялись десятками тысяч в неприлично зеленых бумажках... и все это из за отсутствия резервного девайса стоимостью порядка 300 тех же бумажек...
Как справедливо заметил Areso мне , как новичку, пока довольно сложно собрать из одного сервера два, да еще чтобы они находились в разных местах) Клиенты порой экономят на всем, вплоть до выделения денег на создание системы бэкапов.
Принимая во внимание популярную оценку стоимости решения, которая говорит, что прибавление одной 9ки приводит к добавлению одного 0 к сумме контракта, хочется заметить, что рекомендации как и чего построить без знания бюджета выглядят не очень корректно
а что, надо было, чтобы еще цех упал?
у нас веселее - "...забыли оплатить провайдеру, цех стоит..." ДЪ!
А если серьезно, то у каждого человека есть свое призвание. Я так думаю. Ведь в любой профессии можно найти свой "ужас". Археологи - зубной щеткой копают канавы в пустыне по +45 без удобств. Автослесари часами сидят в позе "Зю", иногда их в этой позе из под машины к мануальщику и отвозят. Проктологи .... ну Вы поняли :-)
Только удовольствие от профессии может перевесить ее недостатки.
Только удовольствие от профессии может перевесить ее недостатки.
К сожалению, иногда этого мало. Часто еще нужен вдумчивый выбор места работы. И иногда выбираешь зарплату поменьше, но команду поадекватнее или условия труда поприличнее.
А если серьезно, то у каждого человека есть свое призвание.
Я бы сказал немного мягче: разные люди имеют разные наклонности, поэтому у всех есть свои, разные, роды деятельности, в которых успех наиболее вероятен, а сопутствующие неудобства или даже риски такой деятельности субъективно наименее значимы.
Ведь в любой профессии можно найти свой "ужас". Археологи - зубной щеткой копают канавы в пустыне по +45 без удобств. Автослесари часами сидят в позе "Зю", иногда их в этой позе из под машины к мануальщику и отвозят. Проктологи .... ну Вы поняли :-)
Поэтому все не могут и не будут писать код. И даже без разницы, что за писательство кода обычно платят сильно выше средней температуры по больнице. И даже без разницы, что кто-то из тех кто мог бы писать код, на самом деле имеет достаточную для такого писательства квалификацию и в принципе справился бы очень сильно получше вот этих вот, которые после курсов. Просто не его или не ее эта работа, потому что хочется заниматься чем-то другим. При этом это что-то другое, нередко, еще и неплохо получается.
Только удовольствие от профессии может перевесить ее недостатки.
Глобально да.
Я бы не сбрасывал со счетов те нередкие исключения, когда приходится работать где получилось устроиться только потому, что другой работы пока нет. Но они, эти исключения, лишь подтверждают выше процитированное - при первой же возможности человек сбежит с такой работы на ту, которую любит, даже возможно потерев в доходах или в каких-то других преимуществах ради заниматься тем, что субъективно нравится.
Если деятельность имеет субъективный смысл для человека, он будет переносить трудности намного легче.
Когда нет смысла в деятельности, она даже без затруднений может быть опостылевшей и невыносимой.
Ох уж этот субъективный смысл... Так и встают перед глазами образы. Например, невротическая личность, дофаминовый наркоман, который во всем ищет источник возбуждения, с высокой степенью открытости к новому. Для него субъективный смысл работы - песочница, где можно пробовать новую хрень, не особенно заботясь о ее практической полезности и целесообразности, главное - чтобы возбуждение от новизны было посильнее. А в полном соответствии с определением состояния наркотической зависимости, негативные последствия его совершенно не интересуют, пока удается получать и позитивные.
Или похожий образ, только вместо просто бредовых идей, возбуждение наступает у такого от решения проблем. Потому он берет под козырек каждый раз, когда руководство ставит невозможную задачу (возможную с гигантской растратой денег и средств) и бросается в бой.
Вывести таких "героев" на чистую воду бывает очень непросто, а испортить жизнь всему отделу (или компании, если они умудрились выбиться на высокие должности своим наркоманским энтузиазмом) они могут очень быстро и запросто.
Это какие-то ваши личные заморочки и агрессия не ясна. Вы осуждаете или отрицаете важность субъективного отношения к делу?
У кого-то есть, а у кого-то нет.
Касательно "ужасов" профессии. Конечно, в любой они есть. И ко всему можно привыкнуть. И основные проблемы плюс-минус одни и те же (ответственность, количество требуемых навыков и знаний, продажа компетенций и результатов). Вот только в IT есть реально хорошие зп, и таких вакансий очень много, насколько мне известно. Поэтому всегда стоит попробовать и приложить усилия. Лучше ненавидеть работу за 150к+, нежели за 40к
Согласен с автором в целом (хотя я вроде как миллениал). Думаю даже, что он многие моменты он смягчил, в жизни всё немного жестче, конечно в зависимости от амбиций. К сожалению, современная разработка на аутсорсе по agile заточена как раз на таких курсистов. Да, возможно после курсов кто-то попадёт в крупную компанию, как им обещают, где у ведущих программистов зарплаты 6-значные, где самые современные технологии, где им пообещают карьерный рост. Только вот они сами не ведущие, а начинающие, и обещать не значит жениться. Им просто никто и не даст (никогда) сделать больше, чем требуется в джире - просто фикси чужой код и ни в чём себе не отказывай. Шаг вправо-влево - расстрел, ты всего лишь винтик в системе. Уточню, никто в таких компаниях не заинтересован в развитии твоих навыков специалиста (даже если это декларируется), да им легче взять готового, чем тебя учить. Придётся учиться самостоятельно, много и постоянно...
Если это действительно твоё, то ты всё примешь и преодолеешь. Только потом, если разделить свою зарплату на кол-во часов, которое ты тратишь на этот труд (который не легче физического, подтверждаю), то обнаружишь, что получаешь обычную медианную зарплату за свою работу по 10-12 часов в день, а может и меньше.
Очень точное замечание. Не будете против, если использую( разумеется упомянув) когда буду дополнять статью?
Уточню, никто в таких компаниях не заинтересован в развитии твоих навыков специалиста (даже если это декларируется), да им легче взять готового, чем тебя учить.
У меня совершенно другой опыт работы в крупных компаниях. Там как раз вечно не хватает толковых людей знакомых с внутренней кухней. Так что если хочешь расти — тебе подсунут кучу всего для учебы, кое-где даже университетские курсы оплатят если надо.
Понятно, что взамен придется впахивать за себя и за себя будущего, потому что повышают, обычно, когда ты уже все для следующей должности умеешь и делаешь
Безусловно, все мы хотим вкусно есть,сладко спать, ходить по абонементу в фитнес-зал, лечить зубы по ДМС и зарабатывать легкие деньги.
Не хочу по абонементу в фитнес-зал (не по абонементу тоже не хочу) и лечить зубы по ДМС (в смысле вообще лечить зубы не хочу), хотя могу, и иногда даже делаю (зубы), поскольку надо.
К слову, надо понимать, что вам понадобится английский язык.
Весь вопрос, в каком объеме. Для чтения документации требуется одно. А поговорить с носителем языка - совсем другое.
Некоторым даже вполне хватает английского коллеги (своего ноль, а знание операторов, которые есть английские слова, это таки не знание английского языка ни на каком уровне).
То есть вы будете работать когда угодно, но, когда это угодно работе. То есть, и в выходной, и ночью, потому как вы на удаленке. А существует такое страшное слово как дедлайн, и не менее страшное словосочетание сервак упал. Оба они, как ни странно, означают почти одно и то же: обозначают незапланированный, порой очень болезненный досуг.
Сильно зависит от места работы.
Тот же сервак - это часто вполне плановые ночные смены дежурных специалистов. Соответственно, внезапно ночью не вызовут. А где-то оно "работает само", что означает возможность внезапного вызова в любое время суток.
Дедлайн - это всего лишь сроки. Если успеваешь (а в нормальном месте лишней работы не навалят), то выходишь к срокам с готовым результатом.
Знаю я таких "знающих операторы без английского"
С одной стороны так то оно так, где используются и по какому случаю - запомнить можно, другое дело, что когда надо воплотить сложную бизнес-логику, операторы уже не складываются в красивые и элегантные конструкции, от чего получаем переусложнение, ошибки, баги, кривой код и работы больше в 3 раза чем было необходимо изначально)
И вроде весь фуршет за счет работодателя, только оказывается, что проработав с этими операторами уже по году-два дальше уровня джуна двинуться ну никак не получается)
дальше уровня джуна двинуться ну никак не получается
Вы, возможно, удивитесь, но некоторых это очень даже устраивает. И работу себе как-то находят, а потом на этой работе долго и бланополучно (с их точки зрения) существуют.
Я начинающий в IT. И мне нравится эта область. Английский со словарем только. Естественно приходится прояснять значение слов, используемых в качестве операторов. Но только их. Поясните, пожалуйста, на более конкретном примере, что имеете ввиду "когда надо воплотить сложную бизнес-логику, операторы уже не складываются в красивые и элегантные конструкции "? Чтобы воплотить сложную бизнес-логику и сложить операторы в красивые и элегантные конструкции необходимо знать английский чтобы читать статьи на английском, по теме моих задач. Это имеете ввиду?
про когда угодно, это конечно весело. если че-то поломалось, то звонят тебе - решать же надо. так с 22 до 4 утра сидели втроём, чтобы я потом заметил, что вместо true должен стоять false. коллектив тогда был хороший, поэтому посмеялись и разошлись, но сам случай...
А что собственно мешает? Я с относительно скромной для сеньера зп 4к долларов без проблем жил пол года на Бали и работал с пляжа когда было желание.
работал с пляжа
Солнце светит, на мониторе не видно ничего. Бумажку с записями на стол положил - ветром унесло. Насекомые, птицы, люди, жарко. Увлекся в работу - пиво нагрелось. Увлекся в пиво - фигню сделал, нужно разбираться. Зачем так жить работать? ;)
Я так работал пару недель, но не на пляже, а в парке. Нужен ноут без активного охлаждения, потому как обычный быстро засоряется грязью. А ноут без активного охлаждения сразу уменьшает количество задач, которые он может осилить
Я работаю один на двух мониторах и желал бы иметь третий! У меня клавиатура специальная, половинки на ширине плеч, прошивку сам писал! Столешница под неё "эргономичная", сам лобзиком выпиливал! Ковёр для мыши на пол-стола! А в парке на ноуте без активного охлаждения пусть Айседора Дункан работает.
Я работаю один на двух мониторах и желал бы иметь третий!
У меня три 27-дюймовых и я хотел бы четвертый (а лучше вообще пять):
IDEA с кодом backend'а,
Visual Studio Code с кодом frontend'а,
Браузер и консоль браузера,
окно с task tracker'ом / документацией,
окно с Google / StackOverflow.
Все это добро на трех мониках не умещается.
Вот и интересно, какую работу работают с пляжа.
До нельзя автоматизированную
Это не работа, а использование своих предыдущих наработок. Нажать кнопку build и идти пить пиво можно и из телефона ;) Но чинить упавший билд на пляже я бы не хотел.
я работаю ту где надо иногда советом разработчикам помогать и за логами следить. Удается спокойно посерфить
Работал с двумя мониторами в разных вариациях и отказался в пользу одного, потому что все равно ты смотришь в один момент времени в один монитор - если нужно переключиться, то альт-таб. И ещё шея не отваливается через час, потому что смотришь все время в бок.
Правильный выбор мониторов, их размеры, и правильное расположение мониторов на рабочем столе - ключ к решению проблем с шеей. При этом не стоит забывать делать перерывы и разрядку для шеи
Во-первых, моники нужно располагать так, чтоб когда сидишь с прямой спиной и смотришь вперед, взгляд упирался бы в перхнюю треть моника.
Во-вторых, когда нужно долго смотреть на другой моник, просто поворачиваетесь в кресле.
Основная работа на основном мониторе, который стоит по центру. Второй монитор висит сбоку, на нём всякие е-мейлы, редмайны, корпоративные вики, документация, файловый менеджер, и пр. — на что не надо постоянно смотреть, но куда надо то и дело поглядывать: глазом стрельнуть туда-сюда всяко быстрее, чем альт-таб жать. Если начинается "шея", это значит, что основная работа находится на неосновном мониторе, её надо перенести на центральный монитор. Но дело вкуса, конечно: я как-то, десять с лишним лет назад, предложил одному коллеге забрать один из моих мониторов — у меня было три, из которых один я как-то мало использовал, а у коллеги один, и тот маленький, ну и меня чо-то совесть начала мучить — а тот, такой: "Ты чо, ты чо, я специально выбрал такой маленький монитор, чтобы мониторная радиация меньше воздействовала!"
один монитор - программист
два монитора - хороший программист
три монитора - супер программист
четыре монитора - охранник
(с) не мой, мем где-то видел в картинке
Все это добро на трех мониках не умещается.
Есть такая штука как alt-tab /s
Да вообще. Сейчас в голове не укладывается, как мне в 2010-х удавалось в трех окнах World of Warcraft, приютившихся на единственном мониторе с разрешением 1280 x 1024, параллельно в двух рейдах бегать. А сейчас копипастить из одного окна в другое, переключаясь через Alt+Tab, трудно. Эх, молодость...
Alt+tab задействует все окна на экране. Пока последовательно обойдешь...
Удобнее упомянутые ниже рабочие пространства (они же - виртуальные рабочие столы). Переключается сразу весь контекст, причем на каждое пространство может быть завязано свое сочетание клавиш.
Но два-три монитора (естественно, на большом столе) тоже имеют свои плюсы. Если на дополнительном мониторе происходят изменения, краем глаза их видишь и можешь оперативно среагировать. Ну и мышом с мрнитора на монитор что'-то перетягивать намного удобнее.
Еще есть виртуальные столы, удобная штука, позволяет разделить задачи и сохранить фокус при переключении между столами, т.к. расположение окон будет помогать. При этом не будет захламляться ворохом окон пространство.
вместо n+1 мониторов использую функционал воркспейсов, который сейчас доступен в каждой десктопной операционке. есть пять таких воркфлоу предположим как описанные, между ними переключаешься свайпом на тачпаде или super+pgup/down или super+scroll wheel в случае гнома (убунты итд).
клавиатура специальная... прошивку сам писал! Столешница ... сам лобзиком выпиливал
Пиши статью (серию) про своё рабочее место :)
можно узнать, кем вы конкретно работали?
С каких пор гуманитарий это не тот кто знает 5 языков или может часами аргументированно рассуждать Гегель или Кант , а тот кто в формальную логику не смог?
"Раньше гуманитарием считался тот, кто стихи писал, языки знал, а теперь — тот, кто таблицу умножения забыл."
не могу выучить английский, у меня гумонетарный склад ума
Тот же вопрос. С чего бы вдруг гуманитарий стал про чувства и отсутствие математики? Социология это гуманитарная наука, но в ней никуда без статистики, философия требует логически непротиворечивых рассуждений и так далее. Человека, который опережается больше на ощущения, чем на логику с математикой корректнее назвать артистом (то есть человеком склонным к искусству), а не гуманитарием.
Людям свойственно путать наличие гуманитарного образования и отсутствие технического.
Вот прямо в точку. Даже друг на это чуть не попался, вдруг работа крутого и дорого риэлтора коммерческой недвиги в наше время стало малоактуальна. Хотя 10-15 лет назад я его тащил в ИТ, он ржал говорил что за неделю барменом в дорогом баре Москвы больше меня зарабатывает. Хорошо ко мне успел обратится до этих всех курсов. Слава богу передумал. А были и такие, госпади-и-и-и, продавец, женщина без высшего образования 45+, месяц пыталась у меня получить одобрение своей идеи, что как только она он забашляет 3 своих зарплаты с 2-х работ, то через полгода будет деньги лопатой грести. Я ей каждый раз объяснял какие есть пути в ИТ, подводные камни и на что можно рассчитывать в первое время, а она мне не верила, наверное думала я ей врал, чтобы она у меня работу не отняла. Чем закончилось - не знаю, но там фанатичная вера в глазах просто плескалась.
"в статье на английском, написанной индусом"
Оптимистичненько. Уже пару раз сталкивался с тем, что ответ на нужный мне вопрос был только на китайском. Благо ключевые слова таки на английском и оно все таки гуглится хоть как-то.
ML и нейросетки? Приветствую тебя, брат по деятельности!
Китайские братья сделали мощный практический рывок в этих областях за последние 4 года, факт!
А чего все так не любят курсы? Я входил в IT год, изучая обрывочные поверхностные видео на Youtube, да почитывая разные форумы. Были бы деньги, с удовольствием заказал бы себе курсы. Иногда по 2 недели тупил на одном месте просто потому, что не было никого, кто мог бы подсказать и решить именно мою проблему.
Курсы порой стоят слишком дорого и оценить их качество практически невозможно. Имхо намного лучший вариант - разбираться самому, в работе именно этот навык пригодится и никогда не устареет. А если хочется быстрее выучиться, то проще и дешевле найти себе ментора и общаться с ним только на нужные тебе темы.
Сам никогда не разберёшься по той простой причине что находясь на нулевой отметке, ты понятия не имеешь с чем именно тебе надо разбираться и в какой последовательности.
Курс даёт программу обучения, теорию и практику в готовом виде. На этом каркасе уже можно строить своё обучение и достигать цели в обозримые сроки. И это вовсе не отменяет необходимости разбираться самому, причём чем дальше тем больше.
Если перед тобой стоит задача то именно сам и разберёшься. В противном случае ты амеба в вакууме без банального школьного образования, мозгов и собственного вектора интереса. Да курсы могут дать в этом направлении буст, а могут и не дать, особенно если ты специалист своего направления и тебе стоит только положить на уже приобретённые навыки новую информацию - о чем собственно и писал предыдущий комментатор.
Какая задача-то? Задача выучить программирование? Задача научиться делать сайты? Так это не задача. Точнее задача, которую невозможно решить. Примерно как задача "получить среднее образование ребёнку, который умеет читать букварь". Сколько процентов детей с этим справится?
Нужна декомпозиция большой задачи на ряд мелких, решение их, потом объединение полученных знаний для решения большой задачи. И нужны эффективные методики, которые позволят взять человека и провести его по этому пути. И слепое тыкание в интернеты это самая плохая методика, которую только можно придумать.
Книги и то лучше, там хотя бы есть последовательное изложение материала от простого к сложному. Но в книгах нет огромного массива задач, которые учащийся должен решить самостоятельно, а на курсах есть. У книг нет сообщества, в котором тебе помогут преодолеть сложности, а на курсах есть.
Поэтому если ты не учился на ИТ в ВУЗе, но хочешь освоить профессию самостоятельно - курсы это твой путь. А книги являются хорошим дополнением к курсам, позволяя "выровнять" знания за счёт более глубокой теоретической базы.
Вот не надо только с одного на другое перескакивать. ИТ в России строилось и начиналось с самоучек, без всякого интернету, и 99% учителей у учеников консультировались и до сих пор консультируются. А тут вдруг бац "Сам никогда не разберёшься по той простой причине что находясь на нулевой отметке, ты понятия не имеешь с чем именно тебе надо разбираться и в какой последовательности." - здрасти, приехали.
Ну да, а в 50-е люди строили (буквально) компьютеры, понятия не имея как они должны выглядеть, нам сейчас на это ориентироваться?
ИТ в России строилось и начиналось с самоучек
Ну да, как в 90-е белые сахибы привезли в наши палестины компьютер ИБМ, так всё и началось! А до того у нас тут только медведы со счётами, ни компов, ни специалистов не было...
Но дело даже не в этом. Сколько было тех людей, которые "стояли у истоков" в 90-е? Если под истоками понимать не всякую промку (а её не было - счёты и всё), то несколько сотен? Тысяч? Сейчас (вернём им молодость) они справятся с потоком задач?
Я говорю не о кучке энтузиастов, а о массовой профессии, типа бухгалтера. Можно ли освоить профессию самостоятельно? Ну конечно можно. Сколько на выходе будет специалистов? Ноль целых, хрен десятых. Поэтому когда специалистов надо много - их надо учить.
Ну да, а в 50-е люди строили (буквально) компьютеры, понятия не имея как они должны выглядеть, нам сейчас на это ориентироваться?
У вас уже есть методичка как еще не изобретенное должно выглядеть и работать? Ванга составила? План на 20000 лет вперед? Вы вот ляпните, а потом начинаете воду в ступе толочь - брызг много толку мало. Методички для ваших курсов на деревьях от этого расти не станут, хоть на что не ориентируйся. На работе от IT специалиста требуется инновационность. Именно что с ноля придумывать решения. А курсы подготовят вам рабов на галеры, а не тех кто в разработку требуется. И вакансии сейчас не закрываются не от того что курсов и спецов с них недостаточно, а наоборот из-за этого - головой своей думать перестали на курсах. Все на блюдечке с голубой каемочкой. А кто дальше разрабатывать будет? Новые завозы из-за бугра? А тем кто привозит? Инопланетяне? Вы свою веревочку до конца размотайте, тогда и глупые вопросы задавать перестанете.
Я говорю не о кучке энтузиастов, а о массовой профессии, типа бухгалтера.
Почему бы вам для начала не начать говорить о том о чем говориться, а не уводить разговор в сторону. А того же самого бухгалтера, на месте работы работать научат, как испокон веков было. И курсы тут и все образование в целом не больше чем отросток этого самого обучения на рабочем месте. И как только это обучение от практики и непосредственных требований производства оторвалось, толку от него стало не то что ноль, а вообще отрицательно. Так что вам тут не просто ноль целых, хрен десятых, а целая орава "специалистов" затягивающих IT в болото троллинга. Научились на сях под windows только WinMain писать, и всех, кто по привычки 20 лет main пишет, в неучи записывают. А то что компилятор может программу с любой функции стартануть, на курсах не преподавали. И таких примеров тьма, где толпа с курсов на форумах, вполне грамотных в своей сфере людей опускает, наглостью и непроходимой тупостью. И эта тьма, на каждом собеседовании невпопад только "учи матчасть" с галерки кричать может - на большее мозгов не хватает, не заложили, зато экспресс курсы с готовым портфолио.
Я как-то беседовал на вечеринке с одним организатором таких курсов программирования (известных). Он честно сказал, что курсы лишь триггер для того, чтобы люди задумались над освоением нового вектора в жизни, а они, организаторы, на этом заработали. И для этого им, организаторам инфоцыганства, большие профессионалы не нужны, а лишь те, кто хорошо объясняет простые вещи новичкам. В реальности глупо предполагать, что кто-то гарантирует трудоустройство человеку, хотя в рекламе именно так: менторы, практические занятия, 24/7 связь, портфолио джуна (или тестера) на гитхаб, работа в крупных IT компаниях по окончанию. Всегда можно аргументировать тысячу раз, почему работа все же не нашла ученика после курсов. Винить инфоцыган не в чем, никто никого не обязывает идти к ним. Тем не менее мое личное отношение после той беседы сложилось негативное из-за их прозрачной цели: набрать платную аудиторию, а далее "как попрет". Честнее было бы сразу объяснить, что обучение это 30%, а самостоятельная работа минимум 70! Но тогда и бизнес не построишь.
Вцелом, люди делятся на 2 типа: кому-то нужен учитель в дополнение к безудержному самообразованию, поиску стараниям, развитию. А кто-то нанимает английского лорда для изучения языка, но кроме посещений занятий и понтов, учить слова, смотреть ютуб, писать и читать вне курсов не собирается. Первым курсы помогут, вторые нормально проведут время.
глупо предполагать, что кто-то гарантирует трудоустройство человеку
Там где учился я никто не гарантировал трудоустройство. Напротив - неоднократно упоминалось что такой гарантии дать не может никто. Нанимают фирмы исходя из своих соображений и управлять этим невозможно. А без этого - какие могут быть гарантии?
мое личное отношение после той беседы сложилось негативное из-за их прозрачной цели: набрать платную аудиторию
Так должно сложиться негативное отношение к любому сайту: VK, YouTube, далее везде, ведь их цель - набрать и удерживать аудиторию как можно дольше. Т.е. они заинтересованы в том чтобы люди бездельничали, а не занимались чем-то полезным. А к игрострою - так просто ненависть должна быть! :)
При чем тут ненависть к глобальным вещам - игрострою и соцсетям?
Мы же обсуждаем услугу, узкий частный случай - целенаправленный обучающий платный контент, его рекламу и реальность. И оцениваем качество услуги. Мне повезло поговорить с исполнителем, который для себя выделил цель не научить, а заманить и дать основы. Но делают они это путем рекламных обещаний и липовых отзывов. Вообщем-то ничего нового. Но у любого разумного человека данная риторика вызовет негатив.
Именно за то что вы приобрели навык самостоятельного вдумчивого решения проблем, с которыми вам больше никто не поможет, а выпускники курсов - нет. Им "ментора" подавай
этот навык у меня давно есть. школу и институт никто не отменял
Был коллега на текущей работе. Уволили. Он вот как раз из тех, кому «требовался» ментор. Чтобы тот за него думал, а он сам только код писал там где скажут. При этом мнил себя минимум мидлом, хотя из-за отсутствия скилла по поиску решения мидлом его сложно назвать
Это он декларировал, что ему требовался ментор, а на деле ему нужен был человек, который бы брал на себя ответственность за решения.
Это не значит, что менторство порочная практика.
Это он декларировал, что ему требовался ментор, а на деле ему нужен был человек, который бы брал на себя ответственность за решения.
Там прямым текстом звучало, что он не хочет разбираться в коде. Он готов брать на себя ответственность, но когда есть четкая документация, готовые решения и так далее. А у нас из-за специфики работы и большого легаси документации на многие решения в коде не было. Нормальной практикой являлось самостоятельно разобраться в коде, поправить его и по возможности написать документацию. Последнее редко делалось из-за высокой нагрузки. Сейчас подходы изменились (изменились они еще во время работы описываемого мной коллеги), и написание документации входит в задачу, как отдельный этап, и время выполнение задачи рассчитывается с учётом необходимого времени на документацию.
Это не значит, что менторство порочная практика.
А я нигде это не декларирую. Может недопонимание. Я слово «требовался» специально взял в кавычки. Менторство это хорошо, но ведь ментор - не нянька. Ментор советами помогает, а не за подопечного работу выполняет
Передача непосредственного опыта работы от опытного человека к ученику — эффективное средство, а еще этот способ уходят корнями в историю человечества как вида.
По-моему это лучший способ обучиться чему-то.
Я программист на C++. Проходил курсы уже после того, как получил базу самостоятельно, изучая язык по мануалам из интернета. Проходил курс для получения сертификатов, так как тогда мне казалось, что они на что-то влияют. И могу сказать, что платные курсы не стоят того, чтобы за них платить. Но это узнаётся только уже после того, как за них заплачено и они пройдены. Сейчас такая ситуация, что вся важная информация находится в интернете в полном объёме. Нужно лишь научиться её искать и «впитывать», о чём вы писали уже. Курсы очень часто поверхностны, даже не смотря на то, что объём их большой. Объём обычно обусловлен тем, что затрагивают много тем, чтобы красиво представить потенциальному покупателю курсов список тем затрагиваемых курсом. А ведь многие новички даже не знают, что многие темы из таких курсов сами по себе легко тянут на отдельные объёмные курсы, в которых можно закапываться годами. Я видел курсы по C++ (важно, не для игровых разработчиков), где помимо стандартных тем про структуры и алгоритмы, затрагивали программирование под Unreal Engine. Unreal Engine сам по себе очень большой и сложный. Тут новичку бы сначала нормально разобраться с основами, а уже потом лезть в смежные области, где C++ применяется не стандартно. Для меня лично затрагивание игрового движка в купе всех остальных тем для разработки на C++ выглядит именно как попытка накрутить объем курса. Потому как знаком с игровыми движками и знаю, что для того, чтобы прийти в геймдев на C++ позицию надо отдельно копать область игровой разработки, так как там много своих тонкостей и нюансов.
Простите за такой комментарий. Но вы в своём комментарии вы пишите правильный тезис, что важна помощь более опытного специалиста из вне и практика, но для этого не нужны курсы. Помощь можно теперь получить даже здесь на Хабре. Это я к тому, что теперь это не проблема. А курсы в большей части инфоциганство, а не реальная помощь
Я когда-то проходил стажировку в финтехе Тинькофф, и могу сказать что там самый крутой подход - там начитывали лекцию (как в универе), рассказывали об основных возможностях и давали задачу на выполнение, ты делаешь - ищешь решения, разбираешься, тебя ревьюрят после сдачи задачи. И все бесплатно. И даже сертификат выдали :)
самый крутой подход
Тинькофф этим не уникален. Так много, где учат. Я сам не в курсе, так как там не был, но читал о Школе 21. Тоже самое в обычном университете практикуется на очном обучении, только обычно технологии старее, преподаватели не всегда достаточно компетентны, и срок обучения, конечно - годы. Но это уже детали.
Сама идея практики через решения конкретной задачи - это правильный ход. Я, когда сел плотно изучать C++, для себя поставил задачу написать приложение для распознавания лиц в видео. Just for fun. Без какой-либо коммерческой выгоды по итогу. Начал самостоятельно выстраивать план разработки. Познакомился с OpenCV, dlib, OpenGL. Немного Python задел. Cmake и git узнал для себя. То есть получил знания для формирования стека технологий для себя. Но такой метод не всем подходит. И не всегда будут такие же результаты. Потому что по опыту знаю, что, к примеру, есть среди моих знакомых, которые изучая OpenCV отказывались работать с OpenGL для реализации более гибкого и контролируемого отображения результата работы библиотеки OpenCV, и ругали саму библиотеку за то, что она не такая какая им нужна. То есть им не хотелось усложнять себе жизнь
"где C++ применяется не стандартно"
А как это - как можно нестандартно применить С++? (Я без всякой иронии, просто очень интересно стало, что вы имеете в ввиду).
Если не программировали для Unreal Engine, то советую просто посмотреть на то, как там это делается.
Под «стандартностью» я понимаю идиоматическое использование языка. Сейчас для С++ это плотное использование стандартной библиотеки. В разработке игр же обычно используется подход по названием «C с классами», то есть «выкидывается» стандартная библиотека и начинается велосипедостроение на голом C++. А голый C++ это уже не так весело
Спасибо! Понятно! Так а с чем это связано - велосипед ездит таки быстрее? Мне казалось, что стандартные библиотеки оптимизированы дальше некуда.
Да, оптимизированы. Но в частных случаях "общей" оптимизации может быть недостаточно. Например, Вам конкретно, на определённом участке, важна скорость и вы готовы пожертвовать памятью. Или требования по памяти у Вас жёсткие и скорость не важна.
Уже выше ответили. И я дополню, что в определенный период стандартная библиотека была большой в плане размеров. И тащить её всю не было смысла. Реализация строк некоторыми программистами считается странной. Часто используемый sdt::vector
в разных реализациях несколько отличается, где-то аллокация нового размера памяти двукратная, где-то только в полтора раза
За 11 лет работы QA Automation, университетская математика (и все сопутствующее) понадобилось ровно 0 раз. В тестируемом коде её тоже в явном виде не было. Мб пару раз самые азы комбинаторики пригодились.
Я видел соседние проекты, где математика была нужна, но в это погружены процентов 5 коллег. Все остальные крутятся вокруг этого алгоритмического ядра - куча транспортов, фронтендов, поставщиков данных, инфраструктурных штук, в которых есть свои сложности, но с математикой они не связаны.
Это не значит, что не надо учить. Для мозгов оно действительно полезно. Мой комментарий для тех, кому нравится IT, есть желание стать Dev/QA/SRE, но математика совсем никак не даётся и вы не уверены стоит ли сюда нырять. Стоит.
Естественно с поправкой на то, что отрасль сейчас не лучшие времена переживает. Но, скорее всего, через пару лет это изменится.
есть желание стать Dev/QA/SRE, но математика совсем никак не даётся
Если математика не дается - боюсь что с dev тоже будут сложности.
На самом деле тут может быть 2 ситуации: человек, в силу определенных причин, в молодом возрасте не связал свой путь с математикой/физикой и поэтому получил не техническое образование, хотя склонности к точным наукам имеются, и ситуация, когда математика и подобные ей дисциплины всегда давались туго. В таком случае да, сложности определенно будут.
у меня точно такаяже ситуация
Вообще тут судя по всему несколько неверно делают выводы те кто считает что чтобы чтото делать надо непременно пройти какието курсы чтото выучить и освоить
Математика в данном случае, учит абстрактному мышлению и многие пройдя этот путь считают что именно она им дала возможность быть программистами
однако, imho, математика тут не причина, а один из инструментов… также умение абстрактно мыслить оно не обязательно выученное, я был троечником в школе, а в институте (который бросил), именно на уроках вышмата понял что у меня производительности головы не хватает чтобы её тянуть, хотя математика мне оочень нравилась особенно в сочетании с физикой… но я откровенно не тянул эти всякие "ну очевидно что ответ такой ...(и преподаватель пишет результат вычислений который занимает — пять раз доску исписать) — вот мне это до сих пор не очевидно"
ну и мне это никогда, ни-ког-да, не мешало на работе
может конечно я в какихто вычислениях или работами с графикой (низкоуровневой) не смогу работать… но я там и не работаю
Тут такое дело, не часто, да, но требуется навык математики или работы с алгоритмами, и требуется обязательно в какой-то важнейшей фиче. И вот во всей большой команде один такой, кто узнаёт в задаче какой-нибудь конечный автомат, а поддерживать и развивать потом не може никто. И это прямо очень грустно.
А ещё к моменту, когда ты, как лид осознал проблему, уже вложена туча энергии в развитие такого чудо-айтишника, и вроде бы хорошо и перспектива, а по факту - только ключи подавать (анекдот про сантехника и ученика - https://www.anekdot.ru/id/-20819015).
В итоге, принимая таких спецов в команду, лид должен как-то управлять риском невозможности развивать проект.
Изменится как? Конкуренция продолжает расти, уже сейчас если нет коммерческого опыта, вас возьмут только если закончили магистратуру, плюс курсы, плюс несколько разработанных вами проектов. Если сейчас на вакансию 10-50 человек, то через пару лет это будет не менее тысячи человек на вакансию. И да, на удалёнке, если человек из глубинки РФ, конкуренция сильнее в десятки раз, и если человек не из мск или спб, не имеет магистратуры, с детства не горит программированием и ему больше 25 лет - нет смысла соваться даже, даже думать об этом
Я частично обесценю ваш комментарий. Я ушел в IT полноценно, когда мне было 28, до этого я занимался компьютерами, а разработкой только баловался. Последнюю работу программистом на C++ я получил, не имея на руках диплома о высшем образовании. Здесь в комментариях писал, что ВУЗ закончил в этом году.
Это я к тому, что таким как я, судя по вашему комментарию, вход закрыт, но это не так. Работу искать сложнее, это я подтверждаю. И не скажу, что много зарабатываю относительно «рынка». Но относительно моего региона, где я работаю, я получаю хорошую зарплату. И, собственно, саму работу я в итоге нашел
На самом деле это не аргумент (хотя, человеку добившегося однозначный риспект). Например, моя личная статистика, говорит, что кандидаты и в дальнейшем сотрудники с ВУЗом - это больший плюс для команды, чем такой же без ВУЗа.
sarcasmOn Моя личная статистика говорит, что белые цисгендерные мужчины, кандидаты, в дальнейшем сотрудники, большой плюс для команды, чем такие-же, не белые, не цисгендерные и не мужчины sarcasmOff
Вот немного статистики:
https://insights.stackoverflow.com/survey/2020#developer-profile-educational-attainment-all-respondents
75% имеют высшее образование
Представьте себе что мы набираем кандидатов и я делаю выборку из 100% а Вы из 75%...
В том т дело, что вижу как раз всех, хотя хотелось бы только звёзд и не думая о ВУЗах и прочих курсах.
И я не к тому, что ребята не могут, точно могут, на 100℅ уверен, что могут. Но для меня, как лида, брать с рынка без ВУЗа - это намного больший риск завалить проект, чем в противном случае. Ну, а риск - такая штука, иногда можно, а иногда хочется поменьше. Кто без греха ?♂️
Ну вот я и встретил одного из тех, кто отказывал мне из-за отсутствия высшего образования, когда я искал работу. А вы встретили того, кто без высшего (хотя учился на тот момент) в 35 нашел менял работу в IT.
Не аргумент это только для тех кто сам себе поставил рамки. Но я без работы не остался, так как есть другие люди, и другие мнения
Лол. Пришёл в 28 лет. Без IT образования.
На первой правда испыталку не прошёл, но сейчас успешно работаю)
Т.е если вы по жизни гуманитарий и вам ближе чувства, а не трезвый расчет — вам не нужно в айти
Я "по жизни" гуманитарий с высшим гуманитарным образованием, что не мешает мне работать в IT-индустрии порядка 25 лет. Хорошо, что мне никто не сказал, что мне сюда "не нужно".
Здравствуйте! На самом деле, у меня должна была быть более обширная статья. Но, так получилось что пришлось максимально ее ужать. Мне очень интересно узнать вашу историю - возможно, ( с вашего разрешения) я приму ее во внимание и перепишу статью.
Вообще всё это деление на "гуманитариев" и "технарев" - от лукавого. Как мемная шутейка из 2007го - да, куча была смищных демотиваторов и цитат на башорге. Но всерьез говорить об этом как о чем-то реальном - такое себе. Тимлид - он кто? Гуманитарий - менеджер, или технарь? Математическая лингвистика - гуманитарная или техническая?
Вот тут довольно душную ветку вел на эту тему. @Forang777 в ваш огород это . Статью не читал, но если цитата - не шутка юмора для смехохучек - то нинада так. У всех есть чувства, и все умеют в трезвый расчет. Это не значит - что каждый алкаш - становится гуманитарием. Как и то, что все технари - бесчувственные роботы.
Прошу прощения. Не хотел никого задевать. Честно, судя по комментариям статья получилась никакой. Я оставил экспрессию ( за счет чего собственно статью и прочитали) но кпд ее ,действительно оказалось низким. То, что я хотел сказать оказалось нераскрытым. По настоящему дельного ничего не сказал.
В ближайшее время хочу написать работу над ошибками, в которой учту комментарии прочитавших, попытаюсь придать статье ценность и прикрутить хоть какие-то советы и выводы исходя из которых человек действительно сможет вынести что-то хорошее.
Прочитал ветку. Учитывая какой вы таки душный :-) - буду рад увидеть ваш комментарий под моей следующей статьей.Veritas vitae est viaticum carissimum.
Про математику. Мне она в айти не пригодилась ни разу. В электронике - да. В айти - нет. Вспоминается математик, которого притянули за exit node. Вот как ему эта математика помогла?
Не, по моему убеждению в айти нужна исключительно логика и здравый смысл. Все ли юзеры всяких ваших keras и pytorch понимают тензоры?
Все ли юзеры всяких ваших keras и pytorch понимают тензоры?
К сожалению, это не та область, где можно собрать что-то своё без опоры на научные работы, так что, хочешь - не хочешь, а придётся минимально читать их и понимать математику, стоящую за используемыми алгоритмами. Лично для меня требует определённых усилий продираться через математику, видимо, не хватает той базы, что я смог осилить когда-то в универе. Остаётся только завидовать тем, кому это даётся естественно.
Мне вот пригождается каждый день. Вообще конечно айти большое, можно найти области без математики, но часто на позиции где требуется знания математики и алгоритмов гораздо меньше конкуренции и соответственно выше зп (ну и они обычно интереснее, лично для меня, но тут уже кому что)
Про математику. Мне она в айти не пригодилась ни разу.
![](https://habrastorage.org/getpro/habr/upload_files/aba/f95/2bc/abaf952bc3c90638caf15fc96d529b2a.jpg)
как тут не вспомнить классику
Если вы способны в математической формуле увидеть характерные для этих преобразований паттерны - наверное, и с программным кодом разобраться сможете.
Ну как пример вот в принципе не очень сложная техника - GTAO (отсюда https://iryoku.com/downloads/Practical-Realtime-Strategies-for-Accurate-Indirect-Occlusion.pdf )
Немного математики
![](https://habrastorage.org/getpro/habr/upload_files/a66/4c7/1a5/a664c71a574309e6e1f53149ffe2b211.png)
Возможно пригодилась, просто ты этого не заметил :) Просто применял очевидные для тебя алгоритмы/подходы/шаблоны, забыв что когда-то тебя этому учили, а ты сам прилагал усилия чтобы это понять и натренировать :)
Попробуйте запилить что-то связанное с физикой. Обратный маятник. Или двойной обратный маятник, если это слишком просто ;)
А если в процессе подбора коеффициентов что то рванет, в следующем релизе можно поправить ;)
Вы в 3D движке математику не нашли? :)
https://iryoku.com/downloads/Practical-Realtime-Strategies-for-Accurate-Indirect-Occlusion.pdf
https://seblagarde.files.wordpress.com/2015/07/course_notes_moving_frostbite_to_pbr_v32.pdf
И так далее и тому подобное, фактически весь сигграф и половина GDC (и это даже не затрагивая тему физики). Вам там будет и матан, и дифуры, и численные методы.
Я так понимаю пустили луч, отразили, попали в зеленый свет, смешали цвет шарика с цветом света и готово? В общем то очень очень простой рейстрейсер который по качеству картинки уступит даже обычному растерайзеру написать действительно не сложно и даже отражения там будут интереснее, но сейчас это уже далеко не уровень современного рендера. Вы можете почитать то, что я скинул ссылками и там будет сразу понятно что определенный уровень владения математикой все-таки нужен. То есть 99% позиций в рендере требуют таки неплохой математики. Если интересно куда рейтрейсинг пришел то вам сюда https://pbrt.org/ (спойлер: сама книга >1k страниц и там всяких интегралов и прочих радостей жизни хватает). Подсмотреть и списать формулы где-то конечно можно, но это не очень профессиональный уровень, так не понимая как эти формулы получились и почему ничего грамотно не подправить, не понять что ошибка/опечатка и так далее. :)
Ну я в принципе не спорю с тем что 99.9% программистов математика типа матана не нужна и никогда нужна не будет. Я скорее спорю с утверждением "в айти математика не нужна", в айти хватает областей где она как раз очень даже нужна, в остальных в принципе какой булевой логики, немного теории алгоритмов и структур данных и здравого смысла хватит за глаза :) Зато в тех областях где нужна, зачастую гораздо меньше конкуренция, как следствие выше зп и, лично для меня, они интереснее :)
Зато в тех областях где нужна, зачастую гораздо меньше конкуренция, как следствие выше зп и, лично для меня, они интереснее :)
и выгорание за пару лет в комплекте ))) У меня знакомый занимался разработкой аля 3d max только для станков с чпу. Вот там - математика с математикой и погоняет математикой. И помню он рассказывал, что за год работы просто как выжатый лимон. Так что на любителя
Если это не ваше, вы всю жизнь будете ненавидеть корпорации, придумавшие чипировать картриджи для принтеров.
Буду честен, процитированное не понял. У меня есть несколько предположений, но возможно ни одно из них не является хотя бы приблизительно верным.
Если я разрабатываю, произвожу или продаю "чипы" для перезаправки картриджей, то я не ненавижу корпорации, которые придумали чипирование картриджей - я на них зарабатываю.
Если я занимаюсь перезаправкой картриджей (это уже АйТи или еще нет?), то у меня возникает полюс одна технологическая операция за отдельную плату, то есть в этом случае я тоже зарабатываю на чипировании картриджей.
Если я "корпоративный" пользователь принтеров с чипированными картриджами, то у меня объективно растут издержки, но это настолько малозначимые суммы на фоне, например, счетов за электроэнергию, что я вообще не понял, о чем вы сейчас спросили.
И только если я SOHO пользователь принтера, мне теперь стало немного дороже заправлять картриджи. Не то, чтобы это вызывало прямо таки ненависть, но что это что-то противоположное одобрению - тут уж точно. То есть я не могу просто купить принтер - мне нужно сначала разобраться, какой принтер можно перепрошить для обхода проверки "чипов", а какой если и нельзя, то к которому надежно есть сменные "чипы", заменяемые при каждой дозаправке.
А вообще было бы неплохо, чтобы такую практику прижали законодательно - под эгидой борьбы с электронным и прочим мусором, причем это был бы не популизм, а объективно полезное действие, поскольку картридж обычно переживает много дозаправок, а значит в пропорциональное количество раз снижается количество выброшенных еще исправных картриджей.
Еще раз для законотворцев простыми словами: если картридж удается дозаправить десять раз, то количество выброшенных и засоряющих планету картриджей уменьшится в десять раз. Если картридж удается дозаправить двадцать раз, то количество дополнительного мусора уменьшится в те же двадцать раз.
Anyone?
Для законотворцев это пустой звук. Чемодан денег гораздо весомее и производителю выгоднее. Вот придумайте бескартриджный принтер, куда надо только порошок досыпать или чернил доливать, раскрутите продажи - вот тогда они все сдохнут.
Здравствуйте! Возьмем работу простого администратора. Огромная часть работы будет связана с канцелярией т.е по умолчанию каждый человек ( даже уборщица) должен спокойно и без препон распечатать документ. А то что все экономят объяснять, наверное, не стоит. И получается что денег на новое нет. И говорит начальство : А зачем? вот же старое есть! Или вот я принес из дому. Пусть не от этого принтера( а может не от принтера) но принес же! Ты давай там поколдуй ( вам же за это платят) пусть старое станет новым и заработает!
И остается админ один на один с техникой,которая не хочет работать.
Насчет
"Если я занимаюсь перезаправкой картриджей (это уже АйТи или еще нет?),
то у меня возникает полюс одна технологическая операция за отдельную
плату, то есть в этом случае я тоже зарабатываю на чипировании
картриджей."
Вы серьезно? В большинстве организаций вы по умолчанию и швец, и жнец и на трубе игрец. И никто тебе не будет доплачивать. Ни за что.
Поэтому для простого администратора перезаправляемые картриджи - зло. Работы больше, оплата та же. А чипированные картриджи - то что нужно. Новый установил, старый выкинул.
Осторожно предположу, что в условном энтерпрайзе чипированным картриджам если не обрадовались, то уж едва ли огорчились. Собственно, ваш камент приблизительно об этом же. А что в молодых, динамично развивающихся компаниях, условный сисадмин работает за еду двадцать семь часов в сутки четыреста двадцать дней в году, то это частная проблема самого сисадмина, не желающего или по каким-то причинам не могущего сменить место работы на адекватное.
Я бы предпочёл если бы граждане собственники бизнеса встали на свои законные места в пищевой цепочке. А то зачастую знаний не сильно больше, чем у других, а гонору.... :)
товарищи "сеньеры" с непомерным ЧСВ встанут на свои законные места в пищевой цепочке
Вроде, об этом лет 10-15 говорят, но, в результате, пока западные зарплаты только растут (по сравнению с медианными), а российские идут следом.
О, а вот и заказчик всего этого подъехали, главной целью которых наплодить побольше спецов и снизить зп, капиталисты короче?.
Тоже перешел из прагматичных соображений, но из разработки электроники.
В разработке железа ошибки дорогие, процессы медленные:
- ошибся, спалил плату, покупай компоненты, перепаивай, тестриуй
А в программировании: ошибся, запустил дебаггер, отловил багу, победа.
Но это решение из 1992. :)
Ого, это что же получается, в IT не только шарить надо, так ещё и работать придется, а не только зарплату получать? Ну уж нет, тогда это не подходит
Математика не нужна
Как уже много лет "в IT" и собрав так сказать статистику могу ответить следующее.
Во первых нужно сначала уточнить что подразумевается под "математикой"? Потому как сама она тоже состоит из десятков разделов. Так вот под ней я буду иметь ввиду всякие там косинусы, синусы и прочие чисто математические абстракции которые тянут за собой целый пласт всяких теорем, которые тянут за собой опять же всякие формулы. Это математические уравнения на которые если смотрит обычный человек, то он выпадает в прострацию.
А теперь про программирование. Программы состоят из функций, процедур, методов — суть одна.
Современные программы на 99,9 состоят из достаточно простых функций. Но количество их в 1 программе может достигать сотен, тысяч, миллионов. Огромное количество взаимодействующих друг с другом функций.
И вся сложность — это как раз написать (подключить из библиотеки) эти тысячи функций и соединить их воедино что бы они не глючили между собой. А это сложно. Архисложно. Когда работают параллельные потоки. Когда функции вызывают сами себя (рекурсия). Когда функции пользуются одной памятью, и начинается то утечка, то одна функция рандомно портит память другой. Баги можно искать годы, и часто они остаются навсегда. Ну и архитектура. Связь всех функций — это архитектура программы. И сделать её правильно тоже архисложная задача. Обычно архитектура допиливается годами. И никогда не достигает совершенства. Всегда есть что улучшать.
Как видите математика тут не нужна.
Однако существует ряд задач, алгоритм которой умещается в 1 функцию. Как правило это алгоритм получения минимально конкретного результата максимально эффективно (быстро и не жрало памяти). И уже этот алгоритм можно реализовать с помощью математики. Например алгоритм шифрование на эллиптических кривых. На которых работает современный интернет (Это шифроканал в TLS).
Большинство пользователей за десятки лет в IT подобное не пишут. Они просто берут готовые функции из библиотеки. Собственно специализированных алгоритмов — единицы, по сравнению с миллионами обычных программ.
Поэтому могу смело говорить что для современного IT — математика не нужна.
И да. И в том и другом случае надо иметь аналитический склад ума, это как бы по умолчанию. Потому как удержать в голове десятки тысяч взаимодействующих функций между собой — обычно нормальный человек на такое не способен. По этому IT-шники и получают тысячи долларов за свою работу.
Подводя итог хотел бы добавить. Программа эта про время и состояния. Это про мегабайты информации и как эта информация будет меняться с каждым тиком процессора, проходя через тысячи функций.
Математика это про числа. Могу ошибаться, не математик, но вроде в математике нету времени, т.е. там не будет зависеть результат на выходе в формуле от времени. И да я не имею ввиду когда время — это переменная в формуле. Математика это конечный автомат. Но даже в ПЛИС на высоких частотах начинается гонка сигналов и время начинает вмешиваться в казалось бы чисто математические функции.
Программа это про взаимодействие между частями.
Математика это нахождение и использование особенностей в числах. В законах нашей реальности. Пример — площадь круга.
Можно поделить круг мелкой сеткой. Посчитать площадь ячейки сетки и посчитать количество ячеек. Это по "программистки"
А можно применить формулу п*r2
И да математика часто бессильна. Например задача трёх тел
Математически не решается.
Но вот программированием пожалуйста. Нарезай время как можно меньше. Рассчитывай кванты изменения положения для всех тел. Далее процедуру повторяем с новыми данными по положению. Как видим — время непосредственный участник в процессе программирования.
Конечно со временем (опять будь оно не ладно) накапливается неточность. Но на то они и программы что бы глючить ))))
Математически не решается.
Но решается применением методов другого раздела математики.
Задача трёх тел решается, а то, что ее решение не такое как хотелось бы, это не проблема математики, а проблема хотелок.
Да, задача относится к области нелинейной динамики, т.е. ничтожно малое изменение начальных условий ведёт к существенному изменению конечного состояния, но это не значит, что задача не решается. Она решается, просто ее решение не такое, как у задач линейной динамики.
Отвечу вам и geher.
Нету формулы которая дала бы точный ответ. Вот и всё. В противовес другим математическим формулам которые давали бы точный ответ, и не важно сколько знаков после запятой.
И вообще я привёл только для примера как наверно наиболее известную нерешаемую задачу.
А то что приблизительно решается — так и тот программный способ с аппроксимацией времени тоже даёт приблизительный результат.
Я лишь показал чем с моей точки зрения отличается математика от программирования.
Программирование от математики отличается только автоматизацией.
А вот возьмем например численные методы (раздел математики), например вам по работе надо взять аналитически не берущийся интеграл, вы решаете что можно же взять и маааленькими частями посчитать по кусочкам, берете какой метод численного решения, интегрируете, программируете, получаете ответ. Это вот программирование или математика?
Думаю этот вопрос не имеет смысла. Т.к. для его ответа нужно устанавливать какую то черту, до — программирование. После — математика. Опять же если эта не черта а широкая область, то в этой области это будет какая то химера — матепрограммировани или программатика ))
Шутка.
Получается что это чистая субективщина.
Но опять же изначально вопрос стоял — нужна ли математика для современного программиста. И на этот вопрос может ответить только опыт. Статистика.
Моя статистика мне показывает что я не помню когда я использовал что то из высшей математики в проектах. Я постоянно встречаю такое мнение.
Но проекты от этого не перестают быть сложными. Их сложность в абстракциях. Тысячи функций складываются в абстракции. Всё это нужно держать в голове и уметь ими манипулировать.
Это как с мозгом. Работа одного нейрона — примитивна. Не будем рассматривать биохимию нейрона как клетки. Алгоритмически нейрон примитивен. Есть куча дендритов и аксон. Суммарный сигнал на дендритах превышает уровень срабатывания нейрона, сигнал уходит в аксон.
Но миллиарды этих простейших автоматов строят такие абстракции — что весь человеческий мозговой потенциал до сих пор не может разобраться как это работает в целом.
Ну вот допустим у вас есть выражение в логике if (!a && b || ... ) и т.д., а вы используя булеву алгебру упрощаете до if (a || b) (ну или банально у вас условие !(a && b) а вы пишете !a || !b потому что так лучше читается и имеет больший смысл.
Я к этому и веду что вопрос "нужно ли знать математику программисту" в общем то бессмысленный, так как любая программа это в общем то алгоритм, алгоритмы это часть математики, так что грубо программирование просто и есть математика (частный раздел). Так что вопрос нужно ли знать математику чтобы знать математику получается?
Ну и проекты в общем то такое себе, если вопрос "нужно ли всем знать численные методы, дифуры, матанализ, линейная алгебра" ну не, всем наверное не нужно, но есть куча областей где нужно (мне нужно в программировании графики каждый день например), но этот вопрос более узок чем "нужно ли знать математику".
Поэтому я и определил точные критерии что бы вопрос "нужно ли знать математику программисту" имел смысл.
Я под математику поставил использование "жёстких" математических теорем и формул.
Например я упомянул алгоритм эллиптических кривых
Я это отношу как раз к математике. Однако я это использую в своей работе. Просто я беру функцию где реализована вся эта математика и просто пользуюсь результатами. И т.к. я сам не реализовываю эту математику — то считаю что я не пользуюсь математикой. Но получается что я пользуюсь только результатами математики ))) Как минимум мне надо знать о существовании таких алгоритмов и где о ни используются.
Опять же вы пишите что в соей работе используете мат анализ. Но реализуете ли вы алгоритмы этого анализа? Или просто используете готовые функции? Глупо писать свою реализацию cos() или sin(), когда можно просто вызвать функцию.
И так как в библиотеках есть практически всё, то в типичной программе нету математики. Только вызов функций. И архитектура программы.
Современные абстракции в программировании задрали процесс программирования слишком высоко. Туда где математики не осталось.
Жёсткая математика, нативная, будет только в чём то новом. Что крайне редко встречается и большинство программистов не встречают за всю свою IT карьеру.
Но вот именно вы знаете математику в этом случае, вы знаете что есть такие алгоритмы, такие разделы, знаете для чего и как оно работает и что из математики вам нужно выбрать. Все таки есть разница в "программист должен знать математику" и "программист должен уметь выводить новые математические законы, писать статьи по математике и т.д и т.п (для этого есть математики)".
Или вот к примеру "должен ли программист более менее знать устройство процессора"?, ну да, чтобы понимать что такое кэши, бранч предикторы и т.д, как выбор структур данных ложится на архитектуру и почему часто связный список плохая идея, а линейный массив хорошая, хотя на бумаге чисто математически список лучше. Но должен ли он при этом уметь спроектировать процессор? Да в общем то нет, есть люди которые именно этим занимаются и у которых фул тайм работа такая.
Но вот именно вы знаете математику в этом случае
Я только знаю что делает алгоритм. Но как он это делает? Я пытался разобраться. Но просто прочитав это — я понял что этого не достаточно. И так как мне это не надо было просто бросил.
Мне была достаточна абстракция — подаю на вход числа, получаю на выходе.
А вот дальше эти числа уже использовались в вышестоящем алгоритме.
Который я уже реализовывал сам. И математики по моим внутренним убеждениям там не было.
Хорошо пусть будет логика. Да логику я использую всюду. Собственно программирование без логики не может быть. А вот без математики ))) Тут как раз и ведём дискуссию, может или нет.
Так даже так получается что если логика это один из разделов математики (а она как раз входит в раздел "математическая логика"), а без логики программирования не может быть, то и без математики тоже :)
Так я и не спорю что в математику всё входит.
И все программисты пользуются в той или иной мере математикой.
Собственно это даже не обсуждается.
Однако вопрос пользуются ли программисты математикой постоянно возникает. И даже в этой статье есть.
И что бы на него ответить — надо определить какой то критерий.
И этот критерий будет чисто субъективный.
Я из своего субъективного опыта написал. Что реализация алгоритмов высшей математики в программировании сегодня практически не бывает.
Однако дискуссия нас привела к выводу — что не бывает скорее всего из за того что все алгоритмы уже реализованны в библиотеках.
А программистам только и остаётся что просто пользоваться результатами тех или иных алгоритмов.
Что реализация алгоритмов высшей математики в программировании сегодня практически не бывает.
Вот кстати в моей области как ни странно бывает, серьезный геймдев в общем (и графика в частности, хоть в играх, хоть в кино, хоть для медицины и т.д) вообще любит изобретательство-переизобретательство графическо-математических велосипедов, а потом все это представляется на всяких сигграфах/gdc. Как раз ноги растут оттуда, что нельзя смоделировать реальный мир точно, а в плане допустимых неточностей, их влияния на визуал/перформанс прям есть где развернуться.
С геймдевом вообще не пересекался, но со всем остальным наверно со всем.
Разве в геймдеве сейчас не рулят движки? Юнити там разные. Где игрописатели фактически только API движков дёргают.
Хотя если новый движок писать, то согласен там прилично математики, например туже физику земного притяжения описать. Полёт стрелы там и прочего. Или геометрию пространства.
Но разве это реализуют с нуля? Наверняка уже написано 100500 библиотек которые реализуют всю эту физику.
Скажем так, движки то они конечно рулят, но кто то пишет эти самые движки + все (большинство) серьезных студий пишут и поддерживают свои движки так как больше контроль и проще с легальной стороны (и надежнее, внешний движок в момент не сможет поменять условия, свернуться и т.д.).
Многое конечно реализовано, но многое и нет, большинство все таки это скорее "а что если взять А и Б, добавить туда немного В, а в нашем случае что будет если еще и С?", то есть понятно что вот брать и с 0 начинать переизобретать то же освещение это редкость, но в общем то вся наука стоит на плечах гигантов. Так же берутся известные алгоритмы, формулы, оптимизируются, синтезируются с другими алгоритмами и добавляется немного своего. Условно было SSAO (screen-space ambient occlusion, тоже кем-то когда-то придуманный), ребята из NVidia подумали "а что если сделать вот так и так, использовались такие приближения, а тут можно попробовать сделать по другому немного, а вот тут для теней использовался такой метод, может его кусок подойдет и сюда если его модернизировать", пописали, получили GTAO. Потом железо доросло до рейтрейсинга, опять "так, у нас были такие то методы, но теперь если вот это выкинуть, а тут заменить, то может получится ничего, раз уж есть рейтрейсинг настоящий". И так далее и тому подобное.
берете какой метод численного решения, интегрируете, программируете, получаете ответ. Это вот программирование или математика?
У меня встречный вопрос: вы ничего не замечаете необычного в заданном вами вопросе, что может подсказать вам ответ? Если нет, я отвечу вместо вас: программирование - это программирование. Программирование является созданием и реализацией алгоритмических структур. А что в этих алгоритмах и для чего они нужны - всего лишь бесконечный набор частных случаев.
Если вы используете математику в программировании, любую, то вам желательно этой математикой владеть если не в совершенстве, то хотя бы понимать в общих чертах и быть в состоянии по-быстрому найти подсказки по конкретным частным вопросам в учебнике или где-то в этих ваших интернетах (второе сейчас, пожалуй, быстрее, хотя с надежностью, читай достоверностью, бывают вопросы). Делает ли это программирование математикой? Нет. Программирование это программирование. Просто может оказаться, что чтобы что-то программировать, нужно владеть этим чем-то, иначе непонятны задача и/или непонятны методы ее решения.
Необходимо ли знание математики для программирования сверх основ арифметики и основ булевой алгебры, на которых, пожалуй, и строится алгоритмическая логика? В общем нет, пусть в частности может быть (и бывает) критически необходимо. Так что ответ будет зависеть от того, подразумеваете ли вы сделанные здесь оговорки как не требующие явного указания - тогда нет, знание математики не нужно, либо считаете необходимым сделать акцент на них - тогда получится, что нужно как минимум в общем, для функционирования алгоритмов, а если брать частные задачи, то иногда бывает нужно и сильно глубже.
При этом необходимость или не-необходимость знания математики для программирования не делает программирование математикой.
А если я напишу не программируете, а записываете алгоритм на бумажке ручкой, это уже будет теория алгоритмов, но если тот же алгоритм написать на условном С++ то это уже выпадает из теории алгоритмов и становится чем-то иным (хотя по факту это тот же самый алгоритм просто переписанный другим языком)? А если вы возьмете условие if (!(a || b)) и подумаете что для читаемости лучше будет переписать if (!a && !b) то это программирование, а если на бумажке напишите формулу с картинки то это уже становится математикой (булевой алгеброй)? А в чем разница и почему?
![](https://habrastorage.org/getpro/habr/upload_files/092/c93/d03/092c93d03c4f1ac20f59ffaed6bf47bf.png)
А если я напишу не программируете, а записываете алгоритм на бумажке ручкой, это уже будет теория алгоритмов
В эту игру можно играть довольно долго и дойти до, в общем-то, фактического идиотизма при формальной правильности определений или, как минимум, при сохранении убедительности попыток давать формально правильные определения - например дать определение математике (или, точнее, достаточной, подразумеваемой математике, сверх которой ее знание не является формально необходимым) выше в ветке комментариев получалось так себе, но может просто пока еще никто всерьез не старался. Поэтому внесу предложение: если вы записываете алгоритм на бумажке ручкой просто так, из академического интереса или для праздного развлечения, то пусть это будет теория алгоритмов (некоторые не согласятся и я склонен их поддержать, однако оставлю сказанное как есть), а если по этим алгоритмам предполагается что-то создать или, тем более, создается, то это программирование. Если вы программируете без алгоритмов на бумажке, сразу из головы - вполне возможная ситуация для сравнительно простых программ, то у вас все равно в голове имеется алгоритм, по которому вы пишете его практическую реализацию на любом языке или сразу в машинных кодах. Без алгоритма не существует программы, даже если в программе всего одно действие и продумывать алгоритм вроде как не нужно и его вроде как нет. У вас даже может не быть ни языка программирования, ни вычислительной машины для практической реализации вашего алгоритма - например, вы живете во время, когда таковые машины еще не созданы в реальности, а только предполагаются или только проектируются, но и в этом случае алгоритм скорее признáют программированием, чем теорий алгоритмов в академическом, отвлеченном от практического программирования смысле.
но если тот же алгоритм написать на условном С++ то это уже выпадает из теории алгоритмов и становится чем-то иным (хотя по факту это тот же самый алгоритм просто переписанный другим языком)?
Алгоритм - это и есть программа, потому что алгоритм можно назвать языком программирования (над)высокого уровня и нет никаких принципиальных причин, почему компилятор алгоритмов не может скомпилировать алгоритм с бумажки в работающий машинный код. Но вы можете вручную сделать половину работы - вручную "скомпилировать" алгоритм в промежуточный код на C++, который дальше скомпилируется до машинных кодов уже автоматически.
Компилятор алгоритмов существует уже сегодня, пока быть может он не может заменить ручной труд программистов во всех или хотя бы многих случаях, но трудно предсказать, как и насколько быстро ситуация поменяется в относительно недалеком будущем.
А если вы возьмете условие if (!(a || b)) и подумаете что для читаемости лучше будет переписать if (!a && !b) то это программирование, а если на бумажке напишите формулу с картинки то это уже становится математикой (булевой алгеброй)? А в чем разница и почему?
Вы спорите о частностях практической реализации, случайно или намеренно уходя от общего. Хотите, я буду спорить с вами в машинных кодах вместо синтаксиса C? Мне это будет чертовски трудно, ведь мне для этого придется написать фрагмент объекта спора на ASM, скомпилировать - хорошо если под общепринятые x86/x64, а то ведь можно и не сказать, под что, и скопипастить результат сюда. Но и вам же не станет легче от такого рода моих аргументов, правда? Хотя интересно, будет ли различаться результат компиляции по вашему примеру, потому что хотя ваш пример - очевидно одно из правил де Моргана, спорить с которым было бы, скажем так, немного излишне самонадеянно, я честно признаюсь не представляю себе, как разные компиляторы обработают разные записи логически одного и того же в зависимости от конкретных a и b.
а если по этим алгоритмам предполагается что-то создать или, тем более, создается, то это программирование.
А если я на бумажке вывожу мат формулу по которой планирую что-то создать (новый алгоритм затенения) тогда это получится программирование :)
Я на самом деле вашу точку зрения понимаю и все это просто ради рассуждений на выходных. Лично я считаю что вопрос "нужно ли знать программисту математику" бесмыссленный, да нужно - в каждой (почти) программе будут сложения, вычитания, булева алгебра в условиях, все это математика и банально не зная что такое сложения программировать получится не очень. Вопрос "нужно ли каждому программисту знать матан/дифуры/тфкп/<..>" был бы на мой взгляд правильнее с очевидным ответом - нет, каждому не нужно, кому-то нужно, но далеко не всем. Мне например нужны матан, линейная алгебра, дифуры и т.д. но вот раздел "базы данных" мне особо ни к чему, я может помню что то еще с универа, но за ненадобностью уже почти все стерлось, а для условного бэкэндера будет все наоборот.
Можно долго спорить где и как пересекаются программирование и математика. С разных углов они либо похожи, либо одно и тоже, либо разные вещи.
Однако я хотел бы обозначить одну фундаментальную особенность чем программирование отличается от математики.
И это:
Как не странно результатом программирования будет программа.
И главная особенность программы — это то что она состоит из последовательно выполняющихся шагов.
Результатом математики будет теорема и следующая из неё формула.
Отсюда любой шаг программы — может быть как раз математической, формулой. Т.е. шаг может быть как раз той самой математикой.
Получается что программирование может включать в себя математику как шаг программы. В тоже время по этому принципу математика не будет является программированием.
Опять же шаги это как правило вызов готовых функций, в которых и реализована математика. Поэтому программист напрямую не работает с математикой а только с её результатами.
Это как например человек использует автомобиль, но это не делает его конструктором автомобилей.
И да. Оппонент сразу может придраться к моему определению математики. Мол простои использование теорем в качестве инструмента для получения результата. В данном случае такая писанина как не странно будет похожа на программирование. Только записанная на листе бумаге. Последовательное выполнение шагов с использованием формул теорем для получения конечного результата. Точно также как это бы делала программа.
Мне ваша версия нравится пока что больше всех, включая и мою выше. Как-то у вас с аргументацией удачно получилось, непротиворечиво.
Что то я дописался до того, что доказательство теорем с многостраничной записью это есть программа. Если рассматривать каждый шаг доказательства как шаг программы.
Уроборос какой то )))
Ладно добавим ещё одно фундаментальное отличие, но уже математики.
Любое доказательство теоремы, собственно любая математическая единица служит только 1 цели. Нахождение природной зависимости в числах. Фундаментального закона. Свойства нашей вселенной или вообще всех вселенных. Придумайте как сами это назвать.
Целью же программы может быть абсолютно любая. Или вообще без цели.
Целью же программы может быть абсолютно любая. Или вообще без цели.
У программиста нет цели, есть только путь. ©
Любое доказательство теоремы, собственно любая математическая единица служит только 1 цели.
Так же можно парировать что в общем то программа в общем служит часто одной цели. Вы как математической формуле даете вход и получаете выход, так и в программе.
Я это к тому что если формально пытаться так разделять программирование от математики постоянно будут эти уроборосы и в принципе "надо ли знать математику для программирования" бессмысленен, сложение это тоже математика, не очень просто найти программу где бы не было сложения, умножения и т.д. Вопрос скорее - какие разделы нужно знать, а какие большинству бесполезны. Математика это слишком широкое определение и, как видно, для каждого свое.
Так же можно парировать что в общем то программа в общем служит часто одной цели
Ваша утверждение базируется на рассмотрении одной программы. И оно очевидно. Каждая конкретная программа будет делать только то что в ней запрограммировано, одна цель (цели), и не более.
Я же рассматриваю все программы и математические теоремы одновременно. И на этом базирую различие между этими классами.
Все программы могут делать что угодно каждая по отдельности. У них нету базового закона для всех сразу.
В то время как в математике этот закон есть. Вся математика предназначена для одной цели. Нахождение закономерностей. Нахождение любых закономерностей где угодно. Многие "сумасшедшие" математики придумывают свои вселенные со своими законами и ищут там математические закономерности.
Как бы выглядела вселенная в которой п равнялось бы 4? И подобное.
Математика это слишком широкое определение и, как видно, для каждого свое.
Да. И современное программирование это тоже от веба до mobile, от эмбедит до софта, от геймдева до квантмеха и ещё куча всего.
Собственно получаем две огромные кучи которые тут и там начинаю приравнивать друг другу, т.к. начинают сравнивать частности.
Я же, в дискуссии, пытаюсь предложить варианты различий всей кучи. Опять же дискуссия ради поболтать, не более )
Просто получается смешение - знать математику и быть математиком. То есть если взять физику. Нужно ли физику знать математику? Наверное, надо же как то законы физические формально описывать. Делает ли это физика математиком (точно так же ваше знание русского языка и мое не делает нас филологами (хотя может быть вы конечно и филолог по образованию, в интернете никто не знает что ты кот :) ), это просто инструмент общения которым мы владеем)? На мой взгляд нет. Так же и с программированием. Математика это же просто инструмент которым по хорошему надо в какой то степени владеть, да и вообще разделов математики настолько много и они настолько много всего перекрывают, что границы размыты.
Нахождение закономерностей.
Ну в общем то любая программа это описание какой-либо закономерности - положили в базу пользователя Б и А, отсортировали, достали первого пользователя А. Ну или загрузили такие то данные, нажали ABC получили красный пиксель сверху экрана. Глобально программа от мат функции отличается не сильно - дали вход, получили предсказуемый выход (даже RNG генирирует условно предсказуемую последовательность, у Кнута даже томик по этому поводу есть, который я, конечно же, не осилил :) ). Хотя тут конечно согласен что чистая математика скорее находит и описывает закономерности, программирование просто описывает (или находит тоже? не уверен)
а любая программа доказывает некоторую теорему.
Наверно это вырвано из контекста, но приведённая в данном виде вызывает некоторое недоумение.
Честно говоря я не уверен что на земле существует реальная программа доказывающая теорему. Ну т.е. последовательно выполнение операторов процессора.
Потому как программа это компьютер. А он работает с переменными конечной точности.
Математические доказательства никогда не оперирует числами, а оперирует абстракциями в виде переменных. x,y и прочее.
Все операции проводятся над этими абстракциями что бы получить в конечном счёте математическую формулу, которая может обеспечить бесконечную точность. Т.к. не оперирует цифрами, а абстракциями.
Кстати это ещё одно фундаментальное отличие программы от математики. Программа всегда будет выполнятся на процессоре и оперировать с переменными конечной точности.
Математика всегда будет оперировать абстракциями бесконечной точности. Т.к. точности как таковой у них и не будет. Нет чисел, нет точности либо точность бесконечная.
Процессоры не работают с абстракциями, они работают с битами.
Не знаю может квантовые работают?
Ну это аксиома. Т.е. недоказательные утверждения. Они настолько логичны что не требуют доказательств. Вообще все теоремы доказываются на основании других теорем. А вот начало этой доказательной цепочки это как раз аксиомы.
И да вы не докажете ваш пример "коммутативность сложения" а по простому "от перемены мест слагаемых сумма не меняется" с точки зрения математики. Математика говорит так есть и всё тут. Опять же с помощью чисел вы можете доказать только какой то предел. Вплоть до бесконечности не получится.
Зачем тут бесконечная точность?
Про бесконечную точность я говорю исходя из того что математика предоставляет нам формулы. Которые оперирую переменными. Подставляй любое число (хоть бесконечность), и формула выдаст правильный ответ. Ну или должна выдать.
Программирование в свою очередь оперирует с конкретными числами. И предел точности работы программы будет всегда в пределе точности этих чисел.
Я просто декламирую отличие математики от программирования. А то тут в процессе дискуссии постоянно поднимается вопрос про их тождественности.
Вот я и ищу фундаментальные отличия.
Нет, не аксиома
Вот тут написано что это аксиома.
Я не математик, но честно говоря не вижу ещё более простое математическое определение которое доказывало бы утверждение "от перемены мест слагаемых сумма не меняется."
А как символьные вычисления работают-то?
да вы правы. Я опустился до уровня процессора. И арифметически логического устройства.
Но никто не мешает сделать программу которая будет оперировать абстракциями, тупо пропускать через блоки if-else стринги и получать на выходе такой же стринг.
И только человек может этот стриг определить как математическую формулу.
Но в таком варианте сам компьютер как раз не оперирует математической формулой. В АЛУ она не участвует.
Компьютер просто одну картинку превращает в другую на выходе. И только человек интерпретирует эту картинку как формулу.
Проблема такой программы в том что на выходе она нам даст картинку-формулу. Но если на вход такой программы мы подадим число с миллионом цифр после запятой, то компьютер не сможет использовать эту формулу и получить результат в виде точного числа. Разумеется можно написать программу которая будет последовательно вычислять значения после запятой. Но она не может делать это до бесконечности.
Математика всегда будет оперировать абстракциями бесконечной точности. Т.к. точности как таковой у них и не будет. Нет чисел, нет точности либо точность бесконечная.
Математическое моделирование и численные методы как раз работают с числами определенной точности, так как этот раздел математики занимается как раз методами вычисления всяких мат формул и зависимостей на компьютере :)
Есть чистая математика. Но заставить её работать на компьютере не получится. Не работает процессор с математическими абстракциями. Вот и появляются промежуточные науки как натянуть сову на глобус как заставить работать математическую формулу в процессоре с приемлемой точность.
К какому разделу эта наука принадлежит? К математике? К программированию?
Собственно я строю свои различия математики и программирования основываясь на чистой абстрактной математике. Потому как различие между химерами… Там они стираются. Там программатика какая то.
Так в этом и загвоздка. Численные методы те же это вполне себе "чистая" математика (смотря как определять чистоту конечно). Так математика часто работает - если у другой науки есть запрос на что то, математика создает у себя подраздел занимающиеся этим вопросом. Математика и царица наук и служанка наук. Фактически она просто создает инструментарий который используется в других науках. Заодно там и грани стираются очень сильно, но в общем то знать инструмент которым так или иначе пользуешься полезно. Структуры данных это математика, да и алгоритмы в общем, они созданы по запросу программирования, но вам эти структуры более менее знать надо чтобы их грамотно использовать, то есть технически вам надо знать этот небольшой кусочек небольшого подраздела математики, соответственно так как вопрос общий "надо ли программисту знать математику", ответ автоматом получается да. Но вот разделы математики которые ближе к физике типа механики сплошных сред, вам уже знать совсем не обязательно (в общем случае конечно же).
но в общем то знать инструмент которым так или иначе пользуешься полезно
Так в том и вопрос и проблема одновременна.
Химера говорит на твоём языке. Я как программист понимаю химеру. Я понимаю математическую абстракцию реализованную в программе.
Но на практике часто тебе кидают чистую математику. Чистые математические абстракции написанные на "древнеарамейском" ))). На которые я смотрю и ничего не понимаю. И делаю вывод что я такое никогда не применял в программировании. И прекрасно без этого справляюсь.
Как не странно результатом программирования будет программа.Ловите императивного программиста.
И главная особенность программы — это то что она состоит из последовательно выполняющихся шагов.
С одной стороны, для программ на Прологе или функциональных языках, это не обязательно так.
С другой стороны, машина Тьюринга — это буквально математическая абстракция, состоящая из последовательно выполняющихся шагов. Да и вообще математические теории модели с дискретным временем вполне существуют.
Так что не согласен.
Посмотрите как работают ВСЕ процессоры. Там есть указатель команд. Регистр указывающий на текущую выполняемую команду процессора. И каждый такт этого регистр просто инкриминируется. Т.е. указывает на следующую команду. Т.е. программа выполняется последовательно.
Так устроены процессоры. А то что там Пролог или куча других языков программирования предлагают — это всего лишь абстракция. Которая всегда компилируется в последовательно выполняемые машинные команды. И это всегда надо иметь ввиду оперируя такими абстракциями.
И да есть всякие параллельные архитектуры. Но в каждой такой параллели всегда один закон — последовательное выполнение команд. Сразу напишу — есть команды которые оперируют адресом этого регистра. Команды ветвления.
В противовес этому существуют ПЛИС. Конечно сложная логика в ПЛИС подразумевает тактовый генератор и последовательное выполнение функций. Однако схемотехника ПЛИС подразумевает работу без генератора. Подали сигнал на вход — получили сразу на выходе. Разумеется с поправкой на скорость света.
Решить задачу это далеко не всегда записать формулу. Иногда решение задачи принимает совсем другой вид. И что такое точный ответ? Множество аттракторов движения это точный ответ? А функция распределения?
Хороший пример Y-комбинатор в лямбда исчислении. Этот комбинатор при подстановке в него любой функции f находит решение уравнения f(x)=x. Т.е. находит решение абсолютно любого уравнения! Но есть нюанс)) Скорее всего это решение будет совсем не на том множестве, на котором вам бы хотелось. Хотелось бы получить решение на множестве действительных чисел, или комплексных, ну или хотя бы на множестве каких ни будь матриц, но нет - вот вам решение на множестве лямбда функций. Т.е. решение существует, но оно не всегда такое, какое хотелось бы получить.
Примерно та же ситуация и с задачей трех тел.
Не совсем понятно что в таком случае считать точным ответом. sqrt(2) это точный ответ? А ln(10)? Или sin(5)? В общем-то даже определение действительного числа можно рассматривать как бесконечную процедуру приближения с повышением точности (определение по Кантору). Имхо, разделение между точными формулами и неточными весьма условно
Можно поделить круг мелкой сеткой. Посчитать площадь ячейки сетки и посчитать количество ячеек.
Это называется численные методы. И, внезапно, это тоже раздел маткматики.
В математике вообще много интересных разделов, и не все они про числа.
Я про это и написал. В математику вообще всё можно запихнуть при желании и программирование целиком. Куча споров идёт только потому что никто из спорщиков не дал изначально чётких определений критериев вокруг которых ведутся споры.
И по этому сам вопрос может звучать глупо — нужна ли математика программисту. С одной стороны да, потому как всякие сложение или умножение уж точно используется.
Но где та грань где математика считается используемая по умолчанию, а где считается что программист уже не использует математику.
Программист использует формулу площади круга, но когда смотрит на доказательства теоремы Ферма ему кажется что он смотрит на египетские иероглифы. Где грань?
Я привёл эту грань с моей точки зрения как практика по программированию. Разумеется эта не истина в последней инстанции, а только мнение.
Программист использует формулу площади круга, но когда смотрит на доказательства теоремы Ферма ему кажется что он смотрит на египетские иероглифы. Где грань?
Так можно договориться до вопроса, а знают ли математику математики? Ведь какой-нибудь математик, погруженный в одну область, может не знать многого из другой области.
Программирование само по себе является дисциплиной на стыке математики и лингвистики. Если программист умеет писать программы, то он хотя бы на интуитивном уровне должен знать хотя бы поверхностно некоторые области математики. Арифметику мы не считаем, ибо ее-то все должны знать, а вот как минимум самые основы булевой алгебры, вычислительной математики, теории алгоритмов и теории множеств он должен понимать. Не обязательно на уровне строгих определений, знания терминов и доказательств, но хотя бы на уровне общего представления и понимания.
Хотя некоторые вещи неплохо бы знать и на уровне точного знания терминов, чтобы понимать друг друга, например, то, что касается обозначения сложности алгоритмов).
Конечно, шлепая бесконечные похожие формочки, можно вообще не знать ниичего, кроме арифметики и совсем базовых основ геометрии, но это будет тогда и не написание новых программ, а воспроизведение однотипных изделий по шаблону.
Исходя из этого напрашивается вывод о необходимости и более серьезного знания хотя бы на минимальном уровне ряда разделов математики (хотя бы перечисленных ранее) для лучшего понимания процесса программирования, ибо интуитивное понимание - это, конечно, хорошо, но его часто маловато бывает.
Другаая сторона потребности знания математики программистом - умение математически описать или хотя бы понять часть уже существующей математической модели предметной области в объеме, необходимом для написания программы, эту модель обсчитывающей. Это уже нужно не всем, а только тем, кто сталкивается с соответствующими моментами в своей работе.
Вот и получается, что всё программирование - это просто раздувшийся от важности раздел математики, работающий с алгоритмами и наработавший свой специальный метод.
Неожиданный вывод такой ?
Не совсем просто. Там еще и от лингвистики достаточно. Ведь программа - это не только математическая абстракция, но и связный текст на некотором языке, подчиняющемся определенным правилам и имеющем даже некоторую грамматику.
Как видите математика тут не нужна
Извините, но это нонсенс. Математика - это не про числа! Математика - это про структуру и информацию, и в таком качестве программирование - это самая что ни на есть математика!
с древних времен математика это как раз про числа. Может просто не надо было портить математику формальной логикой? В процессе логицизации математики, разумеется.
Если бы в математике были только числа, то куда девать множества? функции? Не говоря уже о том, что числа сами по себе выражаются через множества, и т.д.
Даже в древние времена математика была не только про числа. Потому что была геометрия.
А математику вообще можно определить, как символьное выражение логики, поэтому непонятно, как формальная (т.е., опять-таки, просто записанная в символах) логика может повредить самой себе.
Никто не знает что такое математика и про что она на самом деле. Судя по всему математика бесконечна и нам известна лишь ничтожно малая её часть и судить исходя из этой малой части о всей математике мы не можем. Наши рассуждения будут так же ошибочными, как ошибочны представления о математике человека, который знаешь лишь азы арифметики и наивно полагает, что это вся математика.
Бурбаки всех потролили, когда дали определение математике, как "это раздел лингвистики, который изучает строки символов..." Ну такой вот у них был прикол, но ведь более лучшего определения они и не смогли придумать.
Множество объектов и взаимосвязей между ними, с кучей правил. Очень похоже на натуральный язык и кажется тут мы переходим в сферу гуманитарных наук ))
Если по простому, когда приступаешь к работе, открываешь проект, то начинается работа по загрузке этого проекта в мозг. Быструю память. У программистов есть даже понятия — погрузиться в контекст или выпасть из контекста.
Пока ты не в контексте — то на проект смотришь как на египетские иероглифы. Но спустя час, пробежавшись по десяткам — сотням функций, уже примерно представляешь как работает кусок программы в котором ты находишься.
Так вот. Ты должен находится в контексте, по идеи все 8 часов работы. На практике — думаю у человека поедет крыша от такой работы. Поэтому это разбавляют всякими… переговорами. У некоторых ничего не делание переговоры занимают целый рабочий день )
Однако если тебе интересно — то ты можешь находится в контексте и 18 часов. Если не интересно — то вообще не сможешь погрузится. Мозг будет сопротивляться настолько что ты впадёшь в прострацию.
Отсюда кстати я смотрю с умилением на десятки тысяч "войтиВайти". Люди просто не понимают на что они подписываются. И раз до модных времён они так и не связали свою жизнь с IT, значит это не их. Их мозг просто не будет способен на многочасовой контекст.
И да у "настоящих" программистов проработавших по 20 лет, не войти в контекст — сплошь и рядом. И ты тратишь неделю на простенькую задачу при этом изнасиловав свой мозг и чувствую себя как будто ты разгружал вагоны. Это всякое легаси, индуский код, да и просто звёзды не сошлись или ты встал не стой ноги.
Поэтому программист это очень тяжёлый труд, и к старости лучше им не быть.
И написал я это к тому, что бы задать вопрос. А где у гуманитариев происходит примерно такой же экспирианс?
Но опять же — гуманитарии, это очень расплывчатое понятие. Без конкретных определений вопрос не имеет смысла. А с конкретными скорее всего потеряет актуальность как риторический.
А где у гуманитариев происходит примерно такой же экспирианс?
Вы описали приблизительно любою (хорошую) гуманитарную исследовательскую работу. Когда, например, пару недель читаешь литературу только чтобы войти в контекст, потом два дня сидишь над партитурой, и только потом в голове строится структура этого всего. А до этого - египетская письменность.
Вопрос сколько времени нужно находится в состоянии когда мозг пухнет. Вот вы привели пример 2 дня.
У программиста такое состоянии собственно каждый рабочий день. Десятилетия подряд.
Поэтому я и писал — что неподготовленный человек на это не способен. А так же на это не способен человек которому не нравится программирование. Даже если ему предложить 1$ миллион и он будет напрягаться изо всех сил, ничего не получится.
Сужу по себе. Когда мой мозг не хочет вникать в проект как бы я не напрягался я только заработаю головную боль. Просто смотришь в код, пытаешься понять что было 5 минут назад, не помнишь и просто лезешь в какой нибудь youtube.
В такие моменты лучше просто день потерять. Выспаться хорошо. И стартовать сначала.
И кстати очень часто попадаешь в полосу, когда выжимаешь себя за день, ничего не сделал, а делать надо, следующий день такой же потому как вчера себя выжал. И так по крупицам плетёшься вперёд.
Могу сказать что продуктивность у одного и того же человека может отличатся на 1000% за одну и туже работу в зависимости от твоего состояния и нравится ли тебе проект.
Отсюда около нулевая продуктивность у войтиВайти. Т.к. в принцип им не нравится программирование. Они пришли сюда ради денег и хайпа. В противном случае они вошли бы в IT уже давно.
Разумеется это не относится к молодым парням. Среди них есть небольшой процент которым нравится IT. И они только начинают свой путь. Разумеется этот процент небольшой так же как и раньше.
Вопрос сколько времени нужно находится в состоянии когда мозг пухнет.
Столько, сколько идет исследование.
Вот вы привели пример 2 дня.
Неа, в моем примере было несколько недель. И это ради одного произведения.
У программиста такое состоянии собственно каждый рабочий день. Десятилетия подряд.
Неа. Я не знаю (лично) ни одного программиста, у которого мозг в таком состоянии каждый рабочий день. Это не нужно (и опасно).
Поэтому я и писал — что неподготовленный человек на это не способен.
Это верно для любого квалифицированного труда. Он называется "квалифицированным" именно потому, что неподготовленный человек на него не способен.
Ты должен находится в контексте, по идеи все 8 часов работы
Конструктор. Руководитель. Дипломат. Т-щ майор. Да хоть бы водитель. Они что, все просто так, без контекста хреначат? Я чёт сомневаюсь. А есть профессии где контекст важнее чего-либо другого, актёры там и прочие музыканты.
Вы применили крайность. А крайности как правило не валидны.
Понятно что любой человек в той или иной степени оперирует каким то объёмом информации у себя в памяти. Иначе это и не человек вообще.
Вся разница в количестве и разновидности этой информации.
И программисту для выполнения работы требуется запредельное количество специфической информации. Это алгоритмы, коды, абстракции.
Так вот по моим наблюдением оперирование этой информацией для мозга чрезвычайно затратно. И если человеку не нравиться, т.е. нету дофаминовой поддержки, мозг сопротивляется максимально сильно.
И программисты со временем развивают свою нейросеть для работы с этой специфической информацией. Т.е. со временем, когда дофаминовая поддержка уже сводится на нет, мозг уже натренирован. и можно работать дальше без поддержки.
Вот вы привели другие примеры информации. Например есть люди которым легко даются языки. Или люди актёры, которые запоминают сценарий фильма, пьесы.
Они тоже тренируют свой мозг. И если это им нравится, то им легко даётся манипулирование информацией специфичного для себя класса.
Как я уже говорил много раз. Все способности — это желание изучать конкретную информацию. А уж что тебе нравится или нет — это уже матушка природа и батюшка геном решают.
И программисту для выполнения работы требуется запредельное количество специфической информации. Это алгоритмы, коды, абстракции.
Но и водителю тоже приходится держать в голове довольно много чего. Ограничения скорости, габарита, нагрузки на ось, внезапная (не совсем) регенерация сажевого фильтра, присматривать за температурой и давленим масла в двигателе, коробке, раздатке и дифференциалах (где применимо, конечно), не выбиться из разрешенного времени езды в один присест (это у кого тахограф) - читай держать в уме набор вариантов где остановиться на обязательный отдых или ночевку, потому что если не успеваешь доехать до запланированного места, должны быть на примете места ближе в терминах времени пути. И это я еще не касаюсь груза - как минимум надежного его закрепления и периодической проверки и подтяжки грузовых ремней, потому что из-за тряски груз немного двигается и вроде как надежно затянутые ремни ослабевают. Это я не касаюсь собственно езды - управлением транспортным средством в волатильной среде других участников движения и посторонних предметов. Я вовсе не хочу сказать, что водителю труднее, чем программисту, но и хотел бы избежать явно шапкозакидательских оценок "та, чего там делать, знай себе руль крути, вот и все дела". А если что-то случилось, да хоть прокол колеса и всего лишь нужно запаску поставить, то совсем уже все не так весело становится. Про цепи зимой я не забыл? В некоторых регионах мира без них можно попасть в неприятности - я вовсе не в смысле штрафа за отсутствие цепей там, где это обязывается правилами, хотя и штрафы сами по себе никто не хочет получать. И вот с точки зрения водителя, который худо-бедно держит эту кашу в голове, а иногда сталкивается с поломками или другими происшествиями в рейсе, с которыми бывает непросто или вообще невозможно самому справиться, работа программистом в чистом офисе с кондиционером, печеньками и соцстрахованием, выглядит как-то неадекватно легкой по трудозатратам при как-то непонятно высокой оплате - при том, что у программистов не ломаются дорогие тягачи с недешевыми прицепами и не портится ценный груз, а максимум, ну, заглючило что-то после пятничного релиза в прод под вечер, ну так это не страшно, в понедельник утром придут чинить.
Вся разница в количестве и разновидности этой информации.
И программисту для выполнения работы требуется запредельное количество специфической информации.
Ну, я работал проектировщиком, сейчас программист. Могу сравнивать. Конечно, наши проекты были попроще типичного ИТ-проекта: меньше элементов, проще взаимосвязи. Но я сейчас иногда консультирую молодых коллег по прошлой работе. И я могу часами рассказывать о всяких нюансах реализации и обосновывать схемные решения. Т.е. за годы работы бэкграунд набрался немалый. И относительная простота проектов всё равно основана на той самой специфической информации в приличном количестве.
И программисту для выполнения работы требуется запредельное количество специфической информации. Это алгоритмы, коды, абстракции.
Ничего запредельного в этом количестве информации, особенно в наш век поисковиков и контекстной подсказки, нет.
Да те-же языки. Больше двух-трех иностранных языков с трудом можно удержать на действительно хорошем уровне. Терминальный случай - переводчик синхронист, больше получаса работы и мозги вскипают.
Потому как удержать в голове десятки тысяч взаимодействующих функций между собой — обычно нормальный человек на такое не способен
Я знаю нескольких программистов и.... я у них не спрашивал, но по ним не скажешь что они могут удержать в голове десятки тысяч взаимодействующих объектов. Неужели такие есть? :)
Не знаю как это работает в голове. Но если долго работать над проектом где есть тысячи функций и если кликнуть в любое место проекта сразу будет понятно что и как тут работает. Видимо подгружается из памяти.
Одновременно в быстрой памяти смысла держать всё это нет. Однако пытаясь разобраться с алгоритмом в программе приходится одновременно держать в голове пару десятков функций. И в течении рабочего дня к этим десяткам прибавляются другие десятки, а уже ненужные выгружаются из головного кеша.
Часто находишься в состоянии когда в голову нужно загрузить ещё информации, но уже не можешь, смотришь на очередной код, а он расплывается перед глазами. После этого просто включаешь на пару минут какой нибудь развлекательный сайт. Даже не особо вчитывавшийся что там. Но это позволяет разгрузить кеш в голове. Потом переключаешься обратно на проект.
И да всё это относится к сложным проектам. В программировании есть куча задач линейных. Те же формошлёпства. Там подход линейный, мозг практически не загружается, и ты просто отдыхаешь на таких задачах.
В принципе, говоришь очевидные вещи, но для большинства людей они все еще не очевидны ("спасибо" маркетологам онлайн-курсов)
Я вот ещё много лет назад думал о том, что если к примеру автомеханик будет так же интенсивно развиваться, и ежедневно самообучаться на протяжении всей жизни, как это делает обычный программист, то разве он не станет востребован больше чем айтишный сеньёр?
А если не автомобильным мастером, а мастером по более дорогой технике? Я когда то арендовывал квартиру у одного мужика. Так он при знакомстве рассказал о себе, чем занимается. Он мастер по ремонту электровозов. Уникальный специалист, работает не как наемный рабочий, а как ипшник. Постоянно есть заказы на ремонт. К тому моменту он купил себе 2 квартиры в Москве и сдает их, а сам предпочитает жить за городом, потому что у него там дача крутая. Ну и жена у него не работает, разумеется. Да, с пляжа на Бали он не может работать, зато в отпуск они ездили только по Кипрам и Мадейрам (не по Турциям с Египтом) А вы такое можете себе позволить, господа сеньёры?
Был в Турции, был на Кипре, как-то не понял это противопоставление Кипра Турции с намеком на его какую-то непомерную крутизну. Как по мне унылая скучная деревня, с непомерно высокими ценами за таксебесервис, Турция куда как интереснее. И что такого невероятного в посещении нормальным синьором Кипра или Мадеры? Это не сказать что-бы какое-то невероятное достижение, к которому надо долго идти.
2 квартиры в Москве, загородной дом в Подмосковье, неработающая жена плюс двое детей на иждивении и отпуски в местах с "непомерно высокими ценами". Ну разве что небольшой процент из правой части хвоста нормального распределения сеньеров могут так жить.
Это благословение и проклятие IT. Доступность информации запредельная. Грубо говоря, не может быть долго "уникального специалиста по Docker/React/LLM": через месяц множество людей почитают документацию, послушают доклады, посмотрят исходники, сделают реверс-инжиниринг, запилят свой LLM, обучат других, напишут статьи, выложат исходники, и так по кругу. В случае мастера по ремонту электровозов, который единственный умеет чинить новейший электровоз-T3000 из Германии, пока новые такие мастера появятся и составят ему конкуренцию, он успеет на пенсию выйти (с тремя квартирами в Москве).
Но, скажу, по опыту за 6 месяцев вы ее не освоите
В этом весь смысл статьи; ещё более глубокий смысл - халявы не бывает. Больше того, и за год не освоите. Для нормального овладения профессией программиста НУЖНО закончить ВУЗ (чтобы научиться правильно думать). Можно начать работать по профессии через год-полтора, как начнут преподавать программирование, и с этого момента проработать лет пять, чтобы сказать, что вы стали профессионалом. Английский ОБЯЗАТЕЛЕН!
Все разговоры про полгода-годик -- это инфоцыганство.
НУЖНО закончить ВУЗ
Простите, но с вашего позволения, я этот тезис покритикую. Не нужно. Нужно научиться учиться, и для этого не нужен ВУЗ. То есть и без ВУЗа можно получить этот навык
Ну конечно, институт это глупость. Преподаватели, студенты, которые тратят 5 лет жизни на обучение в ВУЗе -- они все просто не догоняют, вот и выбрасывают время в топку.
Давайте!
Как человек, который научился учиться ещё в школе, я считаю, что если и не выбрасывают время в топку, то расходуют его не самым лучшим образом. Ещё будучи первокурсников не понимал, зачем нужны лекции, если есть книги. Не понимаю этого и сейчас. Они что для тех, кто не умеет читать? Мне проще было читать и решать примеры из задачника самому, чем слушать блеяние незамотивированного препода. А некоторые "замотивированные" препода откровенно бесили своей подачей. Были, конечно, и интересные препы, но их меньшинство. Да и к программе у меня были большииие вопросы. По большей части пичкали тем что мне нафиг не нужно будет. Я это тогда уже понимал, но ничего не мог поделать. Ведь в любом случае нужна была корочеп и отсрочка от службы.
Ну вот, Билл Гейтс например же..
Хотя, если бы он доучился - может и Windows у него вышла бы сразу хорошо? ;)
Миллионы мух не могут ошибаться!
Я себя как пример приведу. Я пару месяцев назад закончил институт. Бакалавр. Защитился на красный. Мне далеко за тридцать. Я институт закрывал только для того, чтобы у меня на руках была корка на всякий случай. В текущее долбанутое время может и диплом пригодится. Но я и без диплома без проблем учусь тому, что мне нужно. Потому что мне это НУЖНО (это я вас цитирую). Я отучился, я видел современных студентов на десять лет моложе меня. Некоторым из них ВУЗ не поможет. Это полнейшая чушь считать, что современный ВУЗ что-то решает в жизни отдельного современного молодого человека. Для них это просто этап в жизни, который им нужно преодолеть, чтобы наконец выйти на работу и начать получать деньги. Просто потому, что так выстроены социальные лифты в некоторых регионах нашей страны.
Ваш тезис «нужно закончить вуз» это как «Армия делает настоящих мужчин», что вообще далеко от реальности. А с учётом контекста про программиста так вообще можно цитировать классику - «Не служил - не мужик». Чушь это
upd: Сейчас учёба на заочке в сравнении с 15 годами ранее это небо и земля. 15 лет назад я бы выл от нагрузки и того, что вообще происходит на экзаменах (типа «нас этому не учили»), а сейчас я на изи взял красный. Даже не напрягался, просто делал задания и сдавал во время, и при этом никому не заплатил, всё делал сам
Ну... слово "бакалавр" меня немного вернуло в реальность. Я-то закончил МИРЭА в 1991-м году, и могу с уверенностью сказать, что институт из меня сделал программиста. Не удивлюсь, если сейчас всё извратилось до состояния FUBAR. Я могу судить по тому, что происходит с наукой, в частности, с журналами по математике. Никому ничего нафиг не надо.
Так что, видимо, к вашим словам стоит прислушаться.
Вы допускаете большую временную ошибку. В 1990-х не было интернета. Не было свободного доступа к информации. Учиться в ВУЗе тогда и было «получить информацию». Сейчас же информация доступна по любому вопросу в колоссальных количествах. Даже вузовские учебники можно накачать на планшет и читать их где угодно, даже не поступая в какой-либо ВУЗ. Многое поменялось за эти 30 лет. В некоторых вещах кардинально. Если раньше в некоторых ВУЗах было нормой сдавать простейший сайтец с подключенной базой данных. Это я к тому, что раньше это было уже показателем, что студент получил навыки и умеет их применять. То теперь такой сайт в виде шаблона можно скачать из интернета. А поэтому задачи несколько изменяются и требуются более комплексные разработки. А для более комплексных разработок не всегда хватает информационной базы ВУЗа, и нормой является получение знаний вне, в интернете, например. А это уже ломает выстроенный годами механизм передачи знаний от преподавателя => студенту. Так как информация о самых передовых технология теперь не в ВУЗах, а в интернете
Всё же самому читать учебник, и когда вам объясняет хороший преподаватель это две большие разницы. Но, могу допустить, что таких преподавателей не осталось.
В принципе, то, что вы описываете, видно просто по качеству современных специалистов, с которыми приходилось сталкиваться. Всем была необходима доработка напильником, а некоторым и она не помогла бы.
Простите, что я снова лезу со своими комментариями, но я хочу быть более ясным, и может быть это раскроет глаза читающим.
Всё же самому читать учебник, и когда вам объясняет хороший преподаватель это две большие разницы
Сейчас появился термин менторство. Как раз передача знаний преподавателя => студенту. И оно нужно. Оно всегда положительно влияет на понимание вопроса у того, кто не может в чем-то разобраться.
Но современность такова, что есть ВУЗы, где преподаватели так же застряли в 1990-х, во времена когда они учились. И некоторые из них отвечают точно так же как вы комментариями выше. Один из таких преподавателей мне пытался доказать, что завод - это стабильность, работа на заводе - это к чему нужно стремиться, а я 7 лет проработал на заводе, я видел завод изнутри, и по своему опыту знал, что туда вообще не стоит стремиться, туда идут от безысходности. Простите, отвлёкся. И эти преподаватели не понимают, что мир изменился очень сильно. Технологии стали доступнее, что IT иногда требует передовые технологии. И вот как раз хороший преподаватель по передовым технологиям был бы кстати, но увы. Таких мало. Потому что чтобы следить за технологиями, нужно время. Чтобы передовые технологии стали частью учебной программы, нужно менять учебный план, а это время. Инертность системы - враг современного образования. И пока это не измениться, из вузов будут выходить «не того» качества специалисты.
При этом современные студенты спешат «жить», так как современная жизнь ускорилась. Им не нужны лишние знания, им нужны четкие границы, им нужен определенный объем знаний в конкретной области, который даст им возможность уже после выхода из условного ВУЗа получить работу, и работать. Потому что это именно то, что требуют компании сейчас.
%шутка_про_трехлетний_опыт_для_студента%.
А весь остальной объем знаний они считают получить уже по факту «на месте». Потому что
%шутка_про_забудьте_всё_что_вас_учили_в_институте%.
Если продолжать натягивать сову на глобус, то это типа каков спрос, таково и предложение
1990-х не было интернета. Не было свободного доступа к информации.
Ох ты ж, здрасьте-приехали! А как же тогда заводы-пароходы строили? Луну там осваивали и прочее?
Рассказываю: информация была и распространялась. Через книги и журналы. И даже конференции были, как раз для максимально оперативного обмена знаниями. Просто всё это было оффлайн, а потому немного медленно :)
Ну не передёргивайте. Такой свободы как сейчас не было. Не просто так собирали команды, НИИ целые, КБ там, вот это вот всё. Людей вместе собирали, которые информацией обменивались. Именно в них рождались новые технологии, и потом профессора шли обучать новых специалистов в ВУЗы
А сейчас что, не собирают? В Боинге мало инженеров? В Микрософте? Да любая фирма, которая что-то проектирует - это КБ, хоть в области строительства, что в разработке ПО. А те что покрупнее - могут НИИ считаться т.к. исследовательские программы тоже ведут.
Да, ряд профессий исчез. Сейчас нет машинисток т.к. нет нужды копировать документы, перепечатывая их. Нет копировальщиков чертежей, есть Ctrl-C - Ctrl-V. Но есть ассистенты, задача которых - распечатать комплект документации из любых программ, собрать том. Это чтобы инженеров не отвлекать на ерунду. Всё зависит от размера организации и интенсивности работы. И всё это к интернету не относится. Компы активно использовались при разработке Бурана. И информационные системы появились тогда же когда появились пользовательские терминалы и диалоговый режим.
Просто в развитием технологий в проектировании всё меньше бумаги и больше скорость обмена информации.
А сейчас что, не собирают? В Боинге мало инженеров? В Микрософте?
И сейчас собирают. И причины не поменялись. Только раньше решалась дополнительная «задача», которую сейчас решать нет смысла из-за доступности информации.
...больше скорость обмена информации.
И я об этом же. Изначальный вопрос был о важности образования в ВУЗах. И там комментарий был, что «НУЖНО закончить ВУЗ». Мой тезис был в том, что сейчас высшее образование уже не так важно, если всю нужную информацию об определённой области в IT можно получить онлайн, не сходя с места сразу в своём смартфоне, причём сама информация будет более актуальная, нежели та, что будет подана в ВУЗе.
Я хочу обозначить, что доступ к информации изменился. ВУЗы перестают быть важным местом получения навыков. Особенно в IT
Человеческая деятельность не ограничивается ИТ, а ИТ не ограничивается решением типовых задач на фреймворках.
Далеко не каждый человек может научиться самостоятельно, поэтому необходимость в массовом образовании будет всегда.
Я бы не хотел встретить на жизненном пути врача или авиаконструктора-самоучку.
Другое дело что системе образования надо меняться в соответствии с современным миром и даже опережающими темпами - чтобы эту самую действительность создавать. Так оно, в общем-то, и было. Если почитать историю создания советских ЭВМ, можно увидеть что над ними работало много студентов. Правда это были другие люди. Не инфантилы, которые подают доки сразу в 5 ВУЗов, по 2 специальности в каждом, а взрослые ребята, многие с фронта, точно знающие чего хотят и пришедшие учиться осознано.
Со временем у нас эта функция оказалась утраченной (на Западе, вроде, ВУЗы до сих пор играют заметную роль в исследованиях). Но это не значит что ВУЗы не нужны. Это значит что они должны меняться. Больше практики, меньше всякой херотени: философия, политэкономия - нахер, на факультатив, кто хочет тот сходит. Тем более что сейчас многое стало проще. Если раньше для производства электроники требовался целый завод, то сейчас достаточно небольшой лаборатории с автоматизированной производственной линией. Хочешь - проектируй конечные изделия. Хочешь - разбирайся как работает эта линия и делай аналоги её агрегатов.
Ни один студент технической специальности не должен получить диплом, не имея на руках изделия, которое он сам спроектировал, сделал и заставил работать. Тогда будет толк. Если выпускник-электронщик не может изобразить диодный мост, то да, такой ВУЗ не нужен.
Не инфантилы, которые подают доки сразу в 5 ВУЗов, по 2 специальности в каждом, а взрослые ребята, многие с фронта, точно знающие чего хотят и пришедшие учиться осознано.
Честно напишу, что после этих слов мне дальше не хочется с вами вести дискуссию. Потому что вы тоже не понимаете проблемы, и не видите разницы между текущими временами и временами СССР, о которых вы упоминаете
Не инфантилы, которые подают доки сразу в 5 ВУЗов, по 2 специальности в каждом, а взрослые ребята, многие с фронта, точно знающие чего хотят и пришедшие учиться осознано.
У, как всё запущено!
Извините, не в тему, но очень интересно стало, если не секрет, где можно найти такую заочку, да ещё и бесплатно?
Известный парадокс. ) Статье 10 лет, но так же актуальна.
Хотите по-настоящему разбогатеть? Немедленно бросайте свой никчемный ВУЗ!
https://sgolub.ru/publications/bzh-onlain-khotite-po-nastoyashchemu-razbogatet-nemedlenno-brosaite-svoi-nikchemnyi-vuz/
Нужно в среднем как минимум год рабочих !!! задач, чтобы начать как-то, более-менее уверенно, разбираться хотя бы в основах.
Да, но нет. Для преуспеха (преуспевания, если угодно) в этом деле всего лишь ПОСЛЕ КУРСОВ нужен крутой precondition.
То есть, человек, который уже «рубит» в компьютерах, после курсов встанёт, оттряхнется, улыбнётся и поедет дальше (со свистом).
А человек, который вчера ВНЕЗАПНО осознал, что ведь он всю жизнь любил издалека смотреть на компьютеры, и пошёл на курсы — встанёт, оттряхнётся, улыбнётся, да так и будет всю жизнь только улыбаться да оттряхиваться, бо не был он готов ко всей этой нашей абстрактной абстракции, и понял он чуть менее, чем ему самому показалось. Вот таким и нужен минимум год рабочих задач только для того, чтобы пережить несколько больших волн «аааааа, так вот что оно означает…»
А тем, кто уже подготовлен, так долго страдать вряд ли придётся.
Множество людей закончив курсы так и остаются вне айти.
Да.
Знаю человека, который брал кредит «на обучение на курсах по тестировке», а через полгода поиска работы (унизительным для себя «джуном») был вынужден вернуться работать в такси.
Но я понимаю, почему он так сделал.
Простите, а что унизительного в работе джуном, специалисту, который только начинает свой путь в данной отрасли?
Ага, тоже не понимаю. Или ему на курсах по окончанию сразу обещали позицию сеньора с зп сеньора?
Не обобщайте, речь шла про отдельно взятого, взрослого человека. Ему хотелось всë и сразу, ему нравились обещания о том, что в первый год вы будете получать тысячу долларов в месяц, на пятый год — по пять, на десятый — десять… И чтобы «Так-то я айтишник, а в такси езжу для удовольствия, по старой памяти…»
А то, что начинать придëтся с низов, ему в этих мечтах не мечталось, и что вообще на собеседования не будет попадать — никто не сказал.
Я бы ещё добавил, что легко может оказаться так, что системы на базе LLM (ChatGPT и прочие) заберут ту нишу, которую сейчас занимают условные джуны и слабые миддлы. И даже те, кто недавно успешно прошёл курсы и трудоустроился - через год-два-три останутся без работы.
Как по мне критерий: пет проект. Т.е. будешь ли ты заниматься айти вне рабочего времени. Если нет — то у тебя нет интересу к айти, и ты просто не сможешь за счет только зазубривания (самодисциплины) конкурировать с теми, кто "живет в айти".
Вопрос: можно ли работать в ИТ без интереса в ИТ ??
Ответ: да легко
Я такого видел. Он просто сидел на скучной работе, пилил на сишарпе много лет один проект. ЗП его устраивала, он никуда не спешил, во внерабочее время о программировании слова ни проронил и всячески избегал вообще разговора. Я понимаю, что у некоторых работа, - это работа, а свободное время, - это свободное время, но этот даже в курилке ни слова о программировании никогда не проронил. Сидел и молча писал код. И, вот, у меня сложилось впечатление, что он просто работал эту работу и относился к ней как к ремеслу, ни больше, ни меньше. У меня тогда сложилось впечатление, что ему не интересно это, просто деньги зарабатывает и его всё устраивает.
На самом деле все просто)
Математика нужна и математика не нужна. Логично же.
Похоже что нужность или !нужность математики является открытой проблемой разработки программного обеспечения. Ну прям как теорема Ферма, только в другой области.
Математика, конечно, нужна. Вы можете не помнить точных формул, но вы всегда видите, какая зависимость между входными-выходными данными, какой функцией описывается процесс, знаете, как преобразовать (через какую ф-цию пропустить) данные к нужному виду. Да и всякая статистика и пр. применяется повсюду. Ну, и знание математического языка необходимо. Без этого в большинстве алгоритмов не разобраться.
Физику еще хорошо бы знать... электротехнику, электронику, микроэлектронику, схемотехнику, архитектуры вычислительных систем, алгоритмы... прочие предметы хотя бы на хорошем школьном уровне (биологию и пр.) - программы ведь не в вакууме создаются, а для прикладных целей, поэтому хоть что-то нужно понимать по всем направлениям. Короче, вы должны знать всё! И вот после этого, с этим багажом, можно перейти к программированию. Ну, это в идеале так :)
А если пилите что-то для банка - тоже неплохо понимать в предметной области. А то сделаете обработку счетов на float, а потом на округлениях начнут деньги пропадать (или появляться) ;)
вот буквально недавно пришло создавать структуру базы для хранения финансовой информации. когда выбирал в каком формате хранить цены то я не вспоминал различие разных типов данных и не изобретал велосипед а пошел в гугл с кокретным вопросом.
Работая в финансовм секторе какие-то вещи наверное стоит знать но обычно есть кого спросить . тот кто проверить работу программы и укажет на неточности. Поэтому знать хорошо в области для которой пишется программы неплохо но необязательно.
Важнее правильно тестировать
А если пилите что-то для банка - тоже неплохо понимать в предметной области. А то сделаете обработку счетов на float, а потом на округлениях начнут деньги пропадать (или появляться) ;)
и каким образом знание физики/электротехники/электроники/микроэлектроники/ схемотехники/etc поможет в данном случае ? Ответ - никак не поможет.
Понимание физики 3 нм техпроцесса и его отличий от 30 нм как то помогут писать код лучше/быстрее/эффективнее ? Конечно же нет. В то же время, знание наличие инструкций у конкретного процессора и умение их эффективно использовать в коде - очень даже помогут
То есть вы будете работать когда угодно, но, когда это угодно работе. То есть, и в выходной, и ночью, потому как вы на удаленке.
Такая работа идёт лесом)) "Потому как вы на удаленке" - вообще странный аргумент.
Я старый айтишник и пришел из далеких годов, когда начинали писать код на 386/486 ПК и могу сказать, что вот то "крутое ИТ" было где-то с 2005 по 2015 год. Вначале в конце 90х и начале 2000х куда не пни ты везде первый, любая мелкая прожка упорядочивающая файлы или фотки могла принести тебе деньги. Но в 90х люди массово не поняли, что Интернет изменит всю структуру бизнеса. И массовый наплыв начался где-то в 2005 году, когда компании сгоряча платили бешеные деньги за микромодуль к их софту. Сайты для компаний могли стоит каких-то баснословных денег, и сегодня такую работу требуют от джуна.
Сегодня ИТ и особенно прогинг это рутина. Реальный уровень входа очень высокий.
Сегодня ИТ и особенно прогинг это рутина. Реальный уровень входа очень высокий.
Это один из признаков зрелости индустрии.
В начале прошлого века энтузиасты без профильного образования собирали гоночные автомобили и неплохо так соревновались на них. Где-то тогда же то же самое случилось и с авиацией. Нельзя не припомнить электронику вообще и телерадиотехнику в частности. Но постепенно талантливых одиночек вытеснили конструкторские бюро не потому, что они часть злых корпораций, а потому, что уровень сложности вырос и отдельные, даже самые продвинутые энтузиасты, стани неспособны конкурировать с группами профессионалов. В тех отраслях уровень сложности продолжает расти и сейчас, от чего порог вхождения растет дальше. Возможности познания ограничены и от этого происходит сужение специализации ради углубления знаний в этой самой сузившейся области. Ранние инженеры имели хорошее представление обо всем на тогдашнем уровне развития техники и прикладной науки. По мере усложнения пришлось сужать специализацию и жертвовать смежными областями ради углубления в своей - именно так конструкторские бюро победили отдельных энтузиастов, за счет совместной работы более узких специалистов.
С программированием, скажем так, это случилось вот только что, поэтому вчерашние талантливые энтузиасты сегодня все еще живут воспоминанием того, как они из ничего попали в самый центр индустрии, и поэтому не понимают (не потому, что не могут - им просто уже не нужно), как повысился порог входа с тех пор, как сами они входили почти что без порога, только на энтузиазме. Разделение специализаций уже случилось, если раньше энтузиаст и программу мог написать, и сетью заниматься, и порошок в принтер досыпать, то сейчас это не просто разные люди, но часто не имеющие представления о том, что делает другой.
Слово зрелость подразумевает что то хорошее. Ну оно может и хорошо для общества в целом, но с точки зрения участников этого процесса лучше бы оно продолжало быть молодым и зелёным чем зрелым, с ожесточенной конкуренцией и тяжёлой работе по типу конвейера.
Все сладкие и низко висящие плоды поели, остались мелкие, кислые и труднодоступные ягодки.
Вот ей богу, больших ЧСВ-шных людей, чем среди айтишников, не наблюдаю. Уже столько самомнительности и важности, мама дорогая. Чуть ли не люди с другой планеты и каким-то альтернативным мышлением.
В мире, где количество денег в кошельке определяется профессией, в которой человек задействован, ещё кого-то удивляет, и что более поразительно, чуть ли не задевает. Ай-яй, как ты посмел, смерд, лезть в айти.
Проблемы со входом в айти начались тогда, когда люди туда полезли за большими зарплатами, а не самореализацией по своему призванию. Потом это дополнилось желанием релокации. Частично всё можно понять, глядя на нищенские зарплаты врачей или учителей. Но сейчас уже лучше заниматься чем-то своим, так как многое в IT уже превращается в рутину или даже частично роботизируется. Эпоха ушла лет 5 назад... Некуда входить.
>английский
И переводчика хватит. Именно так в свое время Oracle раскуривал.
>математика
Достаточно иметь подобное мышление, не нужно заканчивать ВУЗ по специальности математика или технической. Знаю множество людей кто в ИТ и не решит сходу какое то математическое задание. Но если понадобится - быстро разберётся.
>Года мало
Кому то и месяца-двух хватает чтобы влиться и начать хорошо работать. Кто то и за пять лет в области остаётся ниже среднего.
>Тяжело работать головой
Ну тут могу сказать что это какой то бред. Когда человек такое пишет - значит он давно не работал руками. Работать руками - не делать у себя дома ремонт или строить себе дачу. Работать руками - ходить каждый день к примеру на стройку иза 30-50к утрахиваться там так что домой потом ползти. Тогда бы через месяц два я бы спросил насколько тяжело работать головой.
ИМХО
Так можно абсолютно про любой род деятельности рассуждать, если пошел туда исключительно за деньгами, не имея при этом настоящего интереса.
«Гуманитариям в ИТ не надо» забавляют такие вот «знатоки»))
Если бы мне давали по рублю каждый раз, когда я видел подобные статьи, я бы уже накопил на шавуху минимум. Почему это здесь?
Не согласен. Не нужно сводить все многообразие работ в IT к работе с кодом. К примеру, есть системные аналитики и у них набор навыков совершенно другой. Человек, который сдал ЕГЭ по русскому и по математике на 80+ баллов, за полгода самостоятельно подготовки с нуля и полгода последующей работы станет хорошим джуном-аналитиком.
Инфоцыгане, конечно, красавчеги ) с другой стороны, нужно отделять отношения с деньгами и профессию. Ведь практически в каждом деле есть те кто имеет деньги, и те кого имеют деньги. Логика, умение быстро находить, читать и воспринимать информацию, делать разумные выводы даст хороший результат практически в любом деле. Мне подарили первый компьютер в 6 лет, как сейчас помню название "Львов", потом пошли спектрумы и далее. Эти компьютеры подключались к телевизору, но не так просто, нужно было перепаять разъём. А информация в них и с них шла через аудио ленту... эх настальжи) с благодарностью вспоминаю издателей журнала юный техник.
Как по мне it это для любопытных изобретателей, фанатиков в хорошем понимании этого слова. А заработок денег это банальщина - условная "тётя Маша" которая моёт полы в нескольких конторах может зарабатывать больше модных middle)))
"Каждому своё, но и своё не каждому "(с)
Потому, что
![image](https://habrastorage.org/getpro/habr/comment_images/b3f/f7f/580/b3ff7f580eef227c3ce7316b5169a1ac.jpg)
![image](https://habrastorage.org/getpro/habr/comment_images/157/752/fc7/157752fc7d092562e5de7431a2ac53cc.jpg)
Дополню про важное, про зарплаты.
Я знаю много людей не из IT, а из вполне более "простых" (для понимая) профессий, которые зарабатывают больше миддлов и даже сеньоров и даже сеньор продактов. Особенно среди продажников, но и юристы, врачи (да да) есть итп. Да, они шли к этому не один год и постоянно развивалась в профессии, но и в IT 150+ люди обычно (хотя бывают исключения) начинают зарабатывать после многих лет работу только и только если вы постоянно продолжаете учиться и развиваться в профессии. Прошло то время когда сисадмин был богом, а программист на html мог заработать на квартиру за год. Сейчас программист это просто рядовая профессия и отношение к ней такое же.
Да и не всем образ жизни ITшника нравится. Нас когда выгнали (именно выгнали, выбора не было) в ковид работать из дома, половина не была рада: одним приходилось работать из туалета (не шутка), потому что квартира маленькая, семья, дети. Я был близок к депрессии первый год ковида от того что кроме стен квартиры почти ничего не видел. Баланс между работой и жизнью сильно размывается и вот ты уже работаешь посреди дня рождения дочери, перед сном и в тренажёрном зале.
но и в IT 150+ люди обычно (хотя бывают исключения) начинают зарабатывать после многих лет работу только и только если вы постоянно продолжаете учиться и развиваться в профессии.
не все так однозначно, лично знаю js девелопера, который за 1-1,5 года вырос с 500$ (джун) до 6000$ (senior). Уровень его сеньйорности оставим за скобками ))) Да сменил за это время 3 или 4 места работы, но при этом это не смущало работодателей. До этого лет 10 работал в строительной отрасли. И такие примеры не одиноки, их очень много
Ну я ж написал "бывают исключения", но это именно исключения. Большинство IT коллег до "сеньора" растет как минимум по 5 лет и больше (обычно потому что это обычные ленивые люди, которые не стремятся расти, а просто рабоают за ЗП и не смотрят далеко в будущее). Не все, есть исключения. Те, кто вкладывается, те и языки за полгода до B1-B2 с нуля осваивают и сеньорами становятся с нуля за год. Сам такого нанимал: парень был поваром, ко мне в команду пришел с 1.5 годовалым опытом вполне себе сеньорским. Но я потом посмотрел как он работает и понял, почему он так смог. Он 24/7 кодил, сначала на работе, вечером над своим проектом, на выходных в качестве отдыха учился.
Но опять же такие кейсы есть и в других отраслях. У меня знакомый устроился безопасником, его компания начала продавать софт и железо связанное с ИБ и его начали звать на встречи с клиентами. В итоге он перешел чисто в продажи и за год работы вышел на 450килорублей зарплаты.
Как раз ваш знакомый и является, скорее всего этим самым, исключением. Тк более менее толковый мидл, через 1-2 года начинает получать несколько тысяч долларов, что в других профессиях часто является вообще потолком карьеры
Так в том то и дело, что далеко не исключение, а сплошь и рядом. Думаю, что многое зависит от того, какие цели при этом ставятся - если получить знания и писать "идеальный" код, то да - на это может уйти и вся жизнь. А если основная цель деньги - то это уже другой разговор
"Сплошь и рядом" и не исключает ошибку выжившего. Мне тоже встречается много таких примеров, среди коллег, но коллеги - это те, кто уже прошел отбор и попал на работу, 1 из 10. К тому же, предположу, что вы работаете в какой-то приличной компании, где и требования на старте не самые низкие и окружение помогает росту. Но за пределами условного Яндекса и Тинькова тоже есть жизнь, как и за пределами Москвы есть Россия. Большая часть айтишников работает на мелких вебстудиях, в каких то небольших ИП и очень многие рабоают вообще не в ITшных компаниях, а лишь в IT отделе.
Наши депутаты вон тоже не видят проблем хлеба купить, но есть статистика нищеты и медианных зарплат.
Да и даже в тех компаниях в которых я работаю, а это компании пусть не из первой 10ки IT но известные, и даже с учетом отбора 1 из 10 на собеседованиях, я вижу что большинство разработчиков - те самые "обычные люди", достаточно незаметные, которые перешагнув средний доход останавливаются, потому что базовые потребности закрыты и дальше их расти ничего не мотивирует. На их фоне очень заметны те самые исключения "сплошь и рядом" которые не перестают от этого быть исключениями.
Да, соглашусь, что средний разраб зарабаытвает больше администратора пятерочки, и обычно быстрее достигает заветных 100к. Но если речь про 150 и тем более 200к+, то не смотря то, что у меня IT окружение, я пожалуй не совру, если скажу, что 50% людей с такой ЗП в моем окружении НЕ из айти, а как я уже писал выше, это в основном продажники, но есть и юристы и врачи.
Есть и обратная сторона истории. Я знаю много людей, которые ищут себе сотрудников НЕ из IT, готовых платить 200+, но месяцами и годами не могут найти квалифицированных сотрудников.
Мой основной посыл не в том, что таких ЗП нет, а в том, что для них тоже надо не на жопе после 3месячных курсов сидеть, и что такие ЗП не ограничиваются рынком IT, опять же если не ждать у моря погоды, работая на заводе, а развиваться как профессионал, искать себе более сложные, но и более оплачиваемые места работы.
Залетел в айти полтора года назад, после 8 лет на заводе. Работаю в большой конторе, входит в какие-то рейтинги айти и т.д.
Вот что имею сказать:
Работать здесь легче, чем на заводе - хоть я и работал по электронике технологом, беготня по заводу, ковыряние в оборудовании и т.д. отнимали гораздо больше сил.
Денег платят сильно больше,чем на заводе (а там я получал сильно выше рынка) и есть перспективы роста. Перспективы абсолютно понятные, прозрачные и известно как их достичь. Причем, есть даже реальные варианты получать по 500-700к в месяц. На заводе такие зпхи только у любовницы владельца.
Адекватный менеджмент - средней руки менеджер знает практики, подходы к управлению. Не пытается 9 женщинами родить ребенка за месяц
Токсичность, хамство, грубость - явно порицается системой. Могут даже попросить на выход, если ты токсичный душнила, с которым никто работать не хочет - на заводе токсичность это норма
Развитие, изучение нового легко конвертируется в повышение ЗП. Не в этой конторе, так в другой. - на заводе, если ты что-то новое изучаешь, всем как правило пофигу, потому что технологии, оборудование, процессы не меняются десятки лет. Да и прибыль от внедрения чего-то нового, как правило, окупается лет за 10
По поводу переработок - у нас в компании есть сопровождение, которое бдит за состоянием сервисов на бою. Если надо - рестартнут поды в кубере, могут откатить версию и т.д. Поэтому разрабы не дежурят на телефоне.
Если срок по проекту истекает и он критически важен для бизнеса (т.е. реализация его не в срок приведет к прямым убыткам) - тогда выходим на овертаймы. Причем овертаймы оплачиваются. Но такое было 1 раз за полтора года - и то, по вине внешних обстоятельств.
Во всех других случаях, нарушение оговоренного срока - это сигнал о том, что нужно эти сроки более лучше оценивать, закладывать время на всякие непредвиденные обстоятельства и т.п. Причем никто тебя не нагибает за нарушение сроков - потому что все понимают, когда речь идёт об интеграции с кучей других команд - шанс что что-то, где-то пойдет не так стремится к единице.
TL;DR если вы решили идти в айти и вам эта деятельность не приносит страданий - идите и не слушайте никого, потому что на каждого "страдальца" вроде автора, найдется "счастливчик" вроде меня.
...после 8 лет на заводе.
Наше вам с кисточкой! Подписываюсь под всеми пунктами о заводе. Я 7 лет проработал там. И это были бесполезные 7 лет жизни. Хотя я там научился работать с мудаками, единственный опыт, который я вынес с собой увольняясь
Я вообще не понимаю как сейчас современное поколение выбирает куда пойти, в мое время даже мыслей таких не было. Я с первого класса рос с паяльником в руках и даже мыслей не было что я пойду не в ай-ти. Друзья, кто стали разрабами тоже кодили класса с 7-8 минимум уже. Аналогично кто-то с утра до ночи перебирал велосипеды, мопеды, мотоциклы, моторы и т д. К чему горели и без чего жить не могли - теми и становились и никто никогда не лежал и не раздумывал, а вот может мне стать этим или этим или этим. В общем мне современное поколение не понять.
Я вообще не понимаю как сейчас современное поколение выбирает куда пойти...
Точно так же как и раньше. Кто-то горит тем, что ему нравится, а кого-то родители тянут до последнего. Ничего в этом процессе не поменялось.
Просто времена меняются. Хорошо когда кому-то удалось попасть в стабильное время, и он пронёс с собой свою детскую страсть через юношество в зрелость. А кому-то не повезло увидеть как его увлечение сначала деградирует, а после и вовсе становится бесполезным, или оно вообще изначально было бесполезным (но кого это волнует, когда это его страсть). И тут либо становится идейным, и терпеть невзгоды и лишения нишевой области, которая нужна паре человек, либо искать другие увлечения, тратить время и деньги на их изучение
Соглашусь по сути со всем вышесказанным в статье и могу сказать, что если есть нормальная профессия (не археолога или менеджера широкого профиля), которая дает какую-то среднюю статистическую зарплату по рынку (после обучения в вузе и опыта работы +5 лет), то следует ОЧЕНЬ хорошо подумать, прежде чем пытаться "вайти_в_айти".
Но ложку меда в бочку дегтя все же хочу добавить. Часто проблема состоит в том, что пытаються войти в Айти, выбрав самый популярный язык программирования, самое модное направление, где больше всего вакансий. Вроде все логично, но вокруг все такие же умные. И на 10 тысяч вакансий на рынке будет 100 тысяч соискателей с соответствующими шансами на трудоустройство и 0,5 % вероятность просто продержаться до уровня мидла.
Но можно пойти от обратного и не ломиться в огромные ворота, а попытаться поискать какие- то маленькие воротца, которые вроде бы серые и неприметные, и уровни зарплат там явно меньше. Но выжить там ИНОГДА легче, и устроиться легче, и есть свои плюсы. В качестве примера (но не прямого указания, упаси Боже) можно взять программистов Cobol, который уже лет 20 как умирает, но все никак не умрет. Если есть отрасль ветка айти, по которой есть небольшая, но стабильная потребность в специалистах, и по которой мало или вообще нет модных курсов, то это МОЖЕТ быть ваш шанс, хотя гарантий и тут никаких нет, конечно.
Кажется, что кто-то начинает прозревать)
В целом я бы выделил 2 категории людей идущих в Айти.
Люди прошаренные, скорее всего достигли некоторого потолка в своей текущей профессии. Понимают все сложности, понимают что это долго и трудно. Понимают что есть риск не дойти.
Люди наивные. Услышали рекламу, прошли экспресс курсы. Им кажется что работа их мечты за углом. Обязательно есть какой-то знакомый, который вот так с нуля зашел и уже зашибает 100500 денег.
У первых есть неплохой шанс. У вторых вторых чистое казино.
"Выбери себе работу по душе и тебе не придется работать ни одного дня в своей жизни" - (с) Конфуций.
По моим наблюдениям, если действительно увлечён, прям горишь своим делом, то быть может будет не совсем как на красивой картинке с рекламы IT курсов и не на пляже в Тае (хотя, почему бы и нет?), но успеха добьёшься!
Любую работа по душе можно превратить в проклятый кошмар, используя передовые техники аджайл, скрам и канбан.
Слышал мнение, что авторство Конфуция довольно спорно. Аргументы против были приблизительно такие: во времена Конфуция возможность сменить род деятельности, а тем более свободно выбрать практически любой из существующих, была крайне ограниченной, практически такой возможности не существовало и люди в подавляющем большинстве оставались в одной профессии пожизненно. Отсюда делается вывод, что мудрый Конфуций едва ли предлагал спорные с точки зрения доступности подавляющему большинству практической реализации решения.
Не знаю, автор ли Конфуций, но вполне мог быть.
Даже если смена профессии невозможна, ее можно выбрать в начале пути. Иногда возможности для этого ограниченны (куда родители пристроили, туда и иди), но тем не менее возможность выбора часто была. Впрочем, подозреваю, что для людей социального уровня Конфуция (потомок знатного рода) при желании и сменить профессию особой проблемы не было.
Немножко не о том статья. Прочитав, кажется, что единственный путь попасть в IT - это курсы. А они не работают. Замкнутый круг. А разве это единственный путь? Из легких, наверное, да. А вот получить соответствующее образование и прочитать гору технической литературы, разве не легитимный путь в IT?
Теперь про посыл, мол, без знания алгоритмов и математики... Встречал двух технических директоров, они в прошлом адвокаты, да что далеко ходить - создатель Vue.js художник по образованию. Если у вас со здравым смыслом всё хорошо, никакие алгоритмы не нужны, почитав чужой корпоративный код и пройдя множество ревью, это уже будет на уровне интуиции. Алгоритмы звучат страшно для начинающих, на деле там в основном оптимизация. А математики на уровне 11 класса, если помните, достаточно, чтобы работать кодером в 90% средненьких IT компаний и получать зарплату побольше чем у токаря высшей квалификации, платить ипотеку и два раза в год ездить на море. Большой плюс работы в IT - огромные перспективы, можно расти и расти при должном усердии и самосовершенствовании.
Я думаю, есть тут рациональное зерно. Среди моих знакомых, многие бы хотели работать в ИТ, кто-то даже пробовал. Если ты не ловишь кайф от сложных задач, то с развитием в ИТ будут проблемы. А значит и будут проблемы с повышением зарплаты, выгорание и т.д.
И даже пройти курс, становится проблемой, так как это не приносит удовольствия.
Мой совет, если при прохождении курса вы не получаете удовольствия от решения сложных для вас задач, от того, как растут ваши возможности - бросайте это дело.
Но, опять же, работать можно. На одной из работ была коллега, которая любила делать задачи, где уже есть пример и всё понятно, как делать (я такое ненавижу). И она занимала свою нишу, делала простые задачи, которые все знают как делать, но никто не хочет). Но будет ли это для вас удовольствием?
Чего греха таить, я в ИТ тоже пришел из за денег. Мне нравились две вещи: физика (наука) и ИТ. Если бы зарплаты были одинаковые, то я бы выбрал теоретическую физику. Но есть нюанс. ИТ мне нравились сами по себе, так как тут нет потолка, и всегда можно найти задачу, которая будет для тебя вызовом)
Откуда берутся такие люди, я в живую даже таких не видел никогда и не знаю ни одного. Ни одного человека такого, которому нравится решать тяжёлые задачи, да 99,999% людей вообще даже простейшие задачи не хотят решать, где хоть чуть чуть нужно подумать. Я сам ненавижу думать, просто это самое тяжёлое что есть на свете. Да я лучше вагон соли разгружу, чем буду пытаться решить математическую задачу. Это ведь даже противоестественно, мозг противится, он любит шаблоны и стремится всё упростить. Слава богу, что есть такие люди кому нравится себе мозг ломать, но это скорее исключение из правил
Ну не знаю, я как-то от написания целой книги по программированию получил в итоге удовольствие. Да и вообще всю жизнь писал пет-проекты ещё со школы. Порой довольно ресурсоемкие.
Ну, кто-то в телефоне в кликеры играет, а кто-то судоку разгадывает на максимальной сложности. И не сказал бы, что людей второго типа мало.
И она занимала свою нишу, делала простые задачи, которые все знают как делать, но никто не хочет). Но будет ли это для вас удовольствием?
А потом она с пустой - в смысле беззаботной головой приходила домой, и полностью погружалась в занятие своим любимым %hobbyname%, которое не получалось или вовсе никогда не думалось сделать профессией и источником доходов, от заниятия чем и получала то удовольствие, которое давало необходимый для не слишком интересной работы необходимый эмоциональный заряд. А работа - это только средства к существованию в общем и на %hobbyname% в частности.
Да, это всего лишь предположение, но разве оно не подходит под довольно немалое число реальных частных случаев?
Я отлично помню период когда IT было достаточно лузерской сферой, и круто считалось когда ты вышел в оффлайн и начал зарабатывать реальные бабки. Типа бросил программировать, стал мясником в топовых ресторанах.
Зарплаты уже падают, cложность собеседований и требования к соискателям растут, рынок отлично все отрегулировал. Дальше все просто - вы остаетесь либо с любимой профессией, либо с нелюбимой профессией.
Я отлично помню период когда IT было достаточно лузерской сферой, и круто считалось когда ты вышел в оффлайн и начал зарабатывать реальные бабки.
а когда это было? я так или иначе касался ИТ как только школу закончил в 99 году, когда участвовал в стройке местной городской сети и в те годы насколько я помню вполне себе котировалась специальность сисадмина и деньги там были… так было до 10х, после чего админы пришли в упадок и начался адовый рост в погромистах
Тема крутого IT возникла по моему где-то в 2017, до этого ни особо больших зарплат, ни, как следствие, армии желающих вкатиться туда не было.
Тема крутого IT возникла по моему где-то в 2017, до этого ни особо больших зарплат, ни, как следствие, армии желающих вкатиться туда не было.
смотря что понимать под большой зп. Я будучи сисадмином, получал 2000$ в далеком 2012. И как по мне, это была относительно большая зп
Возможно у меня искажение Мск - но это точно не было какой-то особо выдающейся зарплатой, скорее стандартная зарплата офисного сотрудника.
Моя знакомая акушерка в центре Лапино зарабатывала 200к тогд. Друг, занимающийся продажами оборудования покупал себе BMW 3, и так далее. Уж точно не было ощущения что я в какой-то престижной сфере.
Тогда зарплаты на пересчет в доллары у остальных профессий больше были так-то. У многих профессий с тех пор индексация очень сильно отстала от курсов валют
Тема крутого IT возникла по моему где-то в 2017,
я вернулся в ИТ в 14 году. зарплата миддлов тогда была около 100-150тыр, я как джун на яве (у меня не было коммерческого опыта) получал 100… и это было оочень неплохо по сравнению с остальными отделами (больше сотни получало менее 50% персонала конторы, московской, в финсекторе)
и в целом эта контора в принципе платила чуть ниже рынка
так что тема возникла гдето по окончанию кризиса 07-09 года
Вы наверное говорите про инженера-программиста ЭВМ в советском НИИ и про советского же мясняка, который торгует дефицитным мясом из под полы. Потому что иначе непонятно когда это круто было быть мясником. 80е вообще считаются золотой эпохой, когда написав на коленке space invaders можно было заработать миллионы долларов.
Я про такой настрой.
.
https://www.the-village.ru/food/kto-kormit/177103-petya-myasnik
Потому что каких-то особых зарплат по сравнению с другими отраслями в IT не было, поэтому люди искали призвание.
Зарплаты уже падают,
Вот этого пока не видел.
Давайте сравним профессию "ИТ" с другими.
Я был инженером-конструктором, подруга - экономистом. Давайте с ними и сравним.
1. "Постоянная работа за ПК" - удивительно, но внешне работа никак не поменялась.
Работники всех трех профессий целый день "смотрят в ПК и что то нажимают".
Меня просто "бомбит" о особой вредности в ИТ. Внешне работа почти всех офисных сотрудников почти неотличима.
2. Математика. У меня диплом теорфизика. Ничего сложнее пропорций не понадобилось за 15 лет .ИТ большой и математика нужна единицам. Скорее математическое образование полезно для понимании логики работы систем.
3. График. Вопросы решаются , скажем работаю ночью я крайне редко, при аварии. А дедлайны есть и в других профессиях. У конструкторов и экономистах они такие же.
4. Уровень зп. В реальности через 2 года нормального опыта она превышает доход "не топов" в конструировании и ведении экономики. За "200" от конструктора ждут быть "звездой" и перерабатывать до предела.
А теперь в чем смысл поста. В том, что заход в профессию облюбовали толпы маркетологов, что продают курсы лохам.
Очень огорчает, когда люди не воспринимают интеллектуальный труд как энергозатратный. Я аналитик и я не всегда работаю ограниченное время. Часть моего мозга всегда занята работой. Постоянно. 24/7. Даже во сне я могу решать какие-то рабочие задачи. Иногда встаю среди ночи, чтобы записать что-то. От этого очень устаешь. А если в день у тебя по 3-5 созвонов с разными коллегами...
Здоровый IT, который не развод инвесторов, не курорт, а напряжённая работа. Но не IT, ещё тяжелее, во всяком случае в наших странах. В IT есть место всем, это не только программирование, но и 3D и анимация и арт дизайн.
Интересно для кого эта статья? Если для школьников младших классов, то наверное норм.
Хнык, хнык. Везде нужно работать, чтобы заработать копеечку. В любой професии. Тем более на кого-то.
Не нравится, открывайте своё дело. Сеть кофеен или бизнес по сдаче в аренду жилья. Найдите директора и персонал, а сами картинки на пляже рассматривайте.
Ой, только на предпринимательскую деятельность, единицы способны.
И бизнес вести это много труда и рисков.
Ой, только на предпринимательскую деятельность, единицы способны.
И бизнес вести это много труда и рисков.
Но со стороны это не видно и нередко кажется, что бизнесмен ничего почти не делает, а деньги как бы сами по себе сыпятся ему в карман. Да как и программист, собственно - сидит себе целый день и в компьютер играется, разве нет?
Правильно, такими материалами и надо от конкурентов избавляться
Потому что я уже в нем варюсь?
Почему вам не нужно в IT