⚡️ Грамотность эпохи ИИ или умение выражать мысль логично

Работа в корпорации приучила меня думать прежде, чем что-то сказать, и самое главное — прежде, чем что-то сделать.

У меня было излюбленное правило, я называл его “правилом трех гвоздей”[1], в соответствии с которым ==чем срочнее задача, тем медленнее я ее буду делать==, если вообще буду. Но самое интересное не то, что я не делаю срочные задачи, а то, что чем умнее команда, тем сильнее нужно думать прежде, чем ставить им задачу, какой бы срочной она ни была.

И дело тут не только в том, что необдуманную задачу “умная” и компетентная команда раскритикует в пух и прах, а в том, что умная команда на то и умная, что найдет способ “запихать” круглое в квадратное[2].

Мне в жизни очень повезло работать и руководить такой командой, этим ребяткам не нужно было говорить два раза, что сделать, они просто брали и делали, но я заметил одну интересную особенность, которая “воспроизвелась” при иных, неожиданных обстоятельствах[3]. Если умной команде поставить необдуманную задачу и создать условия, при которых команда не может уточнить условия задачи и “обстучать” спорные моменты, команда может выполнить задачу так, что ты и не знал, что так можно.

У “не знал, что так можно” были и положительные грани, но чаще негативные. Иногда, поддавшись панике, я писал в общий чат какую-то задачу с припиской, что нахожусь на совещании и что, как выйду, мне нужно уже показать результат. Если разбираться в том, как я ставил задачу в режиме паники, то лучше всего постановку может описать фраза “сделайте красиво”. Понятно же, что “красиво” не получалось.

После того как я начал вайбкодить, я понял, что в моем распоряжении снова очень умная и компетентная команда, и что прежде чем поставить ей задачу, нужно самому “крепко подумать”, потому что “сделать красиво” команда сможет, но вряд ли мне это понравится.

С ИИ-агентами нужно очень много думать прежде, чем просить их что-то сделать. Задачу нужно ставить крайне логично и понятно, а самое главное — доступно. Тогда агент сделает то, что от него попросили.

Вот такая вот мысль…


:link: Читать в контексте Сада


  1. Смотри последний раздел заметки ↩︎

  2. Мне вспоминается фильм “Аполлон-13”, когда в космическом корабле для спасения команды инженеры с земли пытались как раз “затолкать” круглый воздушный фильтр в квадратное отверстие, используя ограниченный инвентарь, имеющийся на корабле в космосе. ↩︎

  3. Об этих обстоятельствах чуть ниже. ↩︎

1 лайк

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

При том “подумать” два три раза касается всего. Я вот спроектировал эксперимент для школы, в рамках работы над диссертацией и вот уже недельку “тренируюсь на деточках” и скажу так, что и с такой деятельностью нужно много прототипировать, в смысле в исследовательской ))

Но это прям приятный процесс, если знать от чего “ловить” кайф )

1 лайк

Позволю себе не согласиться: ИИ, в отличие от команды, спокойно может переделывать одно и то же по несколько раз. Это может быть несколько дольше, чем сделать сразу с первого раза, но не критично. Плюс если говорить про код - можно откатываться на любой момент времени назад и попросить сделать по-другому. Можно думать через эксперименты.

А ещё лучше получается если сначала обсудить что надо делать. Т.е. прямо при постановке задачи сказать: уточни у меня всё что не ясно или можно сделать с разным конечным результатом и хорошенько расспроси у меня “что такое красиво“.
При этом нейронка, в отличие от команды, не будет смотреть на меня косо если я сейчас скажу одно, потом откачусь на 5 минут назад и скажу - сделай наоборот, а потом снова откачусь и скажу что я имел ввиду третий вариант.

Согласен со всем :slight_smile:

Особенно про команду и «откатиться», но у меня остался вопрос — это хорошо тли плохо?

То есть ты смотришь позитивно или негативно на технологию?

я смотрю строго позитивно. Современные системы сильно повышают и свободу мышления и объёмы того что я могу сделать.

Не смотря на то, что я сам разработчик - до вайбкодинга мне было лень писать что-то для себя. За 20+ лет я написал может пару скриптов для себя лично и потом ещё куцый плагинчик для obsidian. Куцый, в смысле что он выполнял ровно то, что мне нужно, но выглядел очень некрасиво, даже для меня слишком утилитарно.

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

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

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

Сейчас я смотрю на ИИ-системы разработки как на:

  • личного разработчика-джуна, который хорошо знает теорию, в целом задачу сделает. Может коряво, но в 90% случаев это всё равно будет работать. Уверен что мой компьютер вполне смог бы сканировать всё моё хранилище на нажатие каждой кнопки при вводе ссылки и я бы этого даже не заметил на практике.
  • следующая фаза развития систем разработки для разработчиков. Я могу писать программу в “блокноте" - без подсветки, автодополнений и т.п., но это будет заметно сложнее чем в IDE с автодополнениями и подсветками синтаксиса. В программе будет больше сокращений, т.к. их надо набирать каждый раз и набирать без ошибок. Врядли случаться рефакторинги ради улучшения красоты кода и т.п. В IDE с автодополнениями, синтаксическим анализом и т.п. я могу переименовать функцию сразу по всему проекту в сотне файлов и это сделать просто. Теперь я спокойно называю функции/переменные достаточно длинно чтобы при чтении сразу понимать что они означают и т.п.
  • с курсором, claude code и т.п. автодополнение вышло на ещё более высокий уровень. Теперь ИИ дополняет не отдельное слово, а мою идею. Я могу подумать в одну сторону - он сделает, могу в другую - он тоже сделает. Потом уточняю что я думал и это дополняется лучше. Но при этом в проф. разработке по-прежнему важно очень хорошо понимать что ты делаешь.

Вооооо!!

Именно … я бы никогда не взялся за свой сайт, если бы не было такого инструмента как антигравити! Просто потому что некогда было бы это делать и мне просто много чего нужно было изучить дополнительно. А у меня и без вайбкодинга работы просто не в проворот.

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

А тут с этой шарманкой, поставил задачу и ковыряешь ее тихонечно

Ну и самое главное – я просто экономлю уйму времени на печати. Кстати об этом говорил Гуидо Ван Россум, создатель Питона

Ну и как финалочка – действительно – с ИИ приходится все-таки подумать, потому что у тебя не просто один джун, а на самом деле целая команда джунов ))

Количество сотрудников в подчинении не является в данном случае определяющей характеристикой.

С ИИ придется думать из-за проблемы ответственности за неправильное решение. Искин внедряется туда, где есть прибыль и нет ответственности. Кроме генерации развлекательного контента основное внедрение – принятие судебных решений в Китае по мелким правонарушениям. Судьи решили что искин вполне может принимать решение по мелким случаям. В случае лекарств каждая ошибка в молекуле будет стоить в суде очень дорого.

В определенном смысле общество начинает двигаться в сторону принятия ответственности. В течение всего ХХ века строили рациональные машины, снимающие ответственность с человека-винтика, а теперь наоборот.