#АппЗа14 дней

14 дней. О программистов. 1 директор. Что из этого получится? 

Читайте в нашем новом цикле постов.

Директор Центра разработки «Создаватель» Виталий Дудка поставил себе вызов — написать собственное приложение, не прибегая к помощи разработчиков.


Личный опыт, лайфхаки и инсайты — всё честно и без фильтров!


14 дней прошло....

Что же будет дальше?


Содержание

ToDo.md

#АппЗа14дней

## �� Анализ и структурирование

Я разделил задачи на три уровня приоритета:

### 🔥 Высокий приоритет (Критичные улучшения)
1. Улучшение детализации отчета - 5 задач по улучшению пользовательского интерфейса
2. Утренняя сводка в уведомлениях - 3 задачи по автоматизации уведомлений

### 🔧 Средний приоритет (Оптимизация)
3. Оптимизация запросов пользователей - batch-запросы с кэшированием
4. Селектор фильтрации - добавление новых настроек фильтрации

### �� Низкий приоритет (Дополнительные функции)
5. Настройки приложения - интерфейс настроек
6. Финальный рефакторинг - код-ревью и оптимизация

## 🎯 Ключевые особенности плана:

- Приоритизация: Критичные задачи пользовательского опыта в первую очередь
- Технические детали: Включены ссылки на API документацию
- Последовательность: Рекомендуемый план на 4 недели
- Критерии готовности: Четкие чек-листы для каждой задачи

День 15 из 14 - Идем по ToDo

#АппЗа14дней

Итак, сегодня (точнее уже вчера тк пост вчера я не написал):
— Добавил ToDo.md со списком улучшений для первой версии.
— Описал особенности реализации с помощью ИИ.
—Последовательно выполнил несколько улучшений по списку.

Статистика:
—Выполнено 12 из 16 пунктов ToDo.
—Протестировано 62 архива, из них 3 - undo c откатом изменений.
—В index.html 4187 строк спагетти-кода и console.log для отладки.

По функционалу мне осталось разобраться с попапом настроек (пока стили во фрейме не подгружаются) и сохранять выбранные настройки в ЮзерОпшинс. Также утром не сработал БэкграундВоркер. который должен был прислать мне 1 раз в день утреннюю сводку при входе на портал.

После буду оптимизировать скорость и причесывать код.

Из нового —вчера сознательно не написал ни строчки кода (кроме значений констант-настроек). Весь кодинг делает Cursor, он же пишет документацию проекта. Пруф 🌟

Рефакторинг в Cursor

#АппЗа14дней

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

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

💝 Как сработало:
1 шаг - Попросить ИИ написать план рефакторинга по шагам. Сначала я подсказывал ему пункты, но потом понял, что лучше дать свободу и подправить итоговый план.
2 шаг - Открывать новую сессию и по 1-2-3 шага последовательно выполнять работы по плану с промежуточным тестированием, чтобы убедиться, что код все еще рабочий.

Такой подход сработал и в итоге код был сокращен где-то на 500 строк, выглядел более логичным и читабельным, стал работать быстрее 🔥

LLM errors №3 — Вставляет 极 в код

#АппЗа14дней

С Cursor это неактуально стало, но на случай, если кому-то надо будет сгенерить код напрямую в DeepSeek столкнулся с такой особеннностью.
Довольно часто код не работал потому что в 2-3 местах скрипта в названиях переменных или функций встречался иероглиф, который я перевел как "окончание".
В итоге я даже не запускал код пока не пройдусь поиском по этому иероглифу.

Заметил, что чем старее чат (больше контекст), тем больше вероятность кривых окончаний в строках кода.

День 16 из 14 - основной функционал готов

#АппЗа14дней

Сегоня добил все по списку задач.
Также навел порядок в отладочных сообщениях и почистил интерфейс.

Завтра потестирую утреннее уведомление и можно будет отдавать на тест.

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

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

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

Удалил Настройки

#АппЗа14дней

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

Почему удалил?
—Долго возился с интерфейсом попапа и не добился достаточно красивого результата.
—Сложная логика синхронризации селектора/константы/ЮзерОпшинс.

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

Делать и потом удалять - больно, но правильно. Особенно когда не получается хорошо с первого раза 😄
Чем проще, тем надежнее.
Хорошего всем дня 👍

Документация на автомате

#АппЗа14дней

Cursor —это для меня главное открытие челленджа.
Он полностью изменил процесс создания аппа. Если до этого ИИ был "системой поиска кода", то теперь это скорее похоже на программиста, который сидит рядом и моя задача —объяснить ему какой результат я хочу получить.

Два главных отличия от неспециализированных ИИ для себя выделил:
1 —Cursor не "подсказывает код", а читает код проекта и переписывает его. Плюс продуманный интерфейс без чтения какой-либо документации позволил сходу перестроить процесс.
2 —Cursor сам документирует всё, что происходит. Сначала я писал об этом в запросах, но потом забыл написать и заметил, что он сам все записывает.

