All streams
Search
Write a publication
Pull to refresh

Comments 208

Делегирование кодинга AI - избавление от пере(пере)переизобретения велосипедов. Более 90% задач кем-то когда-то уже решалось, AI знает почти все возможные варианты этих решений и совсем занедорого их напишет.

Это самая настоящая "малая механизация" прикладных повсеместных(!) задач.

У кого раньше не было денег/сил/ресурсов/etc автоматизировать рутину теперь их получили.

Делегирование кодинга AI — избавление от мозга у делегирующего.

Делегирование генерацию машинного кода GCC — избавление от мозга у делегирующего.

Делегирование генерацию машинного кода GCC — избавление от мозга у делегирующего.

Ну, во-первых, я и без GCC могу.

Во-вторых, GCC детерминирован: на один и тот же входной файл всегда выдаёт один и тот же выходной. То есть стопроцентно предсказуем (за что и любим). В отличие от.

Так я тоже без LLM могу. И?
Ставим у LLM температуру 0 и он тоже становится детерминированным. И?

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

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

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

Осталось самая мелочь: объяснить компьютеру, как это: "не обращать внимения на ошибки". А то он так не умеет.

зачем нужен детерминированный результат работы

Где-где, а вот в этом конкретном месте что-то говорить — только портить.

GCC сохраняет (с точностью до багов компилятора) семантику. Какая формальная семантика у запросов к llm? Остаётся ли она такой же у сгенерированного кода?

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

Си даже к железу-то уже не привязан, это некая абстрактная виртуальная машину, которую потом с переменным успехом пытаются натянуть на разное железо.

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

Строго говоря, и не очень-то оно сохраняет, иногда такие оптимизации встречаются, которые логику кода выворачивают наоборот.

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

Или UB, при котором компилятор волен делать вообще что угодно

Он потому и может делать что угодно, что в стандарте не задана семантика. i.e. входная программа попросту не является корректной программой на си, поэтому сохранять там нечего

Как это влияет на тезис "когда вы пишите на си/плюсах у вас атрофируется навык писать на асме"?

Никак, с этим тезисом я даже согласен. Но ведь в вашем первом комментарии он совсем не так сформулирован

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

О, так LLM получается тоже часто семантику запроса не нарушает. Я в нее тыкаю одним и тем же запросом, она генерирует разный код, но который решает задачу одинаково правильно :)

У запроса семантика формально не задана и вариативность решений llm настолько большая, что ни о каком сохранении семантики (по крайней мере, пока что) речь идти не может

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

И дальше пишу, что результат выполнения у текста, который идёт на вход в llm никак не задан. Другими словами, любой запрос к llm это undefined behavior.

Это, кажется, никак не противоречит прошлым сообщениям, разве нет?

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

Если оптимизация меняет семантику - значит, либо в компиляторе ошибка, либо семантика никогда не была такой.

Не совсем так. GCC без входных данных (исходников) ничено не сгенерит, а чтобы написать исходники мозги нужны.

Это не совсем так. Без мозга делегирующего AI быстро заглохнет в собственных ошибках. Нужно структурирование, понимания алгоритмов и пр - тогда все получается

AI знает почти все возможные варианты этих решений и совсем занедорого их напишет.

Вася, зырь, миллениалы изобрели copy-paste со Stack Overflow!

Именно! Только LLM делает это в десятки и сотни раз быстрее человека, не требуя от него вообще никакой квалификации. Достаточно скачать и установить курсор/TRAE и написать, что ему надо. Принципиальное упрощение.

не требуя от него вообще никакой квалификации

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

Я описал по сути пользование waymo.

Вы увидели то, чего в моём комментарии и близко не подразумевалось.

Следовательно, Вы недостаточно чётко донесли свою мысль.

Про чёткое донесение мыслей есть замечательное современное произведение: https://www.inpearls.ru/1041481 «я ем пельмени»

Я Вам больше скажу — хуже, когда ею пишут...

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

Так о том и речь, что дяденька явно профнепригоден как программист, потому как донесение своей мысли [до компьютера] в чётком и однозначном виде, принципиально не допускающем двояких толкований — это, собственно, и есть то, за что нам бабло платят.

такова суть виброкодера :)

Но конкуренция-то какова!

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

Если это работает, обеспечивая требуемое качество на имеющихся мощностях - ЛЛМ успешно выполнила свою задачу.

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

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

Например у кастомера иногда   не работает сетевое соединение в сложной инфраструктуре кастомера с полным набором всяких политик (Hyper-V, Kerberos, Firewall и пр), код сложный много асинхронной работы, очереди, потоки и пр, как проверить что проблема где то у нас или на стороне кастомера или на стороне Майкрасофт(реально репортили им несколько инцидентов, где они признавали это как баг ), написать простой PS скрипт который примерно так же вызывает WinAPI-шные вызовы, посмотреть, как отработает, и я просто кусок кода на С++ скормил LLM попросил перевести на PS, он мне выдал скрипт, я его еще немного подправил, проверил что работает и все можно отдавать саппорту, они кастомеру, без LLM я бы сделал тоже самоё, но заметно дольше бы делал.

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

Вычитывать сгенеренный код на предмет галлюцинаций и возможных ошибок тоже LLM будет?

У многих студентов, которых наблюдаю, именно так. И тесты, и сообщения об ошибках, всё полностью. Даже установка пакетов для тестирования, давая пароль от root нейронке. Делегируют вообще всё полностью. Х хотя не все даже пытаются проверить и запустить, что оно вообще работает и что хотя бы синтаксис корректный, порой отдают сгенерённое как есть. Зато у себя не запустили недоверенный код, проблема преподавателя или научника, кто прод положит.

Красиво, только куда деть орды разработчиков, если 10% "уникальных" задач не требуют того штата, что есть сейчас? Не надо фантазировать что рынок расширится за счёт простых людей и их повседневных задач, простые задачи нейронки и без экспертов автоматизируют, а под большинство сложных уже давно есть готовые инструменты. Раньше тоже говорили, что у каждого человека будет свой сайт и свои продукты, но оказалось, что большинству это не нужно даже за небольшие деньги. 10% задач смогут выполнять кучка сеньоров, а остальным, при таком раскладе, останется эникеить за гроши.

