Андрей Школьников: От кодинга к шкодингу и колдовству

208 1

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

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

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

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

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

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

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

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

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

Источник

Андрей Школьников

Комментарий редакции

Тезисы статьи

1. Автор разграничивает понятия "программирование" и "кодинг": программирование – это поиск оптимального решения реальной бизнес-задачи, а кодинг – просто перевод готового решения на машинный язык.

2. Проводится аналогия между программистом и врачом (способным ставить сложные диагнозы), а кодером и медсестрой (выполняющей процедуры по протоколу).

3. Выделяется особый класс системных программистов, которые создают фундаментальные правила и принципы для всей отрасли.

4. Современные системы построены на основе кода, созданного в конце прошлого века, который достигает своих пределов, а создателей этих систем уже нет.

5. Искусственный интеллект (названный автором "алгоритмы Т9++") негативно влияет на отрасль, уменьшая количество настоящих программистов.

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

7. Вычислительная мощность приближается к физическим пределам, что делает невозможным прежний "расслабленный подход".

8. Вместо выращивания системных программистов и создания нового фундамента, индустрия поощряет становиться кодерами и менеджерами.

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

10. Генерация кода с помощью ИИ на естественных языках не является настоящим программированием и приведёт к "шкодингу и колдовству" – неспособности находить даже простые логические ошибки.

Вывод

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

Дополнительный вывод

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

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

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

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

Оценка информации
Голосование
загрузка...
Поделиться:
Один комментарий » Оставить комментарий
  • 5214 4528

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

Оставить комментарий

Вы вошли как Гость. Вы можете авторизоваться

Будте вежливы. Не ругайтесь. Оффтоп тоже не приветствуем. Спам убивается моментально.
Оставляя комментарий Вы соглашаетесь с правилами сайта.

(Обязательно)

Информация о сайте

Ящик Пандоры — информационный сайт, на котором освещаются вопросы: науки, истории, религии, образования, культуры и политики.

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

Сайт может содержать контент, не предназначенный для лиц младше 18-ти лет. Прежде чем приступать к просмотру сайта, ознакомьтесь с разделами:

Со всеми вопросами и предложениями обращайтесь по почте info@pandoraopen.ru