Градиент обреченный
8.44K subscribers
923 photos
21 videos
8 files
496 links
Download Telegram
Как верно замечают уважаемые подписчики, на страничке Settings / Usage можно нажать на кнопку, чтобы дополнительно выдали $50 на тестирование нового Claude. Это мы одобряем.
20👍6❤‍🔥3🐳2
#про_работу

🔺 Моя первая работа

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

Шутки шутками, а вспомнить есть что. Кому-то, возможно, будет полезно, а кому-то просто весело почитать. Постараюсь не душнить.

Итак, шёл далекий 2011 год, динозавры вымерли, Союз распался, а я должен был окончить МГТУ им. Баумана по специальности инженер-математик (как мы шутили, "инженер минус математик"). Тогда это по разным причинам отложилось (вуалирую отчисление как могу), а бывшие однокурсники шли кто на кафедру, кто в финансы анализировать что-то в банке, кто в разработку.

Мой лучший друг Серёга пошел писать код на С++, чем занимается и по сей день, а я купил толстую и красивую книжку Троелсена по .NET разработке и ещё одну про T-SQL, чтобы понять как работать с базами данных. .NET тогда ещё не был кросс-платформенным, но C# как язык мне очень понравился своей простотой, штуки типа XAML для написания UI тоже были проще возни с Qt (UI для плюсов).

По ходу чтения книжек ближе к осени я начал искать работу. Так как опыта у меня было ровно 0, то промежуточные варианты с подработкой я тоже рассматривал. Даже на полном серьёзе думал пойти в колл-центр за гроши, но все же решил работать за гроши разработчиком. Про колл-центр я не шучу, долго бы там я не проработал, но время бы потерял. Верьте в себя, цените свое время.

Поиск работы без опыта — это классика, стартовые вакансии, которые я находил, предлагали 15-30 тыс. рублей. Штош. Съездил, помню, в Интерфакс на Нагатинскую. В вакансии говорилось, про поддержку сайтов на ASP.NET. Разговор со строгим дядькой как-то не задался, я переволновался, внятно ни на что не ответил и собеседование не прошёл.

Откликнулся на следующую вакансию — в Авиком Бизнес Технологии. Тут все сложилось удачней.

Код, написанный в учебных целях, ребятам понравился. Не помню, просили меня его показывать или нет, но по факту это было подобие пет-проекта. Состоял он из приложения, в котором можно было рисовать замкнутые фигуры, двигать их, сливать и вычитать.

Подготовился я тоже неплохо и на классические для собеседований вопросы про принципы ООП и сборщик мусора в .NET успешно отвечал.

После этого я узнал волшебное слово "оффер". Мысль, что за умение подумать и что-то написать за компьютером мне дадут божественные 22 тысячи рублей будоражила мозг. После испытательного срока было уже 30 тысяч, не хухры-мухры. Даже то, что при обналичивании самой первой зарплаты банкомат ПСБ сожрал карточку и отсрочил моё финансовое благополучие на пару дней, меня не расстроило.

В общем, предложение было принято и я вышел в офис на Павелецкой.

1/2
657🔥29👍19🆒2
#про_работу

Офис на Павелецкой состоял из нескольких кабинетов в двухэтажном здании на Кожевническом проезде. Работало там около 20 человек, из них 3 разработчика и 2 тестировщика. Во главе компании стоял Евгений Николаевич, её создатель и, как следствие, непререкаемый авторитет.

Первое, что поразило меня в нашем кабинете, это пробковая доска с приколотыми к ней пёстрыми квадратными бумажками.

— Вот это наш бэклог, — сказал мне серьезный Марат, указывая на доску, — Мы берём из него бумажки и двигаем вправо.
— Давай как-нибудь назовём это, например, ммм... «скрам» — сказал я.
— Давай — ответил Марат. Так и пошло.

