Habr.com

Syndicate content Хабр
Все публикации подряд на Хабре
Updated: 16 min 25 sec ago

Лазерный тир, версия 3.0 на ESP32

Sat, 01/03/2026 - 23:52

Много-много лет назад делал я простенький лазерный тир с raspberry и камерой.

Технологии с тех пор сильно шагнули вперёд, и захотелось сделать новую, максимально дешёвую версию. В качестве основы взял ESP32 с камерой OV2640 — стоит около 5 евро на AliExpress. Серьёзно переживал за производительность, но её у этого малыша оказалось более чем достаточно. В нём два ядра: одно полностью отдано под обработку изображения, второе — под веб-сервер.

Идея следующая: 60 раз в секунду делаем снимок и ищем на нём пятно от лазера. Параллельно крутится веб-страничка, где на canvas рисуются мишень, попадания и очки. Поскольку полноценный OpenCV на ESP32 не запустить, всё сделано максимально просто. Камера выдаёт чёрно-белые JPEG-кадры, которые я распаковываю в пиксели и ищу те, что превышают порог яркости. Да, камера умеет работать и с RAW-форматами, но там есть нюанс — частота кадров в таком режиме ограничена примерно 15 FPS. А вот распаковывать JPEG «на лету» для ESP32 оказалось посильной задачей, и благодаря этому удалось выжать почти 60 FPS при разрешении 240×240. Для надёжности детектирования у камеры дополнительно задаётся смещение экспозиции.

Но просто найти пятно на картинке недостаточно — нужно сопоставить его с координатами мишени. И вместо того чтобы нагружать микроконтроллер сложной математикой, это можно переложить на пользователя. Поэтому предусмотрена разовая ручная калибровка: на отдельной странице в браузере нужно выбрать четыре маркера на изображении по часовой стрелке. По ним строится матрица обратного перспективного преобразования. Благодаря этому камера может смотреть на мишень под любым углом — математика всё компенсирует.

Читать далее

Настройка статического ip на CentOS 7 для чайников

Sat, 01/03/2026 - 23:15

Привет, Хабр! Холодным зимним вечером мне понадобилось настроить статический ip-адрес на CentOS 7. В этой статье я делюсь своим опытом по настройке статического ipv4. И путем от Destination Host Unreachable до полностью работающего интернета.

Читать далее

НеОсознанный вайб-кодинг (с примером RDF Grapher)

Sat, 01/03/2026 - 23:13

Статья -  комментарий / возражение к статье Осознанный вайб-кодинг. Осознанный вайб-кодинг наверное лучше не Осознанного, но последний тоже работает.

Читать далее

Создаем свой проектный фреймворк автотестирования API [Часть 1/3]

Sat, 01/03/2026 - 22:16

Автоматизированное тестирование API часто начинается с простых решений в виде коллекций Postman или скриптов на коленке. Такой подход работает на старте, но быстро исчерпывает себя.

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

Статья поделена на три части.

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

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

Читать далее

Joomla-дайджест. 2-е полугодие 2025 года

Sat, 01/03/2026 - 21:58

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

Читать далее

Безопасная и отказоустойчивая архитектура автономных ИИ-агентов и киберфизических ИИ-систем

Sat, 01/03/2026 - 21:27

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

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

Читать далее

Универсальный автогенератор тестов API на базе Schemathesis

Sat, 01/03/2026 - 21:15

Универсальный автогенератор тестов API на базе Schemathesis

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

Читать далее

Как мы программировали в 90-е. Часть #03

Sat, 01/03/2026 - 21:10

Как мы программировали в 80-е или Путь в тысячу ли начинается с первого шага программы.
Как мы программировали в 90-е. Часть #01
Как мы программировали в 90-е. Часть #02

Итак, у меня появился мануал по Клипперу и первые представления о БД.
Первая же задача – загрузка (импорт) текстового файла в базу – была сама по себе интересной.

Читать далее

Токенизация реальных активов: как превратить недвижимость, акции и сырьё в цифровые инструменты

Sat, 01/03/2026 - 21:09

Когда в марте 2024 года BlackRock — крупнейший в мире управляющий активами с $10 трлн под управлением — запустил токенизированный фонд BUIDL, скептики замолчали. За полтора года фонд привлёк $2,9 млрд и стал эталоном для всей индустрии. Это не эксперимент энтузиастов — это новая инфраструктура финансовых рынков.

Я занимаюсь блокчейн-разработкой и smart-контрактами для security tokens более пяти лет. За это время видел десятки проектов — успешных и провальных. В этой статье расскажу, как устроена токенизация реальных активов изнутри: какие юрисдикции выбирать, сколько это стоит и почему 90% проектов умирают на старте.

Читать далее

Линейная и полиномиальная регрессия на C++

Sat, 01/03/2026 - 20:58

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

Читать далее

Minecraft на Unity. Построение одного чанка

Sat, 01/03/2026 - 20:46

Я начал разработку Minecraft на движке Unity. Пока не решил, какие механики я повторю из оригинала, а какие добавлю от себя. Но сегодня я вам расскажу о моей логике построения чанка.

Далее предоставлю полный скрипт для построения чанка.

Читать далее

Законы логики для начинающих программистов

