Pull to refresh

Technotext

Некрокомпиляция или как собрать OpenWatcom для QNX4 под Debian 12 и прикрутить его к Eclipse

Level of difficultyMedium
Reading time7 min
Reach and readers7.4K

Меня зовут Ярослав Бомбов и я более 30 лет занимаюсь созданием АСУТП. Как вы понимаете жизненные циклы в АСУТП штука длительная и иногда возникают задачи что-то добавить в систему работающую уже лет 20. И именно такой случай произошел - возникла необходимость изменить код в контроллере под управлением QNX4.

Можно конечно было поговорить на тему "вы в каком морге этого Франкенштейна получали туда и обращайтесь", но при ближайшем рассмотрении оказалось что код мой собственный ;). Самое простое решение открыть mcedit, что-то поправить и собрать в самом QNX4, но для начала надо вспомнить разобраться как все работает, а это удобней делать в современных IDE. Поиск бинарников OpenWatcom (OW) под линукс дал ровно два архива которые в моей системе не заработали. Поэтому решено действовать по принципу - лучше день потерять, потом за пять минут долететь.

Полетели

Бинарная классификация: как работает логистическая регрессия

Level of difficultyMedium
Reading time8 min
Reach and readers7K

Недавно мне предстояло написать реализацию LogisiticRegression для одного проекта в Школе 21, так что было необходимо разложить всё по полочкам и разобраться в бинарной классификации в целом. Хочу поделиться также этой информацией здесь, потому что не нашла статьи, которая была бы понятна и обширна лично в моём случае.

Читать далее

Как мы построили платформу агентов для Алисы AI — и почему пришлось написать сервер поверх Temporal

Reading time9 min
Reach and readers32K

Агент «Исследовать» в Алисе AI может работать до 20 минут. За это время он успевает обойти десятки сайтов, запустить модели, вызвать инструменты — и сделать всё это параллельно на нескольких хостах. И если в середине цепочки что-то упадёт (а практика показывает, что если может упасть — когда-нибудь упадёт: релизы, сети, «луна не в той фазе»), агент должен уметь продолжить работу с того же места, а не начать всё заново, сжигая часы и LLM-токены. Ещё год назад никакой инфраструктуры для этого у нас не было.

Меня зовут Алексей Логинов, я ведущий разработчик в команде, которая отвечает за инфраструктуру нашего ассистента. В этой статье я покажу, какой путь мы прошли от наивного SDK до полноценной платформы Agent Transport System (ATS) — и как при этом упирались в различные ограничения и преодолевали их.

Читать далее

TrustYFox: путь от пет‑проекта до LLM‑инструмента для поиска уязвимостей

Reading time21 min
Reach and readers8.6K

Всем привет! Меня зовут Андрей, и я работаю в финтех‑направлении Яндекса. Руковожу службой разработки платёжных интерфейсов. Если вы пользуетесь сервисами Яндекса, то наверняка сталкивались с формами оплаты, вот большую их часть делают ребята из моей службы.

Сегодня я расскажу вам о TrustYFox — платформе для поиска уязвимостей в коде при помощи LLM, которую я создал своими руками. С практической точки зрения TrustYFox — это ещё один инструмент, который не заменяет существующие сканеры, а дополняет их, позволяя находить уязвимости.

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

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

Читать далее

«Точка, точка, запятая»: как появились привычные нам знаки препинания и при чём тут Венеция?

Level of difficultyEasy
Reading time16 min
Reach and readers25K

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

Читать далее

Nextcloud для дома: Snap, Docker или …? Пошаговый гайд для простых людей

Level of difficultyEasy
Reading time6 min
Reach and readers50K

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

Почему я вообще пришел к идее развернуть у себя Nextcloud? Всё просто: огромное количество файлов. Фото и видео в наше время занимают куда больше места, а надежности смартфонов я не доверяю. Я начал интересоваться облачными хранилищами, но довольно быстро понял: если хочется действительно много места за адекватный прайс, нужен свой сервер.

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

Читать далее

Как метод из аниме Mononoke помогает техническому писателю найти информацию

Level of difficultyEasy
Reading time7 min
Reach and readers19K

Технический писатель — своего рода проводник между разработчиками и пользователями. Мы берём техзадания, обрывочные комментарии, макеты, проходим процессы в продукте и создаем понятные инструкции. Часто на стадии подготовки возникают вопросы: «Где искать информацию — и какую?»

