Что ИИ умеет собрать сам, а что всё равно требует разработчика
Мой опыт показывает: ИИ — отличный помощник в кодинге, но архитектура, отладка и сложная логика остаются за человеком. Разбираю на примере formspace.design.
Когда я в 61 год решил сам заняться кодированием и строить formspace.design, не имея классического IT-образования, то понимал: без мощного инструмента не обойтись. И таким инструментом стал искусственный интеллект. Сегодня я могу с уверенностью сказать: ИИ способен самостоятельно генерировать значительную часть кода, но фундаментальная архитектура, отладка и понимание сложной бизнес-логики — это по-прежнему зона ответственности человека-разработчика.
Мой путь к коду с ИИ
Мой бэкграунд — это и преподавание, и бизнес 90-х, и ландшафтный дизайн с 1997 года. Я видел, как развивались технологии, но сам никогда не был профессиональным программистом. В компании «Дом и Сад», где я был директором, я ставил задачи программистам, но не писал код. Однако, когда я начал создавать formspace.design, я понял, что хочу построить продукт, который мне самому не хватало в практике, и сделать это максимально эффективно, в том числе и за счёт ИИ. Это был настоящий вызов, но и огромная возможность. Я начал учиться, используя ИИ как своего главного наставника и соавтора.
Что ИИ умеет «собрать» сам
ИИ — это невероятный генератор шаблонного кода и черновиков. Он блестяще справляется с задачами, которые требуют большого объёма рутинной работы, но не глубокого понимания контекста. Вот несколько примеров из моей практики:
- Бойлерплейт-код: Создание структуры проекта, boilerplate для REST API, базовые CRUD-операции (создание, чтение, обновление, удаление) для моделей данных. ИИ может сгенерировать сотни строк такого кода за считанные минуты, что экономит часы или даже дни. Например, для нового модуля в formspace.design, связанного с учетом растений, ИИ быстро набросал все необходимые эндпоинты и схемы базы данных.
- Базовые компоненты UI: Генерация простых пользовательских интерфейсов, кнопок, форм, модальных окон. Я могу попросить его «сделать форму для добавления пользователя с полями имя, фамилия, email» — и получить готовый скелет, который останется лишь стилизовать и интегрировать.
- Перевод кода с одного языка на другой или рефакторинг: ИИ неплохо справляется с адаптацией существующих фрагментов кода к новым стандартам или фреймворкам, а также с базовым рефакторингом для улучшения читаемости. Например, переписывание старых JavaScript-функций на более современный синтаксис ES6.
- Написание тестов: Для простых функций ИИ может генерировать юнит-тесты, что очень полезно для поддержания качества кода, особенно когда работаешь над проектом в одиночку.
Где ИИ пока бесполезен
Несмотря на все свои способности, ИИ имеет существенные ограничения, особенно когда речь заходит о создании полноценного, сложного продукта:
- Архитектура системы: ИИ не может спроектировать общую архитектуру приложения, выбрать правильные технологии для стека, определить, как будут взаимодействовать микросервисы или модули, как масштабировать систему. Это требует стратегического мышления и глубокого понимания будущих потребностей продукта. Например, выбор между монолитом и микросервисами для formspace.design — это было мое решение, основанное на долгосрочной перспективе развития.
- Сложная бизнес-логика: Когда речь идет о логике, которая учитывает множество нюансов, исключений и специфических правил, ИИ часто ошибается. Он не понимает «почему» что-то должно работать именно так, а не иначе. Например, алгоритм зонирования участка в formspace.design, который учитывает инсоляцию, рельеф, предпочтения пользователя и десятки других факторов, невозможно доверить ИИ целиком.
- Оптимизация производительности: ИИ может предложить общие методы оптимизации, но глубокая профилировка, выявление узких мест и тонкая настройка запросов к базе данных или алгоритмов — это задача для опытного разработчика.
- Уникальный UX/UI: Создание по-настоящему интуитивного и приятного пользовательского опыта, который отличает продукт от конкурентов, требует человеческого видения и эмпатии. ИИ генерирует стандартные решения, но не «душу» интерфейса.
Критические этапы, требующие человека
Мой опыт показывает, что есть несколько критических этапов в разработке, где без человека-разработчика не обойтись:
- Планирование и проектирование: Это самый первый и самый важный шаг. Человек должен определить, что именно нужно создать, для кого, как это будет работать, какие проблемы решать. ИИ может помочь с идеями, но не заменить стратегическое видение. Именно на этом этапе я максимально использую свой опыт от боли бизнеса до рабочего модуля с помощью ИИ.
- Отладка и тестирование сложного кода: ИИ может генерировать код, но он также может генерировать ошибки. Особенно в сложных системах, где несколько модулей взаимодействуют между собой, поиск и исправление ошибок, понимание причин их возникновения — это чистая человеческая работа. Я трачу на отладку ИИ-генерированного кода иногда больше времени, чем на написание простого модуля вручную.
- Рефакторинг и поддержка: Поддержание чистоты и читаемости кода, его адаптация к меняющимся требованиям, устранение технических долгов — это постоянный процесс, который требует человеческой оценки и принятия решений. ИИ может предложить варианты рефакторинга, но выбор лучшего и его корректное применение — за мной.
- Безопасность: Проектирование и внедрение надёжных систем безопасности требует глубоких знаний уязвимостей и лучших практик. ИИ может помочь с генерацией кода для аутентификации, но общая стратегия защиты данных и предотвращения атак — это задача для эксперта.
Роль архитектуры и системного мышления
ИИ — это инструмент, который усиливает возможности разработчика, но не заменяет его. Я часто сравниваю это с архитектором и строителем. ИИ может быть отличным строителем, который быстро возводит стены по чертежам. Но кто создает эти чертежи? Кто планирует фундамент, коммуникации, общую планировку здания, чтобы оно было функциональным, безопасным и красивым? Это архитектор — человек с системным мышлением и видением.
В разработке продукта таким архитектором является человек. Я сам, как разработчик formspace.design, отвечаю за то, чтобы все части системы гармонично сочетались, чтобы продукт решал реальные проблемы пользователей и был устойчив к изменениям. ИИ помогает мне быстрее воплощать мои идеи в код, но идеи и их структурирование — это моя задача.
Типичные ошибки при работе с ИИ-разработчиком
Работая с ИИ как с соразработчиком, я выделил несколько частых ошибок, которых стараюсь избегать:
- Недостаточно точные промпты: Если запрос к ИИ слишком общий, результат будет таким же — общим и непригодным. Нужно максимально детализировать задачу, предоставить примеры, указать используемые технологии и структуру данных. Мой опыт с пошаговым составлением промптов для визуализации сада очень пригодился и здесь.
- Слепое доверие к коду: Никогда нельзя просто скопировать и вставить код, сгенерированный ИИ, без тщательной проверки. Всегда есть вероятность ошибок, устаревших методов или неоптимальных решений. Я всегда просматриваю каждую строку.
- Отсутствие итераций: Разработка с ИИ — это диалог. Если первый ответ не идеален, нужно уточнять запрос, просить изменить детали, задавать наводящие вопросы. Это не одноразовый запрос, а серия итераций.
- Игнорирование контекста проекта: ИИ не знает весь ваш проект, его историю, специфические зависимости. Он генерирует код в вакууме. Человек должен быть тем, кто интегрирует этот код в существующую систему, учитывая все ее особенности.
Как я использую ИИ в formspace.design
В процессе создания formspace.design я активно применяю ИИ на разных этапах, но всегда под своим чутким контролем. Например, когда я разрабатываю модуль планирования зон участка (модуль 1.x), ИИ помогает мне генерировать начальные шаблоны для фронтенд-компонентов, которые отвечают за отрисовку и взаимодействие с объектами на плане. Я могу попросить его создать базовый компонент для перетаскивания элементов или для изменения их размеров, что значительно ускоряет старт работы.
Когда я перехожу к более сложным функциям, таким как модуль AI-концепции (2.1), ИИ выступает в роли «мозгового штурма». Я описываю ему желаемый результат — например, «создать концепцию сада в японском стиле с учетом ровного участка 10 соток и минимальным уходом» — и ИИ генерирует идеи, возможные элементы, палитры. Затем я использую эти идеи для формулирования промптов для визуализации (модуль 3.1 «дизайн по фото»), а сам ИИ-движок, который генерирует эти концепции, я пишу уже самостоятельно, используя его же для ускорения написания отдельных функций, связанных с обработкой текста и данных. Это позволяет мне сосредоточиться на уникальной бизнес-логике и пользовательском опыте, доверяя ИИ рутину.
FAQ
Можно ли полностью автоматизировать разработку с помощью ИИ?
Полностью автоматизировать разработку продукта, особенно сложного и инновационного, пока невозможно. ИИ может быть мощным инструментом для ускорения рутинных задач и генерации черновиков, но стратегическое планирование, глубокое понимание бизнес-логики, отладка критических ошибок и обеспечение безопасности остаются прерогативой человека-разработчика. Человек задает направление и контролирует качество.
С какого типа проектов лучше начинать использовать ИИ в разработке?
Лучше всего начинать с небольших, хорошо определенных задач, таких как генерация boilerplate-кода, написание юнит-тестов для простых функций, перевод кода между языками или фреймворками. Это позволяет освоить взаимодействие с ИИ, понять его сильные и слабые стороны, не рискуя целостностью большого проекта. Постепенно можно переходить к более сложным задачам.
Какие навыки становятся наиболее важными для разработчика в эпоху ИИ?
В эпоху ИИ критически важными становятся навыки системного мышления, умение формулировать точные и детализированные промпты, а также способность критически оценивать и отлаживать генерируемый код. Важно также глубокое понимание предметной области и архитектурных принципов, чтобы направлять ИИ и интегрировать его результаты в общую систему. Разработчик становится архитектором и дирижером.
Заменит ли ИИ программистов в будущем?
Мой личный опыт показывает, что ИИ не заменит программистов в обозримом будущем, но значительно изменит их роль. Рутинные задачи будут автоматизированы, а фокус сместится на высокоуровневое проектирование, решение сложных проблем, управление проектами и творческий подход к созданию продуктов. Программисты, которые освоят работу с ИИ, станут значительно продуктивнее и востребованнее.
Насколько быстро ИИ генерирует код по сравнению с человеком?
ИИ может генерировать сотни строк шаблонного кода за считанные секунды или минуты, что в десятки, а то и сотни раз быстрее, чем человек. Однако скорость генерации не равно скорости создания готового, работающего и безошибочного продукта. Человеку все равно потребуется время на проверку, отладку, интеграцию и адаптацию этого кода к специфике проекта.
Какие риски связаны с использованием ИИ в разработке?
Основные риски включают генерацию неоптимального или ошибочного кода, привнесение уязвимостей в безопасность, а также сложность отладки кода, который ты не писал сам. Также есть риск чрезмерной зависимости от ИИ, что может снизить собственные навыки решения проблем. Важно всегда сохранять критическое мышление и глубоко понимать то, что делает ИИ.
Как ИИ помогает в создании уникальных функций formspace.design?
В formspace.design ИИ помогает мне не только в рутинном кодинге, но и в формировании концепций, которые затем ложатся в основу уникальных модулей, таких как ИИ-концепция (2.1) или дизайн по фото (3.1). Он позволяет мне быстро прототипировать идеи, проверять гипотезы и получать черновики для дальнейшей проработки, тем самым ускоряя процесс инноваций и доработки функционала под нужды пользователей. Я использую его как интеллектуального помощника для генерации идей и начальных реализаций.
От идеи к воплощению с ИИ
Мой путь создания formspace.design — это яркий пример того, как ИИ становится незаменимым помощником, но не всемогущим создателем. Он значительно ускоряет процесс, но за стратегию, архитектуру и конечный результат всегда отвечает человек. Если вы, как и я, полны идей и хотите воплотить их в жизнь, не бойтесь изучать ИИ. Он откроет перед вами новые возможности, но помните: самое ценное — это ваше видение и опыт.
Дата публикации:

Владимир Выборный
Ландшафтный дизайнер, основатель https://formspace.design/
Пишет о ландшафтном дизайне, бизнесе, использовании современных инструментов компьютерного проектирования ландшафтов, в том числе и про ИИ.