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

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

Мой вопрос звучал так:

Когда о человеке можно сказать, что он стал программистом?

  1. «Когда он способен абстрагироваться от инструментов. То есть может понять, что является ключевым для решения задачи вычислительными методами, независимо от того, какую технологию он использует».
  2. «Когда он задумывается о других разработчиках, создает код для людей, а не для машин. Соответственно, документация и читабельный код – обязательные условия».
  3. «Когда он начинает избегать споров по пустякам. Разговоры в духе „этот инструмент лучше, чем тот“ — это занятие, которое человек, разбирающийся в программировании, оставил в прошлом: он понимает, что оба инструмента могут быть полезны для выполнения определенных задач».
  4. «Он делится знаниями и принимает участие в жизни сообщества. Взять, допустим, программиста, который выучился в основном по бесплатным материалам из интернета. Исходя из своего опыта, он понимает, что единственный способ поддержать эту область знания – внести свою крупицу на благо окружающих. Он ведь и сам в прошлом извлекал пользу из чужих».
  5. «Когда он может браться за новые задачи и, должным образом в них разобравшись, писать рабочий код, поэтапно доводя дело до завершения. Решение при этом ориентировано на будущее, его не придется реализовывать заново ради выживания продукта. Такой человек – хороший программист».
  6. «Когда он понимает принцип действия операторов if, then, else в сочетании с циклами for и так далее. Говорить о том, что человек стал программистом, можно только тогда, когда он всё это освоит и научится применять. Разумеется, под применением понимается не просто вывод слов hello world на экран при помощи какого-нибудь языка».
  7. «Когда он создает программные решения для проблем. Необязательно даже пользоваться при этом языкам программирования (HTML, CSS, SQL или Excel). Достаточно просто прописывать алгоритмы в записной книжке – с этого момента уже можно говорить о создании программного обеспечения».
  8. «Когда к нему приходит понимание, что каждый язык служит своей цели, имеет свои плюсы и минусы и что его применимость нужно определять исходя из того, к какой области относится проблема».

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

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


  1. EvilsInterrupt
    02.12.2022 13:18
    +9

    Когда отлаживаем код, тогда и становимся программистами.


    1. Mirzapch
      02.12.2022 14:10
      -13

      В современном мире это называется альфа-тестированием. 1С, я вас снова приветствую.


    1. dolovar
      03.12.2022 15:00

      У меня в голове автотест сработал — это был ответ на вопрос «когда становится» (AR), а в заголовке вопрос «когда стал» (ER).


  1. x2v0
    02.12.2022 13:20
    +1

    когда ты пишешь код, "который будет жить вечно"


    1. vitaly_il1
      03.12.2022 22:23
      +7

      Или наоборот - когда перестал в это верить :-)


    1. MaxLevs
      04.12.2022 11:43

      Hello world? Тут умирать нечему


    1. mgearr
      04.12.2022 22:32

      Зачем мне вечная игла для примуса? Я не собираюсь жить вечно


  1. FGV
    02.12.2022 13:25
    +55

    Когда начал считать что в килограмме 1024 грамма...


    1. EvilsInterrupt
      02.12.2022 13:39
      +3

      Зря на хабре нет возмоности поставить смайл "Огонь" )))


    1. MinimumLaw
      02.12.2022 16:23
      +5

      Когда вес начинаешь измерять в киБИграммах, а расстояние в киБИметрах. Уже не интересно. Решено.


    1. klirichek
      03.12.2022 11:30
      +3

      А как назвать тех, кто считает, что в килограмме - 950, 900, 875 и т.д.?


      1. addewyd
        03.12.2022 12:22
        +37

        Маркетолог


    1. Goupil
      03.12.2022 12:09
      +1

      Кто вообще вес додумался мерить в килограммах? Все знают, что килограммы ни о чем не говорят, может это не жир, а кости и мыщцы?

      Мерять надо в строчках.


      1. F0iL
        03.12.2022 12:10
        +12

        Кто вообще вес додумался мерить в килограммах?

        Действительно странно, учитывая, что в системе СИ вес измеряется в ньютонах, а в килограммах измеряется масса. /душнила-mode off/


        1. mgearr
          04.12.2022 22:34

          А толку указывать вес без указания координат точки, где стояли весы (в том числе и координаты t, потому со временем изменяется как масса Земли, так и положение полюсов), и ускорения в момент измерений


          1. Akon32
            04.12.2022 23:55

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


        1. shaggyone
          05.12.2022 06:44

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


  1. Markscheider
    02.12.2022 13:41
    +5

    Лично мне показалось, что именно "программистские" - только №1 и №6. Все остальное легко можно отнести к любой области человеческой (созидательной) деятельности.

    Так что это - практически 8 заповедей хорошего специалиста из любой области


  1. Fen1kz
    02.12.2022 13:44
    +10

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

    ну и бинарность с отсутствием конструктива тоже вопросу красоты не добавляют


    1. pharo
      02.12.2022 17:01
      +8

      Зря Вы так о стране Советов.
      Кто то помнит/читал книжку «Электрофикатору железных дорог о микропроцессорах»?
      (года выпуска середины 80-х годов)

      P.S. У нас, в институте, на первых курсах был доступ к диалогу с ЕС-ЭВМ (Рафос ОС) и языку программирования Фортран-77 в диалоговом режиме. (это примерно 1988г задолго до распада СССР).


      1. Svbakulin
        02.12.2022 18:51
        +9

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

        Мой личный наглядный пример - первый эпизод Том и Джерри вышел в 1940. последний (из классики) где то в 60х. советы до него доросли только в 90х, и то как показывают последние события очень небольшое количество.


        1. shasoftX
          03.12.2022 13:32
          +7

          "Цивилизованный" мир после второй мировой получил такой огромный гандикап, что не удивительно что там было гораздо лучше с развлечениями, чем в стране советов, которая вместо подъема экономики получила разрушение промышленной части страны + 27 миллионов людских потерь.


          1. PanDubls
            03.12.2022 20:48
            +4

            А в ФРГ, ГДР, Бельгии, Югославии, скажем, не было разрушения экономики и людских потерь? Как это объясняет, что люди при советской власти жили даже хуже, чем в Польше, которая потеряла (внимание) около 30% населения? Кстати, вы знаете, что от помощи СССР в рамках Маршалла, по которому были восстановлены руины той же Франции, отказалась сама страна Советов? Это к вопросу о том, с ней или без неё жить было бы лучше.


            1. shasoftX
              03.12.2022 20:54

              А в ФРГ, ГДР, Бельгии, Югославии, скажем, не было разрушения экономики и людских потерь? 

              Так в той же ГДР жили хуже ФРГ как раз потому что одним помогали СССР, а другим США.

              от помощи СССР в рамках Маршалла, по которому были восстановлены руины той же Франции, отказалась сама страна Советов

              Чтобы понять почему СССР отказалось, нужно просто знать цель плана Маршалла

              Заявленной США целью реализации плана было восстановление разрушенной войной экономики Европы, устранение торговых барьеров, модернизация промышленности европейских стран, вытеснение коммунистов из властных структур и развитие Европы в целом.


              1. PanDubls
                03.12.2022 21:47
                +8

                вытеснение коммунистов из властных структур

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


                1. shasoftX
                  03.12.2022 22:08
                  +2

                  Падение власти коммунистов совсем не означает повышение уровня жизни населения. 90-ые наглядно это показали.

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


                  1. PanDubls
                    03.12.2022 22:15
                    +3

                    Зато деньги по плану Маршалла - означают, а коммунисты лишили советское население доступа к ним ради сохранения своей власти. Это даже близко не единственная проблема, но этот факт сам по себе лишает силы аргумент "да у нас тут всё войной было разрушено". В ФРГ тоже было разрушено основательно, но они предпочли (ну, у них никто не спрашивал, конечно, судьба за них решила) благополучие - гордыне властной клики. А 90-е показали только то, что когда нефть стоит 15 долларов население России живёт сильно хуже, чем когда она стоит 150.


                    1. shasoftX
                      03.12.2022 22:22
                      +3

                      Запад начал холодную войну ради сохранения своей власти. Но виновата советская власть.

                      Думаю на этом можно закончить обсуждение.


                      1. anone9466
                        04.12.2022 11:58

                        Запад начал холодную войну ради сохранения своей власти.

                        Этот запад сейчас с вами в одной комнате? Вы можете его видеть?


                      1. rrrad
                        04.12.2022 15:52
                        +2

                        Да, всем родившемся в ссср очень тщательно объясняли о том, какой ссср хороший и какой плохой этот "запад".


                      1. shasoftX
                        04.12.2022 17:41

                        Последние 30 лет всё было ровно наоборот. Отсюда и "советская власть виновата"


                      1. rrrad
                        04.12.2022 19:06

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

                        До второй мировой войны ссср воспринимался как страна, которая несёт довольно серьёзную угрозу.


                      1. Wesha
                        04.12.2022 22:14

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

                        Это Вы сейчас точно про СССР написали?


                      1. vassabi
                        04.12.2022 22:36
                        +2

                        а что - в 1968 году в Чехословакии ничего не случилось?


                      1. Wesha
                        05.12.2022 06:17
                        +1

                        а что - в 1968 году в Чехословакии ничего не случилось?

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


                      1. anone9466
                        05.12.2022 10:03

                        1. Диктатура вводит в страну, стремящуюся к независимости, войска для установления своего правительства.

                        2. Демократия вводит войска для уничтожения диктатора-террориста.

                        Ряяя, это одно и тоже!!1!! Даже не смейте говорить что это разные вещи!!!! Ведь демократия и диктатура одно и тоже!!!!1!Адын!


        1. RedCatX
          03.12.2022 20:52

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

          Ну за 30 лет мы могли воочию убедиться сколько всего хорошего сделали люди без СССР.


          1. addewyd
            03.12.2022 21:26
            -1

            Из этих 30 следует вычесть последние 22. Просто не успели.


          1. PanDubls
            03.12.2022 21:56
            +7

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


      1. leafup
        05.12.2022 11:14

        Кто то помнит/читал книжку «Электрофикатору железных дорог о микропроцессорах»?

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


    1. geher
      03.12.2022 13:03
      +8

      Особенно этим страдают старперы из страны советов, для которых Программист это тот, кто перфокарты дырявил

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

      Машины без перфокарт (с терминалами) в "совке", опять же, внезапно, появились еще в 70-е или даже раньше. То, что машины с перфокартами дожили кое-где аж до конца 90-х, так на "загнивающем" до сих пор кобол в ходу.

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

      @Dolios

      Нет трудовой книжки - не программист :)

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


      1. Areso
        03.12.2022 17:18
        +1

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

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


        1. geher
          03.12.2022 20:07
          -1

          Однако, спорим о смысле слова с не до конца устоявшимся смыслом.

          Вот в старые дремучие времена программистами называли тех, кто вводит программу в ЭВМ. Не пишет, не пробивает на перфокарты, а именно вводит в ЭВМ (набирая ее тумблерами на пульте, скармливая ей колоду перфокарт, записывая прошивку в ПЗУ). Скажете, что это не программисты? А у некоторых из них в трудовой книжке было написано гордое "программист".

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

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

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

          Можно еще сослаться на бумажку об образовании ("учился на программиста"), но там другие вопросы встают. Достаточную ли квалификацию получил программист в процессе обучения? Если не работал некоторое время (и какое именно некоторое), не дисквалифицировался ли?


          1. addewyd
            03.12.2022 20:19
            +1

            Вот в старые дремучие времена программистами называли тех, кто вводит программу в ЭВМ. Не пишет, не пробивает на перфокарты, а именно вводит в ЭВМ (набирая ее тумблерами на пульте, скармливая ей колоду перфокарт, записывая прошивку в ПЗУ). Скажете, что это не программисты? А у некоторых из них в трудовой книжке было написано гордое «программист».


            В трудовой книжке было написано «оператор ЭВМ». Во всяком случае, у меня так было написано.
            А вот дальше было «инженер-программист II категории», потом I, и потом «ведущий инженер-программист». Просто «программист» нету…


            1. Areso
              03.12.2022 22:39
              +1

              пропустили инженер-программист (без категории и, соответственно, стажа), III категорию, и старшего инженер-программиста :)

              http://www.consultant.ru/document/cons_doc_LAW_58804/e14327394d63c4f451508a6f2d1ae0c7d73e9359/

              А потом - внимание - "начальник участка программного обеспечения" (я когда-то до него доработался, гг).


            1. geher
              04.12.2022 12:48

              Слово программист есть. А обвязка, если это не слово "не" перед словом "программист", роли не играет.


          1. PanDubls
            03.12.2022 22:04
            +1

            то где универсальное определение этого допустимого уровня (или хотя бы разных уровней для различных отраслей)?

            Ну человечество в целом и русский язык в частности живёт же как то с аналогичной расплывчатостью в значении слова "художник". Вот я умею рисовать солнышко с лучиками, я художник? А Никас Сафронов обрисовывает фотки знаменитостей безвкусными декорациями - он художник? Рисовать он не умеет, но в трудовой у него написано "художник". А вот у Ван Гога в трудовой было бы написано "бомж", он, выходит, не художник?

            Ваш подход снижает неопределенность, но он работает, если мы считаем, что программирование - это исключительно ремесло. В таком случае да - кто написанием программ на жизнь зарабатывает, тот и программист. Если же мы считаем, что (привет определению из Википедии и Дональду Кнуту) программирование это и ремесло, и искусство, то определять принадлежность к искусству по записи в трудовой книжке - это будет как при советской власти, кто в Союзе Писателей состоит и взносы платит, тот поэт, а кто не состоит, тот, как Бродский, тунеядец и асоциальный элемент.

            Короче, не исчерпывающий критерий определения у вас получается, хотя и стройный.


            1. geher
              04.12.2022 16:25

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

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

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

              а кто не состоит, тот, как Бродский, тунеядец и асоциальный элемент.

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

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

              Короче, не исчерпывающий критерий определения у вас получается

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


    1. Iwanowsky
      03.12.2022 23:30
      +1

      Особенно этим страдают старперы из страны советов, для которых Программист это тот, кто перфокарты дырявил

      Чушь! Всегда было (в прошлом веке), что программисты писали программы, а перфокарты набивали операторы ЭВМ. На программистов учили в вузах, а на операторов ЭВМ — в ПТУ и техникумах.


  1. Akon32
    02.12.2022 13:51
    +6

    Следует разделять профессию и роль.

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

    Программист по роли - тот, кому пришлось немного заниматься программированием для решения каких-либо бытовых или трудовых задач. Тут, наверно, операторов if/for достаточно, как в пункте 6. Здесь могут быть и люди, использующие электронные таблицы, мигающие лампочкой на arduino, настраивающие умный дом.


    1. Rio
      03.12.2022 13:47
      +2

      В моём мироощущении есть "программисты", а есть "люди, работающие программистами", и эти множества пересекаются не всегда. Формально, и те и те могут быть профессионалами (в том смысле, что работают на должности программиста и зарабатывают этим на жизнь). Но у первых программирование это неотъемлемая часть жизни, которая всегда при них, а у вторых - программирование это просто работа на работе (как пример, возьмём маляра Васю; а работе он маляр, стены красит, а как придёт домой - то он уже не маляр, а просто Вася; работу он на работе оставляет). Вот у них так же с программированием. При этом, люди из первой категории могут программистами и не работать (и себя таковыми всерьёз не считать), но при этом быть на голову круче многих из "людей, работающих программистами".

      Это я к тому, что на вопрос из заголовка статьи ответить в принципе не получится, потому что понятие "программист" очень уж само по себе неоднозначное.


      1. semennikov
        04.12.2022 23:52

        Ваши слова мне нравятся, по крайней мере, проясняют для меня смысл этого слова. Я еще в далеком 1974 в школе получил бумагу с указанием профессии «программист» и хотя ни разу не работал программистом, но с тех пор все мои работы были неразрывно связаны с программированием и до сих пор так. Вроде и не программист — практически не пишу код, но ни один мой проект не обходится без того, чтобы я не писал архитектуру, ТЗ, протоколы взаимодействия с железом, алгоритмы и отлаживал, искал ошибки и т.д. Программист ли я?


        1. eptr
          05.12.2022 01:07

          Нет.

          Программист -- это составитель управляющих программ для ЭВМ.

          Зато вы -- архитектор, разработчик ТЗ, разработчик протоколов, алгоритмист, отлаживатель/тестировщик (избавлятель программ от "лажи").


  1. Mirzapch
    02.12.2022 13:55
    -1

    Призываю прекратить путать программистов с разработчиками.

    developers


    1. addewyd
      03.12.2022 06:34
      +3

      Слово-то какое «разработчик»… Кальку содрали с английского. Непонятно зачем.
      До 2016 года я был программистом. 01.01.2016 вдруг в приказном порядке стал «разработчиком» (и весь отдел разом). Странное, расплывчатое понятие. Разрабатывать можно месторождения, например.


      1. Mirzapch
        03.12.2022 12:36
        +3

        Какой нежный.

        Кальку скопировали с французского. Непонятно зачем. Но к кальке у вас претензий нет.

        А копию заимствовали из немецкого. Тоже непонятно. Ведь могли напрямую из латинского забрать.



    1. SergeiMinaev
      03.12.2022 11:09
      +1

      Вы как хотите, а для меня "программист" в конечном счёте звучит круче, чем "разработчик".


      1. F0iL
        03.12.2022 12:05

        В мировом IT, кстати, наоборот, повсеместно используется название профессии/должности "software developer", а вот "programmer" встречается гораздо реже.


      1. Mirzapch
        03.12.2022 12:30
        +1

        Настройщик рабочего места на базе ЭВМ - программист? А на такую специальность до сих пор ведётся набор в некоторых колледжах.

        Является ли оператор станка с ЧПУ программистом?

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

        Таких примеров можно привести десятки.

        В России слово "программист" с 90-х годов потеряло свой первоначальный смысл. Поэтому не стоит его использовать во избежание ненужных вопросов и уточнений.


        1. SergeiMinaev
          03.12.2022 12:37
          +2

          Make программист great again


        1. eptr
          03.12.2022 15:51

          Это -- компьютерщики.


        1. rrrad
          04.12.2022 19:10

          Вы путаете с тыжпрограммистом.


    1. Rio
      03.12.2022 14:55
      +2

      "Разработчик" это слишком общее определение, всегда требующее уточнения. Разработчик аппаратных средств, например. Разработка ПО это только частный случай.


  1. kalapanga
    02.12.2022 14:56
    +5

    А мне вот такое определение нравится (не помню, как точно формулировалось в оригинале, но суть передана):

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


    1. MinimumLaw
      02.12.2022 16:21

      Глубоко. Пожалуй даже более правильно, чем 1024 грамма в килограмме.


    1. mgremlin
      03.12.2022 12:09
      +4

      Глубже: тот, кто написал хотя бы одну программу, которую... украли!


    1. semennikov
      04.12.2022 23:54

      Ну тогда я точно программист. Хотя пишу код хорошо если 360 строк за год


  1. Zenitchik
    02.12.2022 14:58
    +1

    Когда в трудовой книжке появилась запись "Программист".


    1. Dolios
      02.12.2022 18:46
      +2

      Нет трудовой книжки - не программист :)


  1. MentalBlood
    02.12.2022 15:06

    Знаете, вот часто читаешь что-нибудь что не документация и не единственный (работающий) из 100 ответов на stackoverflow, и появляется мотивация действовать противоположно 4-ому пункту


  1. souls_arch
    02.12.2022 17:11

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


  1. Kyrych
    02.12.2022 17:11
    +1

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


    1. YMA
      04.12.2022 18:20

      Вот этот вариант искал в комментариях ;)

      Я бы еще чуть-чуть отодвинул момент опрограммистивания - "когда кто-то заплатил ему за написание кода и иные программистские задачи". Всё остальное - знание операторов, навыки структурирования задач, чтение книг - это баловство. А вот когда тебя оценил пользователь/заказчик - это уже признание, что ты - программист.


  1. GothicJS
    02.12.2022 18:33
    +13

    Когда о человеке можно сказать, что он стал программистом?

    А я предлагаю задуматься, почему такие вопросы вообще поднимаются и правильно ли это.
    Почему кого то интересует, является ли другой человек программистом? Речь не об авторе статьи.

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

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


    1. isden
      03.12.2022 11:05
      +4

      если человек работает программистом — значит он программист

      А если не работает программистом, но при этом пишет код (пет проекты, коммиты в опенсорц, и тп) — то не программист?


      1. GothicJS
        03.12.2022 19:16
        +1

        Вполне может быть программистом.


  1. pavelsc
    02.12.2022 18:56
    +5

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


  1. AGhostik
    02.12.2022 20:48
    +3

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


    1. Rio
      03.12.2022 15:00
      +1

      Вот да, я тоже скорее к такому пониманию понятия "программист" склоняюсь. Не просто занимающий должность программиста на работе, а программист "по жизни".


    1. semennikov
      04.12.2022 23:58

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



  1. Dr_Faksov
    03.12.2022 06:27
    +7

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

    К ЛЮБОМУ программированию относится только шестой пункт. Человек либо программирует, либо нет. Что угодно – релейную автоматику, пневматику, гидравлику, механику. Ну и да, цифровые электронные системы. Контроллеры, к примеру.

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

    А вот вам кусочек кода. Кто язык угадает?

    1.       Затвор отведён?

    2.       Если да - поднять патрон из обоймы, если нет – на пункт 1

    3.       Обойма пуста?

    4.       Если да – активировать затворную задержку

    5.       Дослать патрон в патронник

    6.       Закрыть затвор

    7.       Выстрел разрешен?

    8.       Если да – произвести накол капсуля, если нет – на пункт 7

    9.       Выстрел произошёл?

    10.   Если да – открыть и отвести затвор, если нет – аварийный останов

    11.   Затворная задержка активирована?

    12.   Если нет – на пункт 1, если да – останов и диагностическое сообщение «Нет патронов»

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

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


    1. msdos9
      03.12.2022 09:24
      +3

      Колокольный звон Кремлёвских курантов в какой среде разрабатывали, не подскажите?

      Думаю, на той же, на которой программировали мелодию шарманок и музыкальных шкатулок????


    1. F0iL
      03.12.2022 11:03

      Человек либо программирует, либо нет.

      Все-таки тут всё немного сложнее. Правильно ли будет называть инженером-строителем человека который сколотил дырявый сарай и будку для соседской собаки? Достоин ли называться музыкантом человек, который сочинил пару примитивных песен из четырех строчек под три блатных аккорда и спел их на пьянке друзьям? Назовем ли мы поваром человека, который по утрам жарит яичницу для жены и детей? Профессиональные строители, музыканты и повара, наверное, не согласятся. Собственно, как уже сказали выше, поэтому давно уже нередко разделяют разработку ПО (software engineering) и просто программирование (programming), ибо разница гораздо сильнее, чем кажется. А с другой стороны да, снобизма многим тоже не занимать, и всякие "если ты не знаешь дифференциальное исчисление, не писал на ассемблере, и используешь новомодный язык, то ты не программист, а кодер тупой" звучат смешно и мерзко. Особенно если учесть, что нередко говорящие такое сами порой не знают базы или делают тот еще говнокод :)


    1. Survtur
      03.12.2022 11:34
      +2

      Что-то не очень код. Я зациклился ещё на пунктах 1-2. Да и что делать в случае пустой обоймы?


      1. vadimr
        04.12.2022 19:39

        В пункте 1 переменная меняется асинхронно, внешним процессом.


    1. MobCobra
      03.12.2022 16:31
      +1

      У вашего АК-74 данные и код раздельно хранятся?

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


      1. geher
        03.12.2022 16:51

        Данные и код в автомате хранятся вместе. Роль хранилища выполняет механизм. Роль данных и кода - форма и другие свойства структурных элементов этого механизма.

        Сложный механизм - это не машина Тьюринга, а лента с программой для нее. Роль машины тут осуществляет не сам АК-74 (кстати, почему именно он, а не один из множества других автоматов?), а законы физики и химии.

        Приведенное описание программы, кстати, ошибочно и не полно


        1. semennikov
          05.12.2022 00:07

          Вообще-то что написано совсем не АК, это явно пистолет имеющий режим автоматического огня. Ключевое утверждение «затворная задержка» и диагностическое сообщение «нет патронов» Пример — когда в пистолете Макарова кончаются патроны затвор фиксируется в открытом положении что и есть диагностическое сообщение


          1. geher
            05.12.2022 08:52

            Каюсь, до затворной задержки алгоритм не дочитал. Хватило того, что в пункте 2 поднимаем патрон, и только в пункте 3 проверяем, что обойма не пуста. При этом обойма может вообще отсутствовать. Слово "обойма" тут, правда, несколько коробит, но его часто используют в качестве синонима слову "магазин", потому не стал на этом заморачиваться.

            С другой стороны, наличие затворной задержки говорит о том, что это точно не про АК-74. И мне можно было не высказывать сомнения, а прямо опровергать.

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


    1. Akon32
      05.12.2022 00:08

      Колокольный звон Кремлёвских курантов в какой среде разрабатывали, не подскажите?

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

      Не надо инженеров путать с программистами. Это не всегда одно и то же.


    1. semennikov
      05.12.2022 00:09

      Скорее всего — язык «Стечкин», возможно «Глок» но ни в коем случае не «Калашников» :-))


  1. nronnie
    03.12.2022 09:20
    +9

    Кем вы видите себя через пять лет?

    Автор, наверное, дохера завален работой, что шарахается по конторе и достает джунов какой-то чешуйнёй.


  1. vvbob
    03.12.2022 11:38
    +2

    Когда о человеке можно сказать, что он стал программистом?

    Примерно тогда-же когда люди становятся сантехниками, например. Когда у него появляется соответствующая запись в трудовой книжке или что ее заменяет в каждой конкретной стране (контракт, например).


    1. F0iL
      03.12.2022 11:49

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


      1. vvbob
        03.12.2022 19:25
        +1

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

        В общем спорить тут особо и не о чем.


  1. Daddy_Cool
    03.12.2022 11:45
    +2

    «...если бы среди философов установилось согласие относительно значения слов, то почти все их споры были бы прекращены.» Декарт.

    Вот мы и устанавливаем.


  1. SquareRootOfZero
    03.12.2022 12:29
    +1

    Когда о человеке можно сказать, что он стал программистом?

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


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


  1. AndrChm
    03.12.2022 16:06
    +1

    И ведь никто не вспомнил Дональда Эрвина Кнута и его «Искусство программирования». Ведь именно эти книги, а было написано три тома и все они переведены на русский язык издательством «Мир», сформировали в нашем поколении 80-х годов ясное понимание, что программирование — это прежде всего математическое образование, умение придумывать и анализировать алгоритмы. Что касается языков программирования, то это не более чем технология, да, важная и со своим предназначением, но безусловно вторичная.


    1. F0iL
      03.12.2022 17:06
      +1

      это прежде всего математическое образование

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

      При этом программирование обожаю, увлекаюсь им с 13 лет, с 18 лет занимаюсь им за деньги, получал десятки офферов, был ментором молодежи, техлидил, и делал продукты, за которые до сих пор не стыдно - от АСУ ТП и встраиваемых систем до серверного бэкэнда и движков браузеров. Работодатели и заказчики всегда были довольны результатом и ценили. В свободное время контрибьючу в опенсорс или изучаю что-то новое, и более того - если б у меня не было нужды больше работать вообще, я бы все равно продолжил программировать. Но согласно Кнуту и понятиям 80-х годов я наверное не программист и никогда им не был, ну ок, что поделать. Продолжу программировать не будучи программистом.

      Кстати, давайте позовём в комменты @0xd34df00d он, будучи выпускником физтеха, любителем математики и ядреным программистом (хардкорные плюсы, функциональные языки, формальная верификация) расскажет вам о "необходимости" математического образования в 90% современной разработки ПО :)


      1. AndrChm
        03.12.2022 17:09

        Мне Кнут уже всё рассказал.


        1. F0iL
          03.12.2022 17:18
          +1

          Это называется "информационный узырь". Когда человек, утвердившись в каком-то мнении (к тому же, как вы сами признаете, навязанном вам Кнутом), ему понятном и приятном, пытается принципиально отвергать всё, что может поколебить сложившуюся картину мира. Не надо так :)


    1. skozharinov
      03.12.2022 17:31
      +2

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


    1. vadimr
      03.12.2022 22:19
      +2

      Я учился программированию в 80-х, читал Кнута, и считаю важность и полезность его труда для программирования сильно преувеличенной. Особенно второго тома.

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


  1. vassabi
    03.12.2022 17:26

    ну такое

    читая список внизу, прикидывал аналогичный "когда о человека можно сказать что он стал писателем"

    1) когда может абстрагиваться от языка

    2) когда пишет, думая о других людях, а не сам для себя

    3) когда не спорит по пустякам - удобнее писать пером или печатной машинкой

    4) когда напишет свой букварь. Он же учился читать по букварю? Вот, значит пусть вернет долг

    5) когда он может разобраться в теме и писать книги до конца, так что бы текст не устарел

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

    7) когда он пишет тексты для решения проблем, а не потому что захотелось

    8) когда к нему приходит понимание, что проза и поэзия и каждый жанр служат своей цели

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

    действительно :) Хотя - кто знает, возможно кто-то из опрошенных действительно не может не писать код.

    бородатая байка

    однажды к известному старому писателю пришел молодой писатель и попросил прочесть его рукопись. И тогда между ними произошел такой диалог:

    - Зачем? – спросил его старый писатель.

    - Мне важно узнать Ваше мнение, – ответил молодой литератор.

    - Зачем Вам, милейший, знать мое мнение? А если, допустим,я прочту и скажу Вам: не пишите. Что будете делать?

    - Ну, как… Если Вы скажете не писать, то я не буду… –промямлило молодое дарование.

    - ЕСЛИ МОЖЕТЕ НЕ ПИСАТЬ – тогда не пишите.

    ------

    так что - если вы можете не писать код - лучше не пишите :)

    а всем кто не может не писать - добро пожаловать в профессию !


    1. addewyd
      03.12.2022 17:40
      +1

      Ох, наплодите программистов-графоманов


      1. vassabi
        03.12.2022 17:52

        "наплодите" :)

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

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


        1. adawadagames
          03.12.2022 20:05
          +1

          Когда получил первые деньги за код, тогда ты программист.


  1. PsihXMak
    03.12.2022 22:46
    +1

    В общем, я понял, расходимся. Нет среди нас программистов. :)

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


    1. MaxLevs
      04.12.2022 11:48
      +1

      (Хороший | Плохой | Злой) программист


  1. mbait
    04.12.2022 00:18

    Когда устал от снобизма 20-ти летних "сениоров", ушёл из промышленного программирования и кодишь для души.


  1. mbait
    04.12.2022 00:23
    +3

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


  1. ilya-chumakov
    04.12.2022 10:32
    +1

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


  1. NeverIn
    04.12.2022 17:15

    Пожалуй пункт 5 из ответов, все остальное «рюшечки»


  1. pickHabr
    05.12.2022 11:23

    Отчасти согласен с другими комментаторами - кто получает деньги за программный код, тот и программист. Но с уточнением, что это профессиональный программист, т.е. тот кто сделал программирование своей профессией.

    Есть варианты когда человек кодит для себя, по приколу, делает свою игру мечты и тд, или делает коммиты в open source, но не зарабатывает на разработке ПО денег и тп. Таких людей КМК тоже следует считать программистами.

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

    Если слесарь работает по 4 часа в день 5 дней в неделю и каждый день по 2 часа играет на скрипке, то он слесарь или музыкант? А если школьник каждый день решает задачи по программированию, то он не программист? Я думаю, что программист, пусть чего-то не знает, не умеет, все мы всю карьеру учимся чему-то.

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


    1. YMA
      05.12.2022 11:42

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

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