В некоторых командах проблема решается с помощью продактов, тимлида или автоматизации распределения задач. Однако так бывает далеко не всегда, и ответы могут найтись не сразу, особенно при высокой загруженности и в хаосе задач. Неожиданно, простая подсказка пришла из мира аниме: в сериале Mononoke (не путать с Принцессой Мононоке) персонаж по имени Аптекарь изгоняет злых духов, используя метод: «форма, суть, причина». Если не смотрели — не беда, в первую очередь мы говорим о структурированном подходе к поиску информации.

Меня зовут Александр Панов, я занимаюсь разработкой документации в Test IT и расскажу, как подход из аниме помогает структурировать работу и создавать понятные доки. Мы обсудим методологические аспекты и рассмотрим практический пример. В конце статьи вы найдете небольшой чеклист, где все данные сведены в таблицу.

Читать далее

Взяли доску, высушили, склеили и теперь продаём дома за 5,3 млн, а строят их за 3 дня

Level of difficultyEasy
Reading time10 min
Reach and readers57K

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

Читать далее

Русский инженер против снега на крыше

Level of difficultyEasy
Reading time12 min
Reach and readers21K

Снег. 

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

Меня зовут Алексей, я работаю инженером в ТЕХНОНИКОЛЬ. Так как я часто общаюсь с клиентами и монтажниками, я заметил проблему: ответственные за крышу зданий неправильно понимают, когда именно нужно чистить снег. 

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

Читать далее

Анатомия SAP Privileges: как устроено управление правами в macOS

Reading time13 min
Reach and readers8.5K

Всем привет! Меня зовут Булат Гафуров, я security-инженер в Яндексе. Сегодня я хочу подробно разобрать, как устроено Privileges — опенсорсное приложение для macOS, которое предназначено для быстрого и удобного управления правами администратора. Мы выясним, как взаимодействуют его компоненты, через что происходит обмен сообщениями и на чём строится доверие между процессами. А главное — разберёмся, почему вредоносным скриптам теперь станет сложнее повысить привилегии.

Читать далее

RBACX — что изменилось за полгода: от простого RBAC/ABAC до ReBAC с ИИ-генерацией политик

Level of difficultyMedium
Reading time6 min
Reach and readers7K

Полгода назад написал первую статью про RBACX — RBAC/ABAC-движок авторизации для Python. С тех пор вышло 25+ релизов, и библиотека стала заметно мощнее: добавил ReBAC с поддержкой OpenFGA и SpiceDB, пакетную проверку прав, ИИ-генерацию политик из OpenAPI-схемы, Redis-кэш, async Django, шортхэнд для ролей и закрыл три security-бага. Рассказываю что, зачем и как это вообще делается в одного.

Читать далее

Парадокс IT-рынка 2025: почему ИТ-шники не могут найти работу, а компании – сотрудников

Level of difficultyEasy
Reading time4 min
Reach and readers22K

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

Меня зовут Катя, я уже 15 лет занимаюсь IT-рекрутингом: начинала в консалтинге, последние 10 лет работаю с европейским рынком. Сейчас рынок труда в IT стал настолько турбулентным, что я решила собрать сравнительный разбор: что происходит в России и Европе, и почему мы наблюдаем парадокс — специалисты ищут работу, а компании не могут закрыть вакансии.

Я опираюсь на открытые данные (Layoffs.fyi, Росстат, hh.ru, CNews и др.), но также на свои наблюдения из практики рекрутинга. Постараюсь рассказать без “страшилок” и обвинений рекрутеров, AI фильтров и системы найма, а показать реальные тренды.

Читать далее

Простейшая нейронная сеть на Python для начинающих

Level of difficultyMedium
Reading time16 min
Reach and readers73K

Доброго времени суток всем, кто зашел почитать эту статью! Итак, сейчас на дворе 2025 год и тема нейросетей уже набрала и продолжает набирать большие обороты и имеет очень большой потенциал. Поэтому и количество заинтересованных ими так же увеличивается и увеличивается, и я не стал тому исключением. Так я и подошел к желанию написать свою собственную нейросеть, думаю у многих возникает такое же желание). Без лишних слов перейдем к тому, что я нашел статью (точнее она состоит из 3-х частей) на Хабре по написанию простой нейросети для начинающих (от автора @AndBoh Так вот, в ней очень много полезной и  краткой информации о нейросетях, но меня больше интересует именно практическая, вторая часть, на ее основе я и буду писать свой код и эту статью. Почему я решил переписать эту статью? Ну, наверное потому, что она была написана на языке JavaScript, а мне ближе все таки Python, во-вторых, когда разбирался в этой статье и писал свой код по ней, было очень много непонятных моментов, которые мало объяснялись, собственно поэтому я сделаю упор в своей статье на «понятность» и разбор сложных моментов. Сразу оговорюсь, код будет писаться на основе классов как и у предыдущего автора, но на языке Python, я немного в курсе того, что с библиотекой Tensorflow и матрицами код будет работать быстрее, но я ориентируюсь на простоту и понятность, поэтому мой выбор – классы (ссылка на папку с кодом Ядиск). Итак, начнем…

Читать далее

Инвертор напряжения или Inverting Buck-Boost

Reading time6 min
Reach and readers16K

Как разработать источник отрицательного напряжения? Легко, это делается из классического Buck конвертера!

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

Читать далее

Организация удаленного доступа в защищенный контур на базе Openvpn + Keycloak

Level of difficultyMedium
Reading time5 min
Reach and readers8.6K

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

У одного из наших заказчиков вся инфраструктура расположена в Yandex Cloud и для доступа во внутреннюю сеть ко внутренним ресурсам компании а-ля Grafana, Prometheus, Elasticsearch и т.д. использовался VPN-сервис на базе Self-Hosted OpenVPN. При этом аутентификация пользователей VPN осуществлялась просто по локальным учетным записям на сервере через конфигурацию сервера вида

Читать далее

Circuit Tracing: как заглянуть в галлюцинации модели и найти там смысл

Reading time7 min
Reach and readers12K

Всем привет! Меня зовут Ирина, я NLP-инженер в red_mad_robot, занимаюсь научными исследованиями интерпретируемости LLM и анализом механизмов внутренних вычислений моделей, чтобы применять полученные результаты на практике. Например, сегодня хочу рассказать, как мы подошли к решению задачи детекции галлюцинаций LLM в RAG системах со стороны исследования графов размышлений модели — с помощью интересного фреймворка от Anthropic.

В статье поговорим, как использовать cross-layer transcoders и атрибуционные графы для детекции галлюцинаций в RAG системах. Рассмотрим пример реализации детектора на графах для анализа модели Qwen2.5-7B и практические примеры использования. Спойлер: на простой реализации получили точность детекции 85% на тестовом датасете.

Читать далее

Симуляция парадокса Ферми

Level of difficultyMedium
Reading time15 min
Reach and readers15K

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

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

Различные решения парадокса Ферми здесь рассматриваться не будут — им уже посвящено множество публикаций, в том числе мне попадалась подробная статья на Хабре. Я расскажу именно о моделировании: на что опирался при построении модели, как устроена симуляция и какие результаты можно с помощью неё получить, а также поделюсь кодом.

Поехали!

Большой лазерный гравер своими руками

Level of difficultyMedium
Reading time17 min
Reach and readers39K

Привет, Хабр! В этой статье речь пойдет о лазерном ЧПУ-станке, который наша студенческая команда делала на 2ом курсе в рамках университетской проектной практики. Основная цель материала - поделиться личным опытом и дать обзорное представление о том, как такие устройства можно собирать. Будет много картинок, ссылок на смежные темы и субъективного мнения.

Поехали)

Spring Reactor. Эволюция сервисов. На пути к реактивности

Level of difficultyMedium
Reading time19 min
Reach and readers9.1K

Это статья описывает опыт миграции традиционного приложения java spring на Spring reactor стек. О специфике разрабатываемой информационной системы, уже подробно рассказывал. Кратко о системе - смешанная сервисно-микросервисная архитектура. Чтобы получить бизнес результат, требуется вызвать микросервис, который вызывает сервис, который вызывает набор микросервисов для формирования ценностного набора данных. Получается цепочка вызовов. Сервисы и микросервисы разрабатывались на традиционном технологическом стеке, без использования реактивного подхода.

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

Читать далее

Как я собирал себе NAS сервер или обретаем независимость своих данных от корпораций

Level of difficultyMedium
Reading time17 min
Reach and readers68K

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

Подробный разбор сборки и настройки домашнего NAS: выбор SAS-дисков и контроллера, настройка ZFS-пула, установка TrueNAS SCALE, организация резервного копирования в S3 и запуск Docker-сервисов (Immich, Affine, Keycloak, Actual Budget). Небольшой гайд для тех, кто хочет построить своё хранилище и цифровую инфраструктуру под полным контролем.

Читать далее