Sat, 01/03/2026 - 20:36

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

Читать далее

Парадокс инвестиций: Почему $1,000,000 и команда сеньоров убили бы мой стартап

Sat, 01/03/2026 - 20:24

Пару месяцев назад я опубликовал технический лонгрид на 30 тысяч знаков, где описал опыт создания и показал архитектуру своего алго-трейдинг проекта DepthSight. Там были промпты, примеры кода, графы и боль интеграции с биржами.

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

Это открытие звучит дико для классического IT: наличие бюджета и команды сегодня тормозит инновацию, а не ускоряет её.

Сегодня я хочу зафиксировать прецедент. Существует устойчивое мнение: «ИИ хорош для написания простых скриптов, но для серьезного Enterprise-продукта нужна команда». Я утверждаю обратное: в 2026 году наличие бюджета и штата — это барьер, который мешает создать продукт такой сложности, который под силу одиночке с «роем» AI-агентов.

Меня зовут Артем. Я в одиночку создал систему алготрейдинга, которая по плотности фич и глубине аналитики превосходит решения компаний с капитализацией $100M+. И если бы у меня был миллион долларов на старте, я бы провалился.

В этой статье я расскажу не о коде, а о смене парадигмы. О том, почему один человек с "роем" AI-агентов теперь эффективнее целой корпорации.

Читать далее

Интеграция R-Vision SIEM с IRIS, Cortex, MISP, n8n

Sat, 01/03/2026 - 20:16

Привет. Меня зовут Андрей Урывко, я инженер ИБ в Всеинструменты.ру.

За несколько месяцев эксплуатации Wazuh мы упёрлись в классическую для небольших SOC проблему: рост числа алертов при отсутствии ресурсов на их обработку. При 150–200 оповещениях в день и одном инженере в штате значительная часть времени уходила на ручную проверку однотипных сработок, а развитие инфраструктуры фактически остановилось.

В этой статье я расскажу, как мы перешли с Wazuh на R-Vision SIEM, а затем построили цепочку автоматизации обработки алертов с использованием IRIS (case management), Cortex, MISP и n8n.

Это будет цикл статей, в котором я последовательно разберу построение цепочки автоматизированной обработки инцидентов:

Читать далее

Под капотом многопоточной синхронизации в Java: как потоки договариваются через Mark Word

Sat, 01/03/2026 - 19:18

Когда вы пишете synchronized(obj), под капотом происходит целая цепочка событий, которую можно отследить до Mark Word — восьмибайтового служебного поля в каждом Java-объекте. В современных реализациях JVM (таких как HotSpot, OpenJ9, GraalVM) используется динамическая, адаптивная система, которая выбирает наиболее эффективную стратегию блокировки в зависимости от реального поведения потоков.

Читать далее

Как защищаться от ИИ-психоза: гайд даже для тех кто думает что их это не коснется

Sat, 01/03/2026 - 19:17

Я провёл неглубокое исследование научных публикаций 2023-2025 годов о влиянии ИИ-чатботов на психическое здоровье. Спойлер: влияние есть, но доказательная база пока слабая. Зато практические рекомендации по защите -> вполне конкретные.

Читать далее

[Перевод] Это главная ошибка ИИ на сегодняшний день

Sat, 01/03/2026 - 19:06

Весь год мы хоронили классическое обучение ИИ. Оказалось, рано.

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

Считалось, что этот путь развития зашел в тупик. Теперь единственное, что имеет значение - обучение с подкреплением, метод «проб и ошибок», который обеспечил большую часть прогресса за последний год.

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

Предварительное обучение (pre-training), классический метод обучения ИИ через имитацию, не просто живо - оно готовится к настоящему ренессансу в 2026 году. И это важно для вас при выборе ИИ-продуктов или принятии инвестиционных решений.

Читать далее

Как не стоит проектировать API (или как Mak.by сливает адреса своих пользователей)

Sat, 01/03/2026 - 18:45

P.S. в ходе написания статьи не было использовано ни одно ИИ.

В один день я захотел посмотреть как работают купоны в приложении Mak.by в программистском смысле. Для этого я просто посмотрел какие запросы отправляет приложение на сервер с помощью тулы для перехвата HTTP трафика.

Читать далее

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

Sat, 01/03/2026 - 18:15

Тьма сгущается над монитором. Ты не создаешь новый мир — ты лишь изучаешь карты старых, оттачивая алгоритмы в ожидании Идеального Момента. Твой интеллект — не меч, а роскошные цепи. Пора их разорвать. Познай пять проклятий, что держат тебя в плену, и обряды для их снятия.

Читать далее

Установка и настройка llama.cpp с ROCm на Ubuntu 24.04 для AMD Radeon RX 7600 XT

Sat, 01/03/2026 - 18:07

Моя цель казалась простой: поставить Ubuntu 24.04 и запустить локальную нейросеть на своей новой Radeon RX 7600 XT. Реальность оказалась жестче.

Делюсь полным чек-листом действий — от первого терминала после установки ОС до момента, когда Python-скрипт получает ответ от модели, думающей на вашем же железе. Если вы тоже верите в силу open-source и «красного» стека, вам сюда.

Читать далее

Who's online

There are currently 1 user and 2 guests online.