[recovery mode] Кто такой программист?

habr.png

О времена, о нравы. Сегодня в Тостере увидел тему, в которой человек признавался, что работая java-разработчиком он знает алгебру и геометрию на уровне 6 класса и просил посоветовать учебники. Этот запрос несомненно вызывает уважение — человек хочет учиться.

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

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

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

На уроках информатики мы решали те же задачи из матана — находили корни уравнений, строили графики. Изучали принципиальное построение языков — типы, структуры данных, алгоритмы, работа с памятью, было немного Delphi и ООП. В основном, конечно же, Pascal. Для общего развития были C и Assembler. Немножко захлестнули БД под конец, конечно же с нормализациями. Изучали двоичную алгебру и делали по фану игры.

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

И мы всегда знали, что мы не программисты, мы так, школота. Программисты это те, которые пишут книги. Это те, кто создаёт ОС и реальный софт. Мы верили, что чтобы стать Программистом, надо телепортироваться куда-то в IBM или Microsoft. А ты даже функцию на непрерывность как следует исследовать не можешь — куда тебе.

У меня так сложилось, что я стал соприкасаться с программированием спустя более 10 лет после выпуска из школы. Всё поменялось — появился веб, куча каких-то странных слов и названий. Я точно, знал, что эти гении — Программисты, которые создают коммерческий продукт, ушли уже очень далеко, в какие-то параллельные космические миры, где мне их никогда не достать. Что я приду к ним, а они мне скажут: «Брат, какой тебе блог на PHP? Давай ка динамический массив мне через рекурсию организуй, тогда и поговорим.»

И ведь справедливо. Ведь я точно знаю, что программист это даже не профессия. Это специализация инженера.

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

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

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

Друзья, скажите мне, что я старый (тридцати трёх летний) маразматик. Или подтвердите, что мир катится в какой-то ад. Предлагаю развернуть жаркую дискуссию в комментах. А то ведь, ничего не понятно…

© Habrahabr.ru