Обновить

Разработка

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

Почему в Rust всё правильно

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

Программирование, да и вообще в целом ИТ — это всегда про компромиссы. Выигрывая в чём-то одном, мы обязательно проигрываем в чём-то другом. Не существует той самой «серебряной пули», то есть инструмента, решающего абсолютно все задачи. Также не бывает и идеального языка программирования. Но что если я скажу вам, что существует почти идеальный язык? И это Rust. Далее я постараюсь обосновать свои доводы, чтобы в глазах читателей на казаться слепым крабом фанатом очередной хайповой технологии.

За свой почти 14-летний путь в ИТ я успел профессионально поработать на нескольких языках программирования: PHP, Ruby, JS/TS, также мне доводилось «потрогать» Python, Go, даже Clojure и Haskell. Каждый имеет свои недостатки: у PHP — кривая архитектура, у Ruby — медленная работа, у функциональных языков — недостаток библиотек и обучающих материалов. При разработке на них каждый раз приходится идти на уступки и выбирать между изящным синтаксисом, скоростью работы и написанием «велосипедов» на каждый чих. В Rust всё обстоит совсем иначе и вот почему.

Читать далее

Почему Я выбираю Spring Data JDBC

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

Реляционные базы данных по-прежнему остаются главным хранилищем наших данных. А значит, вопрос выбора инструмента отображения данных из БД на уровне приложения - всё так же актуален.

Долгое время я выбирал: Spring Data JPA. Уверен, что большинства из вас — тоже. Но времена меняются, и в 2025 для своих новых проектов я использую — Spring Data JDBC.

Почему? Если вам стало любопытно — добро пожаловать под кат.

Читать далее

План аварийного восстановления (DRP): практический гайд для собственника. О чем спросить ИТ-отдел, пока все работает

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

Эта статья написана для владельцев бизнеса, генеральных и операционных директоров. Мы намеренно упрощаем технические термины, чтобы сфокусироваться на главном — управленческих рисках и деньгах.

Ранее мы уже выпустили фундаментальный разбор Disaster Recovery (DR): что это такое, чем RTO отличается от RPO и какие стратегии защиты существуют. Если вы еще не посчитали, во сколько миллионов обойдется вашей компании день простоя — рекомендуем начать с первой части.

Читать далее

Больше, чем BI: 23 фичи Luxms BI, которыми мы гордимся. Часть 3: решения для специализированных задач

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

Это третья часть серии «23 фичи Luxms BI, которыми мы гордимся». В первой мы говорили о платформенности и архитектуре, о том, на чем держится система. Во второй – о классическом BI-функционале, который делает систему BI-системой.

А сегодня мы расскажем, что происходит, когда бизнес-задачи перерастают рамки стандартной аналитики. Речь пойдет о функциях, которые превращают Luxms BI из инструмента визуализации в платформу для решения сложных, специализированных задач. Именно эти возможности наши заказчики чаще всего характеризуют фразой «а вот это – действительно больше, чем BI».

Читать далее

Итоги анализа вариантов оптимизации ресурсоёмкого SQL-запроса

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

Исследовать и определить наиболее эффективный SQL-запрос, позволяющий получить информацию для анализа:

Неполных бронирований

Билетов без привязки к рейсам

Рейсов без процедуры посадки

Статистики по незавершённым операциям

Читать далее

Как Temporal без боли решает привычную проблему распределённой бизнес-логики

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

Меня зовут Миша, я бэкенд‑разработчик в платформе Яндекс Еды, и в этой статье я расскажу о принципах работы Temporal: почему мы его выбрали как основу нового процессинга, в чём его сильные стороны и как изменилась наша жизнь после перехода. 

Раньше для такого требовались: стейт‑машина с полудюжиной состояний, очереди и воркеры, обработчики на каждое событие и блокировки от race conditions. Теперь всё это описано в одной функции, которая вообще выглядит как псевдокод. 

Магия? Нет, Temporal. 

С тех пор как мы перенесли процессинг на Temporal, разработка существенно упростилась. Пользователь оплачивает заказ, ресторан его подтверждает и готовит, курьер забирает и привозит — ровно это и отражено в коде. Ну разве не прелесть?

Читать далее

Почему безупречный код — это ноль, если бухгалтер не нашел кнопку «сохранить»

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

Вам наверняка попадался тот самый мем: «Как видит проект заказчик / как видит разработчик / как видит пользователь». Так вот, я — тот парень, который рисует четвертую картинку: «Как это должно работать на самом деле» и «как сделать продукт, который устроит всех». 

Меня зовут  Ярослав, я data pre-sale в MWS. За долгие годы работы я совершил массу ошибок и однажды чуть не похоронил проект, потому что послушал заказчика и не поговорил с бухгалтером, которому в итоге предстояло пользоваться продуктом. Оказалось, их боли — две огромные разницы. В итоге я вывел для себя два главных правила:

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

Твоя главная суперсила — не техстек, а синергия. Умение переводить с языка бизнес-хотелок на язык Python и обратно, а потом и на диалект «бухгалтера Галины Ивановны» — вот что определяет успех твоего проекта. 

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

Читать далее

StarRocks 4.0: Real-Time Intelligence on Lakehouse

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

StarRocks 4.0: Real‑Time Intelligence on Lakehouse. Сквозная оптимизация конвейера в реальном времени, 3–15× ускорение JSON, SQL Plan Manager, Decimal256 и поддержка Apache Iceberg для нативной Lakehouse‑аналитики.

Читать далее

Сердце не сыто. Python помогает раскрыть особенности мастерства поэта Вознесенского

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

