Информация
- В рейтинге
- 3 465-й
- Откуда
- Рига, Латвия, Латвия
- Дата рождения
- Зарегистрирован
- Активность
Специализация
Фулстек разработчик, Архитектор программного обеспечения
Ведущий
JavaScript
HTML
CSS
Node.js
Vue.js
Веб-разработка
Progressive Web Apps
PostgreSQL
MySQL
GitHub
Вы не могли бы показать код, который вы получаете за "час активной работы"?
Я когда вижу, что агенты генерят, у меня глаз дёргается. Ну а когда не вижу - норм. Что-то делают, как-то работает - уже ОК. Но я под Magento больше 5 лет интегратором различных расширений был. До сих пор удивляюсь, как тот зоопарк работал. Всё-таки у сложных программных систем в определённой конфигурации есть достаточный уровень самостоятельной живучести.
Я как раз только что выложил свою публикацию на похожую тему (Spec-Driven Dev). У меня в коде тоже используется мой "самописный фреймворк" без "накатанных рельсов". Проблему решал "самописным скиллом" (teq-esm-validator). Если у агентов есть спецификация по условиям применения фреймворка и скилл-валидатор, который загоняет агента в рамки - вполне себе приемлемо (для человека). Но расход токенов, думаю, должен быть побольше. Особенно на старте, пока шаблонного кода мало.
На эту тему даже анекдот есть :)
У меня подписка GPT Plus за 20 евро. Мне норм.
IMHO, ревьюить каждую строчку нейрокода человеками - безумие не меньшее.
Я это к тому, что смотреть сгенерённый код людям нужно. Но это не ревью - это анализ. Поиск типовых "ляпов", что делает агент, и исключение их как класса через документы контекста, промпты, скиллы, тесты и перекрёстные проверки другими агентами. Человек не вывезет эту гонку, на мой взгляд.
Лично я сравниваю навык ревьюинга нейрокода с навыком ревьюинга машкодов после компиляции исходников. Неплохо, конечно, разбираться в таком коде, но корректность его работы нужно обеспечивать на другом уровне (компилятор, тесты). У европейского финтеха может быть другое мнение на этот счёт.
Вот здесь: "Задолбали уже со своим вайб-говнокодом. Что, писать на хабре больше неочем?"
Мне показалось, что ваш коммент в какой-то мере поддерживает это инфантильное нытьё. Извините, если был не прав.
IMHO, нет смысла человеку ревьюить нейрокод. На край, можно поручить это другой нейронке, но тоже такое - могут вступить в сговор. А вот делать приёмочные тесты (интеграционные) - смысл, наоборот, есть. Но это и с людьми так.
Человек может изучать сгенерённый код, чтобы понимать, как "думает" нейронка, но ревьюить "каждую строчку"... перебор, на мой взгляд.
Статья получила +10 на данный момент и 35 читателей добавили в закладки. Она кому-то оказалась полезной. Просто подумайте об этом.
А если у вас есть способ, чтобы читатели получали доступ только к полезным для них публикациям - поделитесь с редакцией Хабра. Ныть про то, что "этот мир под вас плохо подстроили" - инфантильно.
Есть выход! Можно читать только главную ленту!! Главное - не поддаваться унынию.
К каждой статье есть вот такой блок с контролами. Нажми на "шестерёнку", а потом скрой публикации автора. Прекрати ныть и сделай себя счастливым сам! Ты - сильный, ты - сможешь!!
Спасибо. Любопытство удовлетворено.
А покажите, пожалуйста, ваш волшебный промпт. Можно даже под лицензией "CC BY-SA 4.0". Фронт, PyTorch, задачи друга... Аж прям любопытно стало, что это за "заклинания" такие.
Дружище, я тебе карму заминусил за твой стиль общения. Ты лично не считаешь свои выпады хамством, например такой:
Я, например, считаю.
У тебя такой пронзительный стиль общения, что тут боты не нужны для кармослива. Ты и сам прекрасно справляешься.
А что вас в этом парит? Стиль или искажение фактов? Если первое - то заведите свою нейронку и научите её излагать новости в нужном вам стиле. Если второе - люди тоже лгут, особенно в новостях. Переключите канал. А лучше заведите несколько и сравнивайте, что совпадает.
Раньше школьники вообще друг у друга списывали. Так что тут прогресс, я считаю. Теперь школьнику нужно как-то объяснить нейронке задание, а потом понять, где у неё ответ.
Мир всегда меняется, некоторые вписываются в новые условия лучше (молодёжь, она без опыта), некоторые хуже (у опытных больше инерция). Так всегда было, есть и будет. Это нормально. Новые возможности несут новые угрозы, так же как и новые угрозы несут новые возможности. Инь и янь, будь они неладны!
Я, кстати, могу даже ваш код внутрь своего контейнера пустить. Если дадите адрес, где лежит js с именем типа Evil.js и кодом типа:
Сможете изнутри приложения попытаться
loggerпереопределить.Это вообще прекрасно! Тут уже без CSP не обойтись!
Пришлось переключиться на новую версию Контейнера (v2). Её как раз Codex сделал. В моей ручной версии был небезопасный код (
new Function)Сделал тестовый стенд, поставил в
bootstrapзадержку на 5 сек. Класс тот же -Client1_Di_Logger, метод тот же -print. Пробуйте.http://app1.habr.dev.wiredgeese.com/index2.html
Неплохо! Это всё ещё окружение, но тем не менее - это реальная возможность переопределить поведение порождаемых объектов.
В любом случае, спасибо за аргумент, коллега :) Меня тут на Хабре как-то уже ногами месили за то, что я использую замыкания в конструкторе вместо того, чтобы как "все нормальные люди" использовать классы и прототипы. Теперь, благодаря вам, я могу наглядно показать, почему я не делаю, как "все нормальные люди".
Переписал имплементацию логгера на замыкание:
Теперь ваш трюк с
Client1_Di_Loggerне работает. Остальное в примере тоже можно через замыкания переписать (я пример специально делал в виде, наименее шокирующем нормальных людей). Принцип тот же. Но я думаю, вы уже и сами это поняли.Да, я действительно по-другому, нежели вы, понимаю, как работает JS runtime. Но вы лично, и любой другой, можете повторить то, что я написал выше. Это скриншоты, а не нейрогенерёнка. Это повторяемо.
Размещать что-либо прикладное в globals после 2015-го года - это не олдскульно, а архаично.
Вы, так-то изменили не объект, который мой контейнер генерирует, а окружение, в котором мой контейнер работает. Надеюсь, вы понимаете разницу :) К моим прикладным объектам (и самому контейнеру) из консоли у вас доступа нет.
У нас с вами, коллега, очень сильно разное чувство прекрасного. Моё, например, страдает от такой картины:
$hyoo_, а ещё с$mol_не меньшеРазработчики языка специально в ES6 сделали возможность ограничивать область видимости объектов (let vs var). Понимали, что чем менее доступен объект, тем меньше поверхность атаки на него.
А разработчик
$molвсё выложил вglobals- скучное техническое решение с весёлыми последствиями. Каждый-всякий-любой может на странице https://mol.hyoo.ru/ сделать вот такое (в консоли или скриптом):и получить такое после клика на любой ссылке:
А ведь, при желании, можно не просто тупо грохать приложение, а обернуть любой $mol-объект собственным кодом прямо с консоли браузера. Можно это представить как непревзойдённую расширяемость, а можно - как дыру для утечки конфиденциальных данных.
А попробуйте-ка с консоли получить доступ к моему контейнеру и его объектам хотя бы вот в этой демке (к этой статье). Ну как? О!
ES6-модули рулят с 2015-го года:
но ваша архитектура до сих пор тупо лезет в глобалс и подставляется через него :(
А что касается бойлерплейта, то в наш век автоматизации разработки ПО этот аргумент звучит жалко.