После того, как я написал статью «Почему не нужно учить Python первым языком», я на регулярной основе получаю много вопросов в личку, что лучше выбрать, как быть и так далее. Поэтому в этой статье я расскажу вам свои мысли на этот счет. И самое главное отвечу на «Священный Грааль» всех новичков: «Какой язык выбрать для обучения программированию».

За свою относительно небольшую карьеру, я прошел путь от продажника 1С, специалиста технической поддержки, QA-Manual, QA-Automation, QA-Lead, Developer. Поэтому у меня есть определенный опыт.



Вы никому не нужны


Когда в интернете пишут, что идет большой дефицит на it-специалистов имеется в виду дефицит людей, которые решают вопросы. Т.е. это специалист уровня middle+, который имеет боевый опыт на проектах (в идеале highload проектах), знает все вторичные инструменты (git/jira/testrail/IDE итд). Знает, как писать техническую документацию, как готовить код к ревью, как работать с продактом, тестерами и так далее. Знает паттерны энтерпрайз разработки, может в чистый код и так далее. Таких людей на самом деле мало.

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

Поэтому держим в голове, что если вы ранее не имели опыта в IT, либо только закончили универ и до этого нигде не работали – вы вообще никакой ценности не имеете для работодателя. Даже наоборот — будете вредить работе и отвлекать других спецов.

Технологии не имеют никакого значения


Вторая тема, которую любят обсасывать, это выбор языка программирования. В общем, это действительно имеет значение, но не в той плоскости, которую рассматривают новички.
Например, я хочу работать на python, потому что это лаконичный язык программирования, у него есть встроенные декораторы, математические либы и прочий сахар. Это все не имеет значения, которую могут позволить себе разрабы с 5+ летним опытом работы.

Когда вы все еще на старте, единственное, что должно вас волновать — это наличие работы на конкретном языке в том месте, где вы живете, либо где планируете жить. И в идеале работа начального уровня, либо в компаниях, которые по своей дурости (да, именно по своей дурости) решат вас нанять.

В месте, где я жил, был выбор пойти QA в компанию такси, которая разрабатывала систему автоматизацию приема звонков на Java, либо сидеть и сосать лапу с моим стремлением писать код на Python. Ибо в радиусе 2000км – не было ни одной вакансии на Python.

Кто-то скажет про удаленку. Я пробовал. Все вакансии, что были. Были от бодишопов, которые просто кинут тебя на боевые проекты и посмотрят, обосрешься ли ты на них или нет. И, честно сказать, уже со своим опытом, в 99,9% случаев новичок не справится. Реальные проекты с 50+ апп, конфигами с эншибла, кастомными авторизациями и прочим сложно-архитектурным кодом – сильно отличается от того, что новичок учит.

Поэтому все, что вас должно волновать при выборе языка – это наличие работы начального уровня на этом стеке.

Вам нужна строчка в резюме, и ничего больше


Карьеру программиста можно условно разделить на до момента получения первой работы программистом и после.

Я помню свой первый раз, когда я обновил свое резюме, и указал, что я 8 месяцев работаю энтерпрайз-PHP разработчиком (ZEND/SYMFONY) в относительно неплохой компании. Мне 5 дней поступало по 30-50 звонков со всего мира. Я чувствовал себя той самой девочкой блондинкой с того знаменитого мема с неграми. Причем мне шли предложения не только на PHP, но и на Java/.Net/Ruby.



А почему это все произошло? В моем резюме появилось доказательство, что я лучше, чем все те люди, которые кидают заявки после курсов айти, личного обучения, смены специальности и прочее. И вот тогда я уже смог придираться к тому, какой идет стек, какая оплата, условия и прочее.

Поэтому на начальном уровне вам нужно получить строчку в резюме, что вы работаете программистом. Любым способом, на любом стеке.

Лучше быть разработчиком на стремноСказатьРебятам-стеке, чем мечтателем без работы


Если кто-то вам пишет, что какой-то стек уныл, но вы можете получить на нем работу с большей вероятность, чем на чем-то модном молодежном — вам стоит рассмотреть его.
Гораздо проще менять стек, когда вы уже разработчик, когда вам платят хорошие деньги и вы не паритесь о том, на что жить, нежели учить что-то крутое, но «трудно конвертируемое в рабочее место» изначально и месяцами сидеть без работы.



«Какой язык выбрать для обучения программированию» — тот, что позволит вам получить первую работу разработчиком. А вот после этого вы уже можете извращаться, как угодно, хоть #F с Haskell учить.

P.S.: и не тратьте вы уже деньги на курсы, книги лучше.

