Pull to refresh
-6
Алексей@java3000

Администратор windows умеющий в программирование

Send message

Как за один вечер я написал сервис инвентаризации оргтехники для филиальной сети из 16 локаций

Level of difficultyMedium
Reading time11 min
Reach and readers8K

Знакомая работает в IT-департаменте организации с 16 филиалами и ~5000 единиц оргтехники на балансе. Попросила: “Сделай сервис, чтобы загрузить фотку шильдика, и он сказал, у кого эта железка стоит”. Звучит просто. На практике это вылилось в production-сервис с распознаванием по фото через Claude vision, ETL из бухгалтерских .xls (привет, xlrd 1.2), нормализацией грязных инвентарных номеров и автопушем в Google Sheets. Рассказываю про все грабли — от deadlock pandas vs xlrd до бага, который считал две разные железки одной

Читать далее

256 зелёных тестов на нерабочем коде. Так выглядит «услужливый клерк» внутри нейросети

Level of difficultyMedium
Reading time6 min
Reach and readers8.2K

В прошлых статьях я писал про то, что нейросеть ускоряет конвейер, но не несёт ответственности. Что лояльность дирижёра — единственный мультипликатор. Что уравнение мотивации сломалось.

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

И недавно появились прямые доказательства, что это случайность и не галлюцинация, а математика моделей.

Читать далее

Менеджер ресурсов

Level of difficultyEasy
Reading time30 min
Reach and readers14K

В прошлой статье я разбирал паттерны и необходимость компромиссов в реальной разработке, и там была одна мысль которую я намеренно оставил в стороне. Паттерны редко живут в одиночку, и любая реальная система это не один паттерн, а несколько, склеенных, скрученые, слепленных, и местами прибитых сбоку гвоздями, и каждый из них закрывает только часть проблемы. Менеджер ресурсов это, наверное, самый показательный пример такой склейки, потому что снаружи он обычно выглядит как пару строчек видаLoadTexture("bark.dds"), а внутри это кэш, политика дефолтов, механика восстановления после сбоя и ещё полдюжины вещей, каждая из которых прошла через пот, кровь и пиксели и осталась в архитектуре этой системы.

Если открыть любую книгу по разработке игр или игрового движка и попробовать найти определение "игровой ресурс", то получится что ресурс - это набор данных, которые были загружены или созданы с конкретными параметрами. Любые уточнения вроде «текстура», «меш», «звук» или «шейдер» здесь уже будут лишними, потому что нам важна не природа данных, а что они существуют именно определенной форме.

Понятие "определенная форма" тем не менее тоже звучит абстрактно, поэтому люди предпочитают использовать "текстуру", "меш", "звук" и т.д. Но одну и ту же текстуру wall.dds, которую можно загрузить в DXT5 со сжатием, sRGB и mip-фильтром box, а можно без сжатия, в линейном пространстве и с другим фильтром. Формально у нас был один файл на диске, но с точки зрения ресурсного менеджера теперь это два разных "ресурса", потому что их параметры различаются. Подмена одного ресурса другим в рантайме может сломать игру, потому что игра ожидает определенных данных для шейдера, которая изменилась после фильтра или определённую раскладку мипов, которой может не оказаться.

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

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

Грузись текстурка, большая и маленькая

Два игрока на весь российский рынок ИИ: что показал ЦИПР-2026

Level of difficultyEasy
Reading time12 min
Reach and readers18K

Почему в каждом разговоре про промышленный ИИ в России за спиной заказчика оказывается одна из двух компаний - Сбер или Яндекс? Я съездил на ЦИПР-2026, прошёл стенды и сессии, поговорил с массой людей из индустрии — и разобрался, почему рынок схлопнулся к дуополии и что это значит для всех остальных.

Взгляд практика, который сам делает платформу для работы с ИИ: без презентационного глянца, с цифрами и парой неудобных наблюдений со стендов.

Читать далее

Британская «красная команда» взломала ChatGPT за 6 часов — а полномочий у нее ноль

Reading time2 min
Reach and readers14K

Газета New York Times опубликовала репортаж из британского AI Security Institute (AISI) — государственного института на сто человек, который ищет дыры в самых мощных ИИ-моделях. Команде хватило шести часов, чтобы найти универсальный обход защиты новой GPT-5.5 в ChatGPT: один промпт открывал доступ ко всем опасным кибер-запросам, включая многоходовые агентные сценарии. До этого институт нашел серьезные уязвимости в Claude, Gemini и закрытой Mythos — модели, которую Anthropic в апреле не стала выпускать публично из-за рисков кибератак.

