Обновить
491.24

Open source *

Открытое программное обеспечение

Сначала показывать
Порог рейтинга
Уровень сложности

SPICE-модели: Просто о сложном. Часть 3. Силовые выпрямительные диоды

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров3.6K

В прошлых статьях цикла, а именно

Часть 1, вводная

Часть 2. Более сложные приемы анализа

мы рассматривали линейные элементы электрических цепей, сосредоточив свое внимание на описании топологии электрических схем, методах их анализа и способах получения интересующих нас параметров. Однако, целью цикла является описание способов получения моделей мощных полупроводниковых ключей, для построения моделей преобразователей. Теперь, когда мы знакомы с базовыми основами SPICE-моделирования, мы можем замахнуться на такую задачу. Но начнем мы с самого начала.

Читать далее

DIY Open Source принтер. Часть 1. Покоряем USB Printer Class и имитируем печать текста

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров4.6K

Привет, Хабровчане!

Это продолжение моего дневника разработки DIY струйного принтера предыдущая часть:

DIY Open Source принтер. Часть 0

В прошлый раз одной из поднятых проблем стал интерфейс между ПК и устройством. В данной статье я постараюсь решить вопрос подключения STM32 по USB и убедить Windows и Linux что это принтер.

Содержание


§1. Кратко о USB
§2. Поиск реализаций USB Printer Class для STM32
§3. Реализация USB Printer Class для STM32
§4. Тест на Windows
§5. Тест на Linux
§6. Как добавить поддержку печати изображений?

Читать далее

Российские Java/Spring-разработчики: какие IDE выбирают сегодня

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров6.3K

Хотя большинство Java-разработчиков в России по-прежнему используют разные вариации IntelliJ IDEA, постепенно начинают появляться и новые альтернативы. Одна из них — OpenIDE, российская среда разработки на базе IntelliJ Platform. Мы уже писали о проекте, и он для нас особенно важен: Axiom JDK входит в консорциум разработки OpenIDE  вместе с компаниями «Группа Астра» и Haulmont.

Проект стартовал меньше года назад и уже заметен на рынке Java-инструментов. Чтобы подтвердить это цифрами, делимся результатами опроса Spring АйО среди Java/Spring-разработчиков об используемых IDE в 2025 году.

Читать далее

Можно ли войти в реку Технотекста дважды? А трижды? Анализ победителей Хабра за 7 лет

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров798

В этом году я второй раз подряд оказался в списке победителей «Технотекста». Когда вместе с летом прошла первая эйфория, во мне проснулся аналитик. Есть ли закономерность в победах? Что объединяет лучшие статьи на Хабре за последние семь лет? И главный вопрос - существует ли формула успеха, которая позволит покорить эту вершину и в третий раз?

Я вооружился своим парсером, собрал данные по всем победителям с 2018 по 2024 год и готов поделиться результатами. Это моя попытка реверс-инжиниринга победы, и, возможно, она поможет будущим чемпионам.

ИИ не за горами?

Пишем письма с Gmail на Bitcoin

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров2.3K

Привет, Хабр!
Это снова команда Eppie, децентрализованной p2p почты, в которой адрес принадлежит пользователю, а не сервису.

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

А поскольку адрес — это публичный ключ, мы можем интегрировать существующие децентрализованные сети с совместимой криптографией, например Bitcoin. Что мы и делаем. В нашей тестовой сети уже можно создать новый Bitcoin-адрес, или импортировать существующий, и получать на него письма. Сегодня расскажем об этом подробнее.

Читать далее

Нейтральное сравнение StarRocks и Apache Doris

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров465

Это обзор двух проектов аналитических СУБД с открытым исходным кодом, которые развиваются в одном классе задач, но различаются архитектурой, приоритетами и типичными сценариями применения. Ниже — нейтральное сравнение по ключевым аспектам: архитектура и запросный движок, хранение и работа в реальном времени, интеграция с открытыми форматами и lakehouse, производительность, эксплуатация и управление, а также рекомендации по выбору в зависимости от нагрузки.

Читать далее

Сборщик мусора в Go. Часть 2: GC Traces

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров1.8K

Команда Go for Devs подготовила перевод статьи о том, как оптимизация аллокаций в Go может снизить нагрузку на сборщик мусора и ускорить приложение почти в два раза. Автор показывает на примере реального веб-приложения, как профилировать кучу, находить «горячие» места и убирать лишние аллокации, чтобы снизить задержки и повысить пропускную способность.

Читать далее

RBACX — универсальный RBAC/ABAC-движок авторизации для Python

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

RBACX — авторизация без боли в Python-проектах

Когда доступ «размазан» по вьюхам и миддлварам, ревью и тесты превращаются в квест - появляется мотивация все это унифицировать. Я написал RBACX — лёгкий движок, где правила описываются декларативно (JSON/YAML), а проверка прав — это один понятный вызов. В статье показываю, как собрать из него аккуратный PDP для микросервисов и монолитов.

Я последние два года пишу бэкенд в стартапе MindUp — это мой первый пост на Хабре, и первая библиотека. Буду рад вопросам и критике. Если тема авторизации болит так же, как у меня, загляните!

Читать далее

Обрабатываем строки в 109 раз быстрее, чем NVIDIA на H100

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров9.3K

Недавно я выпустил StringZilla v4 — первый релиз с поддержкой CUDA моей библиотеки для обработки строк. нацеленной в первую очередь на SIMD. Это означает, что теперь она стала быстрой не только на CPU, но и на GPU!

• Я хотел добавить ускорение ROCm для GPU AMD
• Я хотел добавить параллельный мультипаттерновый алгоритм поиска
• Я хотел опубликовать всё это ещё в декабре 2024 года

Итак, не всё пошло по плану, но StringZilla 4 CUDA наконец-то здесь, и она добавляет 500 с лишним GigaCUPS вычислений редакторского расстояния; при этом пакет можно установить через pip install. Также в ней есть некоторые другие трюки, предназначенные для крупномасштабных систем извлечения данных, баз данных и озёр данных, а также биоинформационных задач. И всё это под разрешительной опенсорсной лицензией Apache 2.0, позволяющей свободно использовать библиотеку в коммерческих целях. В этом посте я рассмотрю самые интересные части релиза, и в том числе:

• Быструю оценку алгоритмов динамического программирования на GPU,
• Хэширование CRC32MurMurHashxxHash, aHash и не только, а также
• Фингерпринтинг биологических последовательностей 52-битными целыми числами

Читать далее

Audiobookshelf — self-hosted сервер аудиокниг

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

Недавно я увидел 1TB в статистике книг Audiobookshelf и решил отпраздновать это, рассказав людям как крут Audiobookshelf.

Audiobookshelf — приложение, которое ставится на свой компьютер, сервер аудиокниг. Это каталог ваших аудиокниг. Однако, зачем вообще аудиокниги, когда есть нормальные, текстовые? Если есть возможность, то...

Читать далее

Коробка багов (эмулируется)

Уровень сложностиСложный
Время на прочтение12 мин
Количество просмотров1.9K

24 августа 2025 года состоялся релиз 86Box 5.0. Низкоуровневый эмулятор IBM PC и совместимых с ним компьютеров получил новый динамический рекомпилятор инструкций процессора, расширил поддержку "железа" и улучшил работу множества уже существующих компонентов.

Что ещё внутри "коробки"?

Разрушая миф: почему для использования RISC-V не требуется членство в консорциумах

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

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

На самом деле ситуация иная: например, американская Western Digital, не являясь членом RISC-V International, использует RISC-V IP ядра собственной разработки SweRV Core EH2 и EL2 в большинстве своих контроллеров дисков. 

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

Добро пожаловать под кат!

Читать далее

SPICE-модели: Просто о сложном. Часть 2. Более сложные приемы анализа

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

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

Читать далее

Ближайшие события

Ubuntu 25.10 Beta: GNOME 49, Wayland и новые горизонты для RISC-V

Время на прочтение5 мин
Количество просмотров13K

Canonical представила бета-версию Ubuntu 25.10 под кодовым названием "Questing Quokka". Этот промежуточный выпуск, поддержка которого продлитсядевять месяцев, уже заморозил пакетную базу и перешел к финальному этапу тестирования. Полноценный релиз запланирован на 9 октября, так что ждем. Ну а бета-образы доступны для всех редакций: Ubuntu, Ubuntu Server, Lubuntu, Kubuntu, Ubuntu Mate, Ubuntu Budgie, Ubuntu Studio, Xubuntu, UbuntuKylin, Ubuntu Unity, Edubuntu и Ubuntu Cinnamon. Давайте разберем, что нового в этой версии и почему она заслуживает внимания.

Читать далее

«Просто используй Docker» — мой путь от Whisper к WhisperX

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров12K

Несколько недель назад я опубликовал статью о том, как превратить обычный диктофон в инструмент для расшифровки речи с помощью OpenAI Whisper. Идея была создать бесплатную и приватную систему ИИ диктофона, которая избавляет от необходимости переслушивать аудиозаписи лекций или выступлений. Тогда статья нашла своего читателя, собрав 140 закладок.

В процессе настройки я боролся с несовместимостью библиотек, подбирал нужные версии драйверов и вручную собирал рабочее окружение. В комментариях мне справедливо заметили: «Вместо всей этой возни можно было найти готовый Docker‑контейнер и поднять всё одной командой». Звучало логично, и я с энтузиазмом принял этот совет. Я ведь верю людям в интернете.

Новая идея — не просто расшифровывать речь, а разделять её по голосам — как на совещании или встрече. Это называется диаризацией, и для неё существует продвинутая версия — WhisperX. Цель была проста — получить на выходе не сплошное полотно текста, а готовый протокол встречи, где понятно, кто и что сказал. Казалось, с Docker это будет легко.

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