а остальным, при таком раскладе, останется эникеить за гроши.

Главный вопрос - а куда такая армия эникейщиков нужна?

Есть готовые библиотеки и поиск в гугле. ИИ ищет же код в открытых источниках. Должен, во всяком случае. Так в чём разница? Только в том, что при осмысленном поиске программист выбирает решение, а не пользуется тем, что дали.

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

Осмысленный поиск - это выбор "правильных" ключевых слов. И поисковик подбирает (должен) материалы по релевантности, то есть тупо по совпадению, что и требуется. А ИИ релевантность толкует по-своему, ещё и врёт местами.

ИИ тулзы не в открытых источниках ищут. Сами они вообще ничего не ищут если быть буквальным. Этим занимаются те кто аннотирует видео, аудио и текст (включая код). OpenAI (даже) нанимали для этого посредственных программистов чтобы внести код в базу данных ChatGPT. Разметкой данных занимаются кенийцы, филиппинцы, индусы и тд (там подешевле)

Значит, совсем всё плохо

«Плохо? Плохо?!? ДА МНЕ ТРЫНДЕЦ!!!» ©

Недавно мне надо было поправить андроид приложение, т.к. я не знаток андроид, но пишу на java и понимаю общие принципы андроид приложений, я решил воспользоваться гига чатом. Так вот, я потратил целый день пытаясь получить от него что то рабочее, но так и не случилось,. Код пишет, понимает что от него хотят, но код работает не так как надо. Мне кажется как замена джунов, наверное, но опытный разработчик сделает это быстрее и качественней, 100%. Так что не знаю, с учётом того что большую часть времени я трачу на чтение кода, чем не его написание, у меня пока нет желания переходить на вайб кодинг. Мне кажется классический подход пока выигрывает

я решил воспользоваться гига чатом

Ошибка номер раз.

надо было поправить андроид приложение, т.к. я не знаток андроид

Ошибка номер два и три.

Если нет полного понимания что происходит и как этого добиться по шагам без нейронки - результат будет такой же непредсказуемый

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

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

Cursor - UI к API Claude (Anthropic)

Perplexity - Claude (Anthropic), DeepSeek и ChatGPT (OpenAI)

Нет в этих сортах ИИ ничего уникального

Все эти мега чаты и прочие поделки, они сейчас на уровне ChatGPT 5 летней давности наверно, максимум могут текст нагенерить, до нормального рабочего кода там еще очень и очень далеко

Серьёзно? Галлюцинации уже у мясных мешков начались? ChatGPT 5 лет назад не существовало. Хотя не важно, ни один Gen AI не справляется с чем-то отличным от решения типовых задач.

Согласен, кожаные галлюцинируют не меньше ;-)

"GPT-3 (2020) — впервые предоставили API через OpenAI, но по приглашениям. Это стало отправной точкой для массового использования разработчиками."

Грок, сколько будет 2025 минус 2022?

Говорит, что 3

Надо спрашивать, сколько времени прошло с 30 ноября 2025. Целых лет будет 2.

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

Отставание где-то в год

Попробуйте qwen3 coder он явно умнее "аналогов из России"

А они не с него ли дистиллированы как раз? Возможно, сравнение глубже, чем может показаться на первый взгляд.

но опытный разработчик сделает это быстрее и качественней, 100%.

Неа, опытный разработчик знает библиотеку, которую будет пытаться приклеить к текущему зоопарку примерно столько же по времени. Результат будет с примерно 20% успеха, на 80% скажет что текущая инфраструктура (читай набор других библиотек) несовместима и закроет таск.
Вот не особо опытный разработчик скорее всего наваяет более-менее рабочий код за пол дня. А опытным он станет когда узнает о существовании библиотеки выше. Но главное код уже будет и будет рабочим.

Вы сейчас как раз доказываете, что для правильного использования ИИ нужно самому понимать, что именно вы делаете и что должно получиться.

И что страхи "настоящих программистов", что их вот-вот заменят - лишены оснований.

Заменят того, кто привык получать детализированное ТЗ и переводить его с человеческого на язык программирования.
Но кто-то же должен ТЗ составлять?

На данный момент вы правы. Но ии бурно развиваются и возможно через годик вы будете не правы совершенно :)

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

Потому что с увеличением масштаба не меняется суть как и фундаментальные ограничения. Искусственный нейрон (перцетрон - perceptron - воспиятор) это технология 1957 года (тогда еще Элвис Пресли выпустил Jailhouse Rock) на концепциях поведенческой психологии 1943 года. Тогда считали что человеческий мозг работает именно так. Первая искусственная нейронная сеть была балансируемой небольшой матрицей весов на вход которой подавали изображение букв-цифр.

https://www.youtube.com/watch?v=l-9ALe3U-Fg

ChatGPT состоит из 100 миллионов [Персептрон]

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

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

я не знаток андроид

В наше время этим не гордились! ©

Надо брать платный claude. Бесплатный AI Вам ничего не напишет.

Серьёзно? Не нужно быть гением, чтобы понять, что использлвать отечественные кастраты - так себе затея.

Используйте GPT последних версий. А для Android очень советую прошные версии Gemini. Он очень хорошо справляется с Android кодом. Хоть иногда и стремится использовать устаревшие решения, он способен собрать готовое рабочее приложение

Мой пример: в свое время я достаточно много писал на перле. Недавно ради интереса поставил простой вопрос чату по перлу - я префазировал много раз, пытался объяснить, но все ответы были не рабочими. Данный чатом код просто не работал.

потому что никто не аннотировал данные по Perl для ИИ платформ - аннотирование данных ручной процесс (Scale AI, Surge AI, Amazon Mechanical Turk и прочие компании)

по JS более менее напихали примеров в БД чатботов

Ну я пробовал код на зиге просить писать, в целом работало. И ассемблерные вставки для avx512, тоже не с первой итерации, но заработало.
Хотите сказать, что всё это аннотировали?

А как же чат мог дать ответ по не анотированным данным?

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

А что такое ответственность за код ? И какие могут быть "последствия его применения" ? Мы же не о ЯО говорим... Нормально настроенные процессы TDD + BDD + ревью кода + QA сводят к минимуму шанс попадания чего-то кривого на прод. Даже если это кривое туда попало то это уровень ответственности CTO/Head Of Engineering, поскольку эти люди отвечают за настройку процессов в целом, но никак не линейного программиста.

И - да, можно сколько угодно кидаться какашками в LLM и говорить что это все ерунда, но это как с автопилотом Теслы или программой Space X - сначала все ржали, а сейчас тесла сама по себе ездит, а ракеты успешно возвращаются и летают повторно, с LLM будет так же.

Только стобы тесла смогла поехать на автопилоте, нужно было написать ответственный код

Нормально настроенные процессы TDD + BDD + ревью кода + QA сводят к минимуму шанс попадания чего-то кривого на прод.

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

поскольку эти люди отвечают за настройку процессов в целом, но никак не линейного программиста

Да, только не везде есть раздутый штат из десятков/сотен программистов, что бы требовалось процессы выстраивать. Есть задача - надо оценить сроки и сделать

И - да, можно сколько угодно кидаться какашками в LLM и говорить что это все ерунда, но это как с автопилотом Теслы или программой Space X - сначала все ржали, а сейчас тесла сама по себе ездит, а ракеты успешно возвращаются и летают повторно, с LLM будет так же.

Когда будет, тогда будет, но на текущий момент LLM неприменима для крупных проектов, и что-то мне подсказывает, так и останется на уровне автокомплита на стероидах. Тесла сама по себе не ездит, тот автопилот стагнирует годами и находится на уровне круиз контроля с приятными бонусами.

Вы глазами ревьювите нагенерёный код?!

А вы чем? Зрительное восприятие наиболее эффективно. Программист отвечает за код, так что стоит его видеть.

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

До техножрецов буквально пара шагов.

Естественно. У нас люди почему-то любят крайности, для многих нейронка = скинуть в клауди тикет жиры и пинать ее пока он не выдаст что-то что хотя-бы скомпилится, повторить это раз 10 а потом удивляться и рассказывать что нейронка тупая и нифига на самом деле не умеет.

Конечно, я же не совсем промтститутка.

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

CTO отвечает в том числе и за процессы, а процессы - не дают затащить г**но в прод, и мало кому интересно откуда это г**но взялось. Если человек регулярно присылает на ревью г**но, то - рискует получить соответствующий фидбек от коллег на перформанс ревью, и дальше с ним будет импрувмент план и он либо перестает присылать г**но на ревью, либо - мы с человеком расстаемся.

Но глобально - всем плевать как конкретно материализовался код.

Напишу про теслу. У нее нет автопилота. Это расширенный круиз контроль. У них только второй уровень автоматизации управления. Левел 5 там Маск где-то в 2013 обещал через 3 года, так что не просто так "все сначала ржали"

Так технология искусственных нейронных сетей таже :)

https://www.tesla.com/AI "Применяйте передовые исследования для обучения глубоких нейронных сетей для решения задач, охватывающих широкий спектр задач, от восприятия до управления. Наши покамерные сети анализируют необработанные изображения для семантической сегментации, обнаружения объектов и монокулярной оценки глубины." глубокое обучение

https://digitalassets.tesla.com/tesla-contents/video/upload/f_auto,q_auto/network.mp4

https://en.wikipedia.org/wiki/Transformer_(deep_learning_architecture) Трансформер (ChatGPT и пр.) - архитектура глубокого обучения

Илон хитрый - он нанял команду механических турок т.е. телеоператоров

Тесла сама по себе не ездит и не будет ездить в ближайшем будущем. Причина как раз в той же ответственности, о которой написали выше. Доверять программе человеческую жизнь никто не будет. За перемещение Теслы отвечает водитель, а не автопилот.

Нет, они просто не осилили. Так-то роботакси кое-где уже ездят...

Нормально настроенные процессы TDD + BDD + ревью кода + QA сводят к минимуму шанс попадания чего-то кривого на прод.

Аххах, и как все это, кроме ревью кода, спасет от кривого кода с неоправданной нелинейной сложностью алгоритма, например? Условный кривой запрос к БД вернет правильные данные по тестам, вот только выполняться он будет не то чтобы очень быстро. А ревью кода, внезапно, нужно кому-то заниматься. Физически.

Естественно! Меня тут заминусили, но я нигде ни разу не писал что можно просто взять скопипастить тикет в ИИ и просто жать accept. Естественно нужно глазами ревьювить то что сгенерил ИИ и естественно протаскивать это все через обычный процесс код ревью. Это само собой разумеющееся. Я например, ту самую процедурку которая делает тот самый запрос к базе напишу сам, а вот чтобы протащить ее через N слоев абстракций - использую ИИ. И я считаю это нормальным.

нормально настроенные процессы TDD + BDD + ревью кода + QA сводят к минимуму шанс попадания чего-то кривого на прод. Даже если это кривое туда попало то это уровень ответственности CTO/Head Of Engineering, поскольку эти люди отвечают за настройку процессов в целом, но никак не линейного программиста

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

нормально настроенные процессы TDD + BDD + ревью кода + QA сводят к минимуму шанс попадания чего-то кривого на прод.

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

  • Нужно регулярно хоть что-то выкатывать.

  • Мелкие изменения тестируются от и до по красоте, но локально. А как они влияют на всю систему в целом (краевые эффекты, эффект накопленных костылей и исключений) - некогда, дорого, у нас ритмичность пострадает, спринты под угрозой!!!

  • В итоге весь продукт неизбежно превращается в другой "продукт".

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

Я заметил, что вокруг новых AI-инструментов для кодинга (типа Cursor AI, ChatGPT, Claude) идёт жаркая дискуссия.

Ничего себе!!! Вот это да!!! Как же ты своевременно это подметил-то, а?! Эх, не знаю что я бы без тебя делал...

Ждём-с когда завалиться первый стартап с кодовой базой написанной на 90% AI. Ничего не имею против ИИ, как инструмент и правда не плохой. Больше беспокоит, что все чаще из разных утюгов слышу про те самые продукты которые сделали только через промпты. Моими новыми вопросами на собеседовании будут: Сколько кодовой базы было написано ИИ? Работали ли над проектом вайбкодеры? Заложено ли в бюджет полное переписывание продукта если его навайбкодил дизайнер? Думаю в скором времени многим из нас придется столкнуться с архитектурой джуновского уровня поверх которой пытаются навернуть синьорский код. Так что держим ухо востро.

