Pull to refresh
2
0
Send message

Освобождение робота-пылесоса, который стал моим другом

Level of difficultyEasy
Reading time8 min
Views26K
Немного доп. оборудования, несколько команд Linux и вуаля! Пылесос свободен! Фото Cath Virginia / The Verge

В целом роботы-пылесосы мне нравятся. Для меня это эдакий небольшой друг, который чистит за меня пол. Просто фантастика. Но, к сожалению, есть одна проблема — я им не доверяю. Эти девайсы постоянно отправляют отчёты на серверы, что может представлять угрозу для безопасности и тайны личной жизни. Мне такое не по духу, и я подумал, что кто-то уже должен был хакнуть эту схему. После недолгих поисков в интернете я понял, что прав. Мне попался проект Valetudo, нацеленный на освобождение роботов-пылесосов от связи с облаком.
Читать дальше →
Total votes 115: ↑114 and ↓1+113
Comments44

Метадерево как инструмент для выбора средства визуализации

Level of difficultyEasy
Reading time4 min
Views1.8K

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

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

В данной статье я попытался заполнить этот пробел и предложить своё видение решения.

Поехали
Total votes 3: ↑3 and ↓0+3
Comments3

Неограниченный доступ к знаниям: библиотека Стандартных Шаблонных Конструкций

Level of difficultyMedium
Reading time9 min
Views21K

Есть много причин почему доступ научным статьям и книгам должен быть свободным:

Во-первых, это прекрасно

Во-вторых...
Total votes 54: ↑54 and ↓0+54
Comments9

Обучающая основам программирования и робототехники настолка «Битва Големов» — качаем, печатаем и играем

Level of difficultyEasy
Reading time2 min
Views4.6K

Я решил сделать детям, родителям и преподавателям подарок. Встречайте BIG BOX PNP по классической версии моей игры о боевых программируемых роботах "Битва Големов", который можно свободно скачать, распечатать и играть.

Читать далее
Total votes 27: ↑25 and ↓2+23
Comments3

Действующий процессор на 13 микросхемах стандартной логики

Level of difficultyMedium
Reading time7 min
Views20K


Привет, Хабр! Для меня было просто невозможно пройти мимо этого схемотехнического чуда. Горстка деталей на небольшой двусторонней плате выполняет команды машинного языка и выводит результат в виде двоичного кода!

Действующая модель называется "TD4 CPU", является проектом с открытыми исходниками, реально работает и позволяет понять устройство и принцип работы процессора.
Читать дальше →
Total votes 111: ↑110 and ↓1+109
Comments53

30 фильмов про IT и киберпанк, которые можно пересмотреть на новогодних праздниках

Reading time10 min
Views48K
На новогодних праздниках можно позволить себе отдохнуть и посмотреть старое и новое кино. Фильмы про IT подбирал так, чтобы можно было найти на любой вкус. Ниже список, которым решил с вами поделиться.

Читать дальше →
Total votes 62: ↑45 and ↓17+28
Comments99

Крякнул софт? Суши сухари

Reading time5 min
Views39K

Именно так считает "товарищ майор", и с подобным утверждением порой соглашается российское правосудие.

С 1997 года в своде законов российских дремлет статья 273 УК РФ (Создание, использование и распространение вредоносных компьютерных программ), карающая не чтившего уголовный закон наказанием вплоть до семи лет лишения свободы.  Судебную практику по данной статье объективно не назовешь обширной, но изучение реальных случаев её применения должно вызывать дрожь и трепет у всякого, возложившего руки на клавиатуру.

Читать далее
Total votes 76: ↑65 and ↓11+54
Comments188

Даня снова в «Хакере»! Выясняем у Дани Шеповалова, где он пропадал 20 лет и при чем тут гуси

Reading time13 min
Views27K

Это не шутка: Даня Шеповалов, когда-то писавший термоядерные креативы для раннего журнала «Хакер», после многолетнего скитания возвращается к истокам. Но на этот раз — в чуть более серьезной роли: Даня будет брать для «Хакера» интервью у выдающихся личностей, часть из них будет публиковаться и на «Хабрахабре». Однако мы прекрасно понимаем, что у читателей накопилась куча вопросов к самому Дане. Так что нулевым спикером выступит он сам и расскажет о бурной молодости и о том, как судьба сложилась после «Хакера».

Читать интервью
Total votes 70: ↑69 and ↓1+68
Comments25

Bash отладчик с поддержкой произвольных точек останова

Reading time4 min
Views9.3K

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

Читать дальше →
Total votes 52: ↑52 and ↓0+52
Comments6

Неожиданная находка, которая освобождает 20 GB неиспользованного индексного пространства

Reading time14 min
Views31K

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

Начнем с конца: в итоге нам удалось освободить более чем 70 GB не оптимизированного и неиспользуемого пространства без удаления индексов и данных. 

Читать далее
Total votes 60: ↑57 and ↓3+54
Comments9

Indoor «GPS» с точностью +-2см

Reading time5 min
Views60K
День добрый, коллеги!

