Программисты оторваны от реальной жизни?

В закладках браузера наконец-то нашел пост российского ученого Николая Непейводы (фамилия ведь не склоняется?) под названием "Программирование не жизнь" - https://nepejvoda-n-n.livejournal.com/79427.html . Там идут рассуждения о предпосылках того, что мы все и так давно знали: редкий программист способен разобраться хоть в чем-то, что находится за пределами области его каждодневого красноглазого копошения в кодах. Далее приведу текст самой статьи.


Образование должно помогать в жизни. Никакая конкретная профессия не исчерпывает жизнь, а некоторые при слишком глубоком вхождении в них реальной жизни прямо мешают. И пара таких, к несчастью — математика и программирование. Обе они легко могут увести в мир иллюзий и фантомов. В частности, по этой причине выпускники МФТИ чаще добиваются больших успехов в жизни, чем выпускники ВМиК МГУ, поскольку у них математика и информатика безжалостно уравновешиваются физикой, реальными экспериментами в реальном мире.

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


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

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

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

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

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

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

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

Вы смотрите срез комментариев. Показать все
6
Автор поста оценил этот комментарий

Странная статья. Я б так сказал "оторванная от жизни".

Начнем с того что математику не надо заниматься "жизненными задачами", у него математика ушла уже далеко вперед. Это потом физик, когда придумает какую-нибудь гипотезу, обращается к трудам математиков и говорит: "Епт, то что мне надо! Сейчас возьму пару теорем Васи Ложкина и разложу их в многомерном пространстве Козловского и смогу свою гипотезу обосновать, или же понять ее несостоятельность".

Так и с программерами. Не встречал ни одного товарища который бы знал только программирование и не более того.

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

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

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


Кстати, вся фундаментальная наука тогда также оторвана от жизни. В чем разница? )

ещё комментарии
ещё комментарии
Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку