«Агитировать всех учиться программированию — так же глупо, как сантехническим работам»

Мнение iOS-разработчика

Американский iOS-разработчик Базель Фарах написал для TechCrunch колонку, в которой рассуждает о том, что программирование не следует рассматривать как универсально полезный навык. Автор убеждён, что умение программировать позволяет решать конкретные прикладные задачи, но не является «новой грамотностью».

«Есть мнение, которое набирает популярность в ИТ-сообществе: всем надо учиться программировать. Но проблема в том, что программирование — это всё-таки не новая грамотность. Политики, некоммерческие организации и даже бывший мэр Нью-Йорка Майкл Блумберг выступают с проповедями о том, что этот навык необходим для работников будущего. В этом может быть доля истины, особенно учитывая, что спрос на инженеров в США и не думает сокращаться. Но ситуация более сложная, чем кажется. Мы живём в сверхконкурентном мире, где люди занимаются чем угодно, чтобы свести концы с концами. Рассматривать программирование как билет к экономическому спасению для широких масс — просто бесчестно», — пишет TechCrunch.

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

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

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

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

«Ещё несколько лет назад я работал с Objective-C, а сейчас пишу только на Swift. Есть iOS-разработчики, которые в жизни не написали ни одной строчки на Objective-C. Swift проще, безопаснее и удобнее. Тот факт, что молодые разработчики никогда не имели дела с Objective-C, сам по себе хорош, но он не соответствует сути профессии. Что должен делать человек, который днями и ночами изучал Objective-C, а потом на WWDC-2014 представили Swift? Продолжать работать с языком, который быстро уходит в небытие, или начинать всё сначала? Если вам слегка за 20, это не представляет особых сложностей, а если вы содержите семью, то решение этой задачи становится подвигом», — пишет автор.

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

«Если вы действительно хотите стать программистом, не позволяйте мне или кому-либо ещё вставать на пути к вашей цели. И не позволяйте традиционным ограничителям, например, системе образования, замедлять ваш прогресс. К цели нельзя прийти правильным или неправильным путём. Но и не теряйте чувство реальности под давлением романтики Кремниевой долины. Вам придётся потратить время на понимание поляны», — резюмирует Фарах.

0
35 комментариев
Написать комментарий...
Александр Першин

Этот пёс остужает рынок!

Ответить
Развернуть ветку
Пётр Лютый

Дерзкий микс дедовщины и элитаризма.

Ответить
Развернуть ветку
alex kapets

Вот я никак не пойму, востребованы сейчас Спортивные программисты? Те, кто понимает алгоритмы, с хорошей математической подготовкой?

Везде какой-то фронтэнд, библиотечки, фреймворки, скрипты, вёрстка.

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

Где осталась романтика?

Ответить
Развернуть ветку
Konstantin

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

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

Ответить
Развернуть ветку
Гала Перидоловна

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

Ответить
Развернуть ветку
Andrey Harchenko

В геимдеве такие востребованы.

Ответить
Развернуть ветку
Ипполит Бугуртов

Очкует конкуренции просто

Ответить
Развернуть ветку
Эдмон Дантес

Два стакана смузи этому мужику за мой счёт!

Ответить
Развернуть ветку
Борис Цейтлин

Несогласен по всем пунктам.
Говорю как программист.

Во-первых выглядит так будто у автора очень по-детски сдали нервы когда щеглы из универов попивающие смуззи из стаканчиков "старбакс", пишущие на ванильном Swift и не читавшие ни строки из книжек кнута внезапно стали выжимать его с работы. Но автор виноват в этом сам когда выбрал мобильную разработку, где порог вхождения ограничен способностью отсидеть нужное количество обучающих видео. Реально почти все мобильные приложухи это пожиратели JSON которые просто рисуют данные, которые им приходят. Это тоже надо уметь организовать, но тут нет ни математики, ни алгоритмов, ни паттернов организации проекта (это за тебя делают студии и SDK). Инженерной составляющей мало, так чему удивляться, что человеку не надо начинать с Objective-c, чтобы не уступать в компетентности?