Читать далее

Gamedev. Парсинг данных из Google Sheets и Excel в json без привлечения программистов

Level of difficultyMedium
Reading time7 min
Reach and readers13K

Вы когда-нибудь заполняли json-конфигов на 20 000 - 25 0000 строк вручную перед выпуском релиза? А боль в глазах геймдизайнеров от этого процесса видели?

Вы TechLead/Менеджер и к вам часто подходят дизайнеры с просьбой написать парсер данных, а свободных рук нет? А после изменений в фиче приходится выделять человека для правок схемы парсинга под новую разметку?

Возможно, пора начать использовать тулзу по экспорту данных, которую смогут настроить сами геймдизайнеры? Нам этот инструмент сократил время настройки игровых конфигов с 4 дней до 15 минут, после предварительной настройки.

Привет! Меня зовут Игорь, я занимаюсь разработкой на Unity c 2018 года. В статье рассказываю о тулзе, с помощью которой можно выгружать данные из Google Sheets и Excel в json без привлечения программистов.

P.S. в конце статьи есть видосик с процессом настройки и экспорта одной фичи.

Читать далее

Idempotency keys: 5 граблей, которые мы поймали на проде

Level of difficultyHard
Reading time11 min
Reach and readers19K

Пятница, 23:47. PagerDuty: “Платёж AmEx, провайдер вернул 5xx три раза подряд, билеты не зарезервированы.” Открываю логи – действительно три ответа провайдера 5xx, ни одной успешной транзакции по нашей базе. Закрываю как временный сбой на стороне провайдера, пишу короткую сводку в дежурный чат и иду досматривать. Через 40 минут второй алерт – уже от ночной поддержки: клиент прислал скрин выписки, 3 списания подряд за одну бронь. У клиента рейс через 6 часов, ему нужна действующая бронь и подтверждение, что он завтра нормально улетит, а не тикет в поддержку.

Мы делали B2B-платформу для деловых поездок: бронь авиа, отели, трансфер, страховка, в финале – оплата корпоративной картой через платежный шлюз. С этой ночи началась история, которая закончилась переписыванием всего платёжного слоя нашего booking-сервиса. По дороге мы поймали 5 граблей.

Читать далее

Ускоряем и оптимизируем numpy, pandas, scipy и sklearn

Level of difficultyMedium
Reading time10 min
Reach and readers13K

С момента публикации статьи на Хабре «Импортозамещаем numpy, pandas, scipy и sklearn» прошло почти три года. В течение этого времени я приостановил работу над проектом из-за нехватки времени, ресурсов и сил. К тому же, меня расстроило, что не смог выполнить просьбу пользователя @N-Cube, который активно интересовался моей библиотекой и хотел ускорить работу своего Jupyter Notebook.

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

За это время в библиотеки были добавлены поддержка CUDA, множество ручных SIMD-оптимизаций с динамическим выбором SIMD, несколько реализаций линейной регрессии и многое другое.

Давайте рассмотрим, что на сегодняшний день позволяет сделать моя библиотека.

Я представлю несколько тестовых примеров в двух вариантах: с использованием AVX-2 на процессоре Intel® Core™ i7-4790K и AVX-512 на Intel® Xeon. Также покажу результаты замеров для каждого из них. Все тесты проводились без использования GPU, исключительно на процессоре. Это позволяет сравнивать производительность Python и моей библиотеки на равных условиях. Операционная система – Ubuntu 24.04, компилятор – GNU 13.3.0.

Читать далее

Загадочная поэма древнего Китая, работающая как компьютер

Level of difficultyMedium
Reading time6 min
Reach and readers13K

Этой поэме 1700 лет. И она фактически непереводима ни на один существующий язык мира. А все потому что она может генерировать стихотворения сама на древнекитайском, будучи прочитанной в особом порядке.

Читать далее

10 простых шагов, чтобы создать позиционирование для продукта

Level of difficultyEasy
Reading time8 min
Reach and readers6.5K

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

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

Узнать больше

В Кремниевой долине набирает популярность FIRE-культура

Reading time2 min
Reach and readers18K

В Business Insider вышла статья, посвящённая новой культуре работы в кремниевой долине. Это направление получило название FIRE-культура (Financial Independence, Retire Early).