Делали мы ProjectMate, CRM систему для малого бизнеса и юристов. В ней можно было учитывать время, вести документооборот и т.д. Своим продуктом было принято пользоваться (такая практика в IT называется dogfooding) и мы отмечали в нём затраченное на работу время по часам.

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

А задачи были интересные. Так как ничего подобного я раньше не делал, то с удовольствием разбирался, как писать хранимки для MSSQL и как их оптимизировать. БД — это вообще такая вещь в себе, в которой можно совершенствоваться до бесконечности, а иметь навыки работы с любым вариантом SQL для разработчика, имхо, очень полезно, если не критично. Да и на собеседованиях потом часто спрашивали про то, как лучше джойнить таблички, про оконные функции и устройство индексов.

Много возился с десктопным UI, начал писать тесты. До разработки через тестирование (TDD) мы тогда не дошли, но знаменитая книжка Кента Бека и её принципы набирали в то время популярность.

Над рабочими процессами мы экспериментировали, пробовали менять скрам на новомодный тогда канбан. Однако команда была достаточно ответственная и небольшая, так что почувствовать какие-то значительные эффекты от процессов было проблематично.

Проработал в Авикоме я чуть меньше года. С ребятами мы подружились, особенно с Маратом и Пашей, так и общаемся, хоть они сейчас и подразъехались.

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

По старой схеме я купил пару книжек, среди них была лучшая книга по .NET "CLR via C#" Джеффри Рихтера, и начал изучать. В это же время я познакомился с другом Марата Пашей, который работал через дорогу (с Пашей у нас потом было очень много историй, не все из которых можно рассказывать в приличном обществе). Он-то и предложил мне пособеседоваться к ним в компанию, когда мы все вечером шли к метро после работы.

Продолжение следует.

2/2
337👍26🔥11💯3
Поработал с новой фичей agent teams в Claude Code. С ней агенты работают над общей задачей, делятся между собой прогрессом и произведенными артефактами напрямую, сверху их погоняет агент-лид.

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

Это бета фича, активируется в настройках через файлик settings.json. Надо прописать там

  "env": {
"CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"
}


Так вот, провел так несколько сессий, переношу Lingtrain на новые рельсы (мой пет-проект по выравниванию текстов, довольно большой, писался года 4), с аутентификацией, новым фреймворком и доработками, и вот что могу сказать.

Работает быстро и выжирает 5-ти часовой лимит обычной подписки как нечего делать, буквально минут за 15-20 (все на Opus 4.6). Большую часть кредитов, которые давали на тестирование тоже съел, но деньги ест сильно медленнее.

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

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

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

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

В общем, работаем дальше. При активном использовании понадобится подписка помощнее.
👍2833🔥3🆒1
Байдупедия

Появилась вторая крупная ИИ энциклопедия, в пару к Грокипедии. Сделана китайским гуглом — компанией Baidu, поэтому практически все статьи там сейчас поднебесноцентричные.

Москва, США и Украина — это все ерунда и таких статей не найти. Зато на тему Китая как будто всё есть, от жизнеописания тиктокеров до группы крови Джеки Чана.

Статьи на пяти языках, и перевод и изначальные китайские статьи составлены моделями, русский выглядит вполне читабельно. Много встроенного местного видео по темам (хостится в Китае, грузится с трудом).

https://baike.baidu.com/ru/index
27❤‍🔥8👍4🗿3😁2😭2👎1🔥1
Как устроен Codex

Любопытный пост от Gergely Orosz про то, как делают Codex в OpenAI, какие практики используют разработчики, про скиллы, ресерч и т.д.

Полный пост за пейволлом, но Гергей (насколько я могу транслитерировать венгерский) разрешил опубликовать весь пост в виде перевода на русский. Если хотите перевод, ставьте лайк.

https://substack.com/home/post/p-188285137
👍14216🔥131
🔺 Как устроен Codex

Перевел полный пост Gergely Orosz с деталями того, как в OpenAI делают и используют Codex. Есть интересные инсайты и рассуждения от команды:

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

