Советы по разработке — день 2
Нейминг - самое недооценённое “оружие” разработчика.
Большинство игнорирует, а потом теряет часы на то, чтобы вспомнить, “что тут вообще происходит”.
Правильные имена - это документация, которая пишет себя сама.
⸻
1. Сценарии и вебхуки
Я всегда начинаю с указания триггера - откуда приходит запрос (вебхук, крон, ручной запуск), как часто он срабатывает и какое главное действие выполняет. Например -
Все сценарии раскладываю по папкам.
С недавнего времени стал задавать кастомные имена вебхукам, совпадающие с названием сценария - так проще видеть, как взаимодействуют модули.
Про модульность подробнее напишу отдельно.
⸻
2. Нейминг нод
Каждая нода должна отражать конкретное действие и субъект этого действия:
таблицу, сервис, статус или сущность, с которой идёт работа.
Не “Supabase”, а “Insert user into users”.
Не “HTTP Request”, а “Send invoice to Stripe”.
Это занимает буквально пару лишних секунд, но в будущем:
- вы читаете сценарий как текст,
- другому разработчику не нужно разбираться с нуля,
- ИИ проще анализировать структуру,
- документирование упрощается в разы.
Фактически сценарий превращается в самодокументируемую схему.
⸻
3. Нейминг в базе данных (Supabase)
У меня свой базовый стандарт:
- snake_case
- таблицы - во множественном числе
- внешние ключи — table_name_id
- одинаковые по смыслу поля - называются одинаково во всех таблицах
Это выглядит скучно, но экономит огромное количество времени.
Особенно когда переносишь архитектуру в новый проект - не нужно заново придумывать структуру, всё уже привычно и предсказуемо.
⸻
Нейминг - это мелочь, на которую не хочется тратить время.
Но именно из таких мелочей и складывается ощущение “чистой” системы.
Нейминг - самое недооценённое “оружие” разработчика.
Большинство игнорирует, а потом теряет часы на то, чтобы вспомнить, “что тут вообще происходит”.
Правильные имена - это документация, которая пишет себя сама.
⸻
1. Сценарии и вебхуки
Я всегда начинаю с указания триггера - откуда приходит запрос (вебхук, крон, ручной запуск), как часто он срабатывает и какое главное действие выполняет. Например -
[Trigger - Lovable] Create new userВсе сценарии раскладываю по папкам.
С недавнего времени стал задавать кастомные имена вебхукам, совпадающие с названием сценария - так проще видеть, как взаимодействуют модули.
Про модульность подробнее напишу отдельно.
⸻
2. Нейминг нод
Каждая нода должна отражать конкретное действие и субъект этого действия:
таблицу, сервис, статус или сущность, с которой идёт работа.
Не “Supabase”, а “Insert user into users”.
Не “HTTP Request”, а “Send invoice to Stripe”.
Это занимает буквально пару лишних секунд, но в будущем:
- вы читаете сценарий как текст,
- другому разработчику не нужно разбираться с нуля,
- ИИ проще анализировать структуру,
- документирование упрощается в разы.
Фактически сценарий превращается в самодокументируемую схему.
⸻
3. Нейминг в базе данных (Supabase)
У меня свой базовый стандарт:
- snake_case
- таблицы - во множественном числе
- внешние ключи — table_name_id
- одинаковые по смыслу поля - называются одинаково во всех таблицах
Это выглядит скучно, но экономит огромное количество времени.
Особенно когда переносишь архитектуру в новый проект - не нужно заново придумывать структуру, всё уже привычно и предсказуемо.
⸻
Нейминг - это мелочь, на которую не хочется тратить время.
Но именно из таких мелочей и складывается ощущение “чистой” системы.
👍18🔥5❤1
А кто нибудь сидит на Polymarket?
Увидел в твиттере посты про ботов, которые торгуют на нем, думаю о том, чтобы тоже поковыряться с ИИ.
Увидел в твиттере посты про ботов, которые торгуют на нем, думаю о том, чтобы тоже поковыряться с ИИ.
❤2👍1
Сделать бота для торговли на Polymarket оказалось тем ещё геммороем.
Но мы и не с таким сталкивались.
Проблемы, которые встретились по пути:
1. Поиск нужного события
Я хочу торговать 15-минутные события по биткоину (выше/ниже цены).
Такие события можно получить через series id, но там нет нормальной фильтрации - в ответ прилетает вообще вся история за всё время существования.
Файл - около 41 МБ. Работать с этим нереально.
Решение оказалось немного “хакерским” - использовать slug события. В нём зашит timestamp в ISO-формате, который обновляется каждые 15 минут. (https://polymarket.com/event/btc-updown-15m-1771325100)
ChatGPT написал JS-функцию, которая:
- считает ближайший 15-минутный интервал
- формирует нужный slug
- достаёт конкретное событие
2. Невозможность нормально использовать Python в n8n
Запустить кастомные библиотеки на Python оказалось больно.
В итоге проще было вынести логику в AWS Lambda.
3. Lambda - тоже не подарок
Библиотеки там подключаются вручную:
нужно скачать зависимости, собрать их в zip и загрузить.
У меня Mac, а архитектура Lambda — другая.
Поэтому сборку пришлось делать через Docker на сервере, где крутится n8n.
4. Блокировка по IP
Когда всё уже заработало — Polymarket начал отклонять сделки.
Причина: запросы идут из запрещённой юрисдикции (у них список из ~30 стран).
Решения два:
- прокси
- сменить регион сервера
Я выбрал смену региона функции.
⸻
В итоге бот может открывать сделки прямо из n8n.
Дальше план такой:
- передавать боту историю его сделок
- данные по движению BTC (Binance)
- текущий баланс
- цены и стакан Polymarket
На основе этого он будет принимать решение:
ставить или пропускать ход.
Посмотрим, получится ли собрать что-то устойчивое.
Но мы и не с таким сталкивались.
Проблемы, которые встретились по пути:
1. Поиск нужного события
Я хочу торговать 15-минутные события по биткоину (выше/ниже цены).
Такие события можно получить через series id, но там нет нормальной фильтрации - в ответ прилетает вообще вся история за всё время существования.
Файл - около 41 МБ. Работать с этим нереально.
Решение оказалось немного “хакерским” - использовать slug события. В нём зашит timestamp в ISO-формате, который обновляется каждые 15 минут. (https://polymarket.com/event/btc-updown-15m-1771325100)
ChatGPT написал JS-функцию, которая:
- считает ближайший 15-минутный интервал
- формирует нужный slug
- достаёт конкретное событие
2. Невозможность нормально использовать Python в n8n
Запустить кастомные библиотеки на Python оказалось больно.
В итоге проще было вынести логику в AWS Lambda.
3. Lambda - тоже не подарок
Библиотеки там подключаются вручную:
нужно скачать зависимости, собрать их в zip и загрузить.
У меня Mac, а архитектура Lambda — другая.
Поэтому сборку пришлось делать через Docker на сервере, где крутится n8n.
4. Блокировка по IP
Когда всё уже заработало — Polymarket начал отклонять сделки.
Причина: запросы идут из запрещённой юрисдикции (у них список из ~30 стран).
Решения два:
- прокси
- сменить регион сервера
Я выбрал смену региона функции.
⸻
В итоге бот может открывать сделки прямо из n8n.
Дальше план такой:
- передавать боту историю его сделок
- данные по движению BTC (Binance)
- текущий баланс
- цены и стакан Polymarket
На основе этого он будет принимать решение:
ставить или пропускать ход.
Посмотрим, получится ли собрать что-то устойчивое.
2👍11❤7👎2
Сделали ли вы хоть одно приложение/минисервис/автоматизацию с ИИ за последние полгода?
Anonymous Poll
72%
Да
28%
Нет
Уже начинаю потихоньку путаться в нашем продукте, поэтому решил зафиксировать весь функционал, который уже есть на текущий момент.
1. Intelligence
Performance (платный трафик)
Парсинг креативов из Meta и Google Ads
- использование прямых ссылок на поиск
- сохранение всех найденных креативов в базу
Анализ креативов с помощью ИИ
- саммари по каждому конкуренту
- категоризация по различным параметрам (угол, оффер, формат и т.д.)
⸻
Organic (органический контент)
Парсинг Instagram
- рилзы
- карусели
Анализ контента с ИИ
- саммари по каждому конкуренту
- категоризация по параметрам
Репликация
- возможность создать сценарий и карусель на основе найденного контента
⸻
2. Content Generation
Генерация контента
- создание видео-контента с выбором:
— музыки
— актёра (аватара) с голосом
— типа субтитров
- создание шаблонов видео
- создание каруселей по выбранным шаблонам
Параметры
- добавление музыки и актёров
- отображение вариантов субтитров
- настройка промптов для генерации сценариев и каруселей
Постинг
- интеграция Instagram-аккаунта
- ручной постинг рилзов напрямую из системы
⸻
Что из этого у вас получалось реализовать на крутом уровне?
Буду рад обменяться опытом.
1. Intelligence
Performance (платный трафик)
Парсинг креативов из Meta и Google Ads
- использование прямых ссылок на поиск
- сохранение всех найденных креативов в базу
Анализ креативов с помощью ИИ
- саммари по каждому конкуренту
- категоризация по различным параметрам (угол, оффер, формат и т.д.)
⸻
Organic (органический контент)
Парсинг Instagram
- рилзы
- карусели
Анализ контента с ИИ
- саммари по каждому конкуренту
- категоризация по параметрам
Репликация
- возможность создать сценарий и карусель на основе найденного контента
⸻
2. Content Generation
Генерация контента
- создание видео-контента с выбором:
— музыки
— актёра (аватара) с голосом
— типа субтитров
- создание шаблонов видео
- создание каруселей по выбранным шаблонам
Параметры
- добавление музыки и актёров
- отображение вариантов субтитров
- настройка промптов для генерации сценариев и каруселей
Постинг
- интеграция Instagram-аккаунта
- ручной постинг рилзов напрямую из системы
⸻
Что из этого у вас получалось реализовать на крутом уровне?
Буду рад обменяться опытом.
2❤6👍3
Не знаю что вам рассказывать, поэтому просто покажу панель управления ИИ-ботом для Polymarket, который делает деньги 24/7 пока я сплю
🔥21❤3🎃1
В общем, пока мой основной бот потихоньку выходит из тильта, я еще настроил копитрейдинг за некоторыми крутыми аккаунтами с Polymarket.
В чем суть
Polymarket создан на блокчейне и все операции прозрачны, а значит можно следить за любым игроком на рынке. Дело остается за малым - найти хорошего игрока и начать копировать его сделки.
Умельцы создали уже ворох ботов для копирования, поэтому вам не стоит об этом беспокоиться.
Единственный вопрос - настройки копирования. Так как найденный игрок скорее всего торгует по $10-50k, а у вас депозит в пару сотен, то нужно правильно настроить бота, чтобы тот не убил ваш депозит в пару сделок.
Я использую ограничения по размеру одной сделки и рынка в целом, ограничиваю оба по $1, таким образом многочисленные доливы (а многие игроки по крипте - это боты) превращаются в 1 простую сделку.
Сегодня бот скопировал фантастическую сделку - превратил $1 в $165.
Здесь есть определенные подводные камни, но в целом выйти в плюс не так уж сложно.
Я начал составлять свой список игроков рынка, которых можно копировать.
Присоединяйтесь:
Мой список игроков
Бот для копирования
Гайд по настройкам
В чем суть
Polymarket создан на блокчейне и все операции прозрачны, а значит можно следить за любым игроком на рынке. Дело остается за малым - найти хорошего игрока и начать копировать его сделки.
Умельцы создали уже ворох ботов для копирования, поэтому вам не стоит об этом беспокоиться.
Единственный вопрос - настройки копирования. Так как найденный игрок скорее всего торгует по $10-50k, а у вас депозит в пару сотен, то нужно правильно настроить бота, чтобы тот не убил ваш депозит в пару сделок.
Я использую ограничения по размеру одной сделки и рынка в целом, ограничиваю оба по $1, таким образом многочисленные доливы (а многие игроки по крипте - это боты) превращаются в 1 простую сделку.
Сегодня бот скопировал фантастическую сделку - превратил $1 в $165.
Здесь есть определенные подводные камни, но в целом выйти в плюс не так уж сложно.
Я начал составлять свой список игроков рынка, которых можно копировать.
Присоединяйтесь:
Мой список игроков
Бот для копирования
Гайд по настройкам
1🔥11❤1
Если что, вчерашние 150 баксов бот уже слил, так что не обольщайтесь))
Основная проблема при копировании сделок - криптаны торгуют другими объемами и с помощью ботов. Если не копировать их точь в точь в плане объема сделок, то будет выходить минус, когда на их аккаунтах будет красоваться плюс.
___
Но вернемся к моему боту, хоть он и хворает и хвастаться пока нечем, но зато могу рассказать про систему для тестирования стратегий, которую я разработал.
Из чего она состоит:
1. Админ панель для добавления стратегий с возможностью выгрузки результатов в CSV
2. Сохранение исторических данных с реальных сделок - данные по ценам, индикаторам, результат сделки.
3. Сценарии для быстрого прогона стратегии по историческим данным - параллельный запуск 150 сделок (запросов к ИИ) с получением результата через 1 минуту.
Как выглядит процесс:
1. Я обсуждаю стратегию с Claude
2. Закидываю ее на тест
3. Выгружаю результаты и гружу назад в Claude, он правит стратегию и все начинается заново.
Пока что удалось найти 2-3 интересных стратегии, которые тестирую.
Большую часть дохода сжирают комиссии, поэтому надо иметь уверенные показатели по выигрышам, чтобы в итоге оставаться в плюсе.
Основная проблема при копировании сделок - криптаны торгуют другими объемами и с помощью ботов. Если не копировать их точь в точь в плане объема сделок, то будет выходить минус, когда на их аккаунтах будет красоваться плюс.
___
Но вернемся к моему боту, хоть он и хворает и хвастаться пока нечем, но зато могу рассказать про систему для тестирования стратегий, которую я разработал.
Из чего она состоит:
1. Админ панель для добавления стратегий с возможностью выгрузки результатов в CSV
2. Сохранение исторических данных с реальных сделок - данные по ценам, индикаторам, результат сделки.
3. Сценарии для быстрого прогона стратегии по историческим данным - параллельный запуск 150 сделок (запросов к ИИ) с получением результата через 1 минуту.
Как выглядит процесс:
1. Я обсуждаю стратегию с Claude
2. Закидываю ее на тест
3. Выгружаю результаты и гружу назад в Claude, он правит стратегию и все начинается заново.
Пока что удалось найти 2-3 интересных стратегии, которые тестирую.
Большую часть дохода сжирают комиссии, поэтому надо иметь уверенные показатели по выигрышам, чтобы в итоге оставаться в плюсе.
❤11👻1
Давно тут не появлялся, так как в основном работаю.
Из мира хасл-новостей:
1. У меня отобрали испанский ВНЖ, потому что я поздно открыл ИП. При этом я два года сидел в РФ и только сейчас как раз выехал в европу развеяться. Как итог - еду назад домой.
2. Я уже 5 раз участвовал в гринкарт лотерее и всегда проигрывал, но в прошлом году жена выиграла гринку. Из плохого - США запретили выдавать иммиграционные визы и гринка пока что накрыта медным тазом, будем ли мы ее получать - большой вопрос, скорее нет чем да.
3. Мы сделали мощную тулзу для генерации всего и вся, но она оказалась неповоротливая до ужасти, а значит пришло время играть по крупному и теперь я переделываю все в нодовой версии, делаю эдакий Weavy.ai
А что у вас нового? Еще не устали качать новые скиллы клауд кода?
Из мира хасл-новостей:
1. У меня отобрали испанский ВНЖ, потому что я поздно открыл ИП. При этом я два года сидел в РФ и только сейчас как раз выехал в европу развеяться. Как итог - еду назад домой.
2. Я уже 5 раз участвовал в гринкарт лотерее и всегда проигрывал, но в прошлом году жена выиграла гринку. Из плохого - США запретили выдавать иммиграционные визы и гринка пока что накрыта медным тазом, будем ли мы ее получать - большой вопрос, скорее нет чем да.
3. Мы сделали мощную тулзу для генерации всего и вся, но она оказалась неповоротливая до ужасти, а значит пришло время играть по крупному и теперь я переделываю все в нодовой версии, делаю эдакий Weavy.ai
А что у вас нового? Еще не устали качать новые скиллы клауд кода?
❤9🔥3🗿2
Зацените, что мы умеем генерировать (да-да, включая анимацию чата)
Если у вас есть проблема с массовой генерацией контента для перфоманс маркетинга или органики - пишите, у нас очень приятные условия.
Если у вас есть проблема с массовой генерацией контента для перфоманс маркетинга или органики - пишите, у нас очень приятные условия.
Это был тизер к возвращению в блог, кто не понял))
Сначала немного новостей:
1. Много работаю над стартапом и получается неплохо - мы сделали классный продукт с крутым дизайном и функционалом, в нем реально удобно создавать креативы любой сложности. Единственный минус, что особо распространяться пока нельзя, поэтому я ничего не писал в блог, хотя сделали много интересных технических решений.
2. Мне только что дали визу номада в Тайланд на 5 лет - все доки я оформлял сам при помощи Claude и чата @visadtv. Вкратце - вам нужно находиться вне Тайланда и смочь показать круглую сумму на счету с кипой документов.
3. Потихоньку становлюсь королем контента - за последние 4 месяца я создал более 20 различных роликов абсолютно разной направленности и сложности. Вдобавок, мы сделали 200 единиц контента для клиента с очень сложным сценарием. Поэтому если вам нужен контент в больших объемах - обращайтесь к нам.
Теперь об инсайдах:
n8n сделали кучу обновлений, которые буквально уничтожили возможность построения нормальных мультиагентских систем - все забаговано, половина функционала тупо не работает, люди с похожими проблемами отмечались на форумах еще год назад. Но мой клиент (маркетинговое агентство) хочет сделать универсальную систему для управления клиентами с кучей различных отчетов, управления данными и тд. Я начал понимать, что с учетом существования Claude Code, все что я буду делать с OpenAI и n8n - это несерьезно и очень clumsy.
Поэтому новая мета - писать автоматизации на коде вместо n8n (да-да, ноукодеры, вот мы и скатились).
Как выглядит стэк:
1. Вы разворачиваете репозиторий на Github.
2. Подключаете Claude Code (мне хватает подписки в $20 собирать по чуть-чуть) к репозиторию.
3. Деплоите репозиторий на Vercel.
4. Подключаете Inngest к Vercel.
5. Подключаете Lovable к Inngest.
Inngest выступает в данном случае оркестратором и интерфейсом к запуску ваших автоматизаций.
Claude code пушит все изменения в Github, они автоматически деплоятся через Vercel и вам ничего не нужно делать.
Что в итоге?
Claude code с радостью помогает вам развернуть Agent SDK от Anthropic и превратить ее в сложную мультиагентную систему с встроенными тулами по типу генератора презентаций или общения с вашей БД.
Вы в свою очередь продолжаете заниматься созданием интерфейса и архитектуры БД.
Почему мой клиент просто не может делать все через Claude code? - Основная задача создать панель управления для других сотрудников, а также сделать личный кабинет для клиентов.
В будущем видется, что все приложения превратятся либо в чат с агентом, либо в коннектор для Claude code, так как всем так удобнее работать.
____
Расскажите, что изменилось в вашем ноукод стеке за последние месяцы?
Сначала немного новостей:
1. Много работаю над стартапом и получается неплохо - мы сделали классный продукт с крутым дизайном и функционалом, в нем реально удобно создавать креативы любой сложности. Единственный минус, что особо распространяться пока нельзя, поэтому я ничего не писал в блог, хотя сделали много интересных технических решений.
2. Мне только что дали визу номада в Тайланд на 5 лет - все доки я оформлял сам при помощи Claude и чата @visadtv. Вкратце - вам нужно находиться вне Тайланда и смочь показать круглую сумму на счету с кипой документов.
3. Потихоньку становлюсь королем контента - за последние 4 месяца я создал более 20 различных роликов абсолютно разной направленности и сложности. Вдобавок, мы сделали 200 единиц контента для клиента с очень сложным сценарием. Поэтому если вам нужен контент в больших объемах - обращайтесь к нам.
Теперь об инсайдах:
n8n сделали кучу обновлений, которые буквально уничтожили возможность построения нормальных мультиагентских систем - все забаговано, половина функционала тупо не работает, люди с похожими проблемами отмечались на форумах еще год назад. Но мой клиент (маркетинговое агентство) хочет сделать универсальную систему для управления клиентами с кучей различных отчетов, управления данными и тд. Я начал понимать, что с учетом существования Claude Code, все что я буду делать с OpenAI и n8n - это несерьезно и очень clumsy.
Поэтому новая мета - писать автоматизации на коде вместо n8n (да-да, ноукодеры, вот мы и скатились).
Как выглядит стэк:
1. Вы разворачиваете репозиторий на Github.
2. Подключаете Claude Code (мне хватает подписки в $20 собирать по чуть-чуть) к репозиторию.
3. Деплоите репозиторий на Vercel.
4. Подключаете Inngest к Vercel.
5. Подключаете Lovable к Inngest.
Inngest выступает в данном случае оркестратором и интерфейсом к запуску ваших автоматизаций.
Claude code пушит все изменения в Github, они автоматически деплоятся через Vercel и вам ничего не нужно делать.
Что в итоге?
Claude code с радостью помогает вам развернуть Agent SDK от Anthropic и превратить ее в сложную мультиагентную систему с встроенными тулами по типу генератора презентаций или общения с вашей БД.
Вы в свою очередь продолжаете заниматься созданием интерфейса и архитектуры БД.
Почему мой клиент просто не может делать все через Claude code? - Основная задача создать панель управления для других сотрудников, а также сделать личный кабинет для клиентов.
В будущем видется, что все приложения превратятся либо в чат с агентом, либо в коннектор для Claude code, так как всем так удобнее работать.
____
Расскажите, что изменилось в вашем ноукод стеке за последние месяцы?
1👍15❤1
Media is too big
VIEW IN TELEGRAM
Короче собираемся отлить на рекламу продукта $10k на этот ролик, что думаете?
👎22🗿8😁4👍1😱1