Читать далее

Насколько плох был Intel iAPX 432 — проверяем на практике

Level of difficultyMedium
Reading time30 min
Reach and readers17K

Был такой процессор в 80х - Intel iAPX 432. Он разрабатывался в качестве преемника 8080 и изначально даже имел кодовое обозначение 8800. Intel заложила в этот процессор очень много всего - абсолютно новая архитектура, совершенно не похожая на предшественников, и даже некоторые концепции ОС, реализованные прямо в кремнии - поддержка объектно-ориентированного программирования, сборщик мусора, планировщик процессов, асинхронные коммуникации, несколько уровней отказоустойчивости и многое другое.

Читать далее

Алгоритм проверок физлиц от экс сотрудника ФНС

Level of difficultyEasy
Reading time7 min
Reach and readers9.5K

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

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

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

Читать далее

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

Reading time3 min
Reach and readers6.4K

ИИ не заменил менеджеров. Он сделал их узким местом

Картинка из моей работы. Облачная конференция, сессии наших спикеров на других ивентах, лендинги, статьи в СМИ и блог, Хабр. При производстве практически каждой единицы контента используется ИИ — целая фабрика агентов. Но между ИИ и готовым результатом есть человек, в данном случая я. Человек смотрит, проверяет, принимает решение. И этот ресурс ничем не масштабируется.

И это не то, чтобы только у меня подгорает. На прошлой неделе в HBR вышел материал Managers Are Struggling to Keep Up with the AI Productivity Boom. Открывается цитатой менеджера: "каждые тридцать минут кто-то создаёт что-то, что я должен посмотреть". CIO в свежей колонке формулирует ещё жёстче: исполнение перестаёт быть ограничением, дефицитным ресурсом становится суждение. Производство чего либо-ускорилось в разы. Но при этом никто не перестраивает поток работы под ИИ, практически всегда остаются те же цепочки согласований, что были до.

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

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

Читать дальше →

Память на миллион, а толку ноль: как мы спасали ИИ-агента от «тупости»

Level of difficultyEasy
Reading time11 min
Reach and readers11K

На связи Сергей Смирнов, AI-инженер и основатель LLMStart.ru. Сегодня разбираем горячую тему, на которой спотыкаются многие разработчики ботов — память нейросетей.

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

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

Читать далее

Как получить субсидию 300 миллионов от Минпромторга?

Reading time4 min
Reach and readers13K

Разбираю субсидию 300 миллионов на внедрение российских ПО и ПАК. Если вы промышленник, читайте внимательно: возможно, это ваш шанс. Или нет.

Читать дальше

Java — быстрая. Ваш код может таким не быть

Level of difficultyEasy
Reading time12 min
Reach and readers18K

Есть такие анти‑паттерны, которые выглядят нормально и даже проходят код‑ревью, но тихо убивают производительность в горячих местах: 

- Конкатенация строк в циклах

- String.format() в горячем коде

- Автобоксинг 

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

Если вы пишете на Java и у вас всё вроде работает, но под нагрузкой сервисы начинают задыхаться, в новом переводе от команды Spring АйО рассмотрим конкретные паттерны, на которые стоит посмотреть.

Читать далее

«Невыездные» из-за ИИ: топ-менеджерам Alibaba и DeepSeek закрыли свободный выезд

Reading time2 min
Reach and readers12K

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

Читать далее

Проектирование архитектуры в нотации ArchiMate с использованием ИИ. Часть 2

Level of difficultyMedium
Reading time26 min
Reach and readers8.3K

Всем привет! Меня зовут Владимир Зуев, я руководитель разработки JAVA-практики в компании Axenix. Сегодня я хочу представить новую часть из цикла статей о нотации ArchiMate. В этой части мы продолжим проектирование системы управления беспилотным грузовым автотранспортом для междугородних перевозок. Мы попытаемся получить ответ на главный вопрос – что же мы хотим получить? Для этого подробно разберем требования к системе, составим перечень прецедентов использования, а также сформируем техническое задание. Для решения всех задач будем использовать ИИ.

Читать далее

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity

Specialization

Десктоп разработчик, Администратор серверов
Младший
From 110,000 ₽
Java
Java Spring Framework
RESTful WebServices.
PostgreSQL
SQL
Hibernate
Linux
Базы данных
Microsoft SQL Server
Разработка программного обеспечения