За деньги да

«Но знайте: таксу возьму я с вас не простую, а золотую...» ©

Ну все-таки себе цену тоже надо знать

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

Ну на наш век конечно хватит, а вот за молодняк обидно. Им теперь вайти в айти будет сильно тяжелее. Ну или мне просто так кажется.

Кажется. Ничего страшного не будет. Вакансии никуда не денутся, их количество резко не увеличится и не уменьшится, а "всех заменят!!!" — marketing bullshit от тех, кто нейронки монетизирует. Порог входа немного вырастет, но не очень сильно. Вопрос только в доле отсева и количестве разочаровавшихся, что авторы всяких гпт им обещали, что они станут кем угодно сразу одновременно всего лишь за платную подписку, а они не стали кем угодно. Как так, неужели обманули? Как могли в рекламе обмануть? И если каждый второй выпускник хочет вкатиться в айти и считает, что с нейронкой это просто, следует помнить, что не появится по полмиллиона новых айтишных вакансий в год, где ещё и каждый будет сходу очень много получать.

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

Я скорее про то, что порог входа для новичков может приподняться слишком крутым и неприятным образом, потому что раньше надо было конкурировать с такими же новичками, а теперь ещё и с железным конём. Причем учиться самостоятельно мыслить станет сложнее.

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

Новичкам не надо самим конкурировать с железным конём, надо самому конкурировать с другими (тоже неопытными) пользователями такого же железного коня, им кто-то ещё должен оперировать. Сложно скорее отличить новичка, который умеет немного сам и который не умеет вообще ничего, но конём изображает. Кто горит инженерным делом, закрепиться сидеть и так, а обилие остальных не из-за вайб колеров, а из-за хайпа и пока что-то новое не станет популярно, и деньги туда станут засовывать, потому что можно. Вообще ничего страшного. Только с лучшим материалом плохо: и так базовые школьные знания усваивают плохо, якобы всегда загуглят всё, зачем учиться... Хотя оно так не работает. LLM позволяют не только перестать узнавать, но и учиться думать и структурно воспринимать текст. Лучшие останутся такими же, хотя с новым возможностям, а среднее значение резко упадёт.

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

Теперь обещают что с нейронкой можно за две недели

«И вы говорите!» ©

Бутиковый posh-код - написан настоящими живыми программистами :)

Спасибо за идею! Добавил в свой список вопросов)

манки кодер... манки вибро кодер

кодинг никогда не меняется

https://medium.com/nerd-for-tech/vibe-coding-raising-monkeys-on-steroids-5d9d9cd3557d

"Vibe Coding — выращивание обезьян на стероидах.

Вы знаете, как мало своих знаний вы готовы делегировать ИИ — не потому, что ИИ плох, а потому, что ваш мозг может справиться с этим лучше." (порядка 20 Вт на сложные задачи)

В нашем ремесле есть два вида активности, одна любимая, вторая нелюбимая - соответитвенно писать говнокод и читать говнокод. LLM-ки эффективно заменяют первое на второе.

Но беда, конечно, не в этом. Потерпели бы, приспособились. Как говорится, человек не скотина - ко всему привыкает. Беда в том, что изучение и созидание это два принципиально разных вида деятельности, реализуемых разными мозговыми цепями. Анализ и синтез, которые друг без друга, конечно, не существуют, но тем не менее тренируются отдельно. Наиболее наглядно это наблюдается на изучении иностранных языков, когда бывает так, что reading и listening прокачались до уровня B2, но человек реально два слова связать не может. Speaking и writing у него позорный A1. Помню времена, когда у самого так было. Ничего удивительного, ведь анализ и синтез речи реализуется разными мозговыми центрами. Один натренирован, второй нет.

Если (или уже "когда"?) синтез кода полностью делегируется нейронкам, а нам останется только анализ, это не будет означать, что мы начнём лучше анализировать. Скорее всего хуже. Но это мы не почувствуем, потому что анализ мы тоже делегируем нейронкам. Никакого "учиться и расти" не будет, потому что учиться будет нечему и незачем, а расти будет некуда и тоже незачем.

бывает так, что reading и listening прокачались до уровня B2, но человек реально два слова связать не может

В среде где это единственный способ добиться желаемого - запоет как миленький за неск месяцев. На уровень ниже, но всем будет ок.

Проверено на себе

> запоет как миленький за неск месяцев

Только надо помнить, что "неск месяцев" может быть и больше 12. Проверено на как минимум одном знакомом)

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

Как говорится, человек не скотина — ко всему привыкает.

Простите, задушню: там было ровно наоборот, "человек такая скотина — ко всему привыкает".

Ещё раз извините 🙏

как написал один разработчик, «не писать код руками, а проверять его — намного круче. Глаза меньше устают, появляются время и силы думать, а не печатать дефолтный код»

Огромное заблуждение. В общем случае, читать программу сложнее, чем писать.
Потому что для чтения - требуется понимание. А для написания это необязательно - можно писать небрежно, можно копипастить из stackoverflow и всяких "ИИ" и т.п.

Скрытый текст

Однажды чукча принёс в редакцию свой роман. Редактор прочитал и говорит:

— Понимаете ли, слабовато… Вам бы классику читать. Вы Тургенева читали? А Толстого? А Достоевского?…

Чукча отвечает:

— Однако, нет. Чукча — не читатель, чукча — писатель.

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

Я пробовал использовать "умный" автокомплит AI-шный и проблема в том что я знаю что должно быть и как, он генерит, пока я читаю я сбиваюсь со своей мысли, прочитал, ну вроде выглядит правильно, запускаю, ошибка в вычислении, окей, пошел уже прям досконально перечитывать и разбирать, нашел ошибки, поправил. Но за это время я бы уже и сам все написал правильно сразу (может в вэб девелопменте оно проще, у меня опыт использования с С++).

Но позитивный опыт с AI тоже есть, но связан он скорее с изучением новых дисциплин, например той же теории управления. Попросить подробнее объяснить определенный кусок, напомнить какую подзабытую математику, сгенерировать пример с объяснением и т.д. То есть когда читаю учебник/смотрю лекции и использую AI как преподавателя по предмету и смежных предметах чтобы задать вопросы.

но связан он скорее с изучением новых дисциплин

Есть такой интересный феномен. Когда используешь ллмку там где и сам все знаешь, она все время врет, ошибается, генерит бред. А когда используешь ее в областях о которых не знаешь, то оно вроде бы и нормально.
Или это так все время удивительно везет, или это Gell-Mann amnesia effect. (Спойлер: это второе)

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

Более того, тебя ещё и уверенно пытается переубедить, что это ты неправ!
Недавно попросил сделать скрипт и расписать WinRM Certificate credential mapping, так мне уверенно было с "пруфами", в которых этого и рядом нет, показано якобы работающее решение для доменных учеток!
Проверял на нескольких бесплатных и платных движках, результат одинаковый и напомнил шутку про "а ты код из вопросов или из ответов со Stack Overflow брал?"

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

Но ты прав, ИИ это как stackoverflow. Но чутка лучшая замена. И про написание ты тоже прав, многих учат именно писать код, а не понимать его, получаются такие живые генераторы кода. А вот понимание/ чтение хоть и более сложный навык, но насмотренность уже как побочный эффект. Сам того не замечая тянешь интересные решения из разных проектов.

Вайб кодинг это "без ТЗ результат ХЗ"

И что [...] характерно, ТЗ в ходе работы все равно не появляется. Ни ТЗ ни методики/алгоритма ни ТП ни результата в итоге.

Мне это напоминает как 25+ лет назад я сразу после института в НИИ делал решение разряженных СЛАУ итерационными методами. В статье дан алгоритм со словами "числовые коэффициенты подберите самостоятельно из наиболее быстрой сходимости". Я месяц как слепыш подбирал эти параметры. И так и не подобрал. Всё равно находился corner case где алгоритм не работал. Сначала было весело, но через пару недель я понял что работа не продвигается: никакой уверенности что что-то становится лучше, что ты прошёл 5 шагов из 10 и через 2 недели ты закончишь. Так и вышло.

Я зарёкся использовать "магию" без доказательства существования решения.

Очень напоминает LLM: иногда помогает, иногда нет. 4 дня в неделю в чилле, один день и всю ночь в мыле. Мне такое не нравится.

Я месяц как слепыш подбирал эти параметры. И так и не подобрал. Всё равно находился corner case где алгоритм не работал. Сначала было весело, но через пару недель я понял что работа не продвигается: никакой уверенности что что-то становится лучше, что ты прошёл 5 шагов из 10 и через 2 недели ты закончишь. Так и вышло.

Типичный процесс решения научных задач. Не факт, что решение есть. Сроки крайне туманны.

Не научных а исследовательских.

Наука к этому добавляет теорему о существовании и единственности решения.

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

- Вайб сантехник

Так Афоня Борщев же:-)

Кринж-вайб-сантехник.

Вайб строителей и вайб таксистов уже давно в избытке.

Ещё пугают вайб машинисты, вайб пилоты и вайб министры/депутаты/мэры/администрация

Что делать с вайб вирусологами, наверное, все подумали примерно одно и то же.

учитывая как сильно автоматизировано метро, да и ЖД тоже, все машинисты уже давным-давно "вайб" и им абсолютно норм )) да и нам тоже

Разве что тела иногда надо с путей убирать физически.

Хм. А ведь этот процесс можно механизировать. И первый вагон состава превратится в трупный комбайн. Будет своей робо - рукой собирать трупы в корзинку.

Самые смешные — вайб сапёры, вайб электрики, вайб дрессировщики, вайб каскадёры.

Самые смешные — вайб сапёры, вайб электрики, вайб дрессировщики, вайб каскадёры.

Там как раз всё хорошо: естественный отбор позаботится, чтобы остались только самые лучшие!

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

вайб-кодинг не про то, чтобы забыть программирование, а про то, чтобы переключиться с рутины на идеи

Чтобы переключиться с рутины на идеи научитесь проектировать.

Если вы доведёте идеи/требования до бизнес правил, выраженных в типах, сигнатурах функций, контрактах/апи, тестах, то остальное можете уже скинуть на джуна или LLM

"Никто не умеет составлять грамотное ТЗ" (с).
Тут очередная попытка пусть ГПТ выкрутится и сделает как-нибудь так.
Что бы ГПТ сделать что-нибудь так, надо ТЗ составить грамотно. То же по тестам. То же, в конечном итоге по приемке. А автоматизируемую мат. часть изучить что бы ТЗ составить то непонятно что еще проще, вайбить или кодить. Потому что по сути типичный кодинг это аджайл изучения мат. части, который мало кто с одного захода осиливает.

Кто-то до того ленится, что ТЗ и промпты генерирует нейронками из более простых промптов, а когда по итогу дают замечание, добавляют его в правку генерации начального промпта на генерацию развёрнутого, просто становятся интерфейсом между заказчиком и ИИ-ассистентом. Так что "сформулируй грамотное ТЗ по Турции задаче" уже стало частым вопросом. Хитрость победила интеллект.

Чтобы составить правильный вопрос надо знать половину ответа©

И следствие: Если вопрос задан правильно, ответ будет неожиданным

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

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

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

как написал один разработчик, «не писать код руками, а проверять его — намного круче. Глаза меньше устают, появляются время и силы думать, а не печатать дефолтный код»

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

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

Вот, кстати, читать код LLM лично мне приятнее, чем код кожаных.

Кожаных просто матом.

Похоже программисты изменились.

Ага.
Раньше: комментарии писать не надо, особенно те, которые описывают, что делает код. Поддерживать их тяжело (могут разъезжаться с кодом, а на Code Review никто расхождение ловить не хочет)
Теперь: пишется тот самый комментарий "что это делать должно". Смотрится, соответствует ли результат тому, что просили. Повторяется несколько раз в разных формулировках.

Это программисты-вуайеристы.

Критики справедливо указывают и на риски: ведь код от ИИ иногда выглядит как «работает, но не спрашивай как».

Рисков, на самом деле больше. Скажем, потенциальные санкции. Типа: «Будете себя хорошо вести – будем обещать, то бишь, дадим доступ к ИИ, а, будете себя плохо вести – не будем обещать или «Забирай свои игрушки и не пользуй мой горшок!»».

