пнвтсрчтптсбвс
     12
3456789
10111213141516
17181920212223
24252627282930
31      
Сегодня 15 марта 2025
Авторский блог Андрей Школьников 00:08 14 марта 2025

От кодинга к шкодингу и колдовству

актёрами не рождаются, актёрами становятся, так и с программистами

На фоне сдувающегося пузыря сверх ожиданий и сверх оптимизма от прихода в мир «Искусственного интеллекта», также известного как алгоритмы Т9++, имеет смысл рассмотреть, почему результаты его применения некорректно называть «программированием на естественных языках», что может стать одним из элементов 7-го технологического уклада. К сожалению, последние события и высказывания показали, что различия между терминами «программирование» и «кодинг» не понятно очень многим даже в IT- отрасли.

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

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

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

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

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

Расслабленный подход был возможен, когда менее года требовалось на удвоение доступной вычислительной мощности за те же деньги, но современная микроэлектроника приблизилась к пределу, ещё 1-2 шага вниз и начнутся квантовые эффекты, а массовые, универсальные квантовые компьютеры вопрос за пределами отраслевого планирования. Всё. По очень многим IT задачам и вопросам давно достигнут предел, человечеству необходимо множество системных программистов и создание нового фундамента, но вместо этого приходит «Искусственный интеллект», что делает в разы хуже, убивая среду для выращивания даже обычных программистов, поощряя становиться кодерами и «эффективными менеджерами», пишущими ТЗ.

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

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

Источник

1.0x