🟢 Почему выбрали Rust, а не TypeScript. Как его используют смежные команды.

🟢 У коллег реакция разная: «Одни говорят: "Это лучшее, что могло случиться. ... Впереди большое светлое будущее!". Другие: "Чувствую, что теряю навыки и начинаю терять связь с кодовой базой. Если не пишу код, мне сложнее понимать, что происходит".

🟢 Сегодня 50–90% кода (в разных командах по разному) в OpenAI генерируется Codex.

🟢 Полный цикл обучения модели, от старта до деплоя, занимает пару месяцев. Рассказывают про агентный цикл.

🟢 Некоторые инженеры используют «правило 30/70»: 30% кода пишут руками, а 70% генерят. 30% — осознанный выбор, потому что это заставляет думать, сохранять связь с кодовой базой и тренировать инженерное чутьё.

🟢 «Инженерный вкус» становится ключевым навыком. Все интервьюеры независимо называют "вкус" самым важным качеством для инженера-программиста в новой реальности. Объясняют почему и что имеется в виду.

🟢 У опытных инженеров остаются устойчивые преимущества. Архитектура, понимание человеческих потребностей, предвидение изменений. Всё вышеперечисленное — то, чего модель не может, потому что ей недоступен контекст человека, живущего в реальном мире.

🟢 Причины, по которым человек всё ещё планирует лучше Codex.

🟢 "Проблеск будущего ПО, создаваемого ИИ: валидация может стать важнее самого сгенерированного кода."

🟢 Исходники Codex'а

👉 https://habr.com/ru/companies/ods/articles/1001012/

@doomgrad
Please open Telegram to view this post
VIEW IN TELEGRAM
7🔥35👍179😭1
🔺 Taalas HC1

Друзья, это какая-то жуть. Прочитал новость и попробовал новую железку, на которую не просто записали в память какую-то LLM, а физически реализовали в кремнии (!)

Так как в этом случае обходится бутылочное горлышко всей типичной архитектуры современной электроники (где память и вычисления разнесены и память работает гораздо медленней), то эта штука генерирует 17000 токенов в секунду 😱

Захардкодили квантизованную LLama 3.1 8B. Из-за хардкода же, само собой, на железке только эта модель и есть. Пишут, что можно будет подключать LoRA адаптеры, чтобы файнтюнить под свои задачи.

Весной планируют выпустить вторую модель, в которую врежут средних размеров reasoning LLM. А зимой начнут разработку новой архитектуры HC2 под frontier модели.

Стоить такая плата будет в 20 раз дешевле чем SoTA GPU и потреблять в 10 раз меньше энергии.

👉 Можно потыкать здесь — https://chatjimmy.ai/
🔥76🤯2461👍11
🔺 hf-mem

Утилита, показывающая сколько нужно памяти для запуска модели с HF, кол-во её параметров и заодно их разбивку. Качает только метадату, по ней и считает.

uvx hf-mem --model-id Qwen/Qwen-Image


(uvx тут запускает hf-mem без установки в систему)

Есть флаг --experimental (работает для ForCausalLM и ForConditionalGeneration классов), с ним считает размер KV cache'а, необходимого для инференса с заданными max-length и batch-size.

👉 https://github.com/alvarobartt/hf-mem
🔥50👍1753🗿1
Коротко как провел выходные
1😁85🤣208👀4👎3💯21👍1🔥1
🔺 get-shit-done

Изучаю подходы к разработке через спеки, когда происходит детальное описание новой фичи, её взаимодействия с другими компонентами, контракты и т.д. (по сути это роль аналитика, составляющего ТЗ). По этим спецификациям дальше идёт поэтапная разработка. Подход для традиционной разработки стандартный, плюсы тут налицо — зафиксировали требования, делаем.

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

Как устроено?

