Обновить
0
@LexTutorread⁠-⁠only

Пользователь

Отправить сообщение

Как мы учим роботов понимать физический мир: путь от специалистов к генералистам

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

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

Меня зовут Евгений Михайленко, я руковожу бизнесом и продуктом Physical AI в команде Яндекс Роботикс. В этой статье я разберу, как современные архитектуры и концепт Guidance, который мы объединили с тестом Возняка, помогают преодолеть разрыв между роботами‑специалистами и будущими генералистами.

Читать далее

Базы данных-2025: ретроспектива

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

Базы данных прибыльнее нефти? В 2025 году Ларри Эллисон стал самым богатым человеком в истории человечества, обойдя Рокфеллера. Тем временем на рынке M&A настоящий пожар: миллиардные сделки, банкротства и судебные иски MongoDB против конкурентов. Перевели подробный разбор того, кто выиграл, а кто проиграл в битве за данные в этом году.

Читать далее

Модуль Python для обновления данных в БД — DBMerge

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

Хочу рассказать о своей разработке и поделиться ей с сообществом habr в виде готового модуля для Python.

Этот модуль решает задачу обновления данных в базе данных. Он выполняет insert/update/delete в одном действии.

Модуль DBMerge проектировался для упрощения ETL процессов по загрузке данных из множества внешних источников в SQL базу.

Для взаимодействия с базой данных используется SQLAlchemy и ее универсальные механизмы, таким образом, разработка не имеет привязки к конкретной БД. (На момент написания статьи, детальные тесты проводились для PostgreSQL, MariaDB, SQLite, MS SQL)

Принцип действия

Принцип действия следующий: модуль создает временную таблицу в базе и записывает в нее весь входящий датасет через операцию массового insert. Далее он выполняет инструкции UPDATE, INSERT, DELETE для целевой таблицы.

Читать далее

Как ИИ помогает упростить BPMN-диаграммы

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

Звучит знакомо, когда пытаешься объяснить или понять процессы, но при просмотре диаграмм, которые их представляют, в итоге запутываешься в куче стрелок и квадратов? 😥 Несколько дней назад я наткнулся на очень интересное исследование, которое объясняет, как мы можем использовать языковые модели, чтобы упростить эту работу. По мере роста и усложнения организаций их бизнес-процессы тоже становятся сложнее. При составлении диаграмм этих процессов модели обычно становятся более детализированными и трудными для понимания — до такой степени, что может понадобиться больше одной чашки кофе ☕️, чтобы их разобрать.

В этом посте я хочу суммировать для вас это исследование и показать, как LLM могут стать вашими союзниками в распутывании этих диаграмм и превращении их из запутанных украшений в полезные инструменты. Если хотите углубиться, оставлю ссылку на оригинальное исследование: Leveraging Large Language Models for Enhanced Process Comprehension.

Идея простая, но мощная: сочетание абстракции моделей процессов с техниками промптинга, чтобы ИИ мог анализировать и интерпретировать диаграммы более ясно и эффективно. Кроме того, я поделюсь кодом, чтобы вы могли поэкспериментировать сами и открыть новые применения. Поехали! 🛠️✨

Читать далее

Мифы про REST API. Часть 1

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

Как говорится, в споре рождается истина. И этот случай не стал исключением. Часто проектирую запросы, консультирую аналитиков, сама консультируюсь у разработчиков и заметила, что иногда мы по-разному понимаем некоторые аспекты REST. Когда я стала погружаться в тему, то материала набралось столько, что одной статьей не обойтись. Понимание мифов позволяет делать более осознанный выбор при проектировании.
С вами Дарья Борисова, системный аналитик из ПСБ, и я начинаю цикл статей «Мифы о REST».

Читать далее

Как мы учим Яндекс Карты предупреждать о манёврах: без использования LLM, но с помощью водителей

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

Что может быть проще, чем сгенерировать голосовую подсказку для навигатора? Считаем угол поворота — озвучиваем манёвр. Именно так наша система и работала годами, пока не обросла таким количеством эвристик и региональных «костылей», что её поддержка стала дороже разработки. Добавление нового правила для одной страны ломало логику в другой, а простая задача «отличить плавный изгиб от поворота» превращалась в детектив.