Просто для примера:
—несколько дней назад было два файла install.html и index.html
—к ним добавилось 35 тестов, 33 доки по фишкам с примерами кода и логикой, ToDo и CHANGELOG.

Очень удобно.
Буду делать рефакторинг - зарефакторю и документацию, тк иногда кажется, что ее даже слишком много генерится 😅

День 17 из 14 - Один из трех

#АппЗа14дней

Сегодня было 3 больших задачи:

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

✅Ускорить апп
С неприемлемых 75 секунд до "можно подождать" 25 секунд для 800 тестовых задач за 7 дней.
Плюс переработал расчет % загрузки и логирования процесса загрузки.

❌Рефакторинг
Уже 4тыс с плюсом строк кода.
Попробовал как взрослые разбить по БЭМ на отдельные файлики, но завяз с отладкой.
В итоге написал новый план рефакторинга монолитного index.html и иду по нему шаг за шагом.

День 19 из 14 — Прокачал cursor

#АппЗа14дней

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

Что хочу дубиться:
1 - Научить Cursor выкатывать новый код в тестовое приложение. Вручную архивировать апп при каждом изменении — отнимает много времени. Тут нужна несложная инфраструктура, например как описали коллеги тут.
2 - Научить Cursor помнить проект и выстроить процесс от планирования до документации. Тут я открыл для себя Rules, которые помогают зафиксировать соглашения о разработке.
3 - Расширить Cursor через MCP (Model Context Protocol), разобрался как устанавливаются эти плагины. Пока выбрал коннектор к Фигме, Справочник по кодингу, Банк памяти и Браузер.
4 - Научить Cursor самостоятельно запускать новую версию и проверять внешний вид и консоль. Тут есть мысли, надо тестить, это будет возможно после реализации пункта 1.

Уплотнение документации

#АппЗа14дней

С начала работы над аппом "Сводка" накопились десятки технических документов.

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

По итогам получилось всего 4 понятных документа охватывающих все аспекты текущей реализации:
СТАЛО (4 документа):
📋 ФУНКЦИОНАЛЬНЫЕ_ТРЕБОВАНИЯ.md
🏗️ ТЕХНИЧЕСКАЯ_АРХИТЕКТУРА.md
📊 СТАТУС_РЕАЛИЗАЦИИ.md
🔧 РУКОВОДСТВО_РАЗРАБОТЧИКА.md
Замечаний к ИИ у меня нет.
Документы действительно в сжатом виде заменили целую пачку отдельных записок. Работа заняла около 0,5ч с учетом настройки процесса, сделать это так быстро без ИИ, на мой взгляд —нереально.

Пруф 🚀

Окружение для вайбкодинга v3

#вайбкодинг #Битрикс24

Ровно месяц назад я установил свое первое окружение, это был Finder + TextEdit, затем апгрейилсяд и перешел в VS Code.

С тех пор я уже дважды с нуля переписал свой пет-проект "Сводка", ускорил его работу с 85 до 1,5 сек для 2тыс задач (об этом отдельно расскажу, если будет хотя бы одно❤️ под постом).

За несколько недель экспериментов с Cursor накопился полезный материал, поэтому на этой неделе будет 4 поста про Окружение v3 - Настройки IDE Cursor для разработки аппов Битрикс24.

Вот мой план:
1 - Процесс разработки аппа Битрикс24
2 - Правила (Rules) для вайбкодинга
3 - Расширения MCP
4 - Что пока не получилось

Уплотнение документации

Рейтинг ИИ для #вайбкодинг

Польза.
Рейтинг LLM для веб-разработки.

ChatGPT-5 на первом месте.
А мой любимый Cloude Sonnet 4 только на седьмом.

Задумался... 🤔

ПРОМПТ — это современная перфокарта?

#Перфокарта #АппЗа14дней #Битрикс24

Англицизм "Промпт" (от англ. prompt — «подсказка») прочно вошел в обиход. Если сравнить развитие ИИ с появлением компьютеров, то отдельный Пропмт я бы сравнил с Перфокартой (такая картонка с отверстиями для программирования мейнфреймов 60-х).

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

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

Я писал про Cursor, но специально для НЕпрограммистов подобрал 3 бесплатных инструмента, которые в правильной комбинации позволяют шаг за шагом создавать интеллектуальные ИИ-продукты, ценные для бизнеса. Будет инструкция для сборки "Машинки для денег" 💰

Так и назову следующий пост 🤣

Интересно, что дальше?

Читайте продолжение в телеграм-канале

CRM-форма появится здесь

Центр разработки «Создаватель»

Челябинск, улица Университетская Набережная, 66А/2, оф.304

8-800-555-800-1

start@sozdavatel.ru

Телеграм

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