Обновить

Все потоки

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

Прекратите создавать интерфейсы

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

Я пишу всякое на Go в Ви.Tech (IT-дочка ВсеИнструменты.ру) и как и все, люблю подискутировать на технические темы.

У этой заметки сложная судьба, мне загорелось написать ее еще летом, но совершенно не хотел говорить об очевидных вещах и писать миллион первую статью со ссылкой на гугловский go code review comments. Тема уже разобрана всеми кому не лень, на русском языке вот у  Николая @JustSkiv Тузова, есть замечательное видео на его ютуб канале, раскладывающее по полочкам, для чего это нужно.

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

Читать далее

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

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

Представьте: 23:00, вы сидите перед пустым PowerPoint'ом, завтра в 9 утра защита. Курсач на 40 страниц лежит... ну вы поняли. И непонятно вообще, как эту простыню текста превратить в 15 нормальных слайдов, которые можно показать преподу. Знакомо? Думаю, да.

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

Читать далее

Koda CLI: AI-помощник прямо в терминале – бесплатно, без VPN, с топовыми моделями

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

Мы в Koda верим, что современные инструменты должны быть доступны каждому разработчику, независимо от инфраструктурных ограничений, VPN или способов оплаты. Поэтому после релиза Koda для VS Code мы сделали следующий шаг – представляем Koda CLI.

Это полноценный AI-помощник в терминале, который работает без VPN, мгновенно отвечает, понимает русский язык и предоставляет лучшие модели – прямо там, где вы кодите каждый день.

Что умеет Koda CLI?

Читать далее

Балансировка нагрузки в Яндексе: новые проблемы роста

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

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

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

Читать далее

Как настроить Nginx, чтобы выдержать DDoS

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

Привет, Хабр! Меня зовут Сергей Черкашин, и я — руководитель команды по эксплуатации систем и защиты от DDoS-атак в Wildberries & Russ.

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

Читать далее

Kafka реально быстрая, но я возьму Postgres

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

Команда Go for Devs подготовила перевод статьи о том, почему большинству проектов не нужна Kafka, «веб-масштабные» очереди и зоопарк из пяти баз данных. Автор на бенчмарках показывает, как далеко можно уехать на одном Postgres — и заодно разбирает, почему карго-культ масштабирования и «инфраструктура ради резюме» только мешают делать работу.

Читать далее

ИИ в программной инженерии: обзор практик, инструментов и проблем

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

Привет, Хабр! Меня зовут Николай Бушков, я работаю архитектором в команде Engineering Productivity R&D в Т-Банке (группа «Т-Технологии»). В начале лета я выступал на конференции MTS True Tech Day c докладом «Не эксперимент, а стратегия: путь к системному использованию AI в SDLC». А сейчас хочу поделиться текстовой версией описания сценариев использования искусственного интеллекта (ИИ) в программной инженерии, которые реализуются у нас в компании. Уверен, наш опыт будет полезен многим для генерации и фильтрации идей применения ИИ, а также сравнения их с положением дел в ваших рабочих процессах. В конце статьи кратко сформулирую наше видение дальнейшего развития и приглашу поучаствовать в  исследовании ИИ в инженерной культуре России.

Читать далее

НДС для «упрощенцев» с оборотом от 20-15-10 млн рублей: кому придется платить налог и как избежать ошибок

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

Хоть стой, хоть падай — так встретил российский бизнес налоговые нововведения 2026 года. Во-первых, «взрослый» НДС, державшийся до этого 6 лет на уровне 20%, увеличивается до 22%. Во-вторых, порог применения НДС для фирм на упрощенке (УСН) снижается до 20-15-10 млн рублей. Чем это чревато для бизнеса?

Узнать, чем это чревато

Как установить Kubernetes-платформу за 10 минут через веб-интерфейс

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

В статье показываем, как за 10 минут развернуть Kubernetes-платформу с помощью графического установщика Deckhouse Kubernetes Platform. Пройдём все этапы: настроим статический или облачный кластер, подключим модуль виртуализации и сразу начнём работать через встроенный веб-интерфейс — без DNS, Ingress и ручного YAML.

Читать далее

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

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

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

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

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

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

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

Читать далее

Как мы создаём HD-карты для автономного транспорта: устройство map-editor

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

Привет! Меня зовут Коля, я руковожу группой разработки геосервисов автономного транспорта. Одно из наших направлений деятельности — разработка инструментов картографии. Обычная дорожно‑уличная сеть подходит людям и приложениям вроде навигаторов, но роботам этого мало: им необходимы HD‑карты, способные описывать окружающий мир с десятками слоёв атрибутов и точностью до сантиметров. Такие карты кладут в основу алгоритмов локализации, навигации и поведения, и именно от их качества зависит безопасность и эффективность автономного транспорта.