Меня зовут Дмитрий, и я руковожу ML‑разработкой в команде автонавигации Яндекс Карт. Вместе с моим коллегой Альбертом Юсуповым (@al‑iusupov) в этой статье мы поделимся историей полного переосмысления системы генерации дорожных аннотаций. Расскажем, почему решили отказаться от десятков хитрых условий в коде, а также почему заманчивая идея отдать всё на откуп большим нейросетям (VLM, LLM) провалилась. И, наконец, как пришли к элегантному решению: создали уникальный датасет с помощью сотен водителей‑экспертов и обучили быструю и точную ML‑модель, которая работает по принципу «меньше, но лучше».

Читать далее

Лучшие практики в Sequence-диаграммах для системных аналитиков

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

В данной статье я хочу поделиться опытом и рассказать о том, как системным аналитикам улучшить Sequence-диаграммы (диаграммы последовательностей) с помощью лучших практик.

Я покажу, как некоторые подходы из мира программирования (те самые best practices и идеи из Clean Code) помогают рисовать sequence-диаграммы чище и понятнее. 

Читать далее

Как виртуальная очередь заказов в Такси помогает уехать в пиковый спрос

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

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

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

Читать далее

BPMN для аналитиков и тимлидов (часть 1)

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

Привет, Хабр! Давайте знакомиться! Меня зовут Дима. Я много лет работаю системным аналитиком.

За моими плечами – десятки проектов по разработке и внедрению программного обеспечения, где я не только проектировал, но и проводил ревью процессов других аналитиков и специалистов заказчика. Кроме того, регулярно проводил обучение по нотации BPMN (Business Process Model and Notation).

В процессе работы я активно изучал статьи, книги, стандарты и проходил курсы по проектированию процессов. Для маленьких учебных задач с несколькими операция и условиями эти материалы были очень полезны. Но когда дело доходило до реальных бизнес-процессов – они не помогали.

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

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

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

Читать далее

Docs as Code – Code as Docs – No Docs

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

Какие главные проблемы технической документации? Во-первых, ее нет, во-вторых, если она есть, то не актуальна.

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

Существует три класса задач, которые решает техническая документация:

1. Описать наши требования к системе и принятые решения

2. Описать текущее состояние системы

3. Объяснить пользователю, как работать (\разворачивать\эксплуатировать) с системой.

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

Второй тип документации — описание текущего состояния системы. Так как мы не хотим разрыва между описанием системы и самой системой, мы будем пытаться генерировать человеко-читаемое описание из кода и конфигурации. Назовем этот подход Code as Docs.

Третий тип — различные виды пользовательской документации. Эту форму документации мы постараемся минимизировать, сделав понятным наши интерфейсы и встроив подсказки прямо в процесс работы пользователя с системой. Назовем это подходом No Docs.

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

Читать далее

Снижаем когнитивную сложность при проектировании архитектуры приложения

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

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

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

Пора этой порочной практике сказать решительное НЕТ!

Сказать решительное НЕТ

Брокеры сообщений Kafka и RabbitMQ в реальной жизни

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

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

Меня зовут Александр Борецкий, я архитектор в Т1 Облако. Поделюсь своим опытом работы с самыми популярными из брокеров сообщений — Kafka и RabbitMQ. Расскажу, как выбрать и настроить подходящий брокер, а также какие архитектурные особенности есть у каждого из них.

Читать далее

Что такое API Gateway: 10 главных функций и роль в архитектуре микросервисов [полный гайд]

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

Микросервисная архитектура уже давно стала нормой для IT-продуктов. И одну из центральных ролей в таком подходе занимает API Gateway.

В этой статье разберём, что такое API Gateway, зачем он нужен в микросервисной архитектуре, какие 10 ключевых функций он выполняет, и является ли он потенциальной точкой отказа в системе.

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

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

Оглавление:
Что такое API Gateway
10 главных функций API Gateway
Виды API Gateway
API Gateway - центральная точка отказа
Примеры схем архитектуры с API Gateway в нотации C4 (и не только)
Заключение и полезные ссылки

Читать далее

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность