Навеяно постом про Джона и двойную ставку.
Как и почему Джон заломил 5х, компания согласилась, но это ей не помогло.
Действия происходят в РФ 2011-2014 годы.
Большая компания, крупный банковский вендор, начинает экспансию на международный рынок. Находит потребность которая измеряется миллиардами долларов(поясню почему дальше).
Как результат стартует инвестиционный проект(такой подстартап) нанимая/перекупая очень сильную команду из инвестиционного банка.
Идея, что многие иностранные олдскул банки, да и не только банки сидят на мейнфреймах от IBM и очень очень много систем написано на Cobol.
Идея всего проекта, то что можно конвертнуть из кобола конвертим в Custom Java Application то что нельзя (UI релейтед) пишем Cobol Runtime на той же Java.
Почему это многомиллиардный рынок, да все просто цена за такую работу начинается от 3 долларов за одну строчку на Cobol.
Проект длился почти 2 года. Было несколько Java разработчиков, перекупленный чувак из Barclays (со знанием Cobol) который за время проекта сошел с ума(в прямом смысле). Также нанимается внешний консультант дядечка из UK 68 лет, который всю жизнь работал с банковским софтом на Cobol. Его ставка была 1200 фунтов в ДЕНЬ(тут можно передать привет немецкой компании SixT которая ищет Java разработчиков со знанием Cobol за 65к евро gross annual, ищет уже лет 20 наверное).
Все идет как по маслу, идет разработка, начинается процесс продаж B2B, даже получается набрать какие-то примеры систем на Cobol, чтобы сконвертить как MVP и за бесплатно, какую-то часть системы. Но никто из заказчиков не хочет идти дальше. Так как риск такой миграции очень велик, а сумма окупаемости порядка 9-10 лет (тут не учитывается стоимость поддержки Cobol решений, а просто стоимость mainframes за этот период времени). Дальше всего с lead продаж продвинулись с очень крупным производителем авто, как выяснилось у них система учета всех запчастей в мире была написана на Cobol. Но не сложилось.
Менежмент вендора, был очень недоволен таким ходом вещей и такой тратой денег и пытался всячески прикрыть проект. Проект чисто выживал так как в него верил акционер с самым большим пакетом. Но и это кончилось. Проект прикрыли, команду расформировали, не без скандала, она стала уходить и ушла. Естественно все наработки остались за спонсором банкета. И проект отдали в ответственность, человека(который кстати и тригернул этот скандал).
И вот спустя какое-то время, вырисовывается новый lead и надо лететь показывать и продавать. А там как обычно прислали кусок его надо конвертить и дальше показать как вообще и что будет. Людей нет кто знает как это делать, и компания связывается с главным разработчиком этой системы. Он им заламывает ставку 5х, чтобы за два полных дня помочь это обернуть в презентацию. Компания естественно соглашается. Но это ей не помогло.
Я конечно понимаю, что этот кейс очень экстремальный. Но когда люди пишут что документация решает. К сожалению в этом примере нет. Каждый новый кусок/пример требовал расширения грамматики языка, так как Cobol это язык программирования с диалектом и таких диалектов было очень и очень много. Именно поэтому нужен был человек, хотя бы с какими-то знаниями, чтобы это запустить.
Программист Джон решил уволиться, о чём уведомил своего менеджера за три дня (работа по контракту). Но так как он работал давно, то осталось довольно много модулей, которые знал он один и передать знания было некому. Через какое-то время был найден программист на замену и менеджер попросил Джона созвониться с новичком и уже нормально рассказать как всё работает. Программист сказал, что его ставка 2х от предыдущей и он будет работать только при почасовой оплате. Менеджер считает, что в такой ситуации Джон должен созвониться бесплатно.
Кто прав?
Как и почему Джон заломил 5х, компания согласилась, но это ей не помогло.
Действия происходят в РФ 2011-2014 годы.
Большая компания, крупный банковский вендор, начинает экспансию на международный рынок. Находит потребность которая измеряется миллиардами долларов(поясню почему дальше).
Как результат стартует инвестиционный проект(такой подстартап) нанимая/перекупая очень сильную команду из инвестиционного банка.
Идея, что многие иностранные олдскул банки, да и не только банки сидят на мейнфреймах от IBM и очень очень много систем написано на Cobol.
Идея всего проекта, то что можно конвертнуть из кобола конвертим в Custom Java Application то что нельзя (UI релейтед) пишем Cobol Runtime на той же Java.
Почему это многомиллиардный рынок, да все просто цена за такую работу начинается от 3 долларов за одну строчку на Cobol.
Проект длился почти 2 года. Было несколько Java разработчиков, перекупленный чувак из Barclays (со знанием Cobol) который за время проекта сошел с ума(в прямом смысле). Также нанимается внешний консультант дядечка из UK 68 лет, который всю жизнь работал с банковским софтом на Cobol. Его ставка была 1200 фунтов в ДЕНЬ(тут можно передать привет немецкой компании SixT которая ищет Java разработчиков со знанием Cobol за 65к евро gross annual, ищет уже лет 20 наверное).
Все идет как по маслу, идет разработка, начинается процесс продаж B2B, даже получается набрать какие-то примеры систем на Cobol, чтобы сконвертить как MVP и за бесплатно, какую-то часть системы. Но никто из заказчиков не хочет идти дальше. Так как риск такой миграции очень велик, а сумма окупаемости порядка 9-10 лет (тут не учитывается стоимость поддержки Cobol решений, а просто стоимость mainframes за этот период времени). Дальше всего с lead продаж продвинулись с очень крупным производителем авто, как выяснилось у них система учета всех запчастей в мире была написана на Cobol. Но не сложилось.
Менежмент вендора, был очень недоволен таким ходом вещей и такой тратой денег и пытался всячески прикрыть проект. Проект чисто выживал так как в него верил акционер с самым большим пакетом. Но и это кончилось. Проект прикрыли, команду расформировали, не без скандала, она стала уходить и ушла. Естественно все наработки остались за спонсором банкета. И проект отдали в ответственность, человека(который кстати и тригернул этот скандал).
И вот спустя какое-то время, вырисовывается новый lead и надо лететь показывать и продавать. А там как обычно прислали кусок его надо конвертить и дальше показать как вообще и что будет. Людей нет кто знает как это делать, и компания связывается с главным разработчиком этой системы. Он им заламывает ставку 5х, чтобы за два полных дня помочь это обернуть в презентацию. Компания естественно соглашается. Но это ей не помогло.
Я конечно понимаю, что этот кейс очень экстремальный. Но когда люди пишут что документация решает. К сожалению в этом примере нет. Каждый новый кусок/пример требовал расширения грамматики языка, так как Cobol это язык программирования с диалектом и таких диалектов было очень и очень много. Именно поэтому нужен был человек, хотя бы с какими-то знаниями, чтобы это запустить.
👍2❤1
Пет-проект — самый лучший психотерапевт. Всегда можно изучить что-то новое, проверить гипотезы. Скормил сводку ChatGPT и спросил, много ли это для пет-проекта. Ответ улыбнул.
Для пет-проекта это много — это скорее мидсайз энтерпрайз-решение. Но именно это не даёт свихнуться в свободное время после работы в суровом и порой бестолковом IT.
Для пет-проекта это много — это скорее мидсайз энтерпрайз-решение. Но именно это не даёт свихнуться в свободное время после работы в суровом и порой бестолковом IT.
👍3
Как выбрать доменное имя для пет-проекта или деятельности?
Первая рекомендация. Если у вас есть домен vasyapupkin.ext (домен 2-го уровня), не используйте поддомен, например myamazingproject.vasyapupkin.ext (домен 3-го уровня).
Вы должны всегда следовать принципу изоляции и использовать кастомное доменное имя. Изоляция важна, так как в случае выигрыша в «ошибку выжившего» всё это можно будет упаковать и продать. К тому же стоимость доменных имён в 2025 году — копейки. А затраты на маркетинг как для поддомена (домена 3-го уровня), так и для нового домена (2-го уровня) примерно одинаковы с точки зрения времени и денег.
Предполагая, что вы уже знаете, что будет делать ваш проект, нужно выделить ключевое слово. И дальше можно поиграть в игру слов. Надо понимать целевую аудиторию и её основной язык. Если целевой язык — русский, то выбирайте созвучные англицизмы, которые широко присутствуют в русском языке. Например, у меня был интернет-магазин посуды в РФ, и доменное имя было «посудадром» — легко и просто запоминающееся.
Для англоязычной аудитории принцип похожий. Но тут встаёт, как всегда, вопрос: английский — не родной язык. Здесь нам приходит на помощь любой чат с ИИ.
Выбираем одно ключевое слово и описываем свою идею одним простым предложением (это не должен быть трактат или сочинение). Пишем в ИИ-чат: «Предложи доменное имя для <идея> с использованием слова <наше целевое слово>» (это, кстати, можно опустить — в процессе чата можно выбрать это слово).
Дальше — наши инструменты. Любой сервис проверки доступности имён, например GoDaddy. Процесс итеративный, и тут всё ограничивается только нашей фантазией — продолжаем спрашивать чат до получения желаемого результата (кстати, может занять довольно много времени; я так два года назад смог найти 6-буквенный классный .com-домен).
Ключевые аспекты для подбора:
1. Насколько легко создать бренд
2. Насколько легко запоминается
3. Выразительность
4. Профессиональность
5. Зона
Хотя список можно расширять.
На английском это:
- Brandable
- Memorable
- Meaningful
- Professional
- I.e. .com available (Zone)
Про зону я особо не углублялся, но сторонник всегда идти с зоной .com (хотя это сложно), но меньше шанс нарваться на нарушение прав на торговую марку (trademark infringement).
Важно! Обязательно проверяйте понравившееся имя на зарегистрированную торговую марку. Причём даже если ваша деятельность далека от деятельности марки, лучше воздержаться от такого домена.
Сайты для проверки ТМ:
USPTO (United States)
https://tmsearch.uspto.gov
International (WIPO)
https://www.wipo.int/branddb/en
Для Европы тоже находятся в поиске.
Пример того, что я подобрал для одной идеи на скриншоте
Первая рекомендация. Если у вас есть домен vasyapupkin.ext (домен 2-го уровня), не используйте поддомен, например myamazingproject.vasyapupkin.ext (домен 3-го уровня).
Вы должны всегда следовать принципу изоляции и использовать кастомное доменное имя. Изоляция важна, так как в случае выигрыша в «ошибку выжившего» всё это можно будет упаковать и продать. К тому же стоимость доменных имён в 2025 году — копейки. А затраты на маркетинг как для поддомена (домена 3-го уровня), так и для нового домена (2-го уровня) примерно одинаковы с точки зрения времени и денег.
Предполагая, что вы уже знаете, что будет делать ваш проект, нужно выделить ключевое слово. И дальше можно поиграть в игру слов. Надо понимать целевую аудиторию и её основной язык. Если целевой язык — русский, то выбирайте созвучные англицизмы, которые широко присутствуют в русском языке. Например, у меня был интернет-магазин посуды в РФ, и доменное имя было «посудадром» — легко и просто запоминающееся.
Для англоязычной аудитории принцип похожий. Но тут встаёт, как всегда, вопрос: английский — не родной язык. Здесь нам приходит на помощь любой чат с ИИ.
Выбираем одно ключевое слово и описываем свою идею одним простым предложением (это не должен быть трактат или сочинение). Пишем в ИИ-чат: «Предложи доменное имя для <идея> с использованием слова <наше целевое слово>» (это, кстати, можно опустить — в процессе чата можно выбрать это слово).
Дальше — наши инструменты. Любой сервис проверки доступности имён, например GoDaddy. Процесс итеративный, и тут всё ограничивается только нашей фантазией — продолжаем спрашивать чат до получения желаемого результата (кстати, может занять довольно много времени; я так два года назад смог найти 6-буквенный классный .com-домен).
Ключевые аспекты для подбора:
1. Насколько легко создать бренд
2. Насколько легко запоминается
3. Выразительность
4. Профессиональность
5. Зона
Хотя список можно расширять.
На английском это:
- Brandable
- Memorable
- Meaningful
- Professional
- I.e. .com available (Zone)
Про зону я особо не углублялся, но сторонник всегда идти с зоной .com (хотя это сложно), но меньше шанс нарваться на нарушение прав на торговую марку (trademark infringement).
Важно! Обязательно проверяйте понравившееся имя на зарегистрированную торговую марку. Причём даже если ваша деятельность далека от деятельности марки, лучше воздержаться от такого домена.
Сайты для проверки ТМ:
USPTO (United States)
https://tmsearch.uspto.gov
International (WIPO)
https://www.wipo.int/branddb/en
Для Европы тоже находятся в поиске.
Пример того, что я подобрал для одной идеи на скриншоте
👍3
Я уже писал, что периодически консультирую стартапы и сайд-проекты по техническим аспектам. И вот недавно мне попался очень интересный экземпляр.
Дали доступ к одной махине — завайбкоженное огромное решение, с просьбой пояснить, как его выкатить в эксплуатацию. С системой там всё +- понятно, таргет-рынок сейчас 2.5 млрд, к 2030 — 30 миллиардов, всё +- ясно. Но меня больше всего впечатлило, на чём оно сделано. А сделано оно на base44. Можете поискать, что это. Вкратце: там солофаундер затащил nocode + vibecode за адекватное время и продал недавно это решение за 80 млнов кэшем. Поизучав доступ к системе и сам base44, у меня сложилось впечатление, что там проект, который написал сам себя — самый настоящий dogfooding с отличным финансовым результатом.
Дали доступ к одной махине — завайбкоженное огромное решение, с просьбой пояснить, как его выкатить в эксплуатацию. С системой там всё +- понятно, таргет-рынок сейчас 2.5 млрд, к 2030 — 30 миллиардов, всё +- ясно. Но меня больше всего впечатлило, на чём оно сделано. А сделано оно на base44. Можете поискать, что это. Вкратце: там солофаундер затащил nocode + vibecode за адекватное время и продал недавно это решение за 80 млнов кэшем. Поизучав доступ к системе и сам base44, у меня сложилось впечатление, что там проект, который написал сам себя — самый настоящий dogfooding с отличным финансовым результатом.
❤1👍1🔥1
Повайбкодили
Я смотрю, что тема вайбкодинга довольно интересна многим людям. Так вот, как я и обещал, опишу причины, почему я решил это попробовать.
Мой скептицизм и парадокс
Вообще я довольно скептически относился ко всему, что связано с ИИ (при этом разрабатывал один большой проект в свободное время, связанный с ИИ — парадокс). У меня нет подписки на условный чат GPT или Клодчат, тут я просто сторонник работать по принципу pay as you go (опишу про то, что я использую, в другой раз). Жил я в таком режиме последние несколько лет, при этом код писал или фиксил сам, готовя контекст и имея набор своих промптов.
Момент прозрения
Все изменилось, когда у меня супруга выпала на несколько дней и закрылась, и чето все ваяла сама. Оказалось, она взяла Bolt и за три дня запилила простенькую штуку с 0, которая делала одну фичу — готовила карусель картинки для Threads. Когда у нее случился затык, она попросила помочь. Я посмотрел на весь код, написал один промпт для изменения архитектуры рендеринга (тут, ессно, следует отметить, что в 2022 я писал проект, который делал похожее, и просто скормил наработки). Дальше я потратил где-то еще один день в Клодкоде дофиксить все ошметки от Bolt и подготовить под билд и развертывание, и мы задеплоили эту штуку.
Эксперимент с агентами
Супруга сказала, что я должен попробовать поработать с каким-нить из агентов. Взять просто триал и поковырять, как оно было, не интересно — +/- понятно. А интереснее было за неделю триала с 0 опыта работы с агентами создать коммерческое приложение, при этом имея фт работу и курсы немецкого 8 часов в неделю. Решено было взять Cursor триал и посмотреть (они дают сейчас одну неделю).
Идея проекта
Идея, что будем делать — это самое сложное всегда. Но будем решать одну из своих болей. Когда народ пишет, что они в семье используют Jira, у нас все сложнее. Я помогаю супруге ранить ее агентство небольшое с технической экспертизой, и когда мы говорим или когда что-то пишем, это надо куда-то записывать, переводить, править ошибки — короче, писать в чаты или писать супруге письма. Для этого я поднял телеграм-бота и подключил его к своему большому проекту (но в плане функционала в большом проекте это было не так тривиально, и оно плохо ложилось на существующую архитектуру, плюс проект еще в разработке и не задеплоен, что тоже накладывает ограничения).
Решено, как результат, сделать Google Chrome расширение, которое будет писать голос, преобразовывать его в текст, а потом делать пост-процессинг текста согласно правилам и базе знаний пользователя. Я не хотел делать его как SaaS, а просто сделать по моему любимому принципу pay as you go (вводишь свои ключи, и оно работает). И еще срок — неделя, так как, понимая все дальнейшие согласования и регистрации, хотелось успеть до американской и европейской Черной пятницы.
Первая неделя разработки
За неделю это получилось сделать (это был мой первый опыт разработки Chrome extension). Дальше встал вопрос с оплатой. Google Chrome Store отличается от Play Store тем, что разрешено использовать сторонних вендоров процессинга платежей. Как результат, нужен сайт, нужен апрув, нужны везде регистрации (этим занималась супруга). Так как это все время, то пришлось продолжить докидывать агенту задачи доделать сайт под прием платежей.
Поворот к SaaS
Все изменилось на вторую неделю. Супруга попила кофе со знакомым маркетологом и, вернувшись домой, сказала, что нам надо делать SaaS (тут опять рухнула моя мечта о приложении для гиков). Ну SaaS так SaaS. Пока шла очередная череда апрувов от всех, агент спокойненько по спецификации и моим наработкам пилил SaaS (тут стоит отметить, что в бэк они еще до сих пор плохо, но это изменится, вероятнее всего).
Выводы о будущем
После всего этого упражнения я чутка задумался о будущем. В 2024 агенты отлично делали UI. Сейчас агенты уже отлично делают DevOps. 2026 будет интересным.
Планы на будущее
Я смотрю, что тема вайбкодинга довольно интересна многим людям. Так вот, как я и обещал, опишу причины, почему я решил это попробовать.
Мой скептицизм и парадокс
Вообще я довольно скептически относился ко всему, что связано с ИИ (при этом разрабатывал один большой проект в свободное время, связанный с ИИ — парадокс). У меня нет подписки на условный чат GPT или Клодчат, тут я просто сторонник работать по принципу pay as you go (опишу про то, что я использую, в другой раз). Жил я в таком режиме последние несколько лет, при этом код писал или фиксил сам, готовя контекст и имея набор своих промптов.
Момент прозрения
Все изменилось, когда у меня супруга выпала на несколько дней и закрылась, и чето все ваяла сама. Оказалось, она взяла Bolt и за три дня запилила простенькую штуку с 0, которая делала одну фичу — готовила карусель картинки для Threads. Когда у нее случился затык, она попросила помочь. Я посмотрел на весь код, написал один промпт для изменения архитектуры рендеринга (тут, ессно, следует отметить, что в 2022 я писал проект, который делал похожее, и просто скормил наработки). Дальше я потратил где-то еще один день в Клодкоде дофиксить все ошметки от Bolt и подготовить под билд и развертывание, и мы задеплоили эту штуку.
Эксперимент с агентами
Супруга сказала, что я должен попробовать поработать с каким-нить из агентов. Взять просто триал и поковырять, как оно было, не интересно — +/- понятно. А интереснее было за неделю триала с 0 опыта работы с агентами создать коммерческое приложение, при этом имея фт работу и курсы немецкого 8 часов в неделю. Решено было взять Cursor триал и посмотреть (они дают сейчас одну неделю).
Идея проекта
Идея, что будем делать — это самое сложное всегда. Но будем решать одну из своих болей. Когда народ пишет, что они в семье используют Jira, у нас все сложнее. Я помогаю супруге ранить ее агентство небольшое с технической экспертизой, и когда мы говорим или когда что-то пишем, это надо куда-то записывать, переводить, править ошибки — короче, писать в чаты или писать супруге письма. Для этого я поднял телеграм-бота и подключил его к своему большому проекту (но в плане функционала в большом проекте это было не так тривиально, и оно плохо ложилось на существующую архитектуру, плюс проект еще в разработке и не задеплоен, что тоже накладывает ограничения).
Решено, как результат, сделать Google Chrome расширение, которое будет писать голос, преобразовывать его в текст, а потом делать пост-процессинг текста согласно правилам и базе знаний пользователя. Я не хотел делать его как SaaS, а просто сделать по моему любимому принципу pay as you go (вводишь свои ключи, и оно работает). И еще срок — неделя, так как, понимая все дальнейшие согласования и регистрации, хотелось успеть до американской и европейской Черной пятницы.
Первая неделя разработки
За неделю это получилось сделать (это был мой первый опыт разработки Chrome extension). Дальше встал вопрос с оплатой. Google Chrome Store отличается от Play Store тем, что разрешено использовать сторонних вендоров процессинга платежей. Как результат, нужен сайт, нужен апрув, нужны везде регистрации (этим занималась супруга). Так как это все время, то пришлось продолжить докидывать агенту задачи доделать сайт под прием платежей.
Поворот к SaaS
Все изменилось на вторую неделю. Супруга попила кофе со знакомым маркетологом и, вернувшись домой, сказала, что нам надо делать SaaS (тут опять рухнула моя мечта о приложении для гиков). Ну SaaS так SaaS. Пока шла очередная череда апрувов от всех, агент спокойненько по спецификации и моим наработкам пилил SaaS (тут стоит отметить, что в бэк они еще до сих пор плохо, но это изменится, вероятнее всего).
Выводы о будущем
После всего этого упражнения я чутка задумался о будущем. В 2024 агенты отлично делали UI. Сейчас агенты уже отлично делают DevOps. 2026 будет интересным.
Планы на будущее
❤3
Ах ну и да, я не оставил идею сделать проект для гиков — домен уже купил. Сейчас чутка разгребу, уйду в отпуск и попробую другой подход, когда будут работать 4 агента в параллель и делать копию одной тулы и копию меня.
Если есть вопросы, спрашивайте — расскажу, что знаю и что думаю.
Посмотреть систему на бою https://voxwrite.app/
Если есть вопросы, спрашивайте — расскажу, что знаю и что думаю.
Посмотреть систему на бою https://voxwrite.app/
VoxWrite
VoxWrite | Voice-to-text extension
Voice-to-Text Chrome Extension that turns your messy voice into polished, clear email, post, message, note, journal, to-do list, etc. — styled, with perfect punctuation and ready to use.
👍2
Добрался до описания того, как мы вайбкодили VoxWrite.
Времени заняло 5 недель: от создания репозитория, прохождения всех проверок, подключения платёжного шлюза до деплоя и первой версии в Chrome Store.
Итак:
Я уже писал, что это больше миллиарда токенов и почти 70 тысяч строк сгенерированного кода.
5 недель full-time?
Нет, это не FT, а сайд-активность.
Сколько людей?
Двое.
Что делали?
Делали Chrome extension, сайт, API.
Сайт и изначальный UI extension делался в Bolt и Lovable. Почему две тулзы? Всё просто: одна сделала ок структуру, вторая — ок элементы. Компоновка дала, имхо, ок результат.
Все картинки для Chrome Store и для сайта также верстались Bolt-ом, а потом HTML сохранялся в PNG, используя Playwright.
По разработческим агентам:
Основным был Cursor в режиме auto.
Когда Cursor затыкался, ему на помощь приходил Claude Code в режиме pay-as-you-go.
Copilot — самый нищенский план — позволил развернуть Kubernetes-кластер, и премиум-токены кончились.
Код писался не с нуля:
За основу Chrome extension взялся очень популярный и, я бы сказал, очень хороший бойлерплейт: https://github.com/Jonghakseo/chrome-extension-boilerplate-react-vite
За основу сайта взялся собственный шаблон на Next.js с поддержкой Markdown.
За основу API взялся бойлерплейт с одного из моих других проектов, где была плюс-минус настроена платёжная интеграция и асинхронные задачи. БД и авторизация делегированы Supabase.
Само расширение: https://voxwrite.app
Стек:
API: Fastify
Менеджеры монорепо: Turbo и Nx
K8s: использовал вот эту сборку — https://github.com/vitobotta/hetzner-k3s
Если есть вопросы — спрашивайте.
Времени заняло 5 недель: от создания репозитория, прохождения всех проверок, подключения платёжного шлюза до деплоя и первой версии в Chrome Store.
Итак:
Я уже писал, что это больше миллиарда токенов и почти 70 тысяч строк сгенерированного кода.
5 недель full-time?
Нет, это не FT, а сайд-активность.
Сколько людей?
Двое.
Что делали?
Делали Chrome extension, сайт, API.
Сайт и изначальный UI extension делался в Bolt и Lovable. Почему две тулзы? Всё просто: одна сделала ок структуру, вторая — ок элементы. Компоновка дала, имхо, ок результат.
Все картинки для Chrome Store и для сайта также верстались Bolt-ом, а потом HTML сохранялся в PNG, используя Playwright.
По разработческим агентам:
Основным был Cursor в режиме auto.
Когда Cursor затыкался, ему на помощь приходил Claude Code в режиме pay-as-you-go.
Copilot — самый нищенский план — позволил развернуть Kubernetes-кластер, и премиум-токены кончились.
Код писался не с нуля:
За основу Chrome extension взялся очень популярный и, я бы сказал, очень хороший бойлерплейт: https://github.com/Jonghakseo/chrome-extension-boilerplate-react-vite
За основу сайта взялся собственный шаблон на Next.js с поддержкой Markdown.
За основу API взялся бойлерплейт с одного из моих других проектов, где была плюс-минус настроена платёжная интеграция и асинхронные задачи. БД и авторизация делегированы Supabase.
Само расширение: https://voxwrite.app
Стек:
API: Fastify
Менеджеры монорепо: Turbo и Nx
K8s: использовал вот эту сборку — https://github.com/vitobotta/hetzner-k3s
Если есть вопросы — спрашивайте.
🔥3
Мысли про Anthropic Opus 4.5. Проснувшись вчера в полном опустошении, так как порешал все большие задачи, было принято решение поэкспериментировать со spec-driven-development. Цель простая: ты занимаешься своими делами, читаешь книжку, играешь в Elden Ring ну или на худой конец учишь немецкий, а агенты пишут код.
Была у меня задача: есть у меня платная подписка на один телеграм-канал, и я всегда хотел делать выдержку из постов человека, который ведет его, и построить определенный анализ ну и поговорить с этими постами. Посты там огромные, и за 3,5 года он написал почти 40 тысяч постов. Проблема официальных клиентов — что такие каналы или супергруппы закрыты для копирования или пересылки сообщений. Да и пересылать/копировать все 40 тысяч — это ну не совсем то, чем бы хотелось заниматься. Так как канал платный, он привязан к одному из моих номеров телефона, и никакое серверное решение мне не подходит в силу паранойи.
Прикинув, что я хочу получить, было принято решение это дело естественно завайбкодить. Стек простой: многомодульный nodejs с typescript, обвязанный линтерами.
Действующие лица. Супер-агент: Claude Code с Opus 4.5. Джун-агент: Cursor.
Итак, мы будем делать своего клиента, который будет работать через cli и по нашим запросам сохранит всё в удобных форматах для дальнейшей постобработки. 12 предложений на английском языке для opus 4.5 с разбивкой на 7 задач. Результат: 7 файлов с детальным описанием, как и что делать. Дальше файл за файлом это скармливается курсору, который, кстати, тоже жестко обмотан правилами, что и как он должен делать, и шаг влево, вправо — расстрел.
Небольшое отступление: cli + многомодульность позволят заменить UI, если понадобится.
Итого за 2-3 часа с перекурами я получил полнофункционального клиента к телеграму, который умеет создавать профили, умеет коннектить к аккаунту телеграм-учетки и снимать все сообщения в форматах для постобработки.
В код я даже не заглядывал, а спрашивал у cursor, как мы сделали это или как мы сделали то, и если ответ и технология меня не устраивали, я просил переделать. Всё обвязал тестами, чтобы он ничего не ломал. Один раз попросил opus 4.5 провести кодревью и проверить удовлетворение acceptance criteria (логика, связанная с авторизацией клиента).
Как результат: полноценный cli-клиент для моих нужд с возможностью авторизации через login + password + 2fa (опционально, если настроено) или через QR code (все наверное знают, как присоединяются десктопные клиенты к телеграму, точно такой же принцип) + 2fa (опционально, если настроено).
Это пример задачи, когда 12 предложений на английском языке превратились в полноценное решение определенной задачи.
Понравилось, что в процессе подготовки опусом спецификации разработки можно курсор ставить в параллель имплементировать готовые части спеки. Opus писал долго эти файлики, но выигрыш как раз случился в параллелизации.
Кому эта софтина может быть полезной: авторам каналов, кто следит за похожими каналами и ищет/копирует идеи контента или сам контент. Тем, кто читает экспертов (часто платные каналы) и хочет иметь выдержки. Всё работает локально без облаков с контролем сессии, encryption сессии на локальной машине, что даже если файлики сессии утекут, они будут бесполезны.
Была у меня задача: есть у меня платная подписка на один телеграм-канал, и я всегда хотел делать выдержку из постов человека, который ведет его, и построить определенный анализ ну и поговорить с этими постами. Посты там огромные, и за 3,5 года он написал почти 40 тысяч постов. Проблема официальных клиентов — что такие каналы или супергруппы закрыты для копирования или пересылки сообщений. Да и пересылать/копировать все 40 тысяч — это ну не совсем то, чем бы хотелось заниматься. Так как канал платный, он привязан к одному из моих номеров телефона, и никакое серверное решение мне не подходит в силу паранойи.
Прикинув, что я хочу получить, было принято решение это дело естественно завайбкодить. Стек простой: многомодульный nodejs с typescript, обвязанный линтерами.
Действующие лица. Супер-агент: Claude Code с Opus 4.5. Джун-агент: Cursor.
Итак, мы будем делать своего клиента, который будет работать через cli и по нашим запросам сохранит всё в удобных форматах для дальнейшей постобработки. 12 предложений на английском языке для opus 4.5 с разбивкой на 7 задач. Результат: 7 файлов с детальным описанием, как и что делать. Дальше файл за файлом это скармливается курсору, который, кстати, тоже жестко обмотан правилами, что и как он должен делать, и шаг влево, вправо — расстрел.
Небольшое отступление: cli + многомодульность позволят заменить UI, если понадобится.
Итого за 2-3 часа с перекурами я получил полнофункционального клиента к телеграму, который умеет создавать профили, умеет коннектить к аккаунту телеграм-учетки и снимать все сообщения в форматах для постобработки.
В код я даже не заглядывал, а спрашивал у cursor, как мы сделали это или как мы сделали то, и если ответ и технология меня не устраивали, я просил переделать. Всё обвязал тестами, чтобы он ничего не ломал. Один раз попросил opus 4.5 провести кодревью и проверить удовлетворение acceptance criteria (логика, связанная с авторизацией клиента).
Как результат: полноценный cli-клиент для моих нужд с возможностью авторизации через login + password + 2fa (опционально, если настроено) или через QR code (все наверное знают, как присоединяются десктопные клиенты к телеграму, точно такой же принцип) + 2fa (опционально, если настроено).
Это пример задачи, когда 12 предложений на английском языке превратились в полноценное решение определенной задачи.
Понравилось, что в процессе подготовки опусом спецификации разработки можно курсор ставить в параллель имплементировать готовые части спеки. Opus писал долго эти файлики, но выигрыш как раз случился в параллелизации.
Кому эта софтина может быть полезной: авторам каналов, кто следит за похожими каналами и ищет/копирует идеи контента или сам контент. Тем, кто читает экспертов (часто платные каналы) и хочет иметь выдержки. Всё работает локально без облаков с контролем сессии, encryption сессии на локальной машине, что даже если файлики сессии утекут, они будут бесполезны.
🔥2
Экспериментирую на мелочах в районе 20-30к строчек кода на приложение, сгенерированное ИИ. Оттачиваю автономность. Цель — попытаться добиться, чтобы ты спишь, работаешь, а машина пишет код, причём рабочий.
Но я продвинулся — я не смотрю код, а смотрю результаты e2e уже. Не советую так делать, если есть ревностное отношение к коду или приложению. При таком подходе золотое правило: код на выброс, приложение на выброс.
Если хочется сделать что-то на долгосрок — не делайте так.
Но я продвинулся — я не смотрю код, а смотрю результаты e2e уже. Не советую так делать, если есть ревностное отношение к коду или приложению. При таком подходе золотое правило: код на выброс, приложение на выброс.
Если хочется сделать что-то на долгосрок — не делайте так.
