Обновить

Разработка

Сначала показывать
Порог рейтинга
Уровень сложности

Учимся правильно использовать ИИ при разработке программного обеспечения

Время на прочтение9 мин
Охват и читатели9.6K

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

Данная статья - это очередной Хабрахак с подведением итогов и получением обратной связи об использовании ИИ-помощников при разработке программного обеспечения с примерами кода и итоговыми выводами о целесообразности использования ИИ в том или ином проекте.

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

Читать далее

Фильтруем политику и нецензурщину: как в «Эвоторе» защищают клиентский чат

Время на прочтение9 мин
Охват и читатели4.2K

В мире высоких технологий все больше и больше компаний внедряют голосовых и чат‑ассистентов в различные сегменты рабочих процессов. Они помогают обрабатывать рутинные задачи, ускоряют взаимодействие с пользователями и снижают нагрузку на сотрудников. Компания «Эвотор» находится в числе тех, кто активно занимается разработкой ассистента поддержки на базе llm — Евы, которая уже помогает тысячам пользователей ежедневно.

Но в каждом клиентском сервисе рано или поздно встает вопрос — а что делать с «неудобными» запросами?

Читать далее

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

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели5.7K

Анализ глаголов восприятия в прозе Паустовского с помощью Python: подход цифрового гуманитария для NLP-разработчиков.

Читать далее

Атрибуция кибератак: почему иногда «не знаю» — единственный честный ответ

Время на прочтение7 мин
Охват и читатели6.8K

Представьте, что вы остановили атаку шифровальщика, залатали уязвимость и восстановили системы из бэкапа. Через неделю в той же сети всплывает майнер. Еще через месяц документы утекают в открытый доступ. Следы каждый раз ведут к одной и той же уязвимости. Что происходит: резвится один упорный хакер или ваша сеть превратилась в «коммуналку» для злоумышленников?

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

Чтобы разобраться в ситуации, мы позвали Семена Рогачёва, руководителя отдела реагирования на инциденты Бастиона. Он уже выступал с докладом на эту тему. 

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

Читать далее

Коллекция полезных CSS фишек, которые вы редко используете

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели13K

Привет, Хабр!

В мире фронтенда активно всё меняется. Появляются одни инструменты, но только их выучишь — они устаревают, и нужно уже учить новые. Новые методы и API в JavaScript. Даже в HTML появляется что-то новое. И, конечно, CSS не отстаёт.

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

Давайте посмотрим, что я вам подготовил.

Читать далее

Как выбрать иммерсионное покрытие для печатной платы?

Время на прочтение2 мин
Охват и читатели6.2K

Каждый день я сталкиваюсь с вопросом от дизайнеров: «Какое финишное покрытие выбрать для проекта?» Выбор между иммерсионным золотом (ENIG), серебром (IAg) и оловом (ImmSn) — это всегда компромисс между стоимостью, надежностью и задачами платы. Давайте разберемся по-простому, как это вижу я на практике.

Читать далее

Service Desk и Help Desk: в чем разница на самом деле или почему её нет

Время на прочтение9 мин
Охват и читатели5.7K

На совещании кто-то говорит: «Нам нужен Service Desk», другой возражает: «У нас уже есть Help Desk, зачем еще что-то?», третий вообще не понимает, в чем разница. Начинается спор, гуглят определения, цитируют ITIL, но в итоге остаются при своем мнении. Знаете что? За 10+ лет внедрений я видел эту дискуссию десятки раз. И у меня есть свое мнение на этот счет.

Сегодня разберемся раз и навсегда: Service Desk и Help Desk – это разные вещи или мы просто усложняем терминологию? Спойлер: возможно, различия не там, где вы думаете.

Читать далее

Почему каталог данных превращается в кладбище и как это исправить

Время на прочтение7 мин
Охват и читатели4.4K

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

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

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

Осторожно, статья-детектор.

Читать далее

Отказоустойчивый кластер Angie с VRRP и Keepalived

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели5.4K

Ранее мы рассматривали различные варианты балансировки нагрузки (HTTP, L4) с помощью Angie. Однако мы обходили стороной вопрос отказоустойчивости. Балансировщик становится единой точкой отказа для системы, и эту проблему необходимо решать. Одним из решений является использование протокола VRRP для организации отказоустойчивого кластера — его мы и разберём в этой статье.

Читать далее

Webflow → Next.js без фронтендеров: как мы перенесли 500+ страниц сайта через Cursor

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели9.2K

Всем привет, я сооснователь мессенджера Пачка и отвечаю, в том числе, за маркетинговую инфраструктуру. 

Нам нужно было оперативно увезти наш сайт с Webflow: 500+ страниц, блог и база знаний. При этом возвращать фронтенд-разработку в режим постоянной поддержки сайта мы не хотели. Поэтому рассматривали конструкторы и CMS, но быстро поняли, что это будет работа в минус. Все усилия на переезд лишь вернули бы сайт в рабочее состояние, не дав новых возможностей.

В итоге мы решили вести разработку и поддержку сайта в Cursor. То есть переписать его на NextJS с помощью AI агентов. Такая связка дала понятную модель страниц, быструю доставку статики и ISR для контента, а также возможность отказаться от отдельной CMS за счёт MDX.

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

Читать далее

Nano Banana Pro vs SeeDream 4.5 vs GPT-5: битва моделей для генерации изображений. Кто победит в 2025 году?

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели8.6K

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

Сегодня в битве участвуют: Nano Banana Pro, SeeDream 4.5 и GPT-5 Image. Делайте ставки, а я приступаю к сравнению этих впечатляющих моделей.

Читать далее

Как оптимизировать код WebAssembly при помощи встраивания функций и деоптимизации