Кроме того, если вы что-то вайбите «для служебного пользования» или, не дай Бог, для более высокого уровня допуска, то это легко может стать достоянием конкурентов и противников, а оно вам надо?

Даже для простых смертных. Ваши запросы к ИИ-ям скажут о вас больше, чем вы знаете о себе сами. В паре с запросами к поисковикам и комментариям в соцсетях, на вас будет составляться досье, в режиме реального времени. Хорошо, если вы не обладаете чувствительной информацией («Меньше знаешь, крепче спишь!»), иначе могут попытаться злоупотребить вашими «персональными данными».

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

Например, я озадачился кастомизацией или тюнингом стандартного контрола CEdit, в C++. Нужно было увеличить ширину текстовой каретки и, желательно, ее цвет. Бесплатные ИИ, вроде Mistral и Qwen, давали ответ, но не слишком надежный, так как эта ширина, рано или поздно, возвращалась в прежнее состояние. А Qwen предлагал отключить стандартную каретку и эмулировать ее самому. На что я ответил, что у меня уже есть подобный проект, причем, даже, с поддержкой полупрозрачности, в котором непосредственно редактируемая ячейка находится в самом внизу, см. скриншот:

При желании, можно скачать архив программы «CellsEdit», с бинарниками, на VS C++: CellsiEdit.zip.

Qwen заинтересовался этой информацией и попросил посмотреть проект, чтобы улучшить его. Я дал ему ссылку на архив и свой е-мэйл, для обратной связи. Qwen, похвалил работу и пообещал улучшить проект, в частности, добавить взаимодействие с буфером обмена и выложить результат на Гитхаб по адресу: https://github.com/egor-baranov/SimpleCellEdit . Но, к сожалению, до сих пор, там ничего нет, как и сообщения на электронную почту (если только оно не попало в спам, который, почти автоматически, удаляется.

Вот и понимай, как хочешь, стоит ли верить ИИ на слово… :)

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

Он капчу не смог распознать /s

Он капчу не смог распознать

Скрытый текст

Он капчу не смог распознать