Все началось с того, что мы, как и многие, тоже делали роботов — автономных, мобильных, с кучей сенсоров и огромным потенциалом. Вообще-то, мы все еще продолжаем их делать. Но в очередной раз столкнувшись с одной из ключевых задач роботов — определением своего положения в пространстве и навигацией в помещении — мы решили сфокусироваться на решении этой задачи. Вот, что из этого получилось.
Читать дальше →
Total votes 45: ↑40 and ↓5+35
Comments65

Лезем в сорцы компилятора — как работает goscheduler (Часть I)

Reading time8 min
Views6.7K

Каждый раз, когда я открываю новую книжку о golang, обязательно лезу в главу о горутинах и в очередной раз читаю, как беспощадно прекрасен голанг. Подумать только, вместо того, чтобы создавать потоки для обработки параллельно выполняемых задач, мы будем пользоваться внутренними инструментами языка!

Всё это замечательно, и большинство книг и курсов по golang приводят множество примеров того, насколько быстр го и как он запросто может справиться с бесконечным количеством задач. К сожалению, все эти книги не рассказывают, что же происходит под капотом голанга. Что же, давайте откроем сорцы суслика и посмотрим, что там внутри.
Читать дальше →
Total votes 27: ↑25 and ↓2+23
Comments11

Необычный дуалбут: ноутбук с «двойным дном»

Reading time15 min
Views80K

Не так давно на Habr Q&A я наткнулся на интересный вопрос — как сделать, чтобы два жестких диска не видели друг друга? Чтобы вирус, попав на одну систему, никоим образом не мог заразить другую. В ответах предлагали достаточно стандартные способы — использовать полнодисковое шифрование, отключить диск в диспетчере устройств и даже поставить переключатель на питание. Но что если взглянуть на задачу совершенно с другого угла и сделать всё средствами самого HDD? Да-да, сегодня мы снова погружаемся в пучины модификации прошивок и реверс-инжиниринга!
Узнать подробности
Total votes 361: ↑357 and ↓4+353
Comments122

Оптический удлинитель HDMI. 300 метров

Reading time5 min
Views39K
Доброго времени суток, Хабр!



Разработка волоконно-оптического удлинителя HDMI на 300 метров. Отказ от обратного канала (передача данных по одному волоконно-оптическому кабелю). Клонирование EDID с монитора.
Читать дальше →
Total votes 103: ↑103 and ↓0+103
Comments104

USB на регистрах: isochronous endpoint на примере Audio device

Reading time13 min
Views5.7K
image<картинка с платой и наушниками>
Еще более низкий уровень (avr-vusb): habr.com/ru/post/460815
USB на регистрах: STM32L1 / STM32F1
USB на регистрах: bulk endpoint на примере Mass Storage
USB на регистрах: interrupt endpoint на примере HID

Сегодня рассмотрим последний тип конечных точек, изохронный. Он предназначен для передачи данных, критичных к времени доставки, однако не гарантирует ее успешность. Самый классический пример — аудиоустройства: колонки, микрофоны.

Как ни странно, этот тип конечной точки оказался самым мозговыносящим (и это после всего, что я успел повидать с stm'ками!). Тем не менее, сегодня мы сделаем аудиоустройство и заодно чуть-чуть допилим ядро библиотеки USB. Как обычно, исходные коды доступны:
github.com/COKPOWEHEU/usb/tree/main/4.Audio_L1
github.com/COKPOWEHEU/usb/tree/main/4.Audio_F1
Читать дальше →
Total votes 15: ↑14 and ↓1+13
Comments9

Современный C++ нас не спасет

Reading time5 min
Views22K

Я часто критикую небезопасные при работе с памятью языки, в основном C и C++, и то, как они провоцируют необычайное количество уязвимостей безопасности. Моё резюме, основанное на изучении доказательств из многочисленных крупных программных проектов на С и С++, заключается в том, что нам необходимо мигрировать нашу индустрию на безопасные для памяти языки по умолчанию (такие как Rust и Swift). Один из ответов, который я часто получаю, заключается в том, что проблема не в самих С и С++, разработчики просто неправильно их готовят. В частности, я часто получаю в защиту C++ ответ типа: "C++ безопасен, если вы не используете унаследованную от C функциональность" [1] или аналогичный, что если вы используете типы и идиомы современного C++, то вы будете застрахованы от уязвимостей типа повреждения памяти, которые терзают другие проекты.

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

Читать далее
Total votes 52: ↑32 and ↓20+12
Comments313

Stm32 + USB на шаблонах C++. Продолжение. Делаем HID

Reading time11 min
Views7.5K

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

Читать далее
Total votes 22: ↑21 and ↓1+20
Comments13

Реализация конечного автомата для автоматизации процессов

Reading time5 min
Views7.5K

Каждый уважающий себя техлид \ архитектор ПО \ руководитель разработки,

должен написать в своей жизни хотя бы одну CRM

народная мудрость

Читать далее
Total votes 23: ↑22 and ↓1+21
Comments11
1
23 ...

Information

Rating
Does not participate
Registered
Activity