Обновить

Разработка

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

Аморальный патч для Intel DRM

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

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

А значит снова пришло время карать и патчить!

Читать далее

Google Antigravity и Gemini 3 Pro: что реально меняется в разработке и почему это не убийца Cursor

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров8.8K

18 ноября 2025 Google представил новую связку: модель Gemini 3 Pro и IDE Google Antigravity. Первая - про управляемое рассуждение, длинный контекст и мультимодальность. Вторая - про мультиагентную разработку с артефактами и «прозрачными» шагами. В ленте мгновенно пошли заголовки «Cursor мертв».

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

Читать далее

Щёлк-щёлк — и поехали: как релейная автоматика стала прообразом IIoT. Часть 2

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров3K

Напомню, что мы исследуем историю релейной автоматики и, неразрывно связанной с ней, релейной логики. И пытаемся понять, как в первой половине ХХ века огромные заводы работали, выполняли сложнейшие операции и почти не сбоили. Хотя все современные инженеры IIoT на тот момент еще даже не родились, а устройства ПЛК только шли в разработку. 

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

Читать далее

Космотекст: отправляем статьи в космос — и объявляем победителей 🚀

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

Привет от Хабра! Несем вам буквально космическую новость — мы подвели итоги конкурса космических статей и выбрали те, что отправятся в настоящий КОСМОС 🛸. А еще отобрали автора лучшей статьи за время существования Хабра, который забирает экскурсию на Байконур! 

Рассказываем, какие авторы стали космическими победителями и о чем они написали.  

Читать далее

Люди, которые писали код на голых нервах. О практике девяностых и нулевых, которая до сих пор работает

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров6.8K

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

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

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

Читать далее

Паттерн Transactional Outbox: от теории до продакшена

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров2.7K

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

В статье разберемся, что именно начинает ломаться в outbox-паттерне под нагрузкой, как выбирать и блокировать события в разных СУБД, почему ретранслятор стоит отделить от API и какие гарантии доставки на самом деле получаются. А ещё — почему консюмеры должны быть идемпотентными, как следить за внутренней очередью в базе и не узнавать о проблемах уже после инцидента.

Разобрать outbox

Как IN (:ids) раздувал Hibernate Query Plan Cache до 100+ МБ и почему ANY(:ids) спас прод

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

При разборе продакшн heap dump я обнаружил странность: Hibernate Query Plan Cache занимал почти треть памяти. Обычный IN (:ids) внезапно генерировал тысячи SQL-планов и раздувал heap.

Почему так происходит и как полностью решить проблему с помощью ANY(:ids) — разбираю пошагово на реальном примере

Читать далее

Астероид для IT-индустрии: как пережить AI-апокалипсис

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

Всем привет! Меня зовут Николай Губин, являюсь Backend-разработчиком в Авито уже четыре года. Я тот, кто за пятнадцать лет пережил несколько революций в индустрии, каждая из которых выглядела как конец безбедной и счастливой жизни каждого разработчика. В этой статье поделюсь своим субъективным мнением на самый холиварный вопрос: с развитием ИИ что ждет IT- специалистов? Закат или новое начало?

Читать далее

Хватит писать CSS с нуля: как Chakra UI экономит время и нервы разработчика

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

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

В данной статье мы рассмотрим одну из таких библиотек — Chakra UI V3 в связке с React, так как она не особо большая и проста в изучении. В разных библиотеках синтаксис может немного отличаться, но в основном они все решают одни и те же проблемы. Давайте разберёмся, как она способна помочь нам в разработке.

Читать далее

Как оптимизация перформанса Debezium JDBC Sink Connector помогла улучшить Open-source версию решения

Время на прочтение7 мин
Количество просмотров511

Debezium — популярный фреймворк для Change Data Capture (CDC), позволяющий отслеживать изменения в источниках данных (таких как базы данных) и передавать их в потоковые платформы вроде Apache Kafka. Одним из компонентов Debezium является JDBC Sink Connector, предназначенный для записи данных из Kafka в реляционные базы данных посредством интерфейса Java Database Connectivity (JDBC). 

Debezium JDBC Sink Connector может решать множество задач: от репликации данных между БД и синхронизации обновлений между микросервисами до создания резервных копий данных для целей тестирования или разработки. Мы в VK Tech используем Debezium JDBC sink connector, чтобы строить перформанс-интеграции. Но в нагрузочных тестах столкнулись с проблемой производительности, которая не решалась никакими обходными путями. Поэтому нам пришлось детально погрузиться в нюансы обработки событий в Debezium JDBC connector.

Привет, Хабр. Меня зовут Артём Дубинин. Я старший разработчик Backend в команде Tarantool CDC — решения для репликации данных в реальном времени между системами управления базами данных (СУБД). В этой статье я изложу свою интерпретацию создания Debezium, расскажу о том, как работает Debezium JDBC connector, а также о нашем варианте оптимизации перформанса, который попал в Open-source версию.

Читать далее

Второй мозг для автора — собираем экосистему из нейросетей и заметок

Уровень сложностиПростой
Время на прочтение15 мин
Количество просмотров3.5K

Второй мозг для автора — собираем экосистему из нейросетей и заметок