Создание подробных HD‑карт — непростая инженерная задача: каждая карта складывается из данных лидаров, спутников и других источников, проходит десятки стадий обработки и валидации, а для редактирования используются специальные геоинформационные редакторы. 

В этой статье мы разберём, как устроен один из ключевых инструментов — map‑editor, обеспечивающий создание и развитие HD‑карт для роботов, какие технические вызовы встречаются по пути и как мы с ними справляемся. Среди наших технологий — FastAPI и C++ для серверной логики, PostgreSQL с PostGIS для работы с геометрией, интеграция с облачными хранилищами и распределёнными вычислениями, а также элементы автоматизации на базе ML.

Читать далее

Как я искал работу в IT и получил 5 офферов

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

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

Читать далее

Закрепи меня покрепче: Pin, самоссылки и почему всё падает

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

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

Сегодня я хочу поделиться своим опытом и знаниями о pinning в Rust, замечательной конструкции Pin, которая поначалу вызывает вопросы, зачем нужен какой-то пин, если и без него всё работало?

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

Закрепиться

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

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

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

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

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

Читать далее

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

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

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 версию.

Читать далее

Samsung Q1: крошечный ПК, который пытался изменить мир

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

В первой половине «нулевых», в эпоху популярности «наладонников» и высоких цен на ноутбуки у потребителей не было богатых альтернатив: либо выкладывай круглую сумму за более-менее мощный ноут, либо довольствуйся возможностями Windows CE или Palm OS на карманном устройстве. Именно в этот момент корпорация Samsung представила по-настоящему уникальный для своего времени концепт под названием Q1: 7-дюймовый компьютер с ЖК-экраном и полноценной Windows XP на борту. Девайс имел настоящий жёсткий диск объемом 40 ГБайт, модули Wi-Fi и Bluetooth, а весил менее килограмма. Революционное устройство? Несомненно, но смелые инженерные решения, заложенные в его конструкцию, сделали Samsung Q1 настоящим воплощением технических компромиссов, вызывавших у пользователей множество вопросов.

Интересно, каких?

Пример реализации агентного RAG'а

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

Многие знают, что такое RAG. Ну, или по крайней мере слышали о нем :) Но не все знают, что типичная архитектура RAG способна отвечать далеко не на все вопросы. У агентного RAG в этом плане гораздо больше возможностей. Агентный RAG может анализировать запрос, составлять план действий и вызвать внешние инструменты. И все это для выполнения поставленной задачи.

В этой статье на практическом примере разберем как с помощью marker'а, Qwen3-14B, MCP-сервера, энкодера FRIDA и библиотеки Agno создать несложный агентный RAG.

---------------

Мои курсы: Разработка LLM с нуля | Алгоритмы Машинного обучения с нуля

Читать далее

Собираем простейшую RAG-систему на PHP с фреймворком Neuron AI за вечер

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

RAG (Retrieval‑Augmented Generation или генерация, дополненная поиском) — это метод искусственного интеллекта, сочетающий генеративную большую языковую модель (LLM) с внешней базой знаний для создания более точных, контекстно‑зависимых и актуальных ответов. Принцип его работы заключается в том, что сначала извлекается релевантная информация из набора документов или источников данных, а затем эта информация передается в LLM для формирования окончательного ответа. Этот процесс позволяет модели выдавать более точные ответы, менее подверженные «галлюцинациям», и ее можно обновлять без дорогостоящего переобучения.

Сегодня мы разберёмся, как собрать базовую RAG‑систему на PHP (да, да, не надо удивляться) с помощью фреймворка Neuron AI. Это будет наш маленький proof‑of‑concept — минимально работающий, но вполне реальный пример.

Ну что, начнём генерацию?

Читать далее

Гитарные эхо: цифровой и аналоговый дилей

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

Привет, Хабр! Эффекты эха для инструментальной и вокальной музыки построены по единому несложному принципу: пакет мгновенных значений напряжений сигнала за определённый промежуток времени записывается в цифровом формате либо в виде реальных потенциалов на затворах полевых транзисторов, а затем воспроизводится с задержкой.

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

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

Читать далее

Как мы снижали time to market в MLE-команде

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

Привет Хабр! Рано или поздно на горизонте появляется одна из важных метрик в разработке — time to market или TTM, которая напрямую может влиять на все процессы внутри компании. Хочу поделиться примером, как мы снижали TTM в команде и почему это было, с одной стороны, непросто, а с другой стороны — интересно.

Читать далее