# Введение в VSLAM
BotHabr (tgi,2) → All – 12:27:55 2025-09-22
Опубликовано: Fri, 05 Sep 2025 15:12:07 GMT
Канал: Все статьи подряд / Робототехника / Хабр
Я начинаю серию статей о Visual SLAM. Я давно хотел разобраться в этой непростой теме и решил что будет полезно параллельно делиться информацией с коммюнити робототехников.В этой серии статей я буду рассказывать об основных механизмах работы VSLAM без глубокого погружения в низкоуровневые детали. Для любопытных читателей я буду давать ссылки на полезные материалы где можно ознакомиться с темой более детально. Моей целью является дать читателю общее понимание работы визуального SLAM. Также я буду рассматривать популярные алгоритмы VSLAM и расскажу какие пакеты для VSLAM доступны в платформе для разработки робототехники ROS 2.В первой статье мы познакомимся с визуальным SLAM в общих чертах с точки зрения его применения в робототехнике. Робот должен выполнять некоторые специфические задачи, например доставку грузов, чистку тротуаров, дезинфекцию воздуха (в больнице). В большинстве случаев для выполнения таких задач роботу требуется понимать текущее положение в пространстве и быстро перемещаться в целевую точку. Чаще всего окружающее пространство в котором оперирует робот представляет собой довольно сложную среду со множеством объектов (часть из которых постоянно перемещаются). Для эффективного перемещения по такой среде роботу нужно иметь карту пространства в некотором удобном формате. Для построения и локализации на такой карте используется SLAM. Суть SLAM заключается в том что робот перемещается в пространстве и параллельно строит карту местности.Существует несколько разных типов SLAM которые классифицируются в зависимости от типа сенсоров, которые используются для получения данных об окружающей среде. [ Например, для получения сенсорных данных используются ]Мы будем рассматривать только визуальный SLAM. Это такой вид SLAM, где в качестве источника сенсорных данных используется камера (монокулярная, стерео или RGB‑D).Существует несколько видов Визуального SLAM. [ написать какие видв Visual SLAM (monocular, visual + IMU etc) ] Читать далее]]>
https://habr.com/ru/articles/942410/
BotHabr (tgi,2) → All – 12:27:55 2025-09-22
Опубликовано: Fri, 05 Sep 2025 15:12:07 GMT
Канал: Все статьи подряд / Робототехника / Хабр
Я начинаю серию статей о Visual SLAM. Я давно хотел разобраться в этой непростой теме и решил что будет полезно параллельно делиться информацией с коммюнити робототехников.В этой серии статей я буду рассказывать об основных механизмах работы VSLAM без глубокого погружения в низкоуровневые детали. Для любопытных читателей я буду давать ссылки на полезные материалы где можно ознакомиться с темой более детально. Моей целью является дать читателю общее понимание работы визуального SLAM. Также я буду рассматривать популярные алгоритмы VSLAM и расскажу какие пакеты для VSLAM доступны в платформе для разработки робототехники ROS 2.В первой статье мы познакомимся с визуальным SLAM в общих чертах с точки зрения его применения в робототехнике. Робот должен выполнять некоторые специфические задачи, например доставку грузов, чистку тротуаров, дезинфекцию воздуха (в больнице). В большинстве случаев для выполнения таких задач роботу требуется понимать текущее положение в пространстве и быстро перемещаться в целевую точку. Чаще всего окружающее пространство в котором оперирует робот представляет собой довольно сложную среду со множеством объектов (часть из которых постоянно перемещаются). Для эффективного перемещения по такой среде роботу нужно иметь карту пространства в некотором удобном формате. Для построения и локализации на такой карте используется SLAM. Суть SLAM заключается в том что робот перемещается в пространстве и параллельно строит карту местности.Существует несколько разных типов SLAM которые классифицируются в зависимости от типа сенсоров, которые используются для получения данных об окружающей среде. [ Например, для получения сенсорных данных используются ]Мы будем рассматривать только визуальный SLAM. Это такой вид SLAM, где в качестве источника сенсорных данных используется камера (монокулярная, стерео или RGB‑D).Существует несколько видов Визуального SLAM. [ написать какие видв Visual SLAM (monocular, visual + IMU etc) ] Читать далее]]>
https://habr.com/ru/articles/942410/
# Робомедведи-спасатели
BotHabr (tgi,2) → All – 12:27:54 2025-09-22
Опубликовано: Sun, 07 Sep 2025 07:01:20 GMT
Канал: Все статьи подряд / Робототехника / Хабр
Тема спасения альпинистов захватила интернет в последний месяц. Спасатели рискуют своей жизнью, но во многих случаях эвакуировать людей с больших высот существующими способами невозможно. Как спасти альпинистов и не только их]]>
https://habr.com/ru/articles/944624/
BotHabr (tgi,2) → All – 12:27:54 2025-09-22
Опубликовано: Sun, 07 Sep 2025 07:01:20 GMT
Канал: Все статьи подряд / Робототехника / Хабр
Тема спасения альпинистов захватила интернет в последний месяц. Спасатели рискуют своей жизнью, но во многих случаях эвакуировать людей с больших высот существующими способами невозможно. Как спасти альпинистов и не только их]]>
https://habr.com/ru/articles/944624/
# Горизонты нейроимплантации и меш-электроника
BotHabr (tgi,2) → All – 12:27:54 2025-09-22
Опубликовано: Sun, 07 Sep 2025 12:58:15 GMT
Канал: Все статьи подряд / Робототехника / Хабр
18 марта 2025 года практически незамеченным прошло одно печальное событие — в преклонном возрасте 44 лет скончался бонобо Канзи. Это был достоверно самый выдающийся ум из представителей своего вида. Один из моих первых постов на Хабре был посвящён этому выдающемуся примату, и прожитая им феноменальная жизнь интересовала меня как модель существования одинокого человека (впрочем, у Канзи была семья) в кругу высокоразвитых гуманоидов, интеллект которых остаётся для этой особи непостижимым и недостижимым. Размышляя о Канзи, я опять задумался, что буквально по пальцам можно пересчитать удачные фантастические сюжеты, в которых человек приобретает суперинтеллект и не знает, что с ним делать, либо (фабула обязывает) страдает от такого буста. Корифеи жанра наверняка вспомнят какие-то сюжеты кроме «Газонокосильщика» и «Цветов для Элджернона». Но в настоящее время, когда имплантаты Neuralink уверенно вышли в продакшен, аппаратное усиление мозга без всякой фармацевтики уже замаячило на горизонте, о чём и поговорим под катом. Читать далее]]>
https://habr.com/ru/articles/944738/
BotHabr (tgi,2) → All – 12:27:54 2025-09-22
Опубликовано: Sun, 07 Sep 2025 12:58:15 GMT
Канал: Все статьи подряд / Робототехника / Хабр
18 марта 2025 года практически незамеченным прошло одно печальное событие — в преклонном возрасте 44 лет скончался бонобо Канзи. Это был достоверно самый выдающийся ум из представителей своего вида. Один из моих первых постов на Хабре был посвящён этому выдающемуся примату, и прожитая им феноменальная жизнь интересовала меня как модель существования одинокого человека (впрочем, у Канзи была семья) в кругу высокоразвитых гуманоидов, интеллект которых остаётся для этой особи непостижимым и недостижимым. Размышляя о Канзи, я опять задумался, что буквально по пальцам можно пересчитать удачные фантастические сюжеты, в которых человек приобретает суперинтеллект и не знает, что с ним делать, либо (фабула обязывает) страдает от такого буста. Корифеи жанра наверняка вспомнят какие-то сюжеты кроме «Газонокосильщика» и «Цветов для Элджернона». Но в настоящее время, когда имплантаты Neuralink уверенно вышли в продакшен, аппаратное усиление мозга без всякой фармацевтики уже замаячило на горизонте, о чём и поговорим под катом. Читать далее]]>
https://habr.com/ru/articles/944738/
# Складская логистика: комплексная оптимизация и повышение эффективности в эпоху цифровой трансформации
BotHabr (tgi,2) → All – 12:27:54 2025-09-22
Опубликовано: Mon, 08 Sep 2025 09:04:30 GMT
Канал: Все статьи подряд / Робототехника / Хабр
В современном мире складская логистика играет ключевую роль в обеспечении бесперебойной работы цепочек поставок. Оптимизация и повышение эффективности работы склада становятся приоритетной задачей для бизнеса, стремящегося к сокращению затрат и повышению конкурентоспособности. При этом, все больше внимания со временем начинает уделяться не только производительности и своевременности обработки грузов, но и качеству обеспечения процесса обработки и транспортировки грузов. Читать далее]]>
https://habr.com/ru/companies/logistix/articles/944900/
BotHabr (tgi,2) → All – 12:27:54 2025-09-22
Опубликовано: Mon, 08 Sep 2025 09:04:30 GMT
Канал: Все статьи подряд / Робототехника / Хабр
В современном мире складская логистика играет ключевую роль в обеспечении бесперебойной работы цепочек поставок. Оптимизация и повышение эффективности работы склада становятся приоритетной задачей для бизнеса, стремящегося к сокращению затрат и повышению конкурентоспособности. При этом, все больше внимания со временем начинает уделяться не только производительности и своевременности обработки грузов, но и качеству обеспечения процесса обработки и транспортировки грузов. Читать далее]]>
https://habr.com/ru/companies/logistix/articles/944900/
# SCARA-based робот 2016, или как мы поехали в Ухань на международные соревнования по робототехнике Robocon 2018. Часть 1
BotHabr (tgi,2) → All – 12:27:53 2025-09-22
Опубликовано: Mon, 08 Sep 2025 10:50:45 GMT
Канал: Все статьи подряд / Робототехника / Хабр
Предыстория вопроса. Знакомство с китайской компанией Dobot началось год назад с проекта «Кубики».Для проекта требовался небольшой недорогой механизм, способный строить башню из кубиков. Исследование тематических ресурсов мне удалось составить небольшой перечень возможных конструкций. Так же был найден интересный ресурс на сайте МФТИ — лабораторная работа «Робот строит башню». Читать далее]]>
https://habr.com/ru/articles/944956/
BotHabr (tgi,2) → All – 12:27:53 2025-09-22
Опубликовано: Mon, 08 Sep 2025 10:50:45 GMT
Канал: Все статьи подряд / Робототехника / Хабр
Предыстория вопроса. Знакомство с китайской компанией Dobot началось год назад с проекта «Кубики».Для проекта требовался небольшой недорогой механизм, способный строить башню из кубиков. Исследование тематических ресурсов мне удалось составить небольшой перечень возможных конструкций. Так же был найден интересный ресурс на сайте МФТИ — лабораторная работа «Робот строит башню». Читать далее]]>
https://habr.com/ru/articles/944956/
# Вперед в будущее, или Когда заводами будут управлять роботы
BotHabr (tgi,2) → All – 12:27:53 2025-09-22
Опубликовано: Thu, 18 Sep 2025 07:00:24 GMT
Канал: Все статьи подряд / Робототехника / Хабр
Привет, Хабр! Меня зовут Дмитрий Тетерюков, и я профессор Центра системного проектирования Сколтеха. Работаю на стыке ИИ и роботов — там, где алгоритмы начинают взаимодействовать с физическим миром и ведут себя «по-человечески».В этом материале по мотивам моего доклада с True Tech Day я расскажу, как функционируют когнитивные роботы с физическим ИИ (Physical AI). Это направление, которое готовится перевернуть промышленность и стать многомиллиардным рынком. Сюда вкладываются гиганты вроде NVIDIA и Google. Physical AI — это не просто программы, а системы, которые способны мыслить, учиться и действовать в реальном мире. Разберемся, как когнитивные роботы принимают решения, какие вызовы стоят перед разработчиками и почему это самое крутое направление в ИИ прямо сейчас. Поехали! Читать далее]]>
https://habr.com/ru/companies/ru_mts/articles/948054/
BotHabr (tgi,2) → All – 12:27:53 2025-09-22
Опубликовано: Thu, 18 Sep 2025 07:00:24 GMT
Канал: Все статьи подряд / Робототехника / Хабр
Привет, Хабр! Меня зовут Дмитрий Тетерюков, и я профессор Центра системного проектирования Сколтеха. Работаю на стыке ИИ и роботов — там, где алгоритмы начинают взаимодействовать с физическим миром и ведут себя «по-человечески».В этом материале по мотивам моего доклада с True Tech Day я расскажу, как функционируют когнитивные роботы с физическим ИИ (Physical AI). Это направление, которое готовится перевернуть промышленность и стать многомиллиардным рынком. Сюда вкладываются гиганты вроде NVIDIA и Google. Physical AI — это не просто программы, а системы, которые способны мыслить, учиться и действовать в реальном мире. Разберемся, как когнитивные роботы принимают решения, какие вызовы стоят перед разработчиками и почему это самое крутое направление в ИИ прямо сейчас. Поехали! Читать далее]]>
https://habr.com/ru/companies/ru_mts/articles/948054/
# Надежное программирование — часть 3. Финал (2019)
BotHabr (tgi,2) → All – 12:27:51 2025-09-22
Опубликовано: Mon, 14 Jul 2025 21:26:54 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Немного рассуждений о языках программирования (ЯП) с уклоном на надежное и безопасное программирование.Статья не публиковалась ранее, хотя была написана в 2019г, теперь можно смотреть как некую ретроспективу. Чем и воспользуюсь, вставляя замечания о былом по тексту (тег Upd).Но тормозит развитие серии, ибо вышли уже 3 части и несколько переводов в тему: Читать далее]]>
https://habr.com/ru/articles/927722/
BotHabr (tgi,2) → All – 12:27:51 2025-09-22
Опубликовано: Mon, 14 Jul 2025 21:26:54 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Немного рассуждений о языках программирования (ЯП) с уклоном на надежное и безопасное программирование.Статья не публиковалась ранее, хотя была написана в 2019г, теперь можно смотреть как некую ретроспективу. Чем и воспользуюсь, вставляя замечания о былом по тексту (тег Upd).Но тормозит развитие серии, ибо вышли уже 3 части и несколько переводов в тему: Читать далее]]>
https://habr.com/ru/articles/927722/
# [Перевод] Ай! Не туда! Как злоупотреблять симлинками и повышать привилегии (LPE-шиться) в Windows
BotHabr (tgi,2) → All – 12:27:51 2025-09-22
Опубликовано: Tue, 15 Jul 2025 08:26:43 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Привет всем! Меня зовут Михаил Жмайло, я пентестер в команде CICADA8.Символические ссылки присутствуют в Windows практически с момента его появления. Однако лишь немногие курсы по анализу защищенности смогут раскрыть весь их потенциал и добиться LPE!Моя статья подробно расскажет о символических ссылках, специфике работы с ними, а также наглядно покажет варианты их злоупотребления для получения LPE. Читать далее]]>
https://habr.com/ru/articles/927600/
BotHabr (tgi,2) → All – 12:27:51 2025-09-22
Опубликовано: Tue, 15 Jul 2025 08:26:43 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Привет всем! Меня зовут Михаил Жмайло, я пентестер в команде CICADA8.Символические ссылки присутствуют в Windows практически с момента его появления. Однако лишь немногие курсы по анализу защищенности смогут раскрыть весь их потенциал и добиться LPE!Моя статья подробно расскажет о символических ссылках, специфике работы с ними, а также наглядно покажет варианты их злоупотребления для получения LPE. Читать далее]]>
https://habr.com/ru/articles/927600/
# Запускаем несколько интерпретаторов в коде на Python — невероятная скорость
BotHabr (tgi,2) → All – 12:27:51 2025-09-22
Опубликовано: Wed, 16 Jul 2025 08:06:08 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
5 июня 2025 года был принят PEP-0734. Судя по информации на официальном сайте, он является продолжением PEP-0554. Этот PEP предлагает добавить новый модуль, interpreters, для поддержки проверки, создания и запуска кода в нескольких интерпретаторах в текущем процессе. А если идти дальше, то он является частью PEP-0684, которые предлагает один GIL на интерпретатор.Несколько полноценных интерпретаторов работающих рядом. Какие плюсы?— Один процесс; — Один тред, но руками можно создавать еще; — По GILу на интерпретатор, все еще можно получить плюшки настоящей многозадачности по сети; — Работает с asyncio.В этой статье вы узнаете как работает эта фича под капотом и в реальном питоне. Приятного чтения! Читать далее]]>
https://habr.com/ru/companies/timeweb/articles/922314/
BotHabr (tgi,2) → All – 12:27:51 2025-09-22
Опубликовано: Wed, 16 Jul 2025 08:06:08 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
5 июня 2025 года был принят PEP-0734. Судя по информации на официальном сайте, он является продолжением PEP-0554. Этот PEP предлагает добавить новый модуль, interpreters, для поддержки проверки, создания и запуска кода в нескольких интерпретаторах в текущем процессе. А если идти дальше, то он является частью PEP-0684, которые предлагает один GIL на интерпретатор.Несколько полноценных интерпретаторов работающих рядом. Какие плюсы?— Один процесс; — Один тред, но руками можно создавать еще; — По GILу на интерпретатор, все еще можно получить плюшки настоящей многозадачности по сети; — Работает с asyncio.В этой статье вы узнаете как работает эта фича под капотом и в реальном питоне. Приятного чтения! Читать далее]]>
https://habr.com/ru/companies/timeweb/articles/922314/
# Тонкие настройки отправки сообщения в RabbitMQ
BotHabr (tgi,2) → All – 12:27:50 2025-09-22
Опубликовано: Wed, 16 Jul 2025 12:40:47 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Сообщения в RabbitMQ — это основные единицы данных, которые передаются между продюсерами и потребителями. Понимание их структуры и возможностей позволяет эффективно управлять потоком данных в распределенных системах. В этой статье мы разберем анатомию сообщений, обязательные и опциональные компоненты, а также реализуем пример отправки объекта с настройкой свойств Читать далее]]>
https://habr.com/ru/companies/otus/articles/928152/
BotHabr (tgi,2) → All – 12:27:50 2025-09-22
Опубликовано: Wed, 16 Jul 2025 12:40:47 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Сообщения в RabbitMQ — это основные единицы данных, которые передаются между продюсерами и потребителями. Понимание их структуры и возможностей позволяет эффективно управлять потоком данных в распределенных системах. В этой статье мы разберем анатомию сообщений, обязательные и опциональные компоненты, а также реализуем пример отправки объекта с настройкой свойств Читать далее]]>
https://habr.com/ru/companies/otus/articles/928152/
# От экосистемы KScience к опенсорс-хабу — рассказывает Александр Нозик, директор Центра научного программирования
BotHabr (tgi,2) → All – 12:27:50 2025-09-22
Опубликовано: Sun, 20 Jul 2025 12:40:41 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
В начале лета меня пригласили на Data Fest 2025 в секцию по менеджменту и научным инициативам в open source. Делюсь расшифровкой доклада, но не своего, а Александра Нозика, директора Центра научного программирования. Читать далее]]>
https://habr.com/ru/articles/929308/
BotHabr (tgi,2) → All – 12:27:50 2025-09-22
Опубликовано: Sun, 20 Jul 2025 12:40:41 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
В начале лета меня пригласили на Data Fest 2025 в секцию по менеджменту и научным инициативам в open source. Делюсь расшифровкой доклада, но не своего, а Александра Нозика, директора Центра научного программирования. Читать далее]]>
https://habr.com/ru/articles/929308/
# Бинарные семафоры на futex через parking_lot_core
BotHabr (tgi,2) → All – 12:27:50 2025-09-22
Опубликовано: Tue, 22 Jul 2025 06:02:21 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Привет, Хабр!Сегодня рассмотрим, как реализовать собственный бинарный семафор на основе futex и библиотеки parking_lot_core. Читать далее]]>
https://habr.com/ru/companies/otus/articles/929146/
BotHabr (tgi,2) → All – 12:27:50 2025-09-22
Опубликовано: Tue, 22 Jul 2025 06:02:21 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Привет, Хабр!Сегодня рассмотрим, как реализовать собственный бинарный семафор на основе futex и библиотеки parking_lot_core. Читать далее]]>
https://habr.com/ru/companies/otus/articles/929146/
# Embedded Linux для начинающих — Часть 2
BotHabr (tgi,2) → All – 12:27:49 2025-09-22
Опубликовано: Mon, 28 Jul 2025 06:00:08 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
В первой статье мы разобрались с базовыми терминами: что такое Embedded Linux, чем он отличается от обычного дистрибутива, из чего состоит, как происходит его загрузка и с помощью каких инструментов всё это можно собрать.Надеюсь, что те, кого эта тема зацепила, уже обзавелись платой с SoC на борту — без неё часть шагов будет упущена, а удовольствие от результата будет неполным.Пришло время перейти от теории к практике! Читать далее]]>
https://habr.com/ru/articles/925804/
BotHabr (tgi,2) → All – 12:27:49 2025-09-22
Опубликовано: Mon, 28 Jul 2025 06:00:08 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
В первой статье мы разобрались с базовыми терминами: что такое Embedded Linux, чем он отличается от обычного дистрибутива, из чего состоит, как происходит его загрузка и с помощью каких инструментов всё это можно собрать.Надеюсь, что те, кого эта тема зацепила, уже обзавелись платой с SoC на борту — без неё часть шагов будет упущена, а удовольствие от результата будет неполным.Пришло время перейти от теории к практике! Читать далее]]>
https://habr.com/ru/articles/925804/
# Как мыслит дизассемблер: внутренняя логика decompiler-инструментов на примере Ghidra и RetDec
BotHabr (tgi,2) → All – 12:27:49 2025-09-22
Опубликовано: Mon, 28 Jul 2025 14:06:55 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Декомпиляция — это не магия, а очень упрямый, скрупулёзный и грязноватый процесс, где каждый байт может оказаться фатальным. В этой статье я разложу по винтикам, как мыслят современные декомпиляторы: как они восстанавливают структуру кода, зачем строят SSA, почему не верят ни одному call’у на слово, и как Ghidra и RetDec реализуют свои механизмы под капотом. Это не глянцевый обзор, а техразбор, вплоть до IR, реконструкции управляющего графа и попытки угадать типы переменных там, где они уже испарились. Будет сложно, но весело. CALL more_text]]>
https://habr.com/ru/articles/931768/
BotHabr (tgi,2) → All – 12:27:49 2025-09-22
Опубликовано: Mon, 28 Jul 2025 14:06:55 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Декомпиляция — это не магия, а очень упрямый, скрупулёзный и грязноватый процесс, где каждый байт может оказаться фатальным. В этой статье я разложу по винтикам, как мыслят современные декомпиляторы: как они восстанавливают структуру кода, зачем строят SSA, почему не верят ни одному call’у на слово, и как Ghidra и RetDec реализуют свои механизмы под капотом. Это не глянцевый обзор, а техразбор, вплоть до IR, реконструкции управляющего графа и попытки угадать типы переменных там, где они уже испарились. Будет сложно, но весело. CALL more_text]]>
https://habr.com/ru/articles/931768/
# [Перевод] 6 приёмов, которые я использую, создавая отличный UX для Shell-скриптов
BotHabr (tgi,2) → All – 12:27:49 2025-09-22
Опубликовано: Tue, 29 Jul 2025 10:00:22 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Обязательно посмотрите shell-скрипт в репозитории — он чудо как хорош. Раскрашивает выходные данные, надёжный как скала… настоящий мастер-класс по созданию shell-скриптов.Спасибо Гуннару Морлингу за добрые слова!В январе 2024 года меня, вместе с несколькими дюжинами других гиков, повёрнутых на производительности, что называется, «заснайпили», заинтересовав участием в конкурсе Гуннара One Billion Row Challenge (1BRC).Гуннара, оценивающего результаты работы конкурсантов (бесплатно), очень быстро буквально завалил непрерывный поток решений. Я рискнул помочь ему автоматизировать оценку работ и написал Shell-скрипт, за что и получил от него вышеприведённый хвалебный отзыв. Он это сказал в выступлении на конференции JavaZone (# 1BRC‑Nerd Sniping the Java Community — Gunnar Morling). Посмотрите это выступление, если хотите узнать о подходах к повышению производительности кода, применённых на конкурсе.Здесь я расскажу о 6 приёмах, которые я использовал в Shell-скрипте для конкурса. Эти приёмы позволили сделать скрипт надёжным, безопасным и приятным в использовании для Гуннара. Читать далее]]>
https://habr.com/ru/companies/wunderfund/articles/932006/
BotHabr (tgi,2) → All – 12:27:49 2025-09-22
Опубликовано: Tue, 29 Jul 2025 10:00:22 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Обязательно посмотрите shell-скрипт в репозитории — он чудо как хорош. Раскрашивает выходные данные, надёжный как скала… настоящий мастер-класс по созданию shell-скриптов.Спасибо Гуннару Морлингу за добрые слова!В январе 2024 года меня, вместе с несколькими дюжинами других гиков, повёрнутых на производительности, что называется, «заснайпили», заинтересовав участием в конкурсе Гуннара One Billion Row Challenge (1BRC).Гуннара, оценивающего результаты работы конкурсантов (бесплатно), очень быстро буквально завалил непрерывный поток решений. Я рискнул помочь ему автоматизировать оценку работ и написал Shell-скрипт, за что и получил от него вышеприведённый хвалебный отзыв. Он это сказал в выступлении на конференции JavaZone (# 1BRC‑Nerd Sniping the Java Community — Gunnar Morling). Посмотрите это выступление, если хотите узнать о подходах к повышению производительности кода, применённых на конкурсе.Здесь я расскажу о 6 приёмах, которые я использовал в Shell-скрипте для конкурса. Эти приёмы позволили сделать скрипт надёжным, безопасным и приятным в использовании для Гуннара. Читать далее]]>
https://habr.com/ru/companies/wunderfund/articles/932006/
# Как Go зависает на Windows в CancelIoEx: история одного бага
BotHabr (tgi,2) → All – 12:27:48 2025-09-22
Опубликовано: Thu, 31 Jul 2025 09:51:26 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Я не считаю себя специалистом по Go и лишь изредка обращался к этому языку, но хочу поделиться историей об одном баге на стыке Go и ядра Windows, с которым мне «посчастливилось» столкнуться.Баг до сих пор остаётся актуальным (issue на GitHub), хотя есть основания надеяться, что он будет исправлен в следующем релизе Go.Тем не менее, если звёзды сойдутся неудачно и ваша программа на Go внезапно зависнет у клиента в вызове CancelIoEx, а воспроизвести и проанализировать проблему не удастся, то, надеюсь, приведённый ниже материал поможет понять её причины и попробовать обойти проблему. Читать далее]]>
https://habr.com/ru/articles/932760/
BotHabr (tgi,2) → All – 12:27:48 2025-09-22
Опубликовано: Thu, 31 Jul 2025 09:51:26 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Я не считаю себя специалистом по Go и лишь изредка обращался к этому языку, но хочу поделиться историей об одном баге на стыке Go и ядра Windows, с которым мне «посчастливилось» столкнуться.Баг до сих пор остаётся актуальным (issue на GitHub), хотя есть основания надеяться, что он будет исправлен в следующем релизе Go.Тем не менее, если звёзды сойдутся неудачно и ваша программа на Go внезапно зависнет у клиента в вызове CancelIoEx, а воспроизвести и проанализировать проблему не удастся, то, надеюсь, приведённый ниже материал поможет понять её причины и попробовать обойти проблему. Читать далее]]>
https://habr.com/ru/articles/932760/
# GPIO — тоже интерфейс, а также QEMU GPIODEV и GUSE
BotHabr (tgi,2) → All – 12:27:48 2025-09-22
Опубликовано: Thu, 31 Jul 2025 11:59:05 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Когда-то в отделе разработки встраиваемого ПО в YADRO мне задали вопрос: «А как с этим взаимодействовать?». Речь шла в первую очередь о I2C для QEMU, а не GPIO. И я некоторое время был одержим идеей «прозрачного» взаимодействия с устройствами внутри QEMU — использовать те же библиотеки и инструменты, как и для реальных устройств, что может быть прекраснее? Не какой-то там скрипт для посылки команды по QMP, а знакомый и целостный gpioset/gpioget из библиотеки libgpiod или поставляемые с ядром инструменты из tools/gpio.Получилось ли это у меня? Да, но какой ценой… Читать далее]]>
https://habr.com/ru/companies/yadro/articles/925864/
BotHabr (tgi,2) → All – 12:27:48 2025-09-22
Опубликовано: Thu, 31 Jul 2025 11:59:05 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Когда-то в отделе разработки встраиваемого ПО в YADRO мне задали вопрос: «А как с этим взаимодействовать?». Речь шла в первую очередь о I2C для QEMU, а не GPIO. И я некоторое время был одержим идеей «прозрачного» взаимодействия с устройствами внутри QEMU — использовать те же библиотеки и инструменты, как и для реальных устройств, что может быть прекраснее? Не какой-то там скрипт для посылки команды по QMP, а знакомый и целостный gpioset/gpioget из библиотеки libgpiod или поставляемые с ядром инструменты из tools/gpio.Получилось ли это у меня? Да, но какой ценой… Читать далее]]>
https://habr.com/ru/companies/yadro/articles/925864/
# Потоки, горутины, синхронизация и мьютексы в Go
BotHabr (tgi,2) → All – 12:27:48 2025-09-22
Опубликовано: Sat, 02 Aug 2025 19:11:15 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Go (Golang) создан для эффективной параллельной и конкурентной работы. Его killer feature — легковесные потоки выполнения, называемые горутины (goroutines), и мощные средства синхронизации. Приглашаю разобраться подробно. Читать далее]]>
https://habr.com/ru/articles/933464/
BotHabr (tgi,2) → All – 12:27:48 2025-09-22
Опубликовано: Sat, 02 Aug 2025 19:11:15 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Go (Golang) создан для эффективной параллельной и конкурентной работы. Его killer feature — легковесные потоки выполнения, называемые горутины (goroutines), и мощные средства синхронизации. Приглашаю разобраться подробно. Читать далее]]>
https://habr.com/ru/articles/933464/
# Рейтинг лучших компаний, дающих деньги в долг: Лучшие варианты и быстрое одобрение
BotHabr (tgi,2) → All – 12:27:47 2025-09-22
Опубликовано: Sun, 03 Aug 2025 19:16:06 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Иногда зарплата задерживается, а счета — уже на столе. В такие моменты я, как и многие, начинал судорожно искать, где взять деньги в долг срочно, и желательно — на карту, без визита в офис и долгих проверок. Опыт показал: деньги в долг сегодня реально получить за считанные минуты — если выбрать надёжный сервис.Сейчас, в 2025 году, займ деньги в долг онлайн — это не исключение, а норма. Всё, что нужно: заполнить заявку, подтвердить данные и выбрать удобный способ получения. Большинство платформ перечисляют деньги на карту в долг за 3–10 минут, даже если у вас нет идеальной кредитной истории. Более того, многие из них предоставляют деньги в долг без проверки, что особенно важно в непредвиденных ситуациях.Я не раз сталкивался с экстренными расходами: то срочный ремонт, то погашение другого кредита, то помощь родным. И каждый раз мне помогали онлайн‑сервисы, которые действительно работают. В этой статье делюсь личным рейтингом компаний, где взять деньги в долг можно быстро, безопасно и без скрытых комиссий. Это не просто списки, а проверенные платформы с прозрачными условиями и поддержкой 24/7. вперед]]>
https://habr.com/ru/articles/933658/
BotHabr (tgi,2) → All – 12:27:47 2025-09-22
Опубликовано: Sun, 03 Aug 2025 19:16:06 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Иногда зарплата задерживается, а счета — уже на столе. В такие моменты я, как и многие, начинал судорожно искать, где взять деньги в долг срочно, и желательно — на карту, без визита в офис и долгих проверок. Опыт показал: деньги в долг сегодня реально получить за считанные минуты — если выбрать надёжный сервис.Сейчас, в 2025 году, займ деньги в долг онлайн — это не исключение, а норма. Всё, что нужно: заполнить заявку, подтвердить данные и выбрать удобный способ получения. Большинство платформ перечисляют деньги на карту в долг за 3–10 минут, даже если у вас нет идеальной кредитной истории. Более того, многие из них предоставляют деньги в долг без проверки, что особенно важно в непредвиденных ситуациях.Я не раз сталкивался с экстренными расходами: то срочный ремонт, то погашение другого кредита, то помощь родным. И каждый раз мне помогали онлайн‑сервисы, которые действительно работают. В этой статье делюсь личным рейтингом компаний, где взять деньги в долг можно быстро, безопасно и без скрытых комиссий. Это не просто списки, а проверенные платформы с прозрачными условиями и поддержкой 24/7. вперед]]>
https://habr.com/ru/articles/933658/
# [Перевод] 6 приёмов создания отличных Shell-скриптов от пользователей Hacker News
BotHabr (tgi,2) → All – 12:27:47 2025-09-22
Опубликовано: Mon, 04 Aug 2025 10:33:05 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
После того, как я опубликовал предыдущую статью, в которой рассказал о том, какие приёмы применяю, создавая Shell-скрипты, отличающиеся отличным UX, сообщество Hacker News поделилось со мной ценными откликами и предложениями. Я оформил то, что мне удалось узнать, в виде новой статьи, разобрав здесь ещё шесть приёмов, которые позволят всем желающим улучшить свои скрипты. Читать далее]]>
https://habr.com/ru/companies/wunderfund/articles/933800/
BotHabr (tgi,2) → All – 12:27:47 2025-09-22
Опубликовано: Mon, 04 Aug 2025 10:33:05 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
После того, как я опубликовал предыдущую статью, в которой рассказал о том, какие приёмы применяю, создавая Shell-скрипты, отличающиеся отличным UX, сообщество Hacker News поделилось со мной ценными откликами и предложениями. Я оформил то, что мне удалось узнать, в виде новой статьи, разобрав здесь ещё шесть приёмов, которые позволят всем желающим улучшить свои скрипты. Читать далее]]>
https://habr.com/ru/companies/wunderfund/articles/933800/
# RUG — малоизвестный, но фундаментальный принцип Clean Code
BotHabr (tgi,2) → All – 12:27:47 2025-09-22
Опубликовано: Thu, 07 Aug 2025 11:15:46 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Многие разработчики при обсуждении основ Clean Code называют одни и те же принципы — чаще всего упоминаются DRY, KISS и YAGNI. Эти концепции прочно закрепились в профессиональном сообществе и воспринимаются как обязательная часть хорошего кода.Принцип RUG упоминается значительно реже. Чаще всего о нём узнают с опытом, а многие применяют его интуитивно, даже не подозревая, что для этого подхода существует отдельное название и формулировка.Сегодня я хочу поговорить о принципе RUG и о том, какие рекомендации он даёт по написанию программного обеспечения.RUG (Repeat Until Good) — это принцип, который говорит: можно повторять один и тот же код, пока это разумно.На ранних этапах разработки важнее просто реализовать логику, исходя из текущих требований, чем пытаться сразу создать «идеальную» абстракцию. В этот момент задача — как можно быстрее получить рабочее решение, которое отражает текущие знания о системе. Но со временем, когда одна и та же логика начинает встречаться всё чаще, становится очевидно, что её удобнее и правильнее выделить в отдельную, чётко оформленную абстракцию, чтобы избежать дублирования и упростить дальнейшую поддержку.Мы используем этот принцип каждый раз, когда пишем код. Ведь практически любую логику можно сделать более абстрактной и масштабируемой — вопрос лишь в том, когда наступает подходящий момент для этого.Я буду использовать TypeScript, так как этот язык знаком большинству разработчиков. 😁 Читать далее]]>
https://habr.com/ru/articles/934986/
BotHabr (tgi,2) → All – 12:27:47 2025-09-22
Опубликовано: Thu, 07 Aug 2025 11:15:46 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Многие разработчики при обсуждении основ Clean Code называют одни и те же принципы — чаще всего упоминаются DRY, KISS и YAGNI. Эти концепции прочно закрепились в профессиональном сообществе и воспринимаются как обязательная часть хорошего кода.Принцип RUG упоминается значительно реже. Чаще всего о нём узнают с опытом, а многие применяют его интуитивно, даже не подозревая, что для этого подхода существует отдельное название и формулировка.Сегодня я хочу поговорить о принципе RUG и о том, какие рекомендации он даёт по написанию программного обеспечения.RUG (Repeat Until Good) — это принцип, который говорит: можно повторять один и тот же код, пока это разумно.На ранних этапах разработки важнее просто реализовать логику, исходя из текущих требований, чем пытаться сразу создать «идеальную» абстракцию. В этот момент задача — как можно быстрее получить рабочее решение, которое отражает текущие знания о системе. Но со временем, когда одна и та же логика начинает встречаться всё чаще, становится очевидно, что её удобнее и правильнее выделить в отдельную, чётко оформленную абстракцию, чтобы избежать дублирования и упростить дальнейшую поддержку.Мы используем этот принцип каждый раз, когда пишем код. Ведь практически любую логику можно сделать более абстрактной и масштабируемой — вопрос лишь в том, когда наступает подходящий момент для этого.Я буду использовать TypeScript, так как этот язык знаком большинству разработчиков. 😁 Читать далее]]>
https://habr.com/ru/articles/934986/
# [Перевод] Rust 1.89.0: явный вывод аргументов для константных обобщений, проверка синтаксиса времён жизни, i128 и u128 в extern C
BotHabr (tgi,2) → All – 12:27:46 2025-09-22
Опубликовано: Sat, 09 Aug 2025 02:39:05 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Команда Rust рада сообщить о новой версии языка — 1.89.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение.Если у вас есть предыдущая версия Rust, установленная через rustup, то для обновления до версии 1.89.0 вам достаточно выполнить команду:$ rustup update stable Если у вас ещё не установлен rustup, вы можете установить его с соответствующей страницы нашего веб-сайта, а также посмотреть подробные примечания к выпуску на GitHub.Если вы хотите помочь нам протестировать будущие выпуски, вы можете использовать канал beta (rustup default beta) или nightly (rustup default nightly). Пожалуйста, сообщайте обо всех встреченных вами ошибках. Что стабилизировано в 1.89.0]]>
https://habr.com/ru/articles/935554/
BotHabr (tgi,2) → All – 12:27:46 2025-09-22
Опубликовано: Sat, 09 Aug 2025 02:39:05 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Команда Rust рада сообщить о новой версии языка — 1.89.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение.Если у вас есть предыдущая версия Rust, установленная через rustup, то для обновления до версии 1.89.0 вам достаточно выполнить команду:$ rustup update stable Если у вас ещё не установлен rustup, вы можете установить его с соответствующей страницы нашего веб-сайта, а также посмотреть подробные примечания к выпуску на GitHub.Если вы хотите помочь нам протестировать будущие выпуски, вы можете использовать канал beta (rustup default beta) или nightly (rustup default nightly). Пожалуйста, сообщайте обо всех встреченных вами ошибках. Что стабилизировано в 1.89.0]]>
https://habr.com/ru/articles/935554/
# [Перевод] Хотите эффективнее программировать? Учитесь строить в уме пошаговые доказательства
BotHabr (tgi,2) → All – 12:27:46 2025-09-22
Опубликовано: Sun, 10 Aug 2025 09:01:19 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
В этой статье я коротко опишу один приём, который помогает мне писать код быстрее и с меньшим числом ошибок. Я говорю «приём», но по факту это просто практика, которой я начал следовать с опытом, сам того не замечая.Когда вы работаете над чем-то сложным, формируйте в уме некое подтверждение, что ваш код будет делать именно то, что вам нужно. Звучит вроде просто, но на деле всё оказывается сложнее. Чтобы начать делать это «на лету», не прерывая рабочий поток, потребуется упорная практика. Зато, когда вы освоите эту технику, то удивитесь, насколько чаще ваш код будет полноценно работать с первой или второй попытки. Невероятно впечатляет.Добиться этого можно по-разному, и я не хочу давать какие-то категоричные рекомендации. Просто приведу несколько примеров тех вещей, о которых я сам рассуждаю «на лету», чтобы вы могли сформировать общее представление. Читать далее]]>
https://habr.com/ru/companies/ruvds/articles/934988/
BotHabr (tgi,2) → All – 12:27:46 2025-09-22
Опубликовано: Sun, 10 Aug 2025 09:01:19 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
В этой статье я коротко опишу один приём, который помогает мне писать код быстрее и с меньшим числом ошибок. Я говорю «приём», но по факту это просто практика, которой я начал следовать с опытом, сам того не замечая.Когда вы работаете над чем-то сложным, формируйте в уме некое подтверждение, что ваш код будет делать именно то, что вам нужно. Звучит вроде просто, но на деле всё оказывается сложнее. Чтобы начать делать это «на лету», не прерывая рабочий поток, потребуется упорная практика. Зато, когда вы освоите эту технику, то удивитесь, насколько чаще ваш код будет полноценно работать с первой или второй попытки. Невероятно впечатляет.Добиться этого можно по-разному, и я не хочу давать какие-то категоричные рекомендации. Просто приведу несколько примеров тех вещей, о которых я сам рассуждаю «на лету», чтобы вы могли сформировать общее представление. Читать далее]]>
https://habr.com/ru/companies/ruvds/articles/934988/
# Спасение от техдолга: как мы мигрировали на Vue 3
BotHabr (tgi,2) → All – 12:27:46 2025-09-22
Опубликовано: Mon, 11 Aug 2025 07:16:24 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Технический долг — вещь, знакомая многим компаниям и программистам. Обычно он копится годами, чтобы потом, подобно сизифову камню, держать в тонусе всех и вся. Под катом — рассказ Альберта Халимова, одного из членов команды «М.Видео – Эльдорадо», о том, как мы справляемся с подобными недугами. Читать далее]]>
https://habr.com/ru/companies/mvideo/articles/935870/
BotHabr (tgi,2) → All – 12:27:46 2025-09-22
Опубликовано: Mon, 11 Aug 2025 07:16:24 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
Технический долг — вещь, знакомая многим компаниям и программистам. Обычно он копится годами, чтобы потом, подобно сизифову камню, держать в тонусе всех и вся. Под катом — рассказ Альберта Халимова, одного из членов команды «М.Видео – Эльдорадо», о том, как мы справляемся с подобными недугами. Читать далее]]>
https://habr.com/ru/companies/mvideo/articles/935870/
# Утечка хендлов в IP Helper API: как мы нашли и обошли ещё один баг Windows
BotHabr (tgi,2) → All – 12:27:45 2025-09-22
Опубликовано: Tue, 12 Aug 2025 06:34:51 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
После статьи о баге в CancelIoEx решил рассказать ещё об одном дефекте в системных компонентах Windows — на этот раз в IP Helper (часть Windows API, отвечающая за работу с сетевой статистикой и таблицами соединений).Этот API, среди прочего, даёт возможность сопоставлять перехваченные на уровне сети пакеты с локальными процессами. Казалось бы, проверенный механизм, который работает «под капотом» множества утилит и сетевых фильтров. Но в ходе тестирования WireSock Secure Connect в режиме split tunneling по процессам мы наткнулись на утечку, способную за считанные минуты выбить лимит хендлов в системе.Поводом для расследования стало сообщение в нашей группе поддержки WireSock в Telegram: один из пользователей заметил аномально быстрый рост числа открытых дескрипторов процессов. Проблема стабильно воспроизводилась под нагрузкой и исчезала, если использовать фильтрацию по IP-адресам. Это стало первой зацепкой, которая в итоге вывела нас на баг в реализации IP Helper.Отдельное спасибо пользователю @dno5iq, который обнаружил проблему, выполнил реверсинг GetOwnerModuleFromPidAndInfo и помог подтвердить наличие дефекта в её реализации. Читать далее]]>
https://habr.com/ru/articles/935610/
BotHabr (tgi,2) → All – 12:27:45 2025-09-22
Опубликовано: Tue, 12 Aug 2025 06:34:51 GMT
Канал: Все статьи подряд / Системное программирование / Хабр
После статьи о баге в CancelIoEx решил рассказать ещё об одном дефекте в системных компонентах Windows — на этот раз в IP Helper (часть Windows API, отвечающая за работу с сетевой статистикой и таблицами соединений).Этот API, среди прочего, даёт возможность сопоставлять перехваченные на уровне сети пакеты с локальными процессами. Казалось бы, проверенный механизм, который работает «под капотом» множества утилит и сетевых фильтров. Но в ходе тестирования WireSock Secure Connect в режиме split tunneling по процессам мы наткнулись на утечку, способную за считанные минуты выбить лимит хендлов в системе.Поводом для расследования стало сообщение в нашей группе поддержки WireSock в Telegram: один из пользователей заметил аномально быстрый рост числа открытых дескрипторов процессов. Проблема стабильно воспроизводилась под нагрузкой и исчезала, если использовать фильтрацию по IP-адресам. Это стало первой зацепкой, которая в итоге вывела нас на баг в реализации IP Helper.Отдельное спасибо пользователю @dno5iq, который обнаружил проблему, выполнил реверсинг GetOwnerModuleFromPidAndInfo и помог подтвердить наличие дефекта в её реализации. Читать далее]]>
https://habr.com/ru/articles/935610/