Привет, Хабр! Эта статья - результат совместного труда двух авторов. В своей карьере мы перепробовали много различных методик. Мы искали способы «вытаскивать» мысли из головы в цифровое пространство, где их удобнее структурировать, чтобы затем превратить в связный живой текст. Делимся своим опытом работы с инструментами написания и редактирования текстов, среди которых есть как проверенные временем, так и появившиеся сравнительно недавно.

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

Как инженер-программист сделал синтезатор для дочери с помощью Arduino и 3D-принтера

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

На свой первый день рождения моя дочь получила развивающую доску Монтессори, полную переключателей и светодиодов. 

Наблюдая за тем, как она крутит ручки и переключает тумблеры, я вспомнил о панели управления синтезатором и задумался, а можно ли создать музыкальную версию доски Монтессори? Что-то простое, тактильное и креативное, не требующее нажатия кнопок для поддержания звука. 

Год спустя я решился воплотить эту идею в жизнь. И так как у меня не было опыта в создании такого рода устройств, то проект стал для меня поводом изучить микроконтроллеры, САПР, проектирование печатных плат и 3D-печать.

В результате получилась музыкальная игрушка, в которой есть встроенный синтезаторный модуль, динамик, элементы управления темпом, громкостью, тональностью и инструментами (ползунки и «крутилки»), OLED-экран с танцующей пандой. И всё это в корпусе, напечатанном на 3D-принтере.

Прототип вы видите на фото, а демонстрация финальной версии в конце статьи.

Читать далее

Книга: «Алгоритмы машинного обучения»

Время на прочтение2 мин
Количество просмотров3.4K

Привет, Хаброжители!

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

В книге анализируются и объясняются десятки алгоритмов, применяемых в различных сферах, в частности финансах, компьютерном зрении и обработке естественного языка. Каждый алгоритм сначала выводится математически, а потом иллюстрируется кодом на Python, снабженным подробными пояснениями и информативными графиками. Особую ценность представляет данная автором ясная интерпретация байесовских алгоритмов для моделей Монте-Карло и марковских цепей.

Читать далее

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

Open source понарошку? Продолжающийся переход на source available, а также набирающий обороты феномен openwashing

Время на прочтение8 мин
Количество просмотров2.2K

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

Читать далее

Типичные проблемы с Docker и как их решать

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

Docker прочно вошел в нашу жизнь, став стандартом де-факто для контейнеризации приложений. Он обещает среду «работает на моей машине — будет работать везде», и в большинстве случаев так и есть. Но рано или поздно каждый разработчик или DevOps-инженер сталкивается с ситуацией, когда эта магия дает сбой. Контейнер не запускается, приложение не видит друг друга, а диск сервера таинственным образом переполняется.

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

Читать далее

Docker для самых маленьких: упаковываем Python-бота за 10 минут

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

Хватит запускать ботов кнопкой Run в PyCharm! Пора осваивать промышленные стандарты.
В этом туториале я простым языком объясняю, как работает Docker и зачем он нужен Python-разработчику. Мы возьмем простого Telegram-бота, напишем для него конфиг, настроим .dockerignore и запустим в изолированном контейнере. Идеально для тех, кто давно хотел разобраться с Докером, но боялся сложных инструкций.

Читать далее

Интеграция пеcочницы с CommuniGate: наш опыт работы с API

Время на прочтение6 мин
Количество просмотров361

Привет, Хабр! На связи Евгений Лавров, архитектор отдела инжиниринга комплексных проектов компании Positive Technologies. Я занимаюсь разработкой проектных решений и внедрением наших продуктов совместно с партнерами или собственными силами у клиентов. Сегодня я хочу рассказать об интеграции нашей песочницы PT Sandbox со сторонними системами, даже если они не заявлены как поддерживаемые в документации, на примере интеграции с почтовым сервером CommuniGate Pro.

Читать далее

Как я сделал senior-стол за $1000

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

Я решил сделать стол из дубового слэба толщиной 10 см и весом 340 кг. С точки зрения сложности: это senior стол. Вот мои выводы, ошибки, инженерные решения и расходы.

Читать далее

1 ИИ, 100 чашек кофе и 365 дней: как превратить онбординг инженеров техподдержки в квест

Время на прочтение10 мин
Количество просмотров565

Дисклеймер: Это не пошаговый гайд «сделай сам», а честный рассказ о годовом пути, ошибках и находках. Возможно, он вдохновит кого-то из вас на свои проекты — будем рады обратной связи!

Читать далее

Как производительность Low-code платформы SimpleOne выросла в 16 раз: архитектура, практика и метрики

Время на прочтение9 мин
Количество просмотров699

Производительность Low-code платформы — один из самых спорных вопросов для enterprise-сегмента. Интерпретация настроек «на лету» создает дополнительную нагрузку по сравнению с готовыми решениями, но дает бизнесу гибкость и возможность быстро менять процессы. Работая с крупнейшими заказчиками, мы сделали производительность стратегическим приоритетом и сейчас продолжаем развивать платформу под требования больших компаний. С 2023 года производительность SimpleOne выросла с 56 тысяч до миллиона пользовательских обращений в месяц — это результат системной работы над архитектурой платформы.

Рассказываем о нашем пути и архитектурных решениях, которые позволили увеличить производительность Low-code платформы.

Читать далее