Во-вторых автор обобщает и гиперболизирует. Если все учатся программировать это не значит, что все учатся быть программированием. В будущем все будут программировать. Это на самом деле очень простой навык. Бухгалтера смогут сами написать в эксел новую функцию, школьники и студенты независимо от изучаемого предмета смогут написать простую программу чтобы сделать лабу быстрее. Однако это не значит, что все будут делать ПО. Все смогут устроить поиск по массиву данных, но заниматься алгоритмами и разработкой крупных систем и их поддержкой будут инженеры. Подобно тому как все мы умеем считать, но не все мы математики. Все мы умеем считать деньги, но не все мы экономисты и финансисты. Программирование будет частью элементарной грамотности. Я делаю такие выводы из того, что простые(и не очень) инструменты программирования применяются судебными приставами, бухгалтерами и учителями. К тому же базовое понимание о том, что такое программирование, нужно всем, кто с программистами взаимодействует: например бизнесменам. Я считаю, что вижу тренд к популяризации простых инструментов. Например сейчас любому человеку для начала работы с Python нужно не больше 5 минут.

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

Ответить
Развернуть ветку
Федор Кузьмич

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

Ответить
Развернуть ветку
Igor Kozlovsky

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

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

Ответить
Развернуть ветку
Олег Железцов

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

Ответить
Развернуть ветку
Федор Кузьмич

Да что тут крутого? Сидеть с опухшими глазами что-ли?)
Это круто, потому что платят хорошо, вот и все. Даже самый далекий от ИТ человек знает, что программистам хорошо платят. Вот вам и весь шум. Еще сильнее кризис ударит, программировать еще круче станет, не сомневайтесь :)

Ответить
Развернуть ветку
Андрей Сажин

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

Ответить
Развернуть ветку
Федор Кузьмич

Вообще забавно :), у веб-девов отношение к джаве, как у гуманитариев к математике, типа: "Ой, ну и где тебе это умножение пригодится в жизни".

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

Ответить
Развернуть ветку
Андрей Сажин

Я не веб-дев, под Андроид или винду запросто могу что-нибудь накатать, но для личных целей ни разу не требовалось. К тому же, голая джава + андроид = очередная никому не нужная поделка. А если например для собственных нужд катать прогу для выгрузки RAW-изображений с камеры (которые там есть, но обрабатываются автоматически и жмутся в джипег), то надо сильно побольше знать, чем хелловорд на Джаве.

Ответить
Развернуть ветку
Андрей Захаров

Да, интересно устроен мир. Казалось бы: учись, становись специалистом, умело и быстро решай задачи - и будешь востребован и трудоустроен. А вот и нет ! ;-)

К этим знаниям надо добавить искусство вранья и подхалимажа 80lvl, пробиться через 10 бюрократических заслонов и вот только тогда тебе дадут возможность принести пользу бизнесу

P.S. кто сделает стартап замещающий HR на местах и сайты типа hh - сказочно обогатится ;-)

Ответить
Развернуть ветку
Yury Nechaev

Это устройство только в вашей голове.

Ответить
Развернуть ветку
Андрей Захаров

Разумеется.

И ваш комментарий тоже только в моей голове, как и этот сайт, да и вообще весь мир ;-)

Ответить
Развернуть ветку
Александр Широков

Почему все так грешат на HR менеджеров?

Да, они ищут кандидатов, и проводят начальные интервью, чтобы вообще понять насколько чувак адекватен.

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

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

Ответить
Развернуть ветку
Андрей Захаров

Да не вопрос. Еще бы HR менеджеры не теряли бы контроль над делами, при уходе в отпуск и вообще ответственное относились бы к своей работе.

А так частенько синдром вахтера какой-то...

Ответить
Развернуть ветку
Антон Лапшин

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

Ответить
Развернуть ветку
Константин Фанки

«бестолковых» HR-менеджеров, которые смутно себе представляют, кого нанимают.

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

Ответить
Развернуть ветку
Yury Nechaev

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

