В прошлой статье я писал про GitBor, git-клиент, через который я проверяю, что на самом деле наворотил ИИ-агент. Эта статья про самого агента. Делал я их параллельно. Один инструмент пишет код, второй показывает, что получилось.
Корпоративная модель у нас хорошая, но контекст около 100 тысяч токенов, а популярные агенты тратят его не задумываясь. Рассказываю, как переделал агента под закрытый контур: экономия контекста, несколько задач во вкладках, голосовой ввод без интернета — и почему расширение для VS Code прошло туда, куда программу с ИИ не пустили.
Читать далееЛетом я написал бота, который сам искал вакансии на hh.ru, оценивал их через LLM, писал сопроводительные и откликался. За два месяца он разобрал 1518 вакансий и отправил 339 откликов. Рассказываю, что из этого вышло: воронка, какие правки поднимали конверсию и почему расширение поиска ее уронило.
Читать далееКартина знакома почти каждому, кто работал в команде ИТ‑департамента внутри компании. Задачи прилетают в мессенджер конкретному аналитику/программисту, приоритет определяется громкостью заказчика, доработки проверяются прямо в рабочей базе. Бизнес недоволен скоростью и качеством, ИТ — бесконечными пожарами и невозможностью что‑либо планировать и распределять ресурсы.
При этом все понимают,что необходимы изменения и организация рабочих процессов.
Почему же ничего не меняется? Неожиданный ответ мне подсказала теория игр (спасибо университету за это!) и она же подсказывает, как из этой ловушки выбраться.
Читать далееУ меня есть бот-консультант на aiogram 3 и FastAPI, который оформляет заявки через Claude. Когда Telegram стал открываться у клиентов через раз, я добавил второй канал, MAX, не переписывая логику. В статье: что в MAX Bot API устроено иначе, чем в Telegram (сертификат Минцифры, вебхук, который глушит polling, лимиты, кнопки), как держать пользователей двух мессенджеров в одной таблице, где я потерял час и как всё проверялось без боевого токена.
Читать далееСегодня на первый план выходит не знание кода или алгоритмов, а навык решения конкретной поставленной задачи и нестандартное мышление, которое вместе с ИИ даёт колоссальные возможности в работе.
Старый способ найма устарел и перестал отвечать рынку. Хочу рассказать свой опыт нестандартного найма, который показал свою эффективность.
Читать далееНедавно нам на глаза попался APK-файл с интригующим и внушающим доверие названием «Антивирус ФСБ.apk».
Установив его, мы обнаружили, что при запуске пользователя встречает интерфейс известной программы для управления звонками на Android — Right Dialer от разработчика Goodwy.
Вероятнее всего, выбор злоумышленников пал именно на это приложение, так как оно запрашивает большое количество разрешений: работа с контактами, выполнение звонков, доступ к камере и так далее.
Читать далееНедавно мне попался рилс* о том, что мы возвращаемся к устной культуре. Девушка в нем пересказывает эссе Роуз Хоровиц из The Atlantic «Конец чтения уже наступил» и говорит, что мы стали реже читать длинные тексты и из‑за этого по‑другому думаем и общаемся. Эссе, кстати, уже успели обсудить и в западном, и в русскоязычном интернете.
Мне стало интересно, что там такого, и я пошла читать его сама. Думала, быстренько пробегусь, а в итоге провалилась с головой и прочитала целиком в оригинале, потом полистала тред про нее на реддите, напоследок шлифанула мнением литературного обозревателя Дмитрия Горшенина. Выходит, рилс про конец чтения подарил мне два кайфовых вечера рисерча. Уничтожить читательскую привычку не получилось, шах и мат, рилсы!
Сразу предупрежу, букв здесь много, читать минут пятнадцать. Так что если дочитаете до конца, считайте это маленьким актом сопротивления. А почему сопротивления? Ну, придется дочитать.
Читать далееСистемные аналитики каждый день разбирают задачи, где на входе много шума: мнения, готовые решения, эмоции пользователей. Нужно уметь отделять факты от всего остального и докапываться до настоящей проблемы. Со временем эта привычка выходит за пределы работы.
Мы попросили системных аналитиков Контура рассказать, как критическое мышление помогло им в жизни. Каждая поделилась своей историей и советами, с чего начать, если хочется тренировать этот навык.
Читать далееПочти в каждом проекте рано или поздно появляется запрос «чтобы без перезагрузки». И рядом с PHP вырастает второй кусок: фронтенд со сборщиком, node_modules, API между двумя частями, валидация в двух местах, а состояние то на сервере, то в браузере. Меня это достало, и я создал rig. Это PHP-фреймворк, где интерфейс откликается сразу, а приложение остаётся обычным PHP-проектом. Расскажу, как он устроен, что уже работает и где его лучше не использовать.
Читать далееПредставьте: агент подготовил ответ на обращение, вызвал сохранение черновика и получил тайм-аут. После перезапуска ему повторить запись, проверить результат или остановиться? От ответа зависят дубликаты, потерянная работа и то, чему можно верить в отчёте агента.
Этим занимается agent harness, или обвязка агента: программный слой вокруг модели, который управляет контекстом, инструментами, состоянием и выполнением задачи.
Статья для backend- и ML-разработчиков, которые встраивают агентов в приложения, и техлидов, принимающих изменения таких систем. Она пригодится, когда рабочее демо уже есть, а поведение после сбоя, границы полномочий и стоимость принятого результата ещё предстоит определить.
Практический выход из разбора — три артефакта для своей системы: карта управления, контракт одной операции записи и план сравнения двух версий обвязки. В конце есть задания с критериями проверки каждого из них.
Читать далееWarcraft II любой ценой! Это всё, что нам сказали при постановке задачи. Мы даже не знали, с чего начать. Может, эмуляция? Таким был первый вариант.
В итоге решили писать игру заново на Godot 4.4. Я сел думать над архитектурой. Где всё брать? Нашли Wargus и Stratagus. Отлично. Но кто-нибудь вообще понимает эти Lua-файлы?
Меня зовут Анатолий Соболев. В проекте я был тимлидом. Реализацию организовала ИТ-лаборатория «Проектим». Она собирает студентов в команды и даёт им реальные задачи. Вот и мы попали на площадку «Проектим», которую представляет Михаил Гуненков.
В команде было шесть человек: три разработчика, дизайнер, менеджер и тестировщик. Активная разработка заняла около двух с половиной месяцев. Вообще планировалось ровно два, но мы не могли остановиться!
Читать далееОколо 2000 тест-кейсов, дубли и проверки, которые не трогали 4–5 лет. Я собрал три AI-агента для разбора CSV и подготовки изменений. Рассказываю, где они помогли, как проверяли код и почему предусловия всё равно пришлось перечитывать вручную.
Читать далееМногие думают, что геймификация (игрофикация) — это модно и легко! Вы просто начинаете какой-нибудь конкурс, и вот уже сотрудники компании работают ночами, чтобы выиграть заветный трофей… Нет.
Большинство игрофикаций не приносят никакого результата.
В этом лонгриде я расскажу о том, как мы создавали трехмесячный проект по игрофикации для менеджеров по продажам, и какие сложности пришлось преодолеть.
Читать далееЕсли уже программируете и присматриваетесь к PHP, с чего начать? Вопрос о выборе языка часто превращается в спор о том, какой из них лучше. Мне стало интересно, что стоит за рекомендациями. Какие задачи человек решает на этом языке и почему продолжает его выбирать? Об этом я спросила backend-разработчика в крупной промышленной компании – Антона Елохина. Он поделился личным опытом, довольно прямыми оценками фреймворков и своим маршрутом знакомства с языком PHP – получился небольшой авторский обзор с полезными ссылками и примером приложения от Антона.
Читать далееВ 2022 году с российского рынка ИБП ушли APC by Schneider Electric, Eaton, ABB, Legrand, Vertiv и другие крупные вендоры. По оценке ITResearch, вместе они держали больше половины отрасли в деньгах. Весной того же года мы писали на Хабре, что Eaton отгружает только со своих складов и новых заказов не берёт. Сами компании ушли, а их ИБП так и стоят в серверных, узлах связи и офисах, и рано или поздно их придётся менять.
Читать далееУ меня китайский проектор на Android TV. Картинку он выдает отличную, но пульт к нему самый обычный: без микрофона. Каждый раз вбивать стрелочками по буквам в экранную клавиатуру название фильма меня достало где‑то на второй день. Вправо, вправо, вниз, буква «О», влево, «К»... Опечатался: стирай половину слова и набирай заново.
Приложения с каталогами вроде Lampa отличные, когда ты сам не знаешь, что глянуть, и хочешь полистать постеры под еду. Но когда ты уже точно знаешь, что хочешь посмотреть условную четвертую серию второго сезона «Пацанов» в Кубике, тыкать пультом по меню пять минут откровенно в лом.
В той же комнате стоит Яндекс Станция, а рядом пристроился тихий мини‑ПК. На нем у меня уже крутился проверенный набор: Prowlarr для поиска по трекерам и TorrServer для стриминга торрентов прямо в память.
Появилась логичная мысль: все нужные железки уже есть под рукой, почему бы не связать их вместе? Чтобы можно было просто плюхнуться на диван и сказать вслух: «Алиса, включи Рика и Морти от Сыендука», после чего кино сразу начнется на экране.
Казалось бы, делов на вечер: поймать вебхук от Алисы, найти раздачу, скормить в TorrServer и открыть плеер на проекторе. Но на практике вылезла пачка интересных нюансов, о которых и хочу рассказать.
Код проекта я выложил на GitHub, ссылка в конце статьи.
Читать далееПривет, Хабр! Меня зовут Дима, и я долгое время работал руководителем отдела аналитиков и технических писателей.
В ходе работы ко мне часто обращались за помощью и ресурсами тимлиды и руководители других подразделений. Самая сложная для меня ситуация возникала, когда этими тимлидами были мои же ведущие аналитики, которым только что передали проекты и команды по наследству.
Это происходило потому, что ведущие аналитики уже погружены в предметную область проекта, знают ключевых специалистов заказчика, общаются с разработчиками и техническими писателями. Поэтому им первым предлагали отдать проект, когда тимлид покидал компанию.
Конечно, аналитикам говорили, что проект амбициозный, настоящий вызов и точка роста для хорошего ведущего специалиста! И аналитики, полные энтузиазма, брали ответственность за проект и команду.
Но в моей практике были случаи, когда запускать проект приходили тимлиды уже с готовым бизнес-планом: “Проработаю на проекте несколько первых этапов - исследование, сбор требований и архитектурное проектирование, а потом уйду, оставив это на реализацию какому-то бедолаге”.
Как вы понимаете, на реализуемость проект никто не проверял. У тимлида была другая цель - подружиться со всеми, дать множество коммитов и обещаний, подписать бумаги, а потом, сославшись на обстоятельства, которые мало от него зависят, уйти.
Работа над таким проектом превращалась в ад для нового тимлида. На него давили со всех сторон: заказчик, руководство, подчиненные. Ведь три предыдущих этапа проекта прошли успешно! Все решения готовы и согласованы, есть сформированная сильная команда! С заказчиком отличные отношения! Почему в таких, казалось бы, идеальных условиях новый тимлид не может реализовать проект?
И через пару месяцев ведущие аналитики выгорали и делали выводы, что управление командами и проектами не для них.
Но именно ведущий аналитик обладает всеми навыками и инструментами для выявления подобных ситуаций. Кто, как не он, умеет скрупулезно собирать и систематизировать информацию, чтобы делать точные выводы и принимать правильные решения?
Главное - подойти к ситуации передачи команды и проекта как к сложному аналитическому исследованию, а не как к награде за отличную работу.
Цель аналитика - не просто согласиться, а оценить начальные условия и понять, какие ресурсы нужны, чтобы из хорошего аналитика вырасти в хорошего тимлида.
В статье разберём, что проверить перед принятием проекта и команды, какие документы запросить, как отделить легаси проблемы проекта от собственных недостатков и подготовиться к разговору с руководителем.
Читать далееПривет, Хабр!
После публикации истории развития CVM хочется поделиться практическими шагами по развитию коммуникаций с клиентами. Меня зовут Алексей, руководитель Центра компетенций по монетизации данных в команде РСХБ.Цифра, занимаюсь проектами по монетизации данных в цифровых каналах экосистемы «Своё» — Свое фермерство, Свое родное, Свое за городом, Свои финансы, Свой бизнес, Своё село, Своё жильё. В этом материале расскажу о трёх стадиях развития CVM (Customer Value Maximization) в каждой компании и о предпосылках перехода на новый этап.
Договоримся, что мы рассматриваем каналы классического CVM, работающего с действующей клиентской базой и авторизованными пользователями (а про работу с неавторизованными клиентами/проспектами на площадках и каналах привлечения стоит говорить в рамках отдельной статьи).
Читать далееМы — маленькая инди-студия anywaymachines, делаем игру NAND² — головоломку, где из одного вентиля NAND собираешь всё остальное: NOT, сумматор, регистры, АЛУ, процессор с подмножеством RISC-V, а дальше пишешь для своего процессора программы на ассемблере, вплоть до 3D-шутера в духе Wolfenstein. Игра ещё в разработке, по плану около 200 уровней в шести эпохах: реле, транзисторы, микросхемы, микропроцессоры, скорость, система.
Выросла игра из любви к Turing Complete и курсу nand2tetris: оба проекта когда-то показали нам, как интересно собирать компьютер с нуля своими руками. Нам захотелось пройти этот путь ещё ближе к настоящему железу: собрать процессор с реальной системой команд в стиле RISC-V и дойти до запущенной на нём программы, от вентиля до картинки на экране.
Читать далееПеренести ключи и пароли в централизованное хранилище — только половина задачи. Но как продолжать использовать их для работы с привычными приложениями, сайтами и задачами, не возвращая секреты обратно в файлы и скрипты?
В статье рассказываем, как мы решали эту проблему с помощью ЕХС и локального менеджера секретов Wallet. Разбираем контролируемый доступ к секретам, их локальное кэширование, проверку окружения и интеграцию с существующими инструментами. А главное — показываем, как совместить безопасность с удобством работы, не заставляя инженеров перестраивать привычные процессы.
Читать далее