Как технологии приводят к деградации
Самое яркое проявление в программировании.
Программист 70-х решал проблему вертикальной сложности – он должен был понимать всю систему от транзистора до логики приложения, сильно прокачивая всю совокупность навыков STEM. При этом центральной задачей пол века назад были ограничения в вычислительной мощности, что заставляло разработчиков проявлять высочайший уровень эффективности и оптимизации.
Современный программист решает проблему горизонтальной сложности – он должен интегрировать десятки готовых компонентов в единую, работающую систему, выступая в роли интегратора, не вдаваясь в подробности работы компьютера, компиляторов и драйверов.
Как это работает сейчас?
Псевдоразработчик формирует запрос в ИИ ассистенте типа Cursor - > генерация высокоуровневого кода уже на уровне ИИ - > интерпретатор кода -> компилятор кода - > виртуальная машина - > машинный код - > операционная система - > процессор с распределением иерархии памяти - > ALU арифметика - > логические вентили - > CMOS транзисторы (исполнение кода), а далее уже физика идет.
Всего 11 уровней кодовой абстракции. Какой уровень перехватывает разработчик на ассемблере из 70-х? Прямая работа на ALU арифметике с полным контролем памяти, т.е. это 9 уровень, понимая принципы 10-11 уровней. Выше не бывает.
Какой уровень перехватывает «разработчик» 2025 на вайб-кодинге? Только первый уровень на уровне запроса и правки кода в редакторе (лишь немного касается высокоуровневого кода – это второй уровень) с запросами «сделай то, сделай это, оптимизируй и исправь».
Ассемблер – это контроль, понимание, корректность, глубина и низкий уровень с точки зрения доступа к ядру системы и аппаратному функционалу (в свою очередь чрезвычайно высокая сложность), но чрезвычайно низкая скорость и эффективность.
Современное программирование – это как конструктор, где «разработчик» вообще не вдупляет в работу аппаратной части, операционной системы, драйверов, компилятора, фрейморков и программных модулей.
Нет понимания механизмов, нет понимания алгоритмов и архитектуры.
Если программист из 70-90х – это вершина эволюции STEM, а «программист» 2025, не прошедший этапы программирования до внедрения ИИ, не имеющий фундаментальных знаний – это жалкое подобие, суррогат.
Работает принцип храповика. Программисты из 70-90х без проблем перейдут на уровень 1, но «программисты» 2025 практически никогда не перейдут даже на уровень 2, т.е. самостоятельная работа с кодом, как было до 2023, не говоря уже о глубокой оптимизации.
Программист 2025 напрямую привязывается к инструменту, а возможности по созданию кода и оптимизации полностью зависят от среды и функционала ИИ, при этом «программист» 2025 вообще не понимает ни логику кода, ни механику работы, ни алгоритмы и вообще ничего не понимает.
К чему это приводит? Код превращается в неоптимизированный кусок дерьма с ошибками, багами, проблемами с безопасностью и этот «разработчик» никогда не сможет понять, в чем причина проблем без помощи ИИ.
В таблице изобразил условное сопоставление требований к навыкам в эпохах программирования.
Эпоха прямого управления (1950-е – 1970-е) через машинные языки, ассемблер. Экстремально высокая сложность.
Эпоха структурирования и портируемости (1970-е – 1980-е) через C, Pascal, Fortran. Очень высокая сложность.
Эпоха объектной абстракции (1980-е – 1990-е) через C++, Object Pascal (Delphi). Высокая сложность.
Эпоха динамических языков и Web (1990-е – 2000-е) через Python, Perl, PHP, Ruby, JavaScript. Средний и высокий уровень сложности.
Эпоха фреймворков и экосистем (2000-е – 2010-е) через C# (+.NET), Java, Python (+Django), JavaScript (+Node.js, React, Angular). Средний и высокий уровень сложности.
Эпоха облачных платформ (с 2010-х …) при среднем уровнем сложности через Docker, Kubernetes и "Вайб-кодинга" (с 2023 …) с низким уровнем сложности через ИИ ассистенты типа GitHub Copilot, Cursor, Claude Code, OpenAI Codex, Windsurf, Gemini Code и т.д.
Вот это печальное будущее нас ждет с точки зрения развития навыков программирования. RIP профессия программиста.