Ответить
Развернуть ветку
Дмитрий Кудрявцев

Вы не задумывались, почему ИТ индустрия столь молодая? Как правило, программисты - это люди от 22 до 30 лет. Работодателям сейчас, в свою очередь, интересны умные, выносливые кандидаты, способные работать по 12 часов в сутки, поскольку темпы бизнеса такие. Они готовые платить много, но и получать ещё больше. Семейному человеку за 40 уже трудно конкурировать с молодыми в силу ряда даже чисто физиологических причин. Быстрее утомляемость, медленнее сообразительность, семейные и начинающиеся проблемы со здоровьем, лень и снижение способности к обучению. Все эти изменения неизбежны у обычного человека и это норма, обусловленная, как физиологией, так и социальными изменениями в этапах жизни. Лозунг "век живи, век учись" никто не принижает, но нужно быть реалистом. Изучить новый предмет/ язык в институте или школе можно в несколько раз быстрее, чем в 50 лет - с этим ведь никто спорить не будет? В итоге, программист будет вынужден или постепенно сдавать свои "позиции", как разработчика, или становится "главным" над ними, переходить в тимлид, PM, собственный бизнес если имеет к этому склонности и подвернётся такой случай. Остальные 80% разработчиков в итоге рано или поздно уступят дорогу молодым в силу особенностей профессии. Останутся реально талантливые или мозговитые, остальных ждёт печальная участь. В других сферах, например, медицине с возрастом происходит аккумулирование знаний и опыта, которые не так быстро устаревают и конкуренции с более молодыми не происходит, скорее напротив. Вот поэтому выбирать программирование, как профессию нужно обдуманно и взвешено.

Ответить
Развернуть ветку
Nikita Pimoshenko

После ваших слов вспоминается шутка "Ну и расскажи мне что ты знаешь о highload в бою, о опытный 22 летний senior developer". Поверьте в программировании так же происходит аккумуляция знаний и опыта, при этом она так же важна для конечного работодателя, да скорость обучения новому падает, но аналитический склад ума никто не отменял, да и все новое - это подчас хорошо забытое старое, или вы думаете что дядюшка Фаулер был таким уж гением? Нет просто описал коллективный и личный опыт =) Посмотрите на запад к примеру, где мастодонты с опытом вполне сносно себя чувствуют.

Ответить
Развернуть ветку
Дмитрий Кудрявцев

Я описываю лишь свои наблюдения за рынком труда. Дядек по 40-50 лет в качестве разработчиков встречал лишь на "заводах", медучреждениях и т.д. Не знаю, может большинство ИТ-шников не доживает до такого возраста? Вредная работа однако )

Ответить
Развернуть ветку
Andrey Harchenko

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

Ответить
Развернуть ветку
Artem Artjukov

боится конкуренции и снижения зарплат?)

Ответить
Развернуть ветку
Александр Мазалецкий

Полностью согласен с автором, программирование становится как типа вышивание крестиком, народ прошёл курсы и вот тебе зарпалаты под сотни тысяч баксов. Программирование это искусство, а не знаете языка ( про swift и objective c), оно не зависит от языка, это стиль мышления, программироваться можно и без компьютера на вымышленном алгоритмическом языке или вообще на машинах Тьюринга или Поста. В мои времена, чтобы стать хорошим кодером надо 5 лет универа, 6 лет стажировки начиная с универа, 3 года аспирантуры и т.д. Но при этом до уровня Линуса Торвардса далеко...

Ответить
Развернуть ветку
Дмитрий Кащеев

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

Ответить
Развернуть ветку
Федор Кузьмич

Ну не знаю, чтобы стать менеджером или юристом ниего не нужно делать. А программистом так просто ведь и не станешь, если это не хтмл+ксс :)

Ответить
Развернуть ветку
Александр Спиридонов

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

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку
Dmitry Savinov

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

Ответить
Развернуть ветку
Alex Abramov

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

Ответить
Развернуть ветку
32 комментария
Раскрывать всегда