Можно ли было читать советские стихи американцам? Пытаюсь выяснить это с помощью Python на примере Андрея Вознесенского.

Читать далее

Реализация TimescaleDB в Zabbix: преимущества, ключевые таблицы и установка

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

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

Миграция с MySQL на PostgreSQL

SELinux: интеграция с Zabbix и другими инструментами

Защита от ложных срабатываний триггеров в Zabbix с использованием функций min/max/avg

Zabbix – автоматизация управления пользователями (JIT)

Zabbix — это надежное решение с открытым исходным кодом для мониторинга ИТ-инфраструктуры, позволяющее отслеживать и анализировать производительность сети, серверов, приложений и других компонентов. По мере роста объема данных эффективное управление временными рядами становится ключевым фактором. Поэтому, начиная с версии 5.0, Zabbix начал поддерживать TimescaleDB — расширение PostgreSQL, оптимизированное для временных рядов. В этой статье рассматриваются преимущества использования TimescaleDB в Zabbix, ключевые таблицы и процесс установки. Подробности под катом.

Читать далее

ClickHouse и внешние словари: как это работает и зачем нужно

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

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

В этой статье разберем ее подробнее.

ClickHouse на практике

Кейс «Учёт надоя»: креативное обновление мобильного приложения РСХБ «Свои финансы»

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

Привет, Хабр! Я Кирилл Адещенко, исполнительный директор департамента цифрового бизнеса РСХБ. В этой статье я делюсь наблюдениями и выводами о том, как команды банков работают с публикацией мобильных приложений в условиях ужесточения правил магазинов приложений и санкционных ограничений.

Читать далее

Мониторинг SSSD через D-Bus: создаем собственный Ansible-модуль вместо sssctl

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

Привет, Хабр! Сегодня хочу поделиться опытом того, как я отказался от стандартной утилиты мониторинга SSSD в пользу прямого общения с демоном через D-Bus и создал полнофункциональный Ansible-модуль.

Избавиться от зависимости!

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

Эксплуатация уязвимости race condition CVE-2025-29824 в Windows

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

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

Эксплуатация уязвимости типа use after free в ядре Windows и без того непростая задача, но когда к этому добавляется состояние гонки (race condition), сложность возрастает на порядок. CVE-2025-29824 — наглядное тому подтверждение, однако, как будет продемонстрировано ниже, создание рабочего эксплойта для нее — достижимая цель.

Читать далее

ИИ убил не литературу. Он убил иллюзию, что каждый может быть писателем

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

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

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

Читать далее

Из Python в 1С

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

Работаю в ИТ с 2004 года. Пришёл осознанно в индустрию не за деньгами - по любви к технологиям и тишине, когда можно заставить машину делать нужные вещи. Начинал с настольных приложений на Delphi, бэкенд на Python, немного React. Сейчас Финтех.

История о том, как, работая тимлидом Python-команды, решился принять вызов на переход в сферу 1С и что из этого вышло.

Читать далее

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

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

Физики-теоретики из МФТИ, НИЦ «Курчатовский институт» и Физического института им. П.Н. Лебедева РАН разработали новый математический аппарат для описания поведения квантовых полей в космологических масштабах. Их работа не только проясняет, как тонкие квантовые эффекты влияют на эволюцию Вселенной, но и предсказывает, как эти эффекты определят конечную судьбу самого пространства-времени. Этот подход позволяет разрешить давние противоречия в теории и открывает путь к пониманию таких фундаментальных загадок, как природа тёмной энергии и стабильность вакуума. Результаты исследования опубликованы в журнале Physical Review D.

Читать далее

Как я осознал, что не умею кодить

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

Вчера мой скрипт завис. Процессор горел на 100%. Я убил процесс.

Я Senior Developer с 10 годами опыта. Пишу на Python, знаю Java и много модных фреймворков. Но в этот момент я понял: я не умею программировать. Точнее, я умею использовать инструменты. Но я не понимаю природу вычислений.

Эта статья — о том, как одна математическая задача изменила моё понимание разработки.

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

Возможно, и тебя тоже.

Читать далее

Подключение ЖК дисплея POS терминала Ingenico IPP320 к Arduino (ESP32)

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

В Ingenico IPP320 установлен графический 128х64 монохромный ЖК дисплей с белой подсветкой и диагональю примерно 2.8 дюймов. Он устанавливался и в другие устройства и также известен как:
LBL-VLFM1574-02C
LBL-VLFM1574-02B
COG-VLFM1574-05
WU3540C-01 B
WU3540B-01

Конкретно мой дисплей я получил из терминала оплаты Ingenico IPP320. Терминалы эти, при покупке на вторичном рынке, как правило, уже сами заблокировали себя, так что чтобы использовать их напрямую даже в любительских целях, потребуется дорогостоящая разблокировка производителем. Такие терминалы можно найти за достаточно низкую цену на Авито и других площадках. Я, например, нашел новенький Атол 60Ф за 340 рублей. Разобрав, потыкав осциллографом и мультиметром, я подключил ESP32 между платой терминала оплаты и дисплеем. Попутно накидал следующую распиновку коннектора:

Читать далее

Критическая уязвимость безопасности в React Server Components

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

Важное обновление безопасности для React-разработчиков 🛡️

Обнаружена RCE-уязвимость связанная с некорректным декодированием пейлоадов в Server Functions. Это позволяет неаутентифицированным пользователям выполнять код на сервере.

Что нужно сделать:

Проверьте, используете ли вы React Server Components.

Если да (например, в Next.js 15+), выполните обновление пакетов немедленно. Исправления доступны в версиях 19.0.1, 19.1.2 и 19.2.1.

Читать далее