Время на прочтение17 мин
Охват и читатели7.3K

В этом посте будут объяснены две стратегии оптимизации WebAssembly, которые не так давно были реализованы в движке V8 и вошли в версию браузера Google Chrome M137. Речь пойдёт о спекулятивном встраивании call_indirect inlining и о поддержке деоптимизации в WebAssembly. В сочетании два этих приёма помогают генерировать более качественный машинный код, так как основаны на допущениях, которые строятся, исходя из обратной связи, поступающей от среды исполнения. Благодаря этому, WebAssembly выполняется быстрее, особенно это касается программ WasmGC. Например, проверив эти приёмы на наборе микробенчмарков, написанных на Dart, видим, что комбинация двух оптимизаций даёт ускорение в среднем более чем на 50%. В более крупных и реалистичных приложениях и на тех бенчмарках, которые рассмотрены ниже, достигается ускорение между 1% и 8%. Деоптимизации — также очень важная составляющая для дальнейшей оптимизации в будущем.

Читать далее

ReadyToRun и Crossgen2: AOT-компиляция в .NET

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели4.2K

Привет!

Разберём ReadyToRun (R2R) — технологию предкомпиляции в .NET. Многие включают её, надеясь на супер ускорение, а потом удивляются результатам. Посмотрим, как это работает на самом деле и где реально помогает.

ReadyToRun — это AOT-компиляция для .NET. Обычно приложение поставляется в IL-коде, который JIT превращает в машинный код во время выполнения. R2R компилирует код заранее при публикации проекта — в итоговых DLL лежит и IL, и готовые машинные инструкции. При запуске CLR просто берёт нативный код без пауз на компиляцию.

Как это работает

Ближайшие события

Зачем был нужен WinQuake и как он работал

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели6.2K

Когда изучил историю двоичных файлов Quake, их логика стала мне понятна. quake.exe был первоначальным релизом, который мог работать в DOS и Windows 95. Затем появился vquake.exe для поддержки чипа Vérité 1000 с аппаратным ускорением. Позже выпустили glquake.exe, позволивший использовать аппаратное ускорение любого чипа с драйверами OpenGL. А чтобы совершить революцию в Интернет-deathmatch, id Software выпустила сервер и клиент QuakeWorld (qwsv.exe и qwcl.exe).

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

Читать далее

Применение ИИ в бэкенд-разработке приложения Бургер Кинг: шаблоны, контекст и кодогенерация

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели4.5K

Всем привет! Меня зовут Щепетков Константин, я TechLead бэкенд разработки компании ZeBrains, работаю в роли TeamLead бэкенда на проекте мобильного приложения Бургер Кинг.

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

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

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

Тут не будет инструкций к конкретным ИИ-иструментам, но при этом поделюсь практическим опытом применения ИИ. Статья будет полезна не только бэкенд‑разработчикам, но и всем, кто хочет использовать ИИ-инструменты осознанно.

Читать далее

Garbage In — Garbage Out: ошибки в разметке данных и как они ломают ML-системы

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели4.3K

На Хабре тысячи статей про OCR, IDP, ML и искусственный интеллект. Все они сходятся в одном: «качественная разметка данных — ключ к точности модели». Но что это значит на практике?

Меня зовут Снежана Игнатенко, я руковожу отделом разметки данных в SL Soft AI. Каждый день моя команда работает с самыми разными документами: печатными, рукописными, строгими формами, свободными текстами, сканами и фотографиями, в которых встречаются печати, подписи, штампы, затертые области, перекосы и артефакты. Наша задача — создавать качественный, точный и контекстно корректный набор размеченных данных, который служит фундаментом для всех интеллектуальных систем класса IDP.

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

Читать далее

Как UX-решения помогают e-commerce снижать число возвратов товара: опыт мировых лидеров

Время на прочтение8 мин
Охват и читатели3.9K

Мы с командой проанализировали 25 мобильных приложений лидеров рынка электронной коммерции в России и в мире в четырех категориях, где риск возврата особенно чувствителен к точности выбора, — и выбрали 14 UX-решений, которые способны значительно его снизить.

Читать далее

Как установить Digital Q.DataBase на Astra Linux 1.8 и бесплатно работать с MS SQL, PostgreSQL и Oracle

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели4.3K

Привет, Хабр!

Мы много работаем с компаниями, которым необходимо использовать отечественное ПО для баз данных. В таких проектах часто уже есть инфраструктура на MS SQL Server, PostgreSQL или Oracle Database. Основной конфликт — требования регуляторов и высокая стоимость миграции логики приложений на другую СУБД.

Мы создали продукт, который нативно понимает диалекты и позволяет работать с существующими базами без переписывания кода. В статье расскажем, как развернуть Digital Q.DataBase для начала работы с базами без долгой и затратной миграции.

Читать далее

Это 4 наших легендарных Dev & DevOps-факапа

Уровень сложностиПростой
Время на прочтение10 мин
Охват и читатели6.7K

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

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

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

Читать далее

RAG своими руками: как мы собрали ИИ‑помощник для поддержки и что из этого вышло

Уровень сложностиСредний
Время на прочтение19 мин
Охват и читатели7.1K

Привет, Хабр! Меня зовут Илья Парамошин, я ведущий инженер в МТС Web Services. В первой части мой коллега Владимир Дробот рассказал, зачем нам понадобился ИИ‑помощник для техподдержки и почему мы выбрали архитектуру на RAG. В этой статье я раскрою техническую сторону и разберу, как мы собирали данные, выбирали эмбеддинги, настраивали поиск и какие подводные камни встретили на пути. Спойлер: без костылей не обошлось, но система работает в проде и ежедневно помогает нашим инженерам.

Читать далее