До голосования в России, после которого, как я уже прогнозировал, начнётся нечто интересное, остаётся меньше двух недель. Чтобы скоротать эти последние денёчки, напишу на давно лелеемую мной тему - про искусственный интеллект.
За последний год мы с коллегами стали свидетелями нескольких стадий внедрения AI:
По описанию выше можно подумать, что я AI-скептик - и это будет неверно. Искусственный интеллект может быть невероятно полезным инструментом, существенно увеличивающим производительность кожаного мешка. Но.
Поскольку ИИ - инструмент невероятно сложный, многофункциональный, и более того - с претензией на агентность, существует заманчивая опасность перекладывания груза принятия решений на него. А этого делать ни в коем случае нельзя. О чём я говорю?
Скажем, вы работаете в IT-компании, но непосредственно к разработке отношения не имеете. В какой-то момент приходит менеджмент, увольняет половину народа и заявляет "AI для всех, даром и практически неограниченно, фигачьте". И вот вы, измученный обилием материалов в интернете на тему "Как я разогнал команду и навайбкодил всё сам за неделю", решаетесь повторить этот подвиг. Приходите к Клоду со своей гениальной идеей, он радостно отвечает, что ничего не может быть проще - и вы начинаете творить. Ну как творить - вы пишете промты, Клод их переваривает и пишет код. Чаще всего этот код действительно работает - и вы продолжаете отправлять промты ещё и ещё. В какой-то момент функциональность вашего, кхм, проекта достигает запланированной отметки - и вы гордо несёте его коллегам - смотрите, мол, какая крутая и полезная штука, давайте развернём у нас в инфраструктуре.
Да потому что более-менее сложный результат вайбкода, не подвергаемый на каждом этапе критическому осмыслению, представляет собой кадавра, непригодного к реальной эксплуатации. Если вы не в состоянии отличить хороший код от плохого без ИИ, то вместе с ИИ у вас получится невероятно переусложнённый, медленно работающий ужас. Да, работающий - но практически непригодный к дальнейшему развитию, потому что изначально архитектура никак не была осмыслена, проще переписать с нуля.
Клод невероятно полезен, когда нужно покопаться в уже написанном коде и найти причину проблемы, описав ему симптомы и показав логи. В этом кожаному мешку с ним не сравниться, и это на порядок облегчает работу. Какие-то точечные правки уже существующего кода - за милую душу. Рефакторинг небольшого куска - ради бога.
Но как только вы решаете накодить нечто, доселе не существовавшее, вы попадаете на развилку:
Очевидно, что второй пункт в состоянии осилить человек, обладающий знанием матчасти, и никто иной. Нужно ещё до начала процесса обладать ответом на вопрос "как это должно работать внутри", а не "что эта штука должна делать в результате". С этим у многих проблемы - и легко можно понять, почему. Потому что до появления ИИ между гениальной идеей и многочисленными неподходящими способами её реализации существовала прослойка в виде технических специалистов, рубящих дичь на корню. Сейчас же гордый обладатель идеи может отодвинуть этих занудных бубнил в сторонку - и без остатка погрузиться в акт творения, доселе ему недоступный.
Особенно печальны они, когда, впечатлившись открывающимися возможностями для увеличения производительности работников, менеджмент решает, что нашёл серебряную пулю для уменьшения затрат.