Telegram Web
Примерно раз в год на меня накатывает настроение поковыряться в железках, хотя объективной потребности в этом нет, и приходится ее придумывать.

В этот раз идеально совпали дождливые выходные и приехавший ко мне Argon EON Pi NAS.

В итоге:
- стряхнул пыль с raspberry, собрал старые диски по всей квартире (получилось 17 с небольшим терабайт) и запихал все в новый корпус. EON классный, все работает, выглядит изящно, всем рекомендую, отличный подарок умеренным нердам.
- поставил openmediavault, долго плевался от того, какой это инвазивный отстой, и полчаса удалял метастазы;
- засетапил там samba и подключил TimeMachine бэкапы (да, так можно!);
- наконец-то засетапил подаренный jetson (как всегда с nvidia, это оказалась слегка нетривиальная задача - нужно замыкать пины, перепрошивать, переписывать конфиги для sdkmanager…). qwen3:8b выдает 7 токенов в секунду, как будто мне это хоть когда-то понадобится;
- связал все это в одну сеть через tailscale, раскидал по углам, умиротворенно слушаю, как шуршат старые HDD.

Делитесь в комментариях, кто держит дома всякие микроканплюктеры и главное - зачем.
🔥36😁21👍3
Не так давно широко разошелся твит про то, что агентский AI будет массово требовать скиллы, похожие на игру в starcraft.

Метафора прикольная и, конечно, греющая душу (пусть в старкрафте я нуб, но свои сотни часов в warcraft 3 и age of empires отыграл). Но если обобщать опыт вайбкодинга, то метафора неточная, и Dungeon Keeper или Tropico будут ближе. В классических RTS много микроконтроля: закайтить, отвести раненого юнита, минимизировать урон от AoE; именно микроконтроль отличал казуалов от продвинутых.

Но вся суть работы с агентами в том, что человек не должен микроменеджить. Продуктивный AI-кодинг требует выстроить такую систему, в которой агент будет эффективно работать, с минимальной вероятностью наделает херни, а если вдруг и начнет творить дичь, у этого не будет серьезных последствий. Не нужно быстрее всех нажимать tab или enter, нужно писать непротиворечивые инструкции, гранулярно декомпозировать, сетапить тесты/линтеры/валидаторы - иными словами, предпочитать непрямой контроль, потому что он лучше скейлится.
👍6115💯6
Формально у меня сегодня последний день в Neon, потому что я оказался среди поглощенных кирпичным заводом, на котором - пока столь же формально - начинаю работать завтра.

Поэтому символично, что сегодня успели зарелизить app.build - продукт, над которым мы небольшой командой работали с февраля. Это just another end2end генератор CRUD веб-приложений от промпта до деплоя.

Он полностью опенсорсный (можно покопаться в истории и увидеть все мои коммиты в стиле “maybe fix a lot of things”), работает как CLI и обычно генерит скорее работающие приложения. Можно сгенерить на наших серверах, можно развернуть у себя (все равно понадобится gemini и claude API, но можете прислать PR с поддержкой любимого LLM-провайдера). Шероховатостей еще много, но уже скорее работает, чем нет, так что пробуйте и присылайте баг-репорты!
🔥124🍾2213👍7👏1
Когда-то давно я нахваливал Streamlit, в свое время наделал на нем пару десятков приложений, и пересадил на него кучу коллег. Но настало время двигаться дальше, и потому сегодня хочу порекомендовать читателям NiceGUI.

Вкатиться в NiceGUI немного сложнее, чем в Streamlit: невозможно просто прокатиться мордой по клавиатуре и получить работающее приложение. Но если повозиться чуть больше, то результат получается сильно более зрелым:
- настоящие отдельные фронтенд (Vue/Quasar + Tailwind) и бэкенд (Fastapi), в которые можно провалиться для доработки (а можно и не вникать и оставаться в высокоуровневом python коде);
- вебсокеты вместо перезапуска всего приложения на каждый чих;
- нормальная поддержка нескольких параллельных пользователей благодаря нескольким гранулярным видам хранения стейта вместо одного st.session_state;
- к этому можно писать тесты!

Вайбкодить на NiceGUI сложнее, чем на стримлите, но мы над этим работаем 👀

Этот пост не имеет никакого отношения к тому, что Streamlit уже давно часть Snowflake, а я сейчас работаю в Databricks.
😁74🔥22👍74🥴2🤣2
У меня есть кореша и немного даже собутыльники, которые когда-то стояли у истоков Vochi, успешно продали их Пинтересту, и вот сейчас они запустили новую компанию про genAI и музыку. По этому поводу они ищут толкового deep learning инженера, который умеет не только склеивать апишки, но еще помнит, как пользоваться пайторчем, умеет читать статьи и привносить какую-то новизну поверх - иными словами, повидал некоторое дерьмо может запилить что-то нетривиальное.

Я не стану перечислять все эти штуки про уникальные задачи, клевый офис в Варшаве и большой GPU кластер; скажу только, что ребята толковые и, думаю, что по деньгам с хорошим человеком договориться смогут.
🔥48👍138😁4👏2💩1
Сегодня я узнал, что если придти на митап Snowflake❄️ в футболке Databricks🧱, то примерно через час к тебе вежливо подойдут специально обученные люди и попросят уйти
🤣309💅26😁20🔥114😢4🦄3🤩1
Написал лонгрид о том, как мы делали app.build, какие дизайн-решения принимали и немного о будущих планах.

Рекомендую тем, кто делает агентские системы, и особенно - близкие к кодогенерации.
👍59🔥188
По мотивам этого поста, запилил бота @ScratchAuthorEgoBot, который умеет почесывать эго авторам телеграм-каналов.

На вход - название канала, на выходе - один из трех видов LLM-based анализа автора (личный/профессиональный/насмешка) по его поста.

Под капотом Rust/Gemini/Neon, и даже прикрутил микроплатежи ⭐️ (первый запрос бесплатно). Больше всего провозился с экранированием и форматированием, потому что telegram API и его markdown довольно особенные.

Через недельку выложу исходники и расскажу, сколько звезд намайнил!

UPD: Уткнулся в лимиты телеграма, все аккаунты, используемые для парсинга, были забанены :(

UPD2: Медленно оживаем, но возможны долгое ожидание и потерянные запросы.

UPD3: В целом все снова работает
6🥰41👍19🔥125
Я обещал написать про бота, и добрался только сейчас, потому что этот пет проект вырвался из клетки и чуть меня не сожрал. Было интересно, неожиданный end-to-end опыт от идеи до багфиксов на проде за жалкие три дня.

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

Во-первых, парсить телеграм-каналы через bot API нельзя, и потому я парсил через телеграм-клиент, используя собственный основной аккаунт. Когда набежала толпа пользователей, я быстро попал в софт бан, и начал искать обходные пути. Рынок серых аккаунтов оказался недружелюбным, да и банились они примерно за 10 минут, даже если купить премиум и не наглеть с частотой запросов. Даже удивительно: спам-боты в комментариях прекрасно живут, а довольно безобидное чтение каналов оказалось жестко ограничено. В итоге помог рабоче-крестьянский подход - скрапить веб-версию.

Во-вторых, в попытках выстроить систему рейт лимитеров, я накостылял слишком много велосипедов, и их впоследствии пришлось расчищать. Например, из-за кривого набора лимитеров запросы в LLM уходили батчами, и частично отваливались из-за лимита уже на стороне Gemini. Я дебагал практически "на продакшене" с живыми пользователями, которые периодически справедливо жаловались, что ничего не работает. Как следствие, много ранних пользователей так и остались без ответа. К счастью, у меня остались логи в базе данных, и потому я смогу всем написать и предложить попробовать снова сейчас, когда проблемы со стабильностью решены.

В-третьих, к слове о базе данных, я впервые всерьез попробовал Neon (ссылка накинет 5 баксов на аккаунт) для своего проекта и остался очень доволен - все просто работало безо всякой возни, причем на обычном бесплатном аккаунте, это сэкономило мне кучу времени и сил. Всем рекомендую, коллегам респект!

В-четвертых, я впервые что-то сделал end-to-end на расте, и моя жизнь не будет прежней. Писать на нем руками, конечно, сложнее и дольше (skill issue, признаю), чем на каком-нибудь питоне, но если 90+% кода написано агентом, то эта проблема в целом уходит. Зато качество изменилось всерьез: если что-то компилировалось без ворнингов, то оно обычно просто работало. В питоне пришлось бы потратить на порядок больше усилий на тестирование и бесконечные фиксы. Короче, думаю, что всерьез перейду на Rust для одноразовых проектов на выброс. Отдельный кайф наблюдать, как что-то помещается в <40 мегабайт памяти.

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

Статистика: 7500+ юзеров, 200+ плательщиков. Заработано в звездах на ~10% больше, чем потрачено на Gemini API (то есть если бы это был настоящий бизнес, экономика бы едва сошлась; не будь лимитов и платных фичей - я бы наверняка офигел от затрат). Какой-то моментум есть, можно попробовать пилить новые фичи и вообще развивать эту штуку. Для самых любопытных выложил исходники - с нуля я бы сейчас делал слегка иначе (например, надо было использовать каналы, с самого начала делать персистентность для in flight тасков), ну да как есть.
❤‍🔥84🔥4225👍11🍓2
Продолжаю подрабатывать копирайтером: Six Principles for Production AI Agents.

Этот пост слегка пересекается с предыдущим, но я старался сделать его максимально универсальным, независимым от конкретного домена и вообще сделать так, чтобы эти принципы оставались валидными еще хотя бы год.
👍3713🔥5
Новость от знакомых фаундеров, которые переобулись в инвесторов: новый фонд Tetrad.vc 📔. Основатели не так давно сами набивали стартаперские синяки — от первых билдов до выхода на глобальные рынки (ZERO10, Wayvee, Sensemitter). Теперь запускают свой фонд и инвестируют на ранних стадиях (pre-seed / seed). Фокус на AI search, agentic AI, гейминг и consumer tech, но в целом открыты к другим нишам.

Молодой фонд с небольшой командой, поэтому достучаться до них проще, чем до крупных именитых VC. Обещают помогать с продуктом, стратегией и прочим, а не только насыпать банальный кэш.

В общем, если вы пилите стартап ранней стадии (а я точно знаю, что среди подписчиков таких немало), присылайте питч или просто познакомьтесь: [email protected]
136👍7
Так как пена релиза GPT 5 улеглась, а потом начались и обратные разговоры, что AI hit the wall, можно поиграть в визионера и поговорить о светлом будущем. Думаю, что партия умеренного оптимизма побеждает в своих прогнозах.

Для начала разметим спектр отношений к AI:
- с одной стороны неолуддиты и скептики, утверждающие про пузырь, стохастических попугаев, умный автокомплит, не умеющие считать r в strawberry и все такое;
- с другой стороны адепты AGI к 2027 и прочие свидетели сверхинтеллекта на видеокартах, туда же паникеры из секты, призывающей бомбить датацентры, пока этот мифический AGI не пойдет максимизировать скрепки и пожирать всех человеков. 

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

1. То, как агенты сейчас применяются в software, уже сильно повысило продуктивность. Не только в кодогенерации, но и в смежном: тут и UX-прототипы, и анализ логов, и дебаггинг. Там еще много сырого, и проникновение невысоко за пределами пузыря, но по вайбам - это повышение продуктивности на десятки процентов.

2. Аналогично агенты должны будут проникнуть и во все остальные white collar индустрии. То, что я видел одним глазом за пределами чисто софтверного мира, скорее подтверждает. Для этого надо будет написать очень много софта, устроить миллионы демок, сотни тыщ пилотных проектов и десятки тысяч интеграций, неизбежны миллиарды откатов и тыщи увольнений.

3. Хотя опенсорс модели все еще отстают от sota решений, они уже в целом юзабельные. Anecdotal: на внутреннем бенчмарке я вполне вижу 80% качества за 20% денег опенроутеру (вместо 100% антропику), старик Парето бы порадовался. Даже если вдруг у топ вендоров случится картельный сговор, госрегуляции и железный занавес, на существующих open weights технологиях можно делать полезное.

4. Если волшебное улучшение foundation моделей закончится, нам, простым работягам, будет еще лучше - надо делать умный domain-specific scaffolding и закидывать тест-тайм компьютом, желательно не совсем брутфорсом.

Иными словами: 🐂 bullish на тему вертикальных стартапов в сложных индустриях, интеграторов и инфраструктуры, 🐻 bearish на тему обещаний AGI за $7T, неолуддитов и API врапперов по подписке.
7👍8615💯12😁4👏2🤔2
What makes Claude Code so damn good (and how to recreate that magic in your agent)

Рекомендую почитать любителям везде воткнуть мультиагентный граф, сверху накинуть векторный RAG и удивляться, почему все не очень работает.
❤‍🔥39👍13👌4🔥21💩1
Когда я осваивал ML, много зависал на Kaggle. Было увлекательно, хотя иногда и унизительно - вроде бы думаешь, что понимаешь что-то, а потом твой скор застревает в нижней половине таблицы, и ты понимаешь, где твое место. В итоге чему-то научился, мастера намайнил, перед пацанами стало не стыдно, и даже в поиске работы пару раз пригодилось.

Но не кагглом единым. Сегодня у нас реклама соревнования от HFT-фонда Wunder Fund. Они захостили свое соревнование, нужно предсказать следующее состояние рынка по набору анонимизированных фичей. В отличие от реальной жизни, долго разбираться с природой данных не получится, придется больше фокусироваться на моделях, что многие любят. Данных маловато, но для кого-то и это плюс - можно поучаствовать без личного кластера.

Как в меру ответственный блогер, я и сам сделал сабмит, попал в топ-50 вообще безо всякого ML, так что бейзлайн как будто не очень сложный. Платформа сделана качественно (в отличие от многих наколеночных соревнований за пределами Kaggle), документация понятная; в общем, если вы еще не настолько дед, чтобы не участвовать в соревнованиях, то посмотрите!

$13600 призового фонда, 15 сентября - 1 декабря, регистрация открыта.
1👍30🔥12💩65🌭2
Cześć, warszawiacy! 🧜‍♀️🇵🇱

Объявление для польских подписчиков: 15 октября буду выступать на AI agents митапе в Варшаве (в основном пересказывать свои старые посты). Вход стоит каких-то денег, но организаторы обещали мне несколько билетов.

Думаю, что среди подписчиков есть желающие, но не знаю, сколько. Принимать решения мне тоже лень. Поэтому план для желающих такой:
- нужно заполнить нехитрую форму до вечера понедельника;
- если желающих будет до трех человек, организаторы просто вышлют вам билеты;
- если желающих будет больше, то после закрытия формы я попрошу некую LLM выбрать тех, кто больше всего достоин халявных билетов, основываясь на ответах в поле "Why do you want to attend?"

Лотерея, которую мы вы заслужили 🎰
10👍39😁13❤‍🔥5🙈32💊2
Когда-то я думал, что ML метрика - это довольно простая функция от двух параметров: обученной модели и тестового датасета. Но это абстракция, конечно, не выдерживает столкновения с реальным миром, а параметров значительно больше.

С локальными факторами справиться как будто несложно. О роли random seed довольно быстро узнают даже новички. Зафиксировать библиотеки тоже учат на software engineering 101.

То, что совпадение версии библиотеки - не признак эквивалентности, узнают не все (я когда-то два полных дня искал причину расхождения в ML тестах, и кроличья нора привела меня к нюансам линковки libjpeg в билдах pillow пятилетней давности).

Влияет и железо, причем не только на уровне "на какой платформе и с какой версией драйверов" - вот нетривиальный пример:
The most compelling proof came when we took a failed L20 experiment and resumed it from a checkpoint on H20 GPUs. The training immediately stabilized and recovered, proving the hardware's first-order impact on the problem.


Когда бенчмарки стали считаться поверх LLM API, отмазка "на моей машине воспроизводится" перестала работать. К локальным факторам добавился целый пласт скрытых факторов на стороне провайдера. Сначала по аналогии с random seed = 42 все учились выставлять температуру в 0, потом широко известный в узких кругах стартап всем рассказал, что размер батча важен.

И вот недавно я наступил на новые грабли: внутренний агентский бенчмарк по генерации приложений начал демонстрировать явную сезонность. Видел такое раньше, когда человек додумался использовать datetime.now() где-то в feature engineering. Ручная работа с фичами - история почти античных времен, явно не про prompt2app кодогенерацию.

Ничего хитрого: у агента было два ограничения, на количество шагов и на общее время генерации. И вот в час пик по американскому времени провайдеру становилось хуже, скорость ответа падала => случались таймауты.
1037👍22😁19🔥8
Если вы отбитый вайбкодер, стремительно выжирающий лимиты подписки, или просто любите китайские подделки, посмотрите на z.ai.

Их флагманская модель GLM 4.6 сейчас даже не лучшая среди open weights моделей, но у нее есть два преимущества:
- их самый дорогой тариф сейчас стоит 360 баксов в год (а самый дешевый - в десять раз меньше);
- они не постеснялись из коробки обеспечить совместимость c Claude Code до такой степени, что на вопрос "what model is under your hood?", он отвечает "Sonnet 4.5".

Конечно, никакие серьезно приватные данные я бы этой штукой не трогал, но для всякой фигни работает. Например, я недавно хотел натравить Клода привести в порядок файлопомойку - обновить систему, разобраться, почему иногда шара отваливается, почистить остатки плохо удалившихся экспериментально установленных пакетов и так далее. Но теперь вместо Клода этим занимается его младший брат Злод.
3😁57👍143👎1🤡1
Чистил канпюктер от старья и внезапно обнаружил, что за последний год перестал использовать в разработке четыре столпа, которые казались незыблемыми последние лет десять: iTerm, Pycharm, Pyenv, Docker Desktop.

iTerm и Pycharm продолжали обрастать фичами, которые мне ни к чему. Фичи бесплатными не бывают: у iterm в 2024 всплыла неприятная уязвимость, Pycharm продолжал слегка тормозить даже на свежем железе (возможно, я просто не знаю все флаги, как дать ему еще больше памяти). Так я перешел на более легкие альтернативы - Wezterm и Zed.

Pyenv когда-то был отличным способом управлять зоопарком питонов и вместе с poetry делал управление зависимостями терпимым. Но uv разрубил этот узел, оно просто работает. Лучшее, что случилось с Python экосистемой, не считая maturin.

Про избавление от Docker Desktop мне пришлось подумать на работе, потому что в Большой Корпорации для него нужна отдельная лицензия, которая положена не всем. Мне таки положена, но дать продакту демку стало сложнее. Так я познакомился с colima, перешел на нее (все еще с docker runtime / docker cli, которые не требуют коммерческой лицензии) на рабочей тачке, а заодно и на своей, совершенно этого не заметив. Впрочем, чистым докером я тоже пользуюсь все меньше, потому что меня покусал Dagger.
6👍84🙏64🤔4🔥3❤‍🔥2💯2👎1👌1
В моем CV много лет написано "Love building dev tools", и типичный нанимающий менеджер смотрел на это в лучшем случае без интереса. Dev tools и devex были чем-то относительно маргинальным.

И вот довольно резко мир поменялся, и dev tools оказались на слуху. За новыми devtools релизами в YC уже невозможно уследить. Но отложим венчурный мир и астрономически суммы в пресс-релизах Cursor и последователей, есть причины и более приземленные.

Во-первых, собственно распространение инструментов AI-powered IDE/agents привело к тому, что технические менеджеры, купив всем подписку на Cursor, вынужденно задумались о том, где боттлнек в software development life cycle. Он и до расцвета кодинг агентов был едва ли в имплементации, но сейчас это стало еще заметнее. Доля кодирования на фоне митингов, согласований, возни с инфрой стала совершенно незначительной. Избавиться от митингов техническими способами невозможно, а вот ускорить путь от коммита до релиза обычно можно.

Во-вторых, devex на самом деле отчасти превращается в agentic experience. Разработчик библиотеки сейчас должен удовлетворить пользователя исключительно фичами, а вот API надо оптимизировать скорее для агентов. Счастье программиста от элегантного API измерять сложно, а вот сходимость агента - довольно легко. Я и сам прошлую неделю строил цепочку, чтобы агент рекомендовал другому агенту, как передизайнить CLI - буквально за несколько итераций сходимость улучшилась на треть.

Я искренне рад этому. Раньше аккуратный фундамент проекта был причудой, на которую никогда не хватало времени, и так сойдет, пострадаем, притерпимся. Сейчас ни один эффективный менеджер не сможет возразить, что этот ваш рефакторинг - бесполезная затея, не показавшись AI-луддитом.
544👍19
2025/12/03 10:24:19
Back to Top
HTML Embed Code: