В этом выпуске я:
- Ищу (и нахожу) идею для приложения
- Учусь формулировать техническое задание для «робота-программиста»
- Создаю приложение с помощью ИИ
- Заставляю ИИ самостоятельно его тестировать, исправлять ошибки в коде и добавлять новые фичи
- Запускаю готовое приложение
И все это — без навыков программирования! Вот вообще.
А на меня программисты обиделись. Говорят, не понимаю их тонкую душевную организацию и не умею нормально формулировать ТЗ, как, впрочем, и все остальные бабы (зачеркнуто) заказчики.
На эмоциях написали мне всякого-разного в комментариях к посту в Telegram, я аж выписала себе в блокнотик. Орфография и пунктуация авторов, разумеется, сохранены:
«Просто типичный заказчик составляет ТЗ думая и представляя себе при этом почему то совершенно другое. Итог — программист сделал всё ТОЧНО по ТЗ, заказчик получил АБСОЛЮТНО не то, что хотел, но АБСОЛЮТНО то, что написал»
Или вот, мое любимое:
«Это чистой воды skill issue у Вас. Если вы не в состоянии выразить „что надо“, т. е. это самое „что надо“ остаётся у Вас в голове, а не в requirements документе, то дело не в разработчиках. ИИ Вам в этом не поможет. А вообще, участие в разработке новых решений в присутствии неопределённости […] путём бросания тех задания через забор — тупик. Вы просто недостаточно компетентны для того, чтобы учавствовать в разработке полноценно».
(там еще целая простыня, но желающие, если что, найдут в комментариях).
Однако были и здравые мысли, которые в точности соответствуют моей философии:
«Если заказчик сделает „точное ТЗ“ в соответствии со своей хотелкой, то он уже минимум наполовину ее осуществит. А в половине случаев при этом нужда в услугах программиста отпадет».
Именно так! Поэтому сегодня я решила написать и выложить БЕСПЛАТНЫЙ (ну наконец-то) и подробный гайд, как создавать приложения с помощью искусственного интеллекта с нуля, не имея навыков программирования.
Зачем и кому нужно создавать приложения с помощью ИИ?
В первую очередь, маленьким компаниям и стартапам, у которых нет ни времени, ни денег на разработку, да еще и сплошные skill issue в голове, а при этом хочется быстро опробовать ту или иную идею.
Ведь обычно как происходит? Придумали вы какую-то прикольную штучку, у вас уже руки чешутся ее реализовать и быстренько протестировать.
При этом у вас в голове вертится что?
«Надо — не надо это рынку, а если надо, то в каком формате, а как рекламировать, а куда впиндюрить ту самую большую красную кнопку ‘КУПИТЬ! ’» и другие важнейшие вопросы.
Но тут приходят ОНИ — программисты, и начинают вам рассказывать, что это все очень сложно, очень дорого, практически невозможно реализовать и вообще. Особенно — и вообще.
Однако допустим, вы нашли относительно адекватных программистов, которые согласились вам быстренько что-то такое запилить, чтобы протестировать гипотезу.
Как это выглядит?
1-2 недели вы будете только шлифовать идеи с командой разработчиков. Еще 1-2 недели они будут вам рассказывать, что вы ничего в этой жизни не понимаете. И наконец, в последние 1-2 недели займутся делом и начнут под аккомпанемент недовольного бухтения создавать нечто похожее на прототип.
А теперь представим, что вы используете ИИ.
1-2 часа у вас займет создание прототипа. 5 минут у вас уйдет развертывание и тестирование прототипа на живых людях (желательно еще заставить их за это заплатить). 1-2 недели уйдет на поиск первых клиентов и проверку маркетинговых каналов.
Класс!
А там уже и к живым программистам можно обратиться для финального «допиливания», если в этом еще будет потребность.
Погнали!
Нахожу идею для ИИ-приложения
Сначала давайте определимся, какое приложение мы будем делать.
Здесь, конечно, можно воспользоваться готовыми решениями во всякого рода обучалках по ИИ-программированию, но зачем? Во-первых, нормальные герои всегда идут в обход, а во-вторых, мы-то с вами хотим пилить реальные бизнес-штуки.
Поэтому я начала скроллить кейсы успешных российских стартапов (спойлер: успешных — это не про медийность, а про деньги), и обнаружила вот такую интересную штучку: ИИ-помощник для жалоб.
Суть в следующем: один парень обратил внимание, что если клиент сначала пожалуется на компанию, а потом получит извинения и компенсацию, то в итоге он начинает ценить эту компанию даже больше, чем раньше! Тогда он придумал платформу, где ИИ помогает людям грамотно составлять и отправлять жалобы компаниям. А после этого начал предлагать эту платформу самим бизнесам в качестве способа повысить лояльность их клиентов.
Мне очень понравился этот кейс, потому что я сама неоднократно замечала: если помочь клиенту, который жалуется, то его лояльность растет, причем нередко он становится даже более лояльным, чем клиент, у которого с самого начала все шло нормально. Важно показать, что вы вовлечены в его жизнь, его проблемы и его трудности, тогда создается эффект «преодоления», и его привязанность к вашему бренду растет!
Есть и обратные ситуации, конечно.
А если у вас большая корпорация, то вам, скорее всего, в целом, пофиг на клиентов и их лояльность, но вы бы этот текст тогда бы не читали.
Скорее всего, у вас малый бизнес, и в этом случае как раз ценится «камерность» и прочий «индивидуальный подход». Плюс ко всему, клиенту будет в целом, все равно, что это прототип и недостаточно хорошо «допилено»: вы же малый бизнес и СТАРАЕТЕСЬ решить его проблему.
Итак, вдохновившись этим кейсом, я решила создать приложение, которое будет обрабатывать обычные жалобы в нечто более структурированное и подсказывать клиенту, какие поля заполнить.
Условно, чтобы вместо «Вот вы твари, привезли нерабочий телевизор!!» было что-то вроде ИИ-подсказчика, который помогал бы сформулировать жалобу более конкретно, например, подсказал бы уточнить номер заказа, дату получения товара, краткое описание проблемы (что именно не работает) и пр.
Вот на этом кейсе мы и будем экспериментировать.
Учусь формулировать техническое задание для «робота-программиста»
Итак, в первую очередь идем в Chat GPT или любой другой чат-бот, который вам нравится.
Дальше пишем ему задание создать приложение таким, каким мы его видим.
Вот пример промпта (так называют подсказки для заданий ИИ) на английском языке:
Act as experienced product manager.
Your task is to help me to select user stories for my web app.
I want to build an app whose AI machine learning helps people draft and send complaints about companies
Write down 10 user stories for MVP of my app.
Do not overcomplicate. Be concise
Здесь и далее в основном переписка с ИИ-ботами будет на английском языке, потому что, ИМХО, так с большинством сервисов получается тупо проще и быстрее. Однако вы при желании можете использовать русский язык. Вот вариант промпта на русском языке:
Действуй как опытный продакт-менеджер.
Твоя задача — помочь мне выбрать пользовательские истории для моего веб-приложения.
Я хочу создать приложение, в котором ИИ-система поможет людям составлять и отправлять жалобы на компании.
Напиши 10 пользовательских историй для MVP моего приложения.
Не переусложняй. Будь лаконичным
Он напишет вам 10 примеров использования продукта глазами конечного потребителя.
Итак, я выбрала три пользовательских кейса:
1) пускай помогает мне генерировать жалобу с помощью ИИ,
2) редактировать жалобу перед отправкой
3) видеть уведомления об ответе для компании.
Примечания:
PRD — такие требования к ИТ-продукту, чтобы вас понял программист — или ИИ.
MVP — минимально жизнеспособный продукт: хренотень, изготовленная дендрально-фекальным способом, на которой можно хотя бы протестировать гипотезу.
Дальше я предлагаю ему написать требования к ИТ-продукту на основе полученных ответов.
For the following user stories write PRD for MVP.
Focus on functional requirements and domain logic.
Do not overcomplicate.
As a user, I want the AI to generate a well-structured complaint letter based on my description.
As a user, I want to review and edit the drafted complaint before sending it.
As a user, I want to receive notifications when the company responds.
Что-то такое он нам выдал — в принципе, выглядит уже неплохо и довольно подробно.
Теперь идем в другое ИИ-приложение, которое, собственно, и выступит нашим роботом-программистом.
Создаю приложение с помощью ИИ
Для создания приложения с помощью ИИ в этом выпуске я буду использовать сервис Replit.
Сгенерированное ТЗ мы копируем и идем с ним уже туда.
Кстати, повторюсь, при необходимости, можно сгенерировать ТЗ и на русском, Replit поймет русский язык и продолжит общаться с вами на нем. Мне просто кажется, что на английском он действительно лучше работает.
Вот промпт, который я использовала:
I want to build an app whose AI machine learning helps people draft and send complaints about companies. I attach a concise PRD for the given MVP user stories, focusing on functional requirements and domain logic
Он также предлагает дополнительные фичи, которые мне пока не нужны.
Дальше он завис и стал «думать».
У вашей покорной слуги терпения нет от слова совсем, поэтому я стала докапываться до бедолаги Replit-а, точно ли он меня услышал и понял.
Тот покорно ответил, что да, все получил, и спросил, собираюсь ли я ввязываться в этот блудняк, мне ведь еще с Open AI его предстоит интегрировать! Я подтвердила, и он приступил к работе.
ОК, он начинает «кодить».
И тут Replit решил поинтересоваться: Анна Игоревна, вот ты, конечно, такая умная, а как я тебе ИИ в приложение встрою? Понадобится API-ключ от Open AI!
API-ключ — это, грубо говоря, такая штучка, которая поможет нам использовать ИИ в приложении. Доступ к ней приобретается отдельно и понадобится для встраивания ИИ в различные приложухи — например, в этот проект, или в Google таблицы (подробнее этот кейс рассматривался тут) и так далее.
Покупка API-ключа в Open AI
Идем Open AI и покупаем там ключ на $10 (понадобится зарубежная карта, или можно воспользоваться сторонними сервисами — например, CheatPay).
Держи API ключ от Open AI, бесовская машинка.
Итак! Я попросила его сгенерировать приложуху, и вуаля, она ЗАРАБОТАЛА!
После этого Replit начал заботливо меня спрашивать, все ли ОК и норм ли навигация по приложению.
Тестируем приложение и исправляем ошибки
После этого он САМ предложил мне протестировать функциональность приложения.
Я начала тестировать, но у меня сначала ничего не получилось, причем система не предлагала мне каких-то подсказок.
Это что же, не быть мне программистом без навыков кодинга? Хнык-хнык. Я к программистам на поклон не пойду, они меня прогонят!
Replit надо мной сжалился и сам написал мне жалобу для теста и предложил уточнить, работает ли все так, как запланировано.
Дальше он начал сам исправлять ошибки и интересоваться, удается ли их исправить.
Например, говорит, кликни «Сгенерировать» — а я ему и отвечаю, что ты же сам такую кнопку забыл вставить!
Еще немного кодит…
Бинго! Кнопка у нас на нужном месте. Едем дальше.
В ответ на мою кривую и косую жалобу ИИ действительно мне выдал неплохие подсказки, как сформулировать ее понятнее и подробнее для компании, в которую я, собственно, хочу жаловаться.
Итак, в целом норм — он заставляет нас подробнее указать жалобу, вставить нужные поля и пр. Поля можно адаптировать.
Теперь нужно, чтобы он отправлял это на правильный адрес.
То же самое было с большой кнопкой «Отправить».
После нескольких итераций, тестирований и экспериментов наконец-то он запилил мне нормальную форму отправки!
Дальше мы нажимаем на кнопку «Deploy» («Запуск» приложения), и вперед!
После этого Replit, собственно, финализирует приложение, упаковывает его и отдает его вам, причем его можно сразу начинать использовать — всего-навсего получив на него ссылку.
Дальше уже, понятное дело, это приложение можно запускать на сервере, в него можно подвязывать разные способы аутентификации пользователя, подгружать способы отправки сообщений, запилить системы хранения отзывов и пр.
Вот в этом случае, если вы не владеете навыками программирования, уже можно обращаться к живому айтишнику, если он на вас еще не обиделся, что вы решили заменить его на ИИ.
А если обиделся — не беда, просто переходите ко второй части обзора, где я разберу создание приложений с помощью ИИ еще более подробно.
Во второй части я:
- Описываю, какие ИИ-сервисы бывают для создания приложений и в чем между ними разница
- Тестирую разные ИИ-агенты (что это за зверь, также разберем) и составляю их рейтинг
- Рекомендую различных «роботов-программистов» под разные задачи
- Даю простой пример структуры технического задания для написания софта при помощи ИИ
- А тех программистов, кто скрепя сердце все-таки одолеет этот текст, порадую новостями.
Приятного чтения!
С любовью,
Анна Райская