Habr.com

Syndicate content Хабр
Все публикации подряд на Хабре
Updated: 1 hour 18 min ago

Metalama: праовца, аспекты приносящая

Fri, 01/09/2026 - 22:14

Метод программирования, именуемый аспектно-ориентированным, впервые явился миру в конце девяностых годов прошлого века, когда группа исследователей из Xerox PARC под руководством Грегора Кичалеса решила, что объектно-ориентированного подхода человечеству недостаточно. Они создали AspectJ — расширение для Java, призванное разрешить проблему, которую окрестили «сквозной функциональностью». Суть проблемы проста до безобразия: код логирования, обработки ошибок, проверки прав доступа и прочих служебных радостей размазывается по всему приложению, как масло по по́лу, превращая элегантную бизнес-логику в свалку повторяющихся конструкций.

Аспектно-ориентированное программирование предлагает выделить эти сквозные concerns в отдельные сущности — аспекты, которые можно применять к коду декларативно, не засоряя основную логику техническими деталями. В теории звучит как серебряная пуля. На практике AspectJ оказался инструментом, требующим от программиста понимания магических pointcut expressions и готовности смириться с тем, что код компилируется через специальный компилятор, производящий байткод, который отладить можно только с поллитрой, бубном или молитвенником.

Встречайте Metalama →

[Перевод] Реляционные шарады: превращаем фильмы в таблицы

Fri, 01/09/2026 - 21:52

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

Перейти к материалу

Эксперимент по подстройке Gemma 3 для вызова процедур

Fri, 01/09/2026 - 21:51

Практический опыт тонкой настройки текстовой генерации для модели Gemma 3 с использованием QLoRA на видеокарте RTX 4090 (24 GB).

Читать далее

[Перевод] Гексагональная архитектура в Rust: отвязываем бизнес-логику от Solana

Fri, 01/09/2026 - 21:47

Представьте: вы строите сервис выдачи дипломов на Solana. Всё отлично, пока дело не доходит до тестов.

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

В этой статье я покажу, как мы решили проблему, используя async-trait и dyn Trait. Мы превратили интеграционные тесты длиной в минуты в юнит-тесты, которые проходят за миллисекунды.

Узнать решение

Как обрабатывать 5 млн изменяющихся форм в минуту с SLI 99.99%

Fri, 01/09/2026 - 21:19

Всем привет! Меня зовут Кирилл Грищук, я Tech Lead в команде Инфомодели в Авито. Мы занимаемся тем, что обрабатываем формы от пользователей: от 5 млн до 15 млн форм в минуту, а это более 150 тысяч в секунду. 

В этой статье на примере Авито я рассказываю, зачем мы стремимся к SLI 99.99%. Внутри — обзор и сравнение решений по доставке неизменных данных, учитывая специфику нашего сервиса. Показываю на примере форм, какие интересные доработки мы придумали, чтобы достичь этих четырёх девяток, и какие ошибки совершали по пути.

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

Читать далее

Создание интернет магазина на основе Evershop

Fri, 01/09/2026 - 21:16

Evershop https://evershop.io — опенсорсная платформа для создания интернет-магазинов на Node.js. Платформа включает необходимый функционал: интеграции с платежными системами (Stripe, PayPal), админ-панель для управления заказами и контентом, систему промокодов и аналитику продаж.

Официальная документация Evershop не покрывает многие практические аспекты разработки. Данная статья — практическое руководство по созданию интернет-магазина на основе Evershop, включающее:

Пошаговую настройку проекта

Создание тем и расширений

Решение типичных проблем и необходимые патчи

Описание внутренней архитектуры для разработки кастомных решений

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

Читать далее

Они тоже заслуживают вашего внимания! Крутые, но малозаметные игры 2025 года, в которые нужно сыграть каждому

Fri, 01/09/2026 - 21:05

Итак, 2025 год подошел к концу и сказать что он был переполнен (снова, ага) крутыми играми это ничего не сказать.

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

Сегодня мы вспомним эти игры и попытаемся убедить вас в них поиграть.

Читать далее

Зима — время беспрецедентно увеличить мохнатость: электрофлокирование

Fri, 01/09/2026 - 21:04

Пигмалион

Человек — существо во многом беззащитное и открытое всем неблагоприятным факторам окружающей среды.  

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

Впереди зима, и, за неимением самого главного, людям приходится ютиться в каменных пещерах, называемых домами, и одеваться в такую несвойственную им одежду… 

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

Выход есть и его возможности, бесспорно, весьма широки: электрофлокирование!

Читать далее

Какой Может быть UART-CLI в Микроконтроллере (или Курс Молодого Бойца)

Fri, 01/09/2026 - 20:49

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

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

Читать далее

DeepSeek в Intellij Idea через плагин Continue

Fri, 01/09/2026 - 20:18

Может кому пригодится, на просторах интернета не нашел, как запустить модель deepseek в idea, потому сам вместе с deepseek допиливал конфиг и обучал модель работе через инструменты плагина. Ну и попутно решил проблему с зависаниями, плагин очень любил зависнуть, приходилось ide перезапускать.

Сразу оговорюсь, решение не элегантно, я не убирал лишний код, строки и текст, я просто добился рабочего состояния и более ничего не тестировал и не трогал. Годами работы приучен «работает — не трож». Потому решение as is выкладываю. Можете сами эксперименты проводить и допиливать, мне был просто нужен рабочий инструмент, на тюнинг не осталось желания, накрыла лень и я продолжил заниматься изначальным своим проектом =)

Читать далее

Как улучшить свой маркетинг с помощью теории Эдварда Фримена

Fri, 01/09/2026 - 20:18

Частая причина слабых результатов в маркетинге и стратегии это неверная точка старта. Мы начинаем с решения: «запустим продукт», «сделаем кампанию», «перестроим воронку». А потом выясняется, что проект буксует: согласования затягиваются, часть команды сопротивляется, партнёры не поддерживают, клиенты реагируют совсем не так, как ожидалось.

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

Читать далее

Настороженность массажиста: когда сеанс начинается еще до первого массажного приема. Клинические ориентиры (ч. 2)

Fri, 01/09/2026 - 20:16

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

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

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

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

Читать далее

Мониторинг managed PostgreSQL в Yandex Cloud: практика с экспортером pgSCV и k8s

Fri, 01/09/2026 - 20:15

В статье разбирается практический подход к мониторингу managed PostgreSQL в Yandex Cloud с использованием экспортёра pgSCV. Показано, как выстроить сбор метрик так, чтобы он не создавал дополнительной нагрузки на базу данных, масштабировался вместе с инфраструктурой и оставался управляемым.

Читать далее

Как я создала ИИ-агента для анализа отзывов, потому что мне было лень читать 200+ строк в гугл таблице

Fri, 01/09/2026 - 19:51

Или история о том, как лень двигатель прогресса.

Когда мне на курсе дали домашку проанализировать больше 200 отзывов о кофейне "Great Grounds", я поняла одно: читать это всё вручную я точно не буду.

У меня был выбор: потратить несколько часов на монотонное чтение однотипных «кофе супер» и «цены кусаются», загрузить это в NotebookLM (что я сделала в последствии, для сравнения результатов) или повайбкодить. Например, создать своего мини ИИ‑помощника, который сделает это за меня. Спойлер: я выбрала вайбкодинг, и вот что из этого вышло.

Читать далее

Эффект Брюс: Аборт у животных

Fri, 01/09/2026 - 19:34

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

14 лет назад эффект обнаружили и у диких гелад (Theropithecus gelada), приматов, которые после смены самца прекращали около 80% беременностей, и это интерпретируется как адаптивная стратегия в условиях, где новый самец часто убивает детёнышей предшественника.

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

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

Читать далее

[Перевод] Две секунды, которые изменили всё: NVIDIA научила роботов думать перед тем, как действовать

Fri, 01/09/2026 - 19:22

Пока рынок зациклен на железе, Дженсен Хуанг тихо выложил в открытый доступ модель рассуждений «Системы 2», которая решает парадокс Моравека.

Роботизированная рука замирает.

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

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

Но на этот раз пауза была намеренной.

Машина не зависла. Она думала.

Читать далее

Верстаем сложный прогрессбар в 2026 году

Fri, 01/09/2026 - 19:22

Раньше, чтобы сделать круговой прогрессбар, мы страдали с SVG. Мне до сих пор больно заглядывать в инспектор на старых реализациях. Сегодня всё кардинально упростилось.

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

В этой статье я разберу именно этот приём. Сначала — ключевую идею подхода, затем — возможности кастомизации, после этого добавлю немного визуальной «дороговизны», удобные ручки управления и экспериментальную CSS-логику. Да-да, напоследок мы немного попрограммируем на CSS!

Читать далее

L7 маршрутизация Squid+IPTables и WireGuard, или как завернуть трафик в тоннель на основе имени домена

Fri, 01/09/2026 - 19:15

Многие интернет-ресурсы имеют большой пул ip-адресов, более того, этот пул может меняться. Делать nslookup для каждого интересующего сервиса и заворачивать все выдаваемые подсети — неудобно и неэлегантно.

На помощь может прийти прокси‑сервер squid, настроенный прозрачно с функцией ssl_bump.

Читать далее

Как я написал bash-скрипт и получил оффер

Fri, 01/09/2026 - 19:08

Если что, это не кликбейт. История довольно проста: в один из рабочих дней (работаю экспертом по компьютерной экспертизе) мне "на стол" попал сервер на ALT. Всё стандартно:

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

2) делаю диагностику всей системы на момент первого запуска, для внесения в отчёт. Данная диагностика должна включать в себя первичную информацию о: диске; памяти; сети; базовых службах (ssh, cron и тд.) и о системе в целом.

Что было дальше

Кибербезопасность 2025-2026: уязвимое ПО и железо

Fri, 01/09/2026 - 19:07

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

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

Читать далее

Who's online

There are currently 1 user and 1 guest online.