Комментарии (129)


  1. jevius
    13.05.2019 08:05
    -9

    С такой манерой общения работу точно не найти. Хабр — не место для таких статей.


    1. Dolios
      13.05.2019 08:56
      -1

      Сударь, вы ханжа.


      1. kaleman
        13.05.2019 09:17
        +6

        Про "сосание елдаков" пусть пишет на помойке. Где ему и место.


        1. ttys
          14.05.2019 06:08

          Значит написал где надо? xD


        1. jevius
          14.05.2019 07:19

          Забавные комментаторы тут. Меня слили, а то же самое залайкали.


          1. aglgl
            14.05.2019 10:00

            Хабра давно уже не та.
            Но в любом случае хоть статься написанна и в странной манере, здравое зерно в ней есть.


          1. vassabi
            14.05.2019 10:18

            в вашем комментарии не было написано — на что именно вы жалуетесь, поэтому это «не то же самое залайкали».


            1. jevius
              14.05.2019 11:33
              -2

              Казалось бы, фразы типа "елдак", "херачить" и мемы не к месту — это будет основная претензия у воспитанного читателя, пришедшего за материалом по делу, а не на личный стендап автора.


              1. Terras
                14.05.2019 11:51

                Автор написал все по делу, хоть и резко. Ты же включаешь «правильного» болванчика, который «мама сказала, ругаться не хорошо» — отсюда тебя и сливают. В общем, набирайся опыта, работай в мужском коллективе, поймешь в чем дело.


                1. aglgl
                  14.05.2019 11:55

                  Тут больше дело в общественном мнение. Я тоже не вижу сильной разницы между двумя коментариями, но раз народ задизлайкал, значит разница всётаки есть и просто я её не замечаю.


                1. jevius
                  14.05.2019 12:43

                  Я пишу про то что объективно портит впечатление от текста. В чём тут дело? Лично мне ясно, как белый день


                1. VanquisherWinbringer
                  14.05.2019 13:50

                  Воистину. Когда не могут придраться к сути начинают придираться к форме.


              1. Neikist
                14.05.2019 11:51

                Лично у меня глаз натренирован такое пропускать и пока kaleman не написал — я эти выражения даже не заметил. Так то да, отвратительно, но без указания что именно — выглядит не очень понятно.


              1. MacIn
                14.05.2019 13:34

                Полагать, что все думают так же, как ты (таким же образом) — распространенное искажение.


    1. hatman Автор
      13.05.2019 11:01

      «С такой манерой общения работу точно не найти» — да, как-то с работой проблем нет. И куча других ребят знаю, кто тоже предпочитает говорить прямо, а не искать «подходящие слова», чтобы вдруг не задеть чьи-то чувства.

      Все же фраза: «Вам будет сложно найти работу» и «Вы будете сосать елдак» — имеют разную степень утверждения. И последнее, как бы это не было удивительно, доходит лучше первого.


      1. Mikluho
        13.05.2019 15:17
        +3

        Но, всё же, не стоит учить этому неокрепшую молодёжь… Их итак по подворотням плохому учат, нефиг это тащить в культурное сообщество.

        Говорить прямо и использую подзаборный лексикон — разные вещи.


      1. exception13x
        13.05.2019 15:22

        А еще доходит, что со вторым автор знаком не по наслышке. :)


  1. crustal
    13.05.2019 08:28
    +2

    Провокационная статья. Такое впечатление, что цель автора набросить на вентилятор и наблюдать процесс. Хотя, если подумать, то, при некоторых оговорках можно бы и согласиться, тем более, так красиво излагает «Лучше быть разработчиком на говно-стеке, чем мечтателем без работы».
    Сам заголовок «Какой язык выбрать для обучения программированию» сразу провоцирует вопрос «Кому выбрать и для кого выбрать?». На станции юных техников для 12-летних для программирования тележек на колесиках, чтобы ездили по линии? Тут одни варианты. Если те же школьники хотят выигрывать олимпиады по программированию, та, наверное что-то другое. Если на работает с документами в MS Office, и хочет облегчить себе жизнь, то может VBA. Если живет в провинции, в окрестности только одна контора, то начать с того, что там предложат, а не искать удаленную, — может и так, а может и нет, от человека зависит. Если у чкловека хороший английский, умеет общаться, в состоянии понять и принять правила (в т.ч. неписанные) по которым работает удаленный бизнес, то почему и не попробовать удаленную работу на каком-нибудь upwork. Осторожность, постепенность, здравый смысл, общение с теми, кто может подсказать разумную траекторию. Тогда выбор инструмента с чего начать довольно широкий, как по мне.


    1. Fenzales
      13.05.2019 09:12

      Провокационная статья. Такое впечатление, что цель автора набросить на вентилятор и наблюдать процесс.
      По-моему, это просто ответная реакция на орды «вкатывающихся в IT», которые задают этот вопрос :)


  1. anton19286
    13.05.2019 08:35
    +1

    не совсем понял, за что автор топит, за строчку про опыт в резюме или за работу над реальным проектом. про обязательный хайлоад тоже не совсем понятно. большая нагрузка обычно означает большую компанию, соответственно много разработчиков. то, как система будет вести себя под нагрузкой, определяется единичными решениями пары архитекторов, а не содержимым модулей от сотни манки-кодеров.
    и да, студент может приносить прибыль в первый месяц работы.


    1. ksbes
      13.05.2019 10:21
      +1

      Насколько я понял, автор топит за то, что не стоит сильно комплексовать и беспокоится на счёт языка при начале карьеры программиста. Надо просто начать программировать профессионально, а там уж как сложится.


      Я не очень с этим согласен: всё-таки старт немало определяет в дальнейшей жизни.
      Но большая доля истинны в позиции автора статьи есть: создание коммерчески успешного программного продукта — это сложный процесс, в котором непосредственное кодирование занимает не самое большое место. И многие навыки и умения, которыми необходимо владеть — не зависят от выбора языка.


    1. JustDont
      13.05.2019 12:02

      про обязательный хайлоад тоже не совсем понятно. большая нагрузка обычно означает большую компанию, соответственно много разработчиков. то, как система будет вести себя под нагрузкой, определяется единичными решениями пары архитекторов, а не содержимым модулей от сотни манки-кодеров.

      Человек, видевший вживую реальный боевой хайлоад — подобен человеку, не видевшему реальный боевой хайлоад. Но первый всё-таки лучше.
      Это, безусловно, зависит от специфики, но при прочих равных хоть какой-то опыт с хайлоадом, даже если сам программист его не проектировал и не писал, а только видел, да и то с расстояния — он оказывается очень полезен для самостоятельной работы, если в этой работе хайлоад вообще где-то может появиться.

      Почему это важно? Потому что здорово добавляет базового понимания, что можно делать, а что лучше не стоит. Человек, не видевший в глаза хайлоад — обычно даже не понимает, почему нельзя брать строки в качестве ключей информационных единиц, сыплющихся в систему со скоростью много штук в секунду. Ему не очевидно, что просто написав где-то «string», он сожрёт всю память на корню. Человек, который хайлоад видел — необязательно будет знать, как всё сделать правильно и хорошо, но он скорее всего осознает, что расходовать память или такты процессора на элементы в миллиардных объемах — это нехорошо, ДО того, как он этот код напишет и завалит нагрузочное тестирование (или прод), а не после.


      1. rjhdby
        13.05.2019 14:32

        Вот как раз сейчас думал, писать ли небольшую статью про "расходовать память или такты процессора на элементы в миллиардных объемах" и попался на глаза ваш комментарий. Это знак! :)


  1. vav180480
    13.05.2019 08:58
    -1

    Простите, я на прекрасное.it зашел? А нет, показалось, это хабр образца 2019


  1. knagaev
    13.05.2019 09:13
    +1

    Статья оставила ощущение какой-то… гадливости что ли. Как будто случайно во что-то вступил.
    Вторая картинка расставляет всё по своим местам. Если видеть себя, как центральный персонаж на ней, то да, можно топать на шоссе и ловить дальнобойщиков.
    Чистая провокация и ничего больше.


    1. MaM
      14.05.2019 06:25

      Мне почему-то жалко ее стало. Я сейчас не шучу, надеюсь она хотя бы любит свою работу.


  1. 411
    13.05.2019 09:27
    +3

    «Какой язык программирования выбрать» — советы от QA лида + 1С продажника.
    Настало похоже мое время написать статью о том, какой первый язык выбрать переводчику и какую первую машину гонщику. Ну и наверное какую первую болезнь вылечить врачу.


    1. hatman Автор
      14.05.2019 08:40
      +1

      Советы от:

      1С — продажника, который перешел в англоговорящую поддержку;
      Саппорта, который перешел в ручное тестирование;
      QA-Manual, который выучил JavaSE + TestNG + thucydides и перешел в QA-Automation.
      QA-Automation, который стал QA-Lead и стал ввести группу тестирования и все связки с CI/CD
      QA-Lead, который перешел работать на Enterprise Java
      Enterprise Java разработчик, который сменил стек на Enterprise PHP за большие деньги

      И все это начиная в жопе России, где есть три типовых дома, военная часть и радары.

      Другими словами, иди в жопу со своими «советы от QA лида + 1С продажника». У меня достаточная компетенция, чтобы советовать ребятам, как получить работу в сфере IT и пойти вверх по карьерной лестнице. А не сидеть и слушать советы, айтишников с 5+ лет опытом, которые уже могут порассуждать и повыдрачиваться попивая вискарик где-нибудь в московском баре: учить им Scala или Go и прочее. В разное время у людей разные задачи и проблемы.


      1. Neikist
        14.05.2019 08:49

        А я вот могу сказать что нужно сразу искать что нравится, ибо потом сложнее спрыгнуть когда уже имеешь нормальные деньги. Спустя 4 года с 1с практически с нуля пришлось начать kotlin/android.


        1. EugeneSemyonov
          14.05.2019 13:43

          Neikist, поддерживаю. В моей родной деревне программисты были никому не нужны, но были нужны сисадмины. В результате переходить с ЗП опытного сисадмина на ЗП программиста-стажёра не кайф. Мне в некотором смысле повезло, что я окончив универ по специальности ПОВТ попал в контору, которая хотела сисадмина выучить на программиста 1С. Но всё равно не то. Хочу писать на С++/Java/Swift, но уже не пойду работать программистом на этих языках, т.к. никто не предложит мне такой ЗП как я нынче получаю. Остаётся только фриланс да конкурсы чтобы опыта набираться. Так что считаю лучше определиться с языком пораньше и стремиться набирать опыт именно в разработке на нём. Выбирать язык нужно, имхо, из пересечения множеств «языки используемые в интересующей предметной области» и «языки востребованные на рынке».


      1. vt4a2h
        14.05.2019 10:03

        Как жаль, что уровень полемики так и не перерос «жопу России, где есть три типовых дома, военная часть и радары».


        1. exception13x
          14.05.2019 12:41

          Тут в комментах просто обязана быть ссылка на язык для таких программистов:
          Интерпретатор из подворотен


      1. 411
        14.05.2019 10:27

        Сергей НиНо ИзЖопыВыбравшийся из трёх типовых домов России, именуемый hatman, от крови 1С — продажника, Саппорт, Король ручного тестирования, Король JavaSE, TestNG и thucydides, Кхал QA и автоматизации, Разрушитель энтерпрайза и Отец программистов.


      1. 411
        14.05.2019 10:46
        -1

        Есть один нюанс — не всем нужно выбираться из жопы и просто выжить любой ценой. Равно как может быть много людей, которым именно это и нужно.

        Я не говорил, что все ваши советы всегда неверны, просто специфику развития в IT сфере вы явно не понимаете и субъективный опыт пытаетесь выставить как объективный. Рассмотрев ситуацию с разных сторон и пообщавшись с людьми с опытом, отличным от вашего, вы поймёте, что у каждого пути свои плюсы и минусы. И стоит опираться в первую очередь на цель, которую ставит себе человек, и на задачи, которые ему хотелось бы решать, а от них уже выбирать языки программирования.


  1. FForth
    13.05.2019 09:32
    +1

    Автор статьи — решил слить себе немного кармы. (сам себе примерно также слил некоторым комментарием к статье)

    P.S. Про выбор языка так ничего и не написал, а только про выбор говно-работы.


    1. hatman Автор
      13.05.2019 10:42

      1) Легко рассуждать о выборе технологии, когда ты уже программист и тебя хотят.
      2) Качество языка и платформы в целом, не сильно соотносится с реальным поиском работы.
      3) Хайп вокруг технологии, не сильно соотносится с реальным поиском работы.
      4) Не всегда желание решить проблему в лоб — работает. Типа, я хочу стать Java-разработчиком, вот я буду учить Java. Варианты идти в QA-Automation/PHP-разработчики, могут оказаться более быстрой дорожкой к этой цели. Если не говорить о том, что вообще с нуля в Java можно пробиться условно без студенческих стажировок.
      5) Карма дело наживное. Когда-то её сливают, когда-то повышают. Что по этому поводу беспокоиться.


      1. dustd
        13.05.2019 14:29
        +1

        Вы строго неправы по всем пунктам, кроме пятого.
        1) О выборе технологии легко рассуждать когда у тебя на руках ТЗ. И ни в каких иных случаях.
        2) Качество языка и платформы гарантирует твою востребованность чуть дольше чем на месяц, пока руководство не поймет, что инструментарий выбран неверно, а вас проще поменять чем учить.
        3) Хайп обычно разводится вокруг свежих языков и технологий. Когда опыта в них нет ни у кого. Сильно увеличивает шансы… Особенно если коррелирует с пунктом 2.
        4) Всегда есть Open Source. И, поверьте, контрибутить пару-тройку проектов, которые на слуху и востребованы — бонус сильно больший чем пара месяцев стажа в трудовой. А работать «в минус» можно только на том, к чему реально душа лежит.


        1. nrgian
          13.05.2019 17:47

          Качество языка и платформы гарантирует твою востребованность чуть дольше чем на месяц, пока руководство не поймет, что инструментарий выбран неверно, а вас проще поменять чем учить.


          PHP ничто не мешало быть «самым модным» и когда он был… гм… угловатым. Это сейчас PHP уже нормальный.
          А вспомните старые версии… и ничего — тогда был одним из самых востребованных языков в мире.


          1. dustd
            14.05.2019 10:54

            PHP — отдельная песня. У него просто небыло конкурентов (в этой нише вообще ничего кроме Perl небыло).


        1. rjhdby
          14.05.2019 08:29

          Всегда есть Open Source. И, поверьте, контрибутить пару-тройку проектов, которые на слуху и востребованы — бонус сильно больший чем пара месяцев стажа в трудовой.

          Так то да, только слабо коррелирует с голодным студентом, размышляющим, что ему учить, питон или скалу.


          1. dustd
            14.05.2019 11:16

            Итак.
            Имеется: голодный студент (или вчерашний голодный студент), желающий зарабатывать деньги на ниве разработки ПО, никогда такой разработкой ранее не занимавшийся (иначе уже что-то бы знал), обладающий достаточным количеством свободного времени, умением систематически и логически мыслить (иначе чего ему вообще в программировании делать?).
            Задача: выбрать язык программирования, который наилучшим образом подходит для изучения данным студентом в качестве его первого языка. «Наилучшим образом» подразумевает: простота освоения (сложность самого языка; наличие качественной документации; комьюнити или знакомые, которых можно замучить глупыми вопросами), востребованность на рынке (вакансии с его требованием не должны быть редкостью), язык развивается.
            Решение: несколько дней мониторинга «работных» сайтов. Получение статистики «как часто хотят, как давно хотят, сколько платят» и т.д. Гуглинг на предмет тех самых документаций и комьюнити, краткий экскурс в историю языков, пробы написать «Hello, мир!» на топе языков по результатам мониторинга (5-7 языков будет вполне достаточно). Попытка сделать для себя выводы.
            Наиболее вероятный ответ: идем учить JS (сам не думал что это напишу)…
            Если студент не может все это сделать (не умеет составлять четкий планы действий, гуглить, анализировать) — может ему в разработку и не надо? Все остальное — разговоры ни о чем.


            1. Neikist
              14.05.2019 11:55

              С рациональной точки зрения вы правы, но люди иррациональны. Некоторыми вещами человек будет заниматься с удовольствием и быстро расти, другими через силу и топтаться на месте. Какой вариант лучше? Да, есть в этом некий инфантилизм, но интерес к конкретному стеку тоже лучше учесть, иначе получим человека «не на своем месте».


              1. dustd
                14.05.2019 12:14

                Условия задачи предполагают отсутствие какого-либо стека на текущий момент. Я об этом специально написал. У людей, который могут и в программирование микроконтроллеров, и в веб-разработку, и в андройд с айосом — таких проблем нет. Тут все просто — пока не попробуешь — не поймешь. Вопрос заключается только в том, с чего НАЧИНАТЬ пробовать. А там, глядишь, вообще выясниться что призвание — пончиками торговать…


                1. Neikist
                  14.05.2019 12:16

                  Вот есть люди которые любят железо а все остальное на дух не переносят. Предлагаете им в js или 1с идти? А кому то интересно системы для предприятий писать, ему на C фигачить? Или человеку которому нравится визуал и дизайнить идти вместо ios в бекенд? Кроме вакансий еще и себя стоит проанализировать, к чему есть интерес и склонность.


                  1. dustd
                    14.05.2019 12:34

                    Я вам про Фому, а вы мне снова про Ерему. Если человек знает чем он хочет заниматься — вопрос «какой первый язык выбрать для изучения» снимается сам собой. Если же его знания из серии «хочу делать сайтики, это прикольно» или «вот бы научиться программировать эту железку» — все тоже самое, по моей схеме, но вычеркнув те языки, которые принципиально для этого не годятся.


                    1. Neikist
                      14.05.2019 12:38

                      Что в вашем комментарии, что в статье ни слова о том что выбирать можно по каким то признакам кроме максимальной востребованности у работодателей.


                      1. dustd
                        14.05.2019 12:55

                        Если выдирать мои ответы из контекста — да, ничего не написано. Только вот «простота освоения» у меня идет раньше «востребованности». А если рассуждать как вы, то человеку с безграничной любовью к математике следует учить фортран. Он ему очень пригодится, ага. А если человеку нравится визуал и дизайнить — пусть учит фотошоп и дизайнит. Толку будет больше.


            1. rjhdby
              14.05.2019 12:24

              Все равно непонятно, при чем тут OpenSource


              1. dustd
                14.05.2019 12:41

                Не более чем один из вариантов получения опыта. Который может котироваться сильно больше чем «работал на дядю, делал фигню». Не «будет», а именно «может». А совсем без опыта (даже «делал дома, на коленке») вы вообще никому нафиг не нужны. НО! Это вопрос не «с чего начать в профессии?» а «как устроится в профессии?». И, несмотря на кажущуюся идентичность, они разные.


    1. GarfieldX
      13.05.2019 15:09

      Автор, при всей удаленности от темы его опыта QA + 1Ass продажника, дал самый точный ответ. Сколько уже этих статей расплодили и будут плодить, а ответа правильного нет и не будет. Нельзя сказать, что вот такой то язык принесет вам счастье, славу и много денег. Нормальный разработчик должен уметь писать на чем угодно. Главное — чтобы голова соображала правильно. Язык — это уже инструмент, хотя и определяющий область. Но и в каждой области сейчас вагон вариантов. Автор хотел сказать, что не стоит уподобляться начинающему землекопу, который хочет работать лопатой только определенной фирмы и только на определённом типе почвы, а сам еще ни разу лопату не трогал :)
      В общем, в большинстве случаев, стоит устроиться куда получится, а потом сам себе сможешь ответить.


  1. exception13x
    13.05.2019 09:36

    В опросе не хватает пункта «на мой стек вакансий не завезли пока».


  1. kuftachev
    13.05.2019 09:39

    100% согласен, но с дополнением о знакомых, которые могут помочь получить первую работу или хотя бы стажировку.


    Я так вначале потерял кусок времени потому, что "PHP — это не крутой язык", хотя был друг, который мог на стажировку взять в самом начале, пусть даже первое время без денег, тогда не так критично было.


    P.S. Через время все равно пришлось и на PHP поработать, реально хороший современный язык, со своими плюсами и минусами, не буду писать о них свое мнение, чтобы не разводить холивар.


    1. Hivemaster
      13.05.2019 09:46
      -1

      image


  1. xfaetas
    13.05.2019 10:11
    +2

    Актуально, если тебе совсем нечего есть и работа нужна вот прям щас. Для тех, у кого есть доход и работа, при желании её сменить лучше потратить больше времени и освоить то, что нравится и перспективно, а не лезть в любое гуано, лишь бы это было айти.


  1. SergioSergio
    13.05.2019 10:49

    Что такое Бодишоп?


    1. hatman Автор
      13.05.2019 10:52

      Аутсорс компания-посредник. К ним приходит клиент, говорит нам нужно допилить вот этот проект. Те говорят, хорошо, вот есть Вася, он будет стоить вам 50 долларов в час. Клиент соглашается и Вася начинает напрямую работать с клиентом фактически. Васе платят 25 баксов в час, разницу забирает бодишоп.


      1. NishchebrodKolya2
        13.05.2019 11:02
        +1

        Спасибо, а то я бы так и думал, что это место где хипстеры на остальном теле волосы стригут (не на бороде).


        1. oracle_and_delphi
          13.05.2019 11:57

          Стригут девушкам? Собственноручно? В разных местах? :)


        1. reb00ter
          13.05.2019 14:05

          это барбершоп )


  1. Golovanoff
    13.05.2019 10:57

    Судя по КДПВ, автор — суровый дальневосточник. Этим и объясняется жесткий стиль примеров и изложения :)


    1. MaM
      14.05.2019 06:28

      Ну есть вероятность, что он возможно сибиряк. Сам таким был, досихпор сочатся временами токсины, но вообще мы добрые люди.


  1. Romario21
    13.05.2019 11:27
    -2

    Вообще пофиг на чем писать. Любой стек — это неделя на раскачку


    1. Gryphon88
      13.05.2019 11:49

      Вы как-то чересчур оптимистичны. Когда надо знать или железо, или предметную область — требуется сильно больше (ну или получается фигово).


      1. vassabi
        13.05.2019 11:55

        для знания предметной области — product owner. Он отвечает за генерацию ТЗ, за уточнения и за приемку в продакшен. За непротиворечивостью ТЗ пусть следят уже qa или девы или даже выделенный аналитик. Но за «вот мне нужно чтобы оно вот это вот делало и вот так вот показывало» при старте проекта и посидеть, потыкать в готовое приложение в финале проекта — от программиста этого не то что требовать, а даже ожидать никак невозможно (ну, если только это он пишет сам для себя).


        1. Gryphon88
          13.05.2019 12:03

          Я про более узкую предметную область, например, BLAS/LAPACK. Чтобы их правильно готовить, надо знать математику выше школьного уровня. Не всем программистам она нужна, и не все её знают, так что при переходе от веб-разработки к разработке CAD или игрового движка можно в названную неделю не вписаться.


          1. vassabi
            13.05.2019 15:14

            при переходе от веб-разработки к разработке CAD или игрового движка
            увы, я бы хотел чаще заниматься всякими игровыми движками (сейчас вот уламываю заказчика перейти-таки на кафку, а не ждать что его MVP с мариядб и проч. не загнутся в проде под реальной нагрузкой), пока что веб и околовеб встречается гораздо чаще… (если не уговорю — забью на него и уйду к чувакам, которые пишут что-то для autodesk, может они таки не врут и у них действительно CAD).

            например, BLAS/LAPACK. Чтобы их правильно готовить, надо знать математику выше школьного уровн
            с нуля такое поднять — это одно. А вот продолжить существующий проект, так это можно со второго дня начинать коммитить изменения\фиксы.


            1. Gryphon88
              13.05.2019 15:29

              CAD и движки я привёл в качестве примера, когда математика будет необходима в работе.

              с нуля такое поднять — это одно. А вот продолжить существующий проект, так это можно со второго дня начинать коммитить изменения\фиксы.
              Косметику-то наводить не сложно, но в статье говорится об уровне миддл+. Так что тут могут быть ситуации «СЛАУ не решается/решается медленно», «Из-за выбранного алгоритма накапливается ошибка округления», «Метод интерполяции не подходит»… Пытаться на профессиональном уровне за недельку раскурить вычмат, дискретку и линейную алгебру… как-то не продуктивно :)


              1. vassabi
                13.05.2019 15:41

                Если не было в универе вычмата, дискретки и линалгебры — то конечно нужно быть самородком, чтобы это раскурить.
                На практике я редко видел проблем из продуктовой области.
                Во-вторых, на самом деле было бы приятно видеть задачи вида

                «СЛАУ не решается/решается медленно», «Из-за выбранного алгоритма накапливается ошибка округления», «Метод интерполяции не подходит»
                . В таких постановках понятно что «не так», куда курить и как померять — изменения таки лечат или калечат.
                Чаще звучат задачи: «нажимаю кнопочку — а у него память заканчивается» или «крешит после НН времени» или «а нельзя ли сделать чтобы побыстрее?»
                Соответственно и решаются они сначала удвоением железа, потом разбиением задач на подзадачи (а тут уже могут быть и графы с матрицами, но редко), и только потом уже идут алгоритмы\низкоуровневые оптимизации (которые завязаны на алгоритмы).


                1. Gryphon88
                  13.05.2019 15:55

                  Я не говорю, что такие проблемы встречаются часто, только то, что они есть, и в определенных областях, в первую очередь тех, где работаем не с абстракциями, а с симуляцией или измерениями, они встречаются чаще. Учитывая, что многие «вошли в IT» самоучками без профильного образования, встрять можно очень крепко.


    1. vassabi
      13.05.2019 11:49

      с одним только но — лишь бы уже была готовая инфраструктура (сервер, сетка, виртуалки с впнами и паролями\логинами). Чтобы фигак-фигак и можно было смотреть, как оно работает (ну или неработает) в продакшене.


    1. 776166
      13.05.2019 11:58
      +1

      Такой талантливый и на Хабре!…


      1. vassabi
        13.05.2019 12:08

        Он же не уточнил про качество кода и про зп :)
        А так — мне вот тоже «пофиг на каком стеке и на каком языке писать» (с).


    1. JustDont
      13.05.2019 12:06

      Неделя — это на написание хеллоуворлда (или to do list, что в нынешнее время одно и то же) без подглядывание в туториал и с базовым пониманием того, как это под капотом работает.

      Делать что-то несложное на этом стеке через неделю — можно. Доучиваясь в процессе, и на это доучивание может уйти очень много времени. Сложное — тоже можно, но потом через энное время может выясниться, что начав писать код, вы радостно боролись с вашим собственным неглубоким пониманием стека, а не с задачами.


    1. Whuthering
      13.05.2019 15:43

      Ага, я прям представляю, как javascript-фронтендер или java-энтерпрайзник за неделю начнет писать на C++ хайлоад или драйвера для железа…


      1. vassabi
        13.05.2019 15:53

        ну хайлоад не всякий С++-ник начнет писать за неделю, а драйвер… хз… ну разве что для хайлоад железа — там тоже «много гитик», а для простого железа может и «ужас», но не «ужас-ужас» (с)


        1. ksbes
          13.05.2019 16:15

          В джуновские времена я, будучи чистым WEB бэкэнд Java-разработчиком въехал и написал за две недели (+две недели на отладку и доводку "на месте") программу для электронного замка (с карточками и кодовой клавой) на C для атмеги. Делов-то :).
          Но у меня лид был — зверь (и затейник), в хорошем смысле этого слова.


          (P.S. спалил всего одну отладочную карту в процессе :) )


          1. Whuthering
            13.05.2019 17:01

            В Cи++ способов самоубиться все-таки побольше будет чем в Си, а под микроконтроллеры к тому же часто пишут без динамической памяти, что существенно понижает вероятность нарваться на неприятности по незнанию или невнимательности.


        1. Whuthering
          13.05.2019 17:06

          Ну зависит от того, на чем человек раньше писал. Если это был язык без острых подводных камней и с хорошей стандартной библиотекой, программа на котором выполняется в управляемой среде со сборкой мусора, а потом человека сажают писать код близко к железу, с ручным управлением памятью (или даже со смарт-поинтерами, которые тоже имеют свои тонкости), всякими приколами типа виртуальных деструкторов и возможным undefined behaviour во многих интуитивно неочевидных местах, количество «ужасов» там может быть весьма немалым.


          1. ksbes
            13.05.2019 17:16

            Ну есть "ужас", есть "ужас-ужас", а есть "надо чтобы оно работало хоть как-то". Java чем хороша — прививает "правильные" привычки. Там разделение ответсвенностей и т.д.
            И человек начинает велосипедить свой недоменеджер памяти и т.д. Оно хоть и велосипеды, но работает. Медленно — но не падает и почти не виснет. Этого чаще всего достаточно.


            Хотя так и не правильно, конечно. Но как показывает практика: индусский код — самый коммерчески успешный.


    1. 0xd34df00d
      13.05.2019 19:20

      Окей. Верифицированный физзбазз на идрисе или агде сможете за недельку?


      1. vassabi
        13.05.2019 20:11

        о, а у вас удаленка для тех кто напишет есть?


        1. 0xd34df00d
          13.05.2019 20:22

          Сам бы не отказался.


          1. vassabi
            13.05.2019 20:23

            вотжеж, а я уже было начал качать бинари Идриса и стряхивать пыль с самоучителя по хаскелю (увы, продакшена на нем мне пока не попадалось)!


            1. 0xd34df00d
              13.05.2019 20:29

              С продакшеном на хаскеле таки сильно проще, чем с продакшеном на произвольных доказывателях теорем.


  1. 776166
    13.05.2019 11:51

    Я чувствовал себя той самой девочкой блондинкой с того знаменитого мема с неграми. Причем мне шли предложения не только на PHP, но и на Java/.Net/Ruby.


    В последнее время я нахожу забавным лично отвечать каждому HR, который вообще не попадает в стек, что он конченный непрофессиональный дибил и ставлю копию руководству или куда получается дотянуться с просьбой уволить этого идиота и вообще, чтобы тщательнее было в их говноконторе.

    Ещё забавнее то, что в резюме я отдельным пунктом вынес, что тот, кто связывается со мной по поводу другого стека автоматически становится идиотом. Но идиотов, как и следовало ожидать, это не останавливает.

    PS Чутка холивара. Что характерно, на Java/.Net/Ruby PHP-программисту присылали, а на Python — нет. Что как бы намекаэ…


  1. Shpiler
    13.05.2019 11:53

    Неправда ваша. Начинать учить язык когда уже вотпрямщас нужна работа — ну так себе идея. Джуну найти место с зп больше чем у официанта — практически нереально. Изучайте то что лучше позволит вам понять область где собираетесь трудиться. В моем случае это был чистый С ибо интересовала робототехника и всякое железо. Кому интересен веб, фронт и всякое такое — спросите тех кто в той сфере работает. И пилите свои проекты, изучайте как устроен этот мир, он гораздо сложнее чем просто язык. А когда придёт время устраиваться работать программистом — эти базовые знания позволят вам работать на любом языке. Я вот на первом месте работы разрабом просто наврал что знаю питон. И ничего, выехал на тех знаниях что были, и очень даже неплохо выехал


  1. Brenwen
    13.05.2019 12:02

    Хочу спросить совета, кажется в этой теме это будет уместно. Работаю python разработчиком уже второй год, начав фактически с нуля и самоподготовки, большей части того, что знаю, научился уже на работе. Сейчас жена и мать выносят мозг, что мне надо обязательно получить второе высшее как программист (первое — физика в БГУ), потому что «без диплома ты не программист» и «сейчас вас там всех прижмут и кто без диплома будут штрафовать». Сам я считаю, что в IT бумажка никому не интересна, а важны реальные знания и навыки, которые нарабатываются только практикой. Те же знания, что там можно получить, будут либо повторять уже имеющиеся, либо окажутся неактуальными или на практике бесполезными. Подскажите, кто прав? Даст ли второе высшее что-нибудь полезное для знаний, для карьерного продвижения, для востребованности как специалиста или это будут зря потраченные деньги и время?


    1. Terras
      13.05.2019 13:26

      Ну в гос-компании тебя возможно не возьмут без диплома. А другие компании возьмут тебя, тем более с дипломом физика.


      1. Shpiler
        13.05.2019 13:30

        Не только гос. У многих в типовой должностной инструкции написано "высшее техническое"


    1. Free_ze
      13.05.2019 13:29
      +1

      Платиновые вопросы задают сюда


    1. Gryphon88
      13.05.2019 13:40

      Научникам часто нужен «программирующий учёный», там требования к диплому по программированию, качеству кода и используемому стеку примерно никакие.


      1. Free_ze
        13.05.2019 14:44

        Часто бывает нужен профессиональный программист, который из алгоритма «программирующего ученого» сделает продукт. Там требования как раз такие, что даже профильный бакалавриат может не прокатить.


        1. Gryphon88
          13.05.2019 14:48

          Бывает, но редко, и такие обычно сидят по вендорам. Чаще в науке используется код, который запускается разы и одним человеком. Например, программирующий нейрофизилог, который может самостоятельно «обмолачивать» ЭЭГ для статей (не в реальном времени) стоит дороже, чем просто хороший нейрофизиолог.


          1. Free_ze
            13.05.2019 15:02

            Бывает, но редко

            Не то, чтобы редко. Почти наверняка в R&D-отделе любой конторы, связанной с железом.

            Чаще в науке используется код, который запускается разы и одним человеком.

            Это не означает, что код может быть отвратительного качества. Неделя и год процессорного времени — это может быть ощутимой разницей.


            1. Gryphon88
              13.05.2019 15:19

              Я имел в виду академическую науку, где продуктом является статья. Код обычно правда отвратительный, и его justification (как это по-русски?) часто никто не замморачивается: примерно четверть статей можно отзывать. Код обычно делает то, что хотел автор, но он мог выбрать неверный способ обработки данных. Собственно, ситуация как со статистикой. Оптимизацией никто тоже особо не заморачивается: можно поставить считаться на обед, на ночь или на выходные.


              1. Free_ze
                13.05.2019 15:36

                Я имел в виду академическую науку, где продуктом является статья.

                Кого может заинтересовать такая работа? Ни денег, ни интересных проектов, ни полезного для рынка опыта. При этом нужно быть способным разрбраться с предметной областью, а такие найдут себе и более приятное дело. Вот сами ученые и осваивают мат.пакеты или дружественные к любителям языки, становясь «программирующими учёными». (На истину не претендую, но с массовым привлечением программистов для академической науки я не сталкивался. Едва ли появляются бюджеты, чтобы привлечь еще одного специалиста.)

                Оптимизацией никто тоже особо не заморачивается: можно поставить считаться на обед, на ночь или на выходные.

                Это ведь от задачи зависит) Данных может быть много, а алгоритмы — достаточно сложными. Если выходных и даже отпуска не хватит?


                1. Gryphon88
                  13.05.2019 15:47
                  +1

                  Вот сейчас обидно было :) Всё есть, денег поменьше, чем в «кровавом энтерпрайзе», просто фокус смещён с программирования — это необязательный, хоть полезный и прибыльный, навык. Вопрос в начале ветки я прочитал не как «Хочу много зарабатывать программированием», а как «У меня диплом физика и знания по программированию. Нужен ли диплом по программированию, чтобы поднять свою ценность».


                  1. Free_ze
                    13.05.2019 15:58

                    В «кровавом» и даже прикладной науке «источник вдохновения» очевиден, а здесь как? Но откуда же деньги, если нет ликвидного продукта? Гранты? А если не взлетит, то чем платят программисту?

                    Или же это в первую очередь ученый, который участвует в написании статьи, развивая свою карьеру ученого, а не наёмный программист, который решает конкретную проблему учёного?

                    фокус смещён с программирования — это необязательный, хоть полезный и прибыльный, навык

                    Здесь конкретно интересует прибыльность (= Если наш условный ученый программированием не зарабатывает.


                    1. Gryphon88
                      13.05.2019 16:03

                      Да, программирует непосредственно автор статьи, штатной единицы программиста в лаборатории почти всегда нет. В Европе научникам платят нормально, это в СНГ, что с программирование, что без науку лучше рассматривать как хобби. И вдохновение с интересом в науке очень даже есть.


                      1. Free_ze
                        13.05.2019 16:10

                        Под вдохновением я подразумевал источник финансирования)

                        То есть программирование здесь — вспомогательный навык и программистом этого человека звать не корректно. Как, например, врача — секретарём лишь потому, что он должен вести карточки пациентов. (Хотя, точнее всего дадут определение записи в трудовой)


                        1. Gryphon88
                          13.05.2019 16:16

                          Да, именно так. Просто такой учёный более продуктивный: условно, вместо того, чтобы лопатить данные в статистическом пакете, он пишет на R. Python, MATLAB, Fortran, Tcl, Java тоже вполне находят своего учёного-потребителя.


    1. oracle_and_delphi
      13.05.2019 15:01
      +1

      высшее… первое — физика в БГУ
      Изученного вами физмата более чем хватит практически везде, где в задачах программирования столкнётесь с математикой (это именно то обо что расшибаются в программировании те, кто не имеет вышки, или вышка у них чисто гуманитарная).
      Для большей уверенности, можете дополнительно ещё почитать по теории «Алгоритмы: построение и анализ», а также Кнута «Икусство программирования».


    1. BigFlask
      14.05.2019 12:31

      Образование по профилю может очень много дать, когда решите трактор завести.


    1. dustd
      15.05.2019 11:21

      Первое, и очень важное: задача любого ХОРОШЕГО высшего образования — не вбить в голову какие-то знания, а научить человека УЧИТЬСЯ. В этом плане образование физика — одно из наилучших. Как физик говорю )))))
      Второе: 99% ВУЗов не дадут вам специфических знаний, которые относятся непосредственно к программированию, и которые вы не сможете получить самостоятельно, при наличии желания.
      Третье: когда меня спрашивают, почему у меня не профильное образование (на самом деле этого не происходит уже лет 15), я прошу перечислить хотя бы 3 ВУЗа или 6 факультетов разных ВУЗов, которые готовили именно программистов (с соответствующей специальностью в дипломе) в 1998 году. Вопросы отпадают мгновенно.
      Четвертое: если работодателю нужно, чтобы у меня было именно профильное высшее — готов его получить. За его счет и со всеми вытекающими, типа отпусков на сессию и т.д. Вопросы отпадают еще быстрее.


  1. i360u
    13.05.2019 14:28

    Слишком категорично для столь неоднозначного вопроса. Мне попадались новички, работа с которыми мне приносила удовольствие и у них было чему поучиться. Мне попадались опытные разработчики, с законсервированным мозгом, не способные ни на какие отклонения от того к чему они привыкли. Нужны вы кому-то или нет — зависит только от вас.


  1. vabolshakov
    13.05.2019 14:39

    Я нанимаю студентов, которые только что закончили колледж/вуз, учу их тому что мне от них нужно в течение 1-3 месяцев и они уже в первый месяц обучения генерят мне прибыль. Не многие компании имеют компетентных сотрудников способных обучать, это да. Ещё статья пронизана совком — «в радиусе 2к км нету никакой работы», вы в тундре что ли живёте? Ну так раздавайте свои советы оленеводам, зачем вы на хабр постите? Факт в том, что почти любые современные трендовые стэки пользуются спросом. В одном соглашусь — действительно крайне желательно получить строчку в резюме, но для этого не обязательно обмазываться говном всякими там перлами и вставать в позу, достаточно пройти серьёзный воркшоп и запилить с нуля небольшой проект, о чём рассказать в резюме. Вопрос лишь в том хватит ли у человека мотивации без указки сверху делать это для себя. Вы ещё скажите что без высшего образования на работу не устроиться, лол.


    1. Terras
      13.05.2019 14:59

      Ожидал увидеть что-то в стиле. «Вот ссылочка на мой воркшоп. Всего 2000 баксов. И через неделю за тобой выстроится очередь из влажных хрюш». Зашел в профиль, а там коворкинг в тае. Вы похоже нормальный, а не очередной курсовод =)


      1. vabolshakov
        13.05.2019 15:13

        Я провожу воркшопы, но они бесплатны. Я зарабатываю на том что потом нанимаю тех кого обучаю, а коворкинг в Тае уже не соответствует жизненным целям и с осени закрыт, надо бы обновить страничку на хабре))
        А вообще был у нас один постоялец-американец, он после школы окончил 3х-месячный воркшоп по RoR и устроился мидлом, думаю заплатил он за этот воркшоп как минимум 2к, но факт в том что оно того стоило. Вместо 5 лет в универе и молений «ну хоть бы кто-нибудь нанял» — 3 месяца вокршоп и нахождение работы без проблем, потому что воркшопы, в отличие от универов учат актуальным вещам и дают то, чего хочет рынок, а не пресмыкаться перед преподами за оценочку.


  1. Mikluho
    13.05.2019 15:14

    Да, зло… И упущен один важный момент — кому выбирать?

    Если «программирование==многобаблоса», то именно тот путь, что указал автор, самый лучший. Главное только в нормальные конторы не соваться.

    Если из понятных профессий, к которым хоть как-то душа лежит и ум расположен — то первому месту работы стоит уделить больше внимания. Надо понять, что без реальной практики не обойтись, но сильно лучше, если эта практика будет в той области, которая на самом деле интересна. А пока ищется нужное — надо заниматься самообучением и строганием пет-проектов. И пробовать, пусть даже бодишопы, или напроситься в подмастерья за минимум денег — реальный опыт того стоит.

    Если программирование где-то возле призвания, то и обучение и опыт набирается с опережением графика официального обучения. Тут ничего не поделать — начинать учить что-то правильное после 20 уже не то что поздно, но среди ровесников вы будете выглядеть не в лучшем свете. Но хватать и учить надо почти всё подряд. Даже если прямо не пригодится, опыт изучения и освоения (да, теория без практики не сильно полезна) сильно поможет и с поиском и с самой работой.

    PS
    мой первый язык программирования — байткод мк-61 :), просто потому что это ближе лежало.
    Первый опыт зарабатывания денег — VBA (3-й курс), хотя к тому времени я уже знал basic, c, c++, pascal, assembler… Почему так? Халтурка подвернулась. А потом ещё несколько лет на этой нише подзарабатывал, даже в кризисный 98-й.
    И всё это мало похоже на то, чем я занимаюсь уже почти 20 лет.


    1. vassabi
      13.05.2019 15:23

      мой первый язык программирования — байткод мк-61

      оооо! жму вашу руку!
      родимое пятно! я - твой брат!


      1. Mikluho
        13.05.2019 15:41

        Да, «техника молодёжи» и «наука и жизнь» — наше всё. Особенно второе — там много интересного было, и даже разбор архитектуры этой серии калькуляторов… И какие были алгоритмические выкрутасы на 105 байт программной памяти, 15 регистров и стек. Вот где школа программерской жизни!
        А самое полезное, что я на нём написал — это программка для операций над комплексными числами, очень пригодилась на электротехнике.

        Про пролог я уже не вспоминаю, слишком давно это было.


        1. vassabi
          13.05.2019 15:49

          да микрокалькулятор мне неплохо пригодился в школе — считать на уроках (никто не умел на нем считать, хаха, привет обратной польской записи). Увы, «наука и жизнь» с разбором этой серии мне встретилась уже после универа (пошел, протер с него пыль и положил его обратно).

          PS: Вот после пролога очень хорошо в эрланг заходить (как минимум — гоораздо меньше сюрпризов).


          1. Mikluho
            13.05.2019 15:56

            Мне повезло — у нас была подписка, каждый месяц с нетерпением ждал нового выпуска, и это были времена сильной популярности этих микрокалькуляторов.


      1. MacIn
        13.05.2019 18:00

        и дизассемблируя игры из журнала «Техника-молодежи» для БЗ-34.

        Эмм в смысле «дизассемблируя»? Те программы и так в мнемокодах (обозначениях клавиш) записывались же.


        1. vassabi
          13.05.2019 18:26

          восстанавливая из «нажатий клавиш» команды, а потом из команд — логику работы (где какие числа хранятся, где ввод\вывод, где что вычисляется и т.д.)


          1. MacIn
            13.05.2019 19:05

            А, декомпиляция тогда уже. Но да, интересный опыт. МК-61 и сейчас лежит на полке, на расстоянии вытянутой руки. Всякие посадки на Луну и пр. — не забыты.


  1. Tanner
    13.05.2019 17:16

    Я вижу, автор подержал статью в черновиках, пообтесал её, убрал особо явные триггеры. Но всё равно я не согласен с ней по многим пунктам сразу.

    Во-первых, конкретно для питонистов уже 5-6 лет назад было просто море работы начального уровня. Я тогда как раз переквалифицировался из админа в кодеры, подучил Python/Django/Scrapy и пошёл на русские фрилансерские сайты: где кнопочку поправить, где утилитку написать, и только моя лень помешала мне заработать там все деньги мира.

    Шучу, конечно. В финансовом плане фриланс позволил мне свести концы с концами, не более. Но в профессиональном я здорово вырос и получил кое-какое портфолио, чтобы найти работу уровня мидла сначала в своём городе (!), потом ? удалённо.

    Во-вторых, я не понимаю зацикленности автора на местном рынке труда. Если бы я искал работу только в своём Хабаровске, я бы в любом случае или перерабатывал, или недополучал, а скорее и то, и другое сразу. Независимо от востребованности моего стека технологий. IT на то и IT, чтобы иметь выбор.

    В-третьих, нельзя всем подряд советовать учить самый популярный стек даже из самых прагматических соображений. Это просто близоруко. Конечно, если ты раньше не имел дело с программированием, но знаешь немножко сети, или HTML, то проще будет подучить PHP. Но если идёшь в IT из математики, то, наверное, быстрее освоишь Haskell или R и найдёшь хорошую работу, чем будешь ковырять веб на уровне джуна.

    Не говоря уже о том, что есть такие «вайтишники» (а иногда и выпускники профильных ВУЗов), которые, как ни стараются, просто физиологически не могут усвоить самых базовых вещей: присваивания, циклов, булевой алгебры. Вот им какой стек не сватай, всё мимо. А те, кто к категории необучаемых не относится, пусть лучше учат то, к чему больше душа лежит, но качественно, чем полистают «PHP для чайников» и фигак-фигак в продакшн.


  1. vvadzim
    13.05.2019 17:25

    Любимый стек — react.
    Первую работу получил на Borland Pascal.
    Хотя… меня тогда возбуждало всё, что жило в ОЗУ.


  1. potan
    14.05.2019 08:06

    C+asm, Perl, C++, Haskell, Scheme, Haskell+Scala, снова плюсы, снова Scala…
    Мне почти всегда нравился стек, с которым я работал. Кроме случая, когда вынужден был вернуться на C++ и пощупать Qt.


  1. aglgl
    14.05.2019 10:08

    По большей части я согласен с автором в том, что надо писать и учить то что подвернулось.

    Можно конечно воротить нос как многие пишут и говоить я буду делать то что Я хочу, но для таких фраз нужно иметь очень большую материальную подушку, или просто быть финансово независимым. Для простых смертных которым нужно зарабатывать и кормить семью данный вариант на врятли подойдет, ибо деньги нужны здесь и сейчас.


  1. crustal
    15.05.2019 12:35

    P.S.: и не тратьте вы уже деньги на курсы, книги лучше.

    Немного напрягает, когда кто-то излагает в повелительном наклонении, что делать, а что не делать. Но с учетом, что это наброс на вентилятор, то нормально. Насчет того, что лучше курсы или книги. Да по разному, it depends, как говорится, IMHO.

    Взять, к примеру, те же курсы столь нелюбимой многими здесь Microsoft, которые, к примеру, есть на edx по довольно широкому спектру технологий. Не гарантируют, понятно, что вы станете успешным практическим специалистом, но технологиям учат очень хорошо на мой взгляд, если есть стремление. Их пацаны как преподаватели порой на мой искушенный (как мне кажется) взгляд — просто супер. Такие курсы не отменяют книги, а наоборот, при правильном выборе книги очень хорошо дополняют ее. Microsoft привел только для примера, пока что их преподы впечатлили меня больше остальных.


  1. PahomU
    15.05.2019 13:16

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


    1. rjhdby
      15.05.2019 13:24

      Самый худший совет, какой только можно дать про обучение — это "учить плохо". Безотносительно того, что именно учить.


    1. vt4a2h
      16.05.2019 11:59
      +1

      На самом деле, язык как таковой не важен — это всего лишь инструмент формализации алгоритмов. Понимание того, что такое алгоритм и как подходить к решению задачи — вот что куда как важнее. Именно для этого в университетах рисуют «бесполезные блок-схемы», а уже после кодируют их на «устаревшем и мёртвом паскале». Потому что в принципе не так уж и важно на чём кодировать (я однако же придерживаюсь мнения, что первый язык должен быть типизированным, для лучшего понимая происходящего). Паскаль для этой цели вполне себе неплохо подходит.

      Разработка программного обеспечения — это не столько про языки, фреймворки, библиотеки и т.п., сколько про умение думать.


      1. crustal
        16.05.2019 16:13

        Разработка программного обеспечения — это не столько про языки, фреймворки, библиотеки и т.п., сколько про умение думать.

        Я тоже, когда учился в школе, примерно так же думал. На самом деле разработка программного обеспечения — это про производство со всеми вытекающими, то есть, как сказал один лохмато-бородатый классик (ага, еврей) — это все про прибавочную стоимость. Можешь думать, а можешь танцевать хоть весь день, но на выходе должен быть продукт, экономический эффект от которого должен быть намного больше затрат на создание этого продукта :-)


        1. vt4a2h
          16.05.2019 16:23

          Я тоже, когда учился в школе, примерно так же думал.

          Повезло вам, я, во время учёбы в школе, этого ещё не понимал, к сожалению.

          На самом деле разработка программного обеспечения — это про производство со всеми вытекающими, то есть, как сказал один лохмато-бородатый классик (ага, еврей) — это все про прибавочную стоимость. Можешь думать, а можешь танцевать хоть весь день, но на выходе должен быть продукт, экономический эффект от которого должен быть намного больше затрат на создание этого продукта :-)

          Не могли бы вы уточнить, какого программного обеспечения и производство чего?

          На выходе должен быть какой-то результат — это верно. Вопрос в критериях оценки и способах использования этого самого результата.


          1. crustal
            16.05.2019 16:36

            Не могли бы вы уточнить, какого программного обеспечения и производство чего?

            Я не знаю как перефразировать мысль, не сильно напрягаясь. Sorry.


    1. oracle_and_delphi
      16.05.2019 12:55

      Судя по категоричному утверждению, вы PahomU — явно студент желающий «модно, стильно, молодёжно» на каком-нибудь хайповом языке.
      Учебные языки на то и учебные, что являются чистыми и не содержат подводных камней и кучи неочевидных багофич. Это как детский бассейн вместо бурного моря-океана в котором при отсутствии опыта есть риск просто утонить.


  1. kinazarov
    16.05.2019 16:12
    -5

    Итак, подытожим:

    1. Автор так и не ответил на вопрос в заголовкее собственной статьи. Он сместил акцент от стратегической части с выбором приоритетного направления/технологиии/языка к тактической части, которая про выживание и приобретение первой значимой строки в резюме. Применил приём демагогии, сделав из собственного вопроса чучело и успешно его победив.
    2. Стилем изложения и комментирования автор проявил себя агрессивным и отстаивающим свой авторитет человеком. Подсказка: для тех кто действительно обладает авторитетом нет необходимости в его отстаивании перед случайными комментаторами с хабра. Так что автор успешно поставил под сомнение собственный же авторитет. Вдобавок автор явно путает собственное частное мнение с фактом. Да, в его мнении есть сермяжная правда, но есть и другие мнения и правды, не обязательно сермяжные.
    3. От статьи складывается впечатление о том, что автору вовсе не хочется кому-то там помочь. Решил поделиться опытом? Поздравляю, секрет Полишинеля раскрыт. Решил повысить самооценку за счёт других в комментах? Поздравляю, нажил себе минусаторов. Да, карма штука непостоянная, но возможно излишне резкие суждения автору стоит применять к нерадивым подчинённым, а не к читателю, с которым ему приспичило поделиться наболевшим?