Но когда я всё починил и заставил систему работать, результат превзошёл мои ожидания. Новейшая модель large-v3 в связке с диаризацией выдала не просто текст, а структурированный диалог. Это был настолько лучший результат, что я смог передать его большой языковой модели (LLM) и получить глубокий анализ одной очень важной для меня личной ситуации — под таким углом, о котором я сам бы никогда не задумался.

Именно в этот момент мой скепсис в отношении «умных ИИ‑диктофонов», которые я критиковал в первой статье, сильно пошатнулся. Скорее всего их сила не в тотальной записи, а в возможности превращать хаос в структурированные данные, готовые для анализа.

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

Весь код выложен на Гитхаб.

Зачем покупать ИИ диктофон?

OMS на Apache NiFi: От прототипа до почти микросервисной архитектуры

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

История о том, как очередная «быстрая костыль-интеграция» на коленке неожиданно превратилась в почти полноценную Order Management System (OMS) с элементами event-driven архитектуры. Всё это — без предварительного проектирования и без единой строчки кода на Java/Scala/Python (хотя тут немного лукавства, так как пару скриптов на Groovy все-таки имеется), на чистом Apache NiFi и SQLite.

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

Вот здесь можно посмотреть исходники

Читать далее

Вышел открытый игровой движок Godot 4.5 — подробный обзор нововведений

Уровень сложностиПростой
Время на прочтение22 мин
Количество просмотров8.5K

Godot — это 2D/3D игровой движок с открытым исходным кодом по лицензии MIT и большим сообществом, поддерживающий основные настольные и мобильные ОС, VR и веб (приставки с помощью сторонних компаний), ядро написано на C++, для скриптов поддерживается GDScript и C#, возможно подключение модулей практически на любом языке вплоть до Rust через GDExtension. Примеры игр — список раз, список два. Версия 4.5 вышла 15 сентября 2025. Главные нововведения: трафаретный буфер (stencil buffer), поддержка средств чтения с экрана, обратная трассировка скриптов и пользовательские логгеры, запекатель шейдеров (shader baker), живой предпросмотр интернационализации, поддержка Apple Vision, физика сегментированных тайловых карт (chunk tilemap physics), фовеальный рендеринг (foveated rendering) на Vulkan Mobile, поддержка WebAssembly SIMD в веб. Далее сделанный человеком перевод официального обзора нововведений с доступными объяснениями для новичков и ссылками на PR с исходным кодом на C++ для профессионалов.

Поддержка трафаретного буфера (stencil buffer). Как нам «прорезать дыру» в этой стене, чтобы посмотреть на игрока на другой стороне? Теперь вы можете сделать это с трафаретными буферами! Представьте невидимую сферу, которая окружает нашего персонажа. Даже если геометрия не отрисовывается на экране, мы вставляем ее форму в трафаретный буфер. Теперь сделаем так, чтобы наши шейдеры отрисовывались, только если целевой пиксель не покрыт трафаретом. Вот так! Трафаретный буфер — это специальный буфер, в который меши могут писать для последующего сравнения. Он похож на существующий буфер глубины, но в него можно записать произвольные значения и у вас больше контроля над тем, что можно сделать со сравнениями. Подробнее и код. Добавлено Apples.

Читать далее

Как Go 1.24 и Swiss Tables вернули нам 200 гигабайт памяти

Уровень сложностиПростой
Время на прочтение14 мин
Количество просмотров6.3K

Команда Go for Devs подготовила перевод статьи о том, как Go 1.24 с новой реализацией Swiss Tables помог снизить использование памяти в продакшне на сотни гигабайт. В статье разбирают, что изменилось в реализации map, как это отразилось на профилях памяти, и какие оптимизации в коде дали дополнительный эффект.

Читать далее

Distroless приложения (VM/bare-metal)

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

Некоторые языки программирования (например, Go и Zig) позволяют собрать приложение без каких-либо зависимостей, в том числе отвязаться от libc, тем самым создание distroless-контейнера на Go становится тривиальной задачей. Но эта же особенность может быть применена не только для создания контейнера, но и для запуска такого приложения в VM или на реальном хосте не используя какой-либо дистрибутив Linux, а используя только ядро Linux и само приложение, построенное с помощью Go (или, например, Zig). Такая возможность позволяет избавиться от дополнительных зависимостей, которые добавляют потенциальные риски с точки зрения атаки на цепочку поставок (supply chain attack).

Читать далее

Qwen3-ASR-Toolkit: бесплатный инструмент для транскрипции аудио любой длительности

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров7.3K

Команда Alibaba Cloud выпустила Qwen3-ASR-Toolkit — открытый инструмент для транскрипции аудио- и видеофайлов любой длительности. Решение построено на базе модели Qwen3-ASR (ранее Qwen3-ASR-Flash) и устраняет ключевую проблему большинства API для распознавания речи — ограничение по длительности файла.

Читать далее

Вклад авторов