Comments 10
Сначала хотел пожурить (во-первых, нетехнарь занимается не своим делом; во-вторых, "опять мигалки на ардуино"), но потом захотел повторить самоделку! :)
Самое интересное (личное мнение) в этом проекте - разработка и создание корпуса. Все остальное - "купил" и "мне сделали". В продаже куча электронной начинки для создания игрушек - готовые платки, детальки для пайки, и либо готовый код для прошивки, либо уже он уже зашит в чип. Тетрис, змейка... чего только нет. Сам купил несколько, исключительно потренироваться в корпусировании.
Когда вы столкнетесь с тем, что ИИ сможет вам выдавать только либо простейшие (как у вас) программки, либо повторы уже существующих (классика кнопочно-мобильных игр), а на большее не способен, вы станете программировать все сами с нуля, или просто потеряете интерес к написанию кода.
Чуть посложнее логика, и все начнет разваливаться.
От такого спасает написание хорошего ТЗ и разбиение на мелкие блоки.
Если человек такое умеет, то ИИ ему не нужен. По крайней мере в объемах кода для МК на ардуинке. Само ТЗ будет чуть ли не больше итоговой программы (а по времени составления и коррекции промптами точно дольше). Не говоря уже о дальнейшем сопровождении. Надо что-то изменить в функциональности - весь путь с начала, вместо того, чтобы в своем лаконичном коде сделать небольшие правки.
Я вот юзаю ИИшки для написания мелких функций, например, вот целый сервис и тут нужно рекурсивно перебрать Мапу, перед этим переупаковать, самому думать лень - попросил агента, он написал код внутри функции, перепроверил сам и все ок
В большом количестве случаев похожие задачи (перебрать и переупаковать) вытекают из-за несогласованности части программ. И приходится для чуть ли не каждой функции городить конвертеры. Растет код, падает производительность, растет сложность. А ИИ начинает прятать эти проблемы ("да я тебе щас конвертну, не парься"). В итоге после рефакторинга весь этот код конвертаций и сложных переборов выкидывается, модуль худеет чуть ли не вдвое, ускоряется и перестает глючить. Не говоря уже о повышении удобства дальнейшей работы.
Если заниматься оптимизацией, то светодиодны для такой игрушки не нужны - есть же целый дисплей. Энкодер тоже лишний - кнопки на "пультиках" вполне выполняют роль навигации. Первая - перемещение по меню, вторая - выбор пункта. Попробуйте заставить ИИ внести изменения в существующий код чтобы исключить эти аппаратные элементы из работы. В проекте очень важна сопровождаемость (возможность вносить изменения).
Трюк с полностью созданием нового кода по новому ТЗ не считается. Представьте, что вы уже внесли в код ручные доработки и хотите их сохранить.
DIY: как сделать игру за несколько минут