🟢 По сути, это набор скиллов (структурированные инструкции и шаблоны). Есть для Claude Code, Codex, Gemini, OpenCode. В случае с CC, в папке .claude/get-shit-done появятся все инструкции и описания пайплайнов, которые будут выполняться.

Ставим в папку с проектом (не забываем делать ветку), запускаем агент, видим, что появилась куча новых команд, типа /gsd:new-project, /gsd:plan-phase, /gsd:execute-phase.

🟢 Если пишем не с нуля, то запускаем /gsd:map-codebase. Агенты в параллель изучаю код и откладывают артефакты в папку .planning. Доки получаются весьма полезные, описывается архитектура и структура проекта, стек, стиль кодирования и т.д. Читаем документы и правим. Особенно полезен CONCERNS.md, потенциальные проблемы и "запахи", которые нашлись, пишутся туда.

Если даже не использовать GSD по прямому назначению, то как минимум такое описание сделать полезно, а ссылки на него добавить в AGENTS.md.

После этого можно запускать /gsd:new-project. Описываем подробно, что хотим сделать, отвечаем на вопросы, в итоге формулируется разбитый на 3-4 фазы план.

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

С фазами работаем командами /gsd:plan-phase 1 и /gsd:execute-phase 1, прошли все фазы, проверили, делаем /gsd:complete-milestone. Документация обновляется, детали идут в архив, создается тег релиза. Повторяем со следующей фичей.

Concerns

🟢 Не надо использовать для простых задач, типа каких-то одношаговых интеграций, рефакторинга табличек или кода в пределах нескольких файлов и т.д. Оно разобьет вам сердце всё на 4 фазы и каждую фазу будет 5 минут планировать и 15 минут делать.

🟢 Штука очень прожорливая, по 20 раз все перепроверяет и пишет кучу доков. Обычной подписки точно не хватит, если использовать как подход к разработке. Если одну-две фичи сделать за пару дней, то норм.

Попробую ещё присмотреться насколько это эффективней чем без всех этих обвесов с фазами делать, но подход мне нравится. Думаю, что будет набирать популярность дальше.

👉 https://github.com/gsd-build/get-shit-done
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22🔥1211🤔2🗿1
Уволился!
😱170🎉8246🔥36👏1310💔7👀3😁1
Друзья, спасибо за поддержку и предложения! (всех запомнил)

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

В Сбере работалось очень комфортно. У компании есть огромное количество ресурсов, а руководство видит в ИИ потенциал, поэтому их будет только больше. Многому в Сбере научился и познакомился там с кучей классных людей. Свои плюсы и минусы, как и везде, есть, расскажу подробно в рамках постов #про_работу. Сразу скажу, что если у вас будет возможность там поработать, то смело идите. Рекомендую Департамент развития ИИ (Сергей Марков) и продовые команды Гигачата (Фёдор Минькин).

Уйти из Сбера трудно, так как найти подобного масштаба проекты непросто, а по зарплате это, пожалуй, один из самых лучших вариантов в российском IT.

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

В общем всё и все будут в плюсе, кроме, разве что, кошелька. Планы — вещь зыбкая, особенно в наше время, но пока так, а по ходу разберемся. Пожелайте мне удачи.
10202👍70👏34🎉15🔥87😁5😱2👎1
В Claude Code вернули Ultrathink режим. Можно тратить токены еще быстрее.

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

Вспоминается Midjourney и "ultrahigh, 4k, trending on artstation".
2👍23😁11🔥963🤔1
🔺 Визуализации

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

Рисуется всё в векторном формате, верстается в виде виджета с переключателями. То есть схема получается динамическая, можно в неё потыкать при желании.

В ChatGPT на днях тоже выкатили визуализацию научных концепций, там это пока что ограничено 70-ю предподготовленными ответами на темы типа закона Кулона, потенциальной и кинетической энергии и т.д.