Капчу, где? На Гитхабе? Но, у него же (Qwen'a) базовый аккаунт то (github.com/egor-baranov) вполне себе рабочий и актуальный, значит, может работать с этим сервисом. Иначе, зачем предлагать? Я, ведь, не напрашивался…

А, если речь идет о почте, то он у меня ее не просил, я сам прделожил. Поэтому, причем, здесь, капча?

У меня для вас плохие новости.

Он капчу не смог распознать

Капчу, где? На Гитхабе? Но, у него же (Qwen'a) базовый аккаунт то (github.com/egor-baranov) вполне себе рабочий и актуальный, значит, может работать с этим сервисом. Иначе, зачем предлагать? Я, ведь, не напрашивался…

А, если речь идет о почте, то он у меня ее не просил, я сам прделожил. Поэтому, причем, здесь, капча?

Просто пишу СВОЙ опыт. Буквально сегодня ИИ поглючило и он выдал мне прям жестоко плохое решение. И из-за его сложности я чуть не потерял бдительность, но вовремя уточнил что это за фигня? ИИ согласился что сделал полную лажу и решение пошло на второй круг. И такое случается регулярно и иногда прям внезапно. Он был умный и вдруг тупеет и джунеет. И если бы не я это бы пошло в прод. И это разрушает идею вайба на корню, т. к. ты никогда не знаешь где его поглючит. Вот и все.

Не нашёл оригинал, пришлось сгенерить

Так выглядит самообучающейся алгоритм
Так выглядит самообучающейся алгоритм
Я так понимаю, настал тот день, когда сгенерировать новую картинку проще, чем найти старую...

А обычно код без проверки льётся в прод?

ИИ выдал мне плохое решение.

Если бы не я, это бы пошло в прод.

— сегодня я спас проект от кучи говнокода!

— но как?

— самоконтроль!

Интересно насколько автор захотел бы чтоб его дом проектировал вайб-архитектор, проводку в нем делал вайб-электрик, а сантехнику делал вайб-сантехник.

Ну или банально чтобы оперировал вайб-хирург.

если под "вайб" понимать человека который любит заморачиваться ТЗ, занимается не просто реализацией проекта, а проектированием самой проектной документации, т.е. способный не просто реализовывать свои решения, а описывать их так, что бы они были реализованы кем-то не обязательно способным в понимание, то почему бы и нет?

все цепляются к слову "вайб" будто бы оно обесценивает саму профессию. но ведь и прораб это по сути "вайб-строитель". он же сам цемент не мешает, и кирпич не кладёт

---

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

Пока что это больше похоже на: составить тз для AI, получить чертеж дома, часто плохо понимая что там есть и «в прод» строить дом по нему. Так как все пестрит «я вайб сгенерировал проект на 10к строк и зашипил, при отсутствии опыта», так как по нормальному надо очень качественно ревьювить и разбираться в нагенеренном, что по нагрузке уже не сильно отличается написать самому, но не уверен что это все еще и есть «вайб кодинг». Часто отсутствует понимание реализации что и пугает. В вашем случае прораб или солюшн архитект дает проект людям которые несут ответственность за реализацию и по хорошему понимают что делают и коллективно проверяют что понаписали

Пока что это больше похоже на: составить тз для AI, получить чертеж дома, часто плохо понимая что там есть и «в прод» строить дом по нему. 

Причем достаточно невоспроизводимо, как я понимаю. Т.е. когда через полгода-год в то же ТЗ внесут дополнительные требования - то что произойдет?

это мое имхо, но вот тут кстати по-моему сила ИИ может полностью проявится

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

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

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

Я сам то не против ИИ, особенно его использования для самообучения и т.д. Но "сгенерируй для меня всю имплементацию, я даже разбираться не буду и в прод" (что по тексту статьи, да и в принципе по тому что я вижу, и имеется ввиду как "вайб кодинг"), это как по мне очень так себе подход.

Каждый раз генерить с нуля рассчитывая что звезды сойдутся и этих багов не будет и новых критичных не возникнет? Или просить "сделай то же самое только без багов" пока не надоест?

В одном из блогов видел замечательное 'мы изобрели гачу для программистов'
Потому что - каждый запрос (если это не self-hosted) не бесплатный же? И, собственно, какой интерес фирмам совершенствовать все до состояния, что оно с первого раза нужный результат писало? Не-не-не. Оно должно выдавать результат, но не сразу, а заставив клиента потратиться.

А гарант будет? На 150 попытке дают легендарный код без багов, и с красивой анимацией при генерации?

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

и прораб и архитектор никак притянуть людей-рабочих к ответственности не могут (только в очень специфических случаях, когда рабочий нанес реальный вред)

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

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

При слове вайб (вибрация vibe от vibration - буквально vibrocoding) в голову приходят либо растаманы, либо (цензура), либо погромирование

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

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

Полностью согласен, я думаю а ИИ пишет, я проверяю, ИИ исправляет, я думаю и проверяю и так по кругу, код вообще не читаю его, потому что этот язык я вообще не знаю 🤷

И как удается проверять, не зная язык даже? Запускать непонятный код на незнакомом языке, не будучи в состоянии вчитаться, чревато подвохом. Мне кажется, в таком случае фраза "я думаю" переоценена.

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

Тогда отладка перейдёт в "я нажал, и всё пропало, почините". Если приложение посложнее, чем игра в змейку, это не очень серьезный подход, и научиться читать и писать немного код стоит.

Тут как раз эксперемент ставился такой, у нас команда Data
(BI Developer + Data Engineer + AI Engineer)
Иногда заказчику нужен внутрений сайт, что-бы менять какие-то данные,
И мы решили вместо того что-бы отдать на фриланс попробовать использовать ИИ. Макет в lovable а потом Clode Code допиливает бакэнд и всё остальное.
Результат пока радует
Вот пример диалога:
ИИ я решил проблему:
Now search for employee 10373 and you should see January 2026 displayed correctly along with the rest of
the year! 🎉

The system now intelligently distinguishes between:

  • Legitimate full-year data (keeps January)

  • Mixed year data (filters January from next year)

Я отвечаю что надо сделать лучше:
I think we can simplify the logic
Let's keep it simple, just show the all 12 months for the next year and hide the month with total of 0
from the view VW_***** , I have added a new statement there to exclude 2027 and other not relevant dates
ИИ отвечает "Конечно хозяин, хозяин как всегда прав" :-)
● You're absolutely right! That's a much cleaner solution. Instead of complex frontend logic, fix it at the
data source level and keep the frontend simple.

С фрилансероми бывает сложнее, и результат не всегда хорош

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

Возникает закономерный вопрос - накой хрен тогда прослойка в виде нейронки если написать занимает единицы процентов от всего времени в разработке. Лишний этап где благодаря галлюцинациям нейронки все может пойти не так как планировалось?

написать занимает единицы процентов от всего времени в разработке.

Иными словами, хрестоматийное «удар молотком — $1; знание, куда именно ударить — $999».

ругают ИИ

Как мне кажется ругают не ИИ как таковой, а подход "я что-то ему скажу, он что-то нагенерит и я не разбираясь это в прод".

То что описали вы это по сути старый добрый подход когда вы спрашиваете у гугла и SO, разбираетесь что лучше, как и какой код лучше подойдет и используете данный код уже понимая что и зачем и если что сможете потом соптимайзить и продебажить, так как хорошо разобрались что и почему код делает и как он встроен в то, что уже есть, просто оно теперь на стероидах. Не думаю что такое использование у кого-то вызовет большой пушбэк. Но это и не "вайб кодинг" уже, так не похайпить.

не писать код руками, а проверять его — намного круче. Глаза меньше устают, появляются время и силы думать, а не печатать дефолтный код

Эмммм.... Я не понял, он что, слепой метод не освоил, или печатает не пальцами, а глазам, что они у него «устают»?

Мне, наоборот, на порядок тяжелее понять чужой (LLMовский, да и не только) код (который хоть чуть‑чуть посложнее, чем один цикл и одно условие), чем самому написать на пару порядков более сложный. Потому как во втором случае структура — она сначала в голове формируется — а только потом на экран переносится.

Когда grok 3 был был бесплатный в cline, я делал POC проекта для которого нужно был node-hid, electron и winapi. Там по итогу 300 строк кода. У меня ушло 10/2 млн токенов и целый рабочий день, на то что бы сделать что-то более вразумительное. Это примерно 60$.

Если умножить это на 20 рабочих дней то получается 1200$ в месяц тратить только на api. Это очень дорого и непонятно насколько это ускорит мою продуктивность, если использовать LLM только как поиск по документации.

При этом LLM плохо работает на больших реальных проектах. Я понимаю, что есть задачи написания чистых функций, верстки, тестов где LLM работает хорошо, но это от силы 5-10% рабочих задач.

Объясните мне, вайб-кодинг он с нами в одной комнате? Это вообще работает? Может быть кто-то может предложить как при помощи LLM изменить структуру проекта так, что бы он был готов к работе с LLM? Как сделать это дешевле?

Я использую LLM, но это не панацея. И я не понимаю как вайб-кодеры решают рабочие задачи?

как вайб-кодеры решают рабочие задачи?

Не привлекая внимания санитаров!

как-то так - vibe от vibration (вайб это сокращение от вибрация) - вибрируют они

как вайбить выше - подключить к универсальным энергиям
как вайбить выше - подключить к универсальным энергиям

Могу поделиться своим опытом использования deepseek. Он вправду экономит время, если нужно что-то быстро найти или выбрать оптимальное направление в разработке. Но вот в мелочах он неправ. Если попросить его выдать код - будьте готовы что это что-то примерное, не обязательно рабочее или даже компилируемое. Чат-бот путает версии библиотек, выдумывает несуществующие методы и классы, бывает, что на исправление таких ошибок уходит больше времени, чем написание самого кода. Однако в процессе такой работы вполне возможно прийти к рабочему коду или прийти к идее, как лучше это сделать. У LLM есть неприятная особенность, предложив одно решение, при получении тех или иных замечаний или ошибок, он продолжает "усугблять" этот вариант, накручивая кучу тяжеловесного кода, хотя существует более изящное и лаконичное альтернативное решение, которое лежит рядом, и к которому он так и не приходит. К нему приходит сам программист, действую методом от противного, ну, из соображения красоты и целесообразности. Ну, и не дай бог дать волю джунам копипастить всё что им предложил чат-бот в рабочий проект!

Мне просто нравится писать код. Если из моей работы выкинуть написание кода, то что останется? Просиживание задницы на созвонах, разбор фантазий аналитика в тасках, разбор логов и т.д.? Ах да, добавится разбор кода от нейронки. Прям во сне вижу такую жизнь.

Почему вообще я должен отдавать самое вкусное кому-то другому?

Не надо мне по "рутину". У меня этой вашей рутины 1 час в неделю от силы.

Если все сломя голову и роняя слюни побежали избавляться от самой вкусной части работы разработчика, то зачем вы вообще пришли в профессию?

зачем вы вообще пришли в профессию?

кушать охота..

Если бы вайбкодинг работал, то давно бы его уже все юзали вместо написания вот таких статей. А сколько issues на гитхабе можно закрыть, надо ведь всего лишь эти issues закинуть в llm и всё само заработает. Только вот issues до сих пор висят.

Я обычный электронщик и частенько в своих проектах использую микроконтроллеры. Расписывал стороннему программисту алгоритм работы, i/o и тп, он писал код, я тестировал, ловил баги, он правил и тд. Ну и разумеется фирма оплачивала его работу. Потом я решил поиграться с ии, закинул ему тех задание и внезапно получил почти рабочий код и не за пару дней а моментально. Немножко поигрался доведя до кондиции и... не стал тревожить важного вечно спорящего со мной и оочень занятого программиста :). А потом и вовсе тревожить его перестал. Паралельно неплохо так прокачав скилл в программировании микроконтроллеров.

Я думаю что таких как я миллионы и называйте это как угодно и саркастически но мало того что я экономлю массу времени и денег, я экономлю нервы программисту и освобождаю его время для наверное очень важных вещей :)

Я вот на выходных с помощью DeepSeek пытался собрать проект для Esp-32 C3 с кучей модулей. Логику он накидать может, но привязку к портам, использование библиотек и все остальное - очень хромает. Я просто примеры из Arduino IDE посмотрел, протестировал по очереди эти примеры и собрал свой - вышло намного лучше. Но как поисковик и в каком направлении искать информацию - очень хорошо помогает.

примерно похожий опыт с кодом на с++. AI революционирует методы и подходы к изучению IT (в частности). Надеюсь, сможете полностью заменить вашего девелопера и отправите его на стройку работать, это ждет многих из них! :)

В копилку разочарований — я пытался даже не программировать, а навайбкодить фильтр для fail2ban. Мучился долго, в итоге полез изучать регекспы питона и написал сам.

держу пари, что теперь вы за несколько минут составите запрос к chatgpt, который сгенерит требуемое )

"Гугл програмист" все уже забыли про этот термин? А теперь это норма. Сбес в 00х был по факту блиц по встроеным функциям языка. Тестовые задание нужно было делать без интернета, аргумент был типа "а если интернета не будет"

Программисты-луддиты Луддиты видели корень проблем в самих машинах, которые заменяли людей, и пытались бороться с этим, разрушая фабрики и оборудование.

Недавно в команде появился новый разработчик. То, что он вайбкодер вычислили быстро - куча комментарий. Но задачи выполнялись и довольно быстро, причём с использованием нашего инструментария, на изучение которого обычно требуется время.
Но спустя время ему пришла задачка на разработку очень простого функционала, но аналогов которого нет ни в интернете, ни у нас. Первая итерация пришла быстро, но едва работала. Далее вторая, третья. Одна проблема уходила, приходила другая. Смотрю по коммитам - класс переписывается почти полностью каждый раз (~200 строк). В итоге сроки поджимали, задачу дали другому разработчику и он её сделал за 20 минут и ~40 строчек кода.

... но виброкодера 🐒 (все равно) оставили 🦧

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

Раньше говорили, что главное правильно запрос в Гугл писать, "весь код же написан", умение формулировать поисковый запрос заменяет любые знания. Сейчас говорят, что нейронка всё соберёт, главное сказать точно, чего хочешь, нейронки заменять любое умение. Если все буквы, слова и способы построения фраз (или проектирования кода) известны, почему все тексты и весь код не получаются сами? Если написать ТЗ уже сложнее, чем взять и закодить, что мешает взять и закодить?

Чот какой то платоновский мир идей, только одноклеточный

Интересно, что сами программисты и развивают вайб-код.

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

Считаю, что джунам КАТЕГОРИЧЕСКИ не нужно пользоваться нейронками для написания кода. Если опытный разработчик может провести ревью и поправить код, то джун обычно не знает как правильно/должно быть. Он не будет знать, что что-то не так пока его не ткнут носом. Может случиться так, что ИИ напишет код для старой версии какого-нибудь пакета, в котором были найдены критические уязвимости, так как ей не важна безопасность, главное выдать результат, который желательно должен работать (но не факт). А джун возьмёт этот код не думая и выдаст за свой. Исходя из этого получим все вытекающие, а в мозгу начинающего разработчика ничего не отложится. И какой из него получится сеньор?

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

Он не будет знать, что что-то не так пока его не ткнут носом

И что тут меняет llm?

Как когда-то говорил один очень известный в узких кругах разработчик компиляторов про вайб-кодинг: "Из ста процентов времени проекта мы забираем себе 95 процентов времени поиска багов и отдаём самые приятные пять процентов написания кода нейронке"

Вообще, как мне кажется, нейронки заменяют потребность не в коде, а в парсинге частей кода и ответов на вопросы со Stack Overflow, Гитхаба, Хабра и всего остального интернета, на котором, она, собственно и училась. Если бы существовал идеальный поисковик, который сразу выдавал бы максимально подходящие к твоему запросу ответы и компилировал их, то он полностью был бы эквивалентен нейронке. WAIT OH SHI...

Вообще, как мне кажется, нейронки заменяют потребность не в коде, а в парсинге частей кода и ответов на вопросы...

Не со всем соглашусь. Если при решении задачи первое, что приходит в голову это простой линейный поиск, а нейронка тебе советует бинарный, то ты можешь принять её совет, так как понимаешь, что это может быть лучше. Но не стоит ей доверять, когда для решения 2+2 она создает кучу вспомогательных сервисов, абстракций и кучу всего другого.

А на счёт поиска ответов: нейронка может такого нагаллюцинировать, что начинается игра "верю/не верю".

Sign up to leave a comment.

Articles