Что интересно, у меня их примеры заработали только в версии 5.3 Instant (без размышлений), иначе просто объясняет текстом без всяких диаграмм, либо пытается рисовать в ASCII.

А вот таблица элементов программирования в клоде получилась забавная, закинул сюда.
👍22😁10🔥943
Друзья, коллеги из Сбера пишут, что в департаменте RnD, где я работал, появилась возможность для найма исследовательских команд.

Развивают перспективные направления, такие как Computer Use и работу в средах, редактирование речи и музыки, мультимодальный reasoning и т.д. Ресурсов у ребят достаточно, так что свой исследовательский зуд, если таковой имеется, можно будет удовлетворить в полной мере.

Писать можете Саше @hukenovs напрямую
24👍156👀3🎉2😭2🔥1
🤟 Claude Code + telegram

В Claude Code добавили channels. Теперь можно общаться с открытым терминалом через чат пока рубишься в контру.

Настраиваем

🟢 Нужна версия v2.1.80+, делаем claude —update

🟢 Если не подключен официальный репозиторий со скиллами, то подключаем — /plugin marketplace add anthropics/claude-plugins-official

🟢 Устанавливаем плагин /plugin install telegram@claude-plugins-official

🟢 В @BotFather создаем себе бота, получаем токен, прикапываем в .env — /telegram:configure <token>

🟢 Перезапускаем с флагом —channels (если не хотим, чтобы клод слушал канал, то в следующий раз этот флаг не ставим) — claude --channels plugin:telegram@claude-plugins-official

🟢 Видим, что не работает ( telegram MCP failed, проверяем в '/plugin' → Installed), ставим bun — npm install -g bun. Перезапускаем с --channels.

🟢 Пишем в бота что-нибудь, получаем pairing code, пишем в терминал /telegram:access pair <code>. Наш телеграм аккаунт добавляется в allowlist.

🟢 Лочим, чтобы никого кроме нас не слушал — /telegram:access policy allowlist

Ограничения

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

В режиме плана, соответственно, тоже. В консоли опции для выбора отрисовывает, в телеграм слать не умеет.

Всё остальное — распараллеливание, написание доков, agent teams и т.д. работает.

Каналы — это общая функциональность, их можно делать самому под свои приложения, так что, если дотянуть в свой телеграм плагин интерактив с кнопочками, то можно будет им полностью управлять через телегу и планировать какие-то объемные фичи будучи не у компа. Кто сделает, тот молодец.

Всё это пока в research preview, так что тестируем.
Please open Telegram to view this post
VIEW IN TELEGRAM
18🔥1311👍3😁2
🔺 Как дела, Сергей

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

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

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

Чтобы проект себя финансово окупал, надо дать людям возможность его оплачивать и заодно поддерживать развитие. Думал через Бусти сделать, но там как-будто комиссии огромные и надо делать дополнительные интеграции, чтобы на сайте автоматически понимать, какой пользователь задонатил.

Решил своё бусти сделать через ЮКассу. Чтобы подключить ЮКассу, надо иметь юр. статус, готовый сайт с описанным процессом оплаты, условия пользования продуктом, соглашение о сборе персональных данных, механизм отписки и т.д. Недельку только доки вкуривал.

Аутентификацию, авторизацию, бд и т.д. опустим)

Само приложение перенести на новые рельсы тоже оказалось очень объемно, все-таки я его лет пять писал и там много чего могло сломаться при переписывании (и сломалось). Зато проделал кучу оптимизаций алгоритмов выравнивания. Агенты тут классно помогли, разметил ими данные, сделал мини-бенч, поставил эксперименты клод-кодом и кодексом, ими же и внедрил.

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

А ещё новые пользователи, которые не в контексте, должны как-то понять о чем вообще проект и как пользоваться, нужны помогаторы и документация. А ещё лендинг красивый. А ещё...

В общем скоро покажу, что получается. Созвонов по проекту нет, есть все шансы доделать.
172🔥42👍21😁17😱32