Обновить
512K+

Open source *

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

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

Как я три года пилю свой музыкальный сервер: часть первая

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

Описываю настроение словами — и Raspberry Pi находит подходящие треки в моей коллекции, полностью локально, без облака и подписки. Как это устроено внутри.

Читать далее

WordPress: как платформа завоевала лидерство и появилась в патентах

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

Когда лет 10 назад требовалось создать информационный сайт, выбор CMS был очевиден: WordPress проще устанавливался, а многочисленные варианты шаблонов дизайна можно было приспособить к любым потребностям. Плюс легкость в размещении и редактировании материалов, возможность добавлять опросы, видео, делать фотогалереи, используя расширения и виджеты. Надо ли удивляться, что при таких вводных WordPress сейчас управляет 43% сайтов в мире? Сегодняшний разговор о системе и о том, как WordPress используется в патентовании.

Читать далее

Защита CI/CD в open source-проекте, часть 3: учётные данные, верификация и что дальше

Время на прочтение7 мин
Охват и читатели8.2K

Команда VK Cloud перевела заключительную часть цикла Cilium про защиту цепочки поставок. Часть 1 была про контроль доступа, часть 2 — про укрепление зависимостей. Эта же часть о том, как изолировать секреты CI и продакшена за разными окружениями GitHub, подписывать каждый релиз без долгоживущих ключей через Sigstore Cosign, и какие пробелы безопасности остаются открытыми. Отдельно — разбор дорожной карты безопасности GitHub Actions на 2026 год и того, как платформенные изменения соотносятся с уже выстроенными контролями. Полезно DevOps- и SRE-инженерам, специалистам по безопасности и мейнтейнерам OSS-проектов.

Читать далее

Заметки Note: P2P-синхронизация, локальное шифрование и режим «под принуждением»

Время на прочтение8 мин
Охват и читатели8.9K

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

Вот ровно эту проблему я и попытался решить.

Читать далее

crypto-gost — реализация открытых стандартов (RFC) алгоритмов ГОСТ на Java и Android

Уровень сложностиСредний
Время на прочтение29 мин
Охват и читатели9.4K

Если вы Java-разработчик, которому в личных целях нужно поднять TLS 1.3 на ГОСТ, создать ГОСТ-сертификаты, подписать документ CAdES, создать свой тестовый УЦ, сделать шифрование и подпись на своем Android — эта статья для вас. Все примеры в этой статье одинаково работают что на JVM 21, что на Android 12+.

crypto-gost —   криптографическая библиотека алгоритмов ГОСТ на Java 21+ и Android 12+, а также сопутствующая обвязка вокруг них, позволяющая использовать в личных целях алгоритмы и стандарты ГОСТ в инфраструктуре Java. Статья написана в академических целях.

Читать далее

Как мы запустили Ornith‑35B на ноутбуке с 8 ГБ VRAM и разогнали её до 99 ток/с на AMD Strix Halo

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

Ornith‑1.0‑35B обошла Qwen3.5‑397B в Terminal‑Bench, а на нашем локальном срезе хорошо показала себя в агентном кодинге. Мы решили проверить, насколько быстрее она сможет работать на AMD Strix Halo с пропускной способностью памяти до 256 ГБ/с.

В статье — результаты экспериментов с Vulkan, MTP, селективной квантизацией и n‑gram reuse: что не дало прироста, как удалось получить 99 ток/с без потери качества и каким способом 35B‑модель запустилась на Windows‑ноутбуке с 8 ГБ VRAM.

Читать далее

OpenSource мертв, да здравствует OpenSource :)

Время на прочтение2 мин
Охват и читатели13K

Примерно в 23 году, когда LLM с историей ChatGPT полноценно вошли в жизнь, я стал задумываться - а что будет с Open Source? Уже тогда было понятно, что что-то точно поменяется.

Мысль у меня была простая. 

LLM меняет игру => стоимость софта будет падать все сильнее => Софт перестает что-либо стоить => А это заставит рынок сильно меняться.

Через какое-то время я встретился с представителем одного очень крупного зеленого банка :)

Из-за моего Open Source стартапа мы долго рассуждали на эту тему, и после разговора я понял - перед нами два стула. На какой сядет реальность, а на какой фантазия - пока непонятно :D

Первый стул - Open Source вымрет как явление. Зачем качать библиотеку, если можно сгенерировать полностью схожую и не связываться с лицензиями и прочими сложными вопросами? Тебе это все становится не нужно.

Мысль интересная, но пока она бьется об одну важную стену. Стена называется "LLM генерит говнокод". Говнокод не в плане, красивый он или некрасивый, а в плане, что он неработоспособный. А скажешь агенту "вот бага, подправь" - он часто сделает еще хуже. И что бы ни говорили про рост когнитивки, без должным образом поставленной цели и объяснения проблемы агенты качественный софт не выдают. Сталкиваюсь с этим прямо сейчас - пилю очередной open source продукт.

Есть второй стул, и пока я больше верю в него. Раз стоимость софта падает, рынок будет меняться в сторону того, что софт скорее должен быть open source. Не open source - меньше доверия. Модель "community edition + платный тариф" - Enterprise, Team, неважно. Тем более что так софт элементарно проще продвигать даже через агентоцентричную экономику. Потому что, будем объективны, ближайший рост экономики в мире обеспечат агенты, а не люди.

Читать далее

Еще одна уведомлялка про обновления Docker — но с прокси и без автообновлений

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

Простите, но я сделал еще один продукт, который уведомляет, если есть обновления. Многие следят за обновлениями своего зоопарка docker-контейнеров, и я не исключение. На рынке есть несколько готовых решений, и я честно попробовал самые популярные.
Watchtower на тот момент показался мне заброшенным (про живые форки я тогда не знал) и что-то с ним не задалось, что именно, если честно, уже не помню. Это был первый кандидат, когда активно начал использовать docker.
С Diun не сложилось из-за темплейтов уведомлений - я не осилил их настолько, чтобы получить читаемое сообщение, точнее позже осилил, но из коробки - это мрак.
WUD оказался ближе всего к тому, что я хотел, и честно, будь в нём прокси для уведомлений в телегу, я бы, скорее всего, на нём и остался. Но прокси не было, а напрямую до Telegram некоторые мои серверы не достают. Плюс особенность зашивать имя хоста в имя переменной конфига - это что-то с чем-то. Первым делом форкнул WUD, сделал патч и PR, чтобы добавить прокси для телеги. Посмотрел, как часто там выпускаются релизы, всплакнул и пошел пилить свое. Самое смешное, что PR в итоге приняли за неделю (спустя полгода от предыдущего релиза), но к тому времени я уже переехал полностью на свою поделку.

Читать далее

YaGo: как я хотел бесплатный self-hosted Tavily API, а в итоге воскресил YaCy

Уровень сложностиСредний
Время на прочтение16 мин
Охват и читатели14K

Всё началось не с мечты про «поисковик нового поколения». Мне понадобился быстрый self-hosted Tavily-compatible API для собственных рабочих и личных AI-решений: без оплаты за каждый запрос, без внешнего сервиса в обязательной цепочке и с индексом, содержимое которого контролирую я сам.

Тут я вспомнил про YaCy. Когда-то я уже поднимал его ноду. Идея мне нравилась, а реализация — заметно меньше: Java, тяжёлая машина и примерно шесть секунд ожидания ответа на моей тогдашней установке. Для человека, который один раз нажал Enter, это ещё можно пережить. Для агента, делающего несколько поисков, уточнений и extract подряд, это превращает один шаг в минутный перекур.

Поэтому вместо ещё одной обёртки над чужим поиском я оставил от YaCy сетевой протокол и начал собирать поисковую ноду заново: на Go, с отдельным краулером, embedded storage, нормальным API и ranking pipeline из современных работ по information retrieval.

Под катом — немного сетевой археологии, Bleve, bbolt, gRPC, BM25, LambdaMART и рассказ о том, как задача «дайте локальный endpoint для AI-агентов» постепенно превратилась в реинкарнацию YaCy.

Читать далее

Личное облако на Proxmox: как собрать себе фотохостинг с мобильным клиентом

Уровень сложностиПростой
Время на прочтение17 мин
Охват и читатели15K

В прошлой статье я писал как перенести свою музыку себе домой, а это руководство для того, кто решил забрать свой фотоархив домой. От пустого LXC-контейнера до работающего Immich: свой «Google Photos» с умным поиском и лицами на встроенном GPU, доступ с телефона из любой точки мира — и перенос семнадцати тысяч фотографий из Google без потери единого кадра и с восстановлением геолокации.

Читать далее

Благодаря этим пяти идеям из Unix 1970-х годов Linux до сих пор отлично работает

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

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

Читать далее

Мини‑ПК на Strix Halo под параллельной нагрузкой: 236 tok/s на 32 одновременных запросах и три ошибки

Уровень сложностиСредний
Время на прочтение18 мин
Охват и читатели16K

Один Beelink GTR9 Pro на Ryzen AI Max+ 395 выдал 236 tok/s суммарной генерации на 32 одновременных запросах в коротких прогонах и удержал в среднем 226 tok/s за 30 минут непрерывной нагрузки без тротлинга. По дороге к этим числам я нашёл воспроизводимый провал пропускной способности, который сначала выглядел свойством одной модели, увидел, как спекулятивный декодинг на моём стеке превращается из ускорителя в налог, и трижды чуть не опубликовал неверные выводы. Каждый раз спасали контрольные замеры, все три истории здесь, в статье.

Харнессы, конфиги, полные таблицы, значения по каждому ключевому и финальному прогону, поминутные ряды выносливости и телеметрия лежат в открытом репозитории. Логи отдельных запросов харнесс не вёл, поэтому пересчитать можно всё до уровня прогона, но не глубже. Числа сняты на одном конкретном стенде; что из этого переносится на другие стеки, а что нет, оговорено по ходу текста.

Читать далее

Не отдам Gpick! Он хороший! Но крутить педали придётся…

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

Исторически лучший Gpick в KDE на Wayland остался без пипетки, а штатные kcolorpicker-ы повергают в печаль и уныние. Что делать? Велосипедить! Написал лёгкий Python-скрипт, дёргающий родной XDG-портал.

UPD: Прокачал утилиту до полноценного комбайна — теперь она выдаёт чистые данные без префиксов, умеет копировать конкретные форматы (HEX, RGB, HSL) в буфер и идеально встаёт в любые shell-конвейеры и хоткеи. Больше велосипедов богу СПО!

Читать далее

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

SSB — «мы стояли на „плоскости“»

Время на прочтение11 мин
Охват и читатели9.3K

SSB — «мы стояли на „плоскости“»

Предлагаемый текст представляет опыт ознакомления автора с тестом SSB в свете обычных прикладных вопросов BI‑проекта умеренного размаха. Автор пытается бросить пытливый взгляд на спектр перспективных возможностей, обеспечиваемых доступностью и масштабируемостью теста SSB.

Читать далее

Harness кодинг‑агента: разобрал исходники Codex, OpenCode, Pi и свою собственную

Уровень сложностиСредний
Время на прочтение18 мин
Охват и читатели18K

Я собираю своего кодинг‑агента поверх моделей OpenAI. Базовый агентный цикл написал сам на Pydantic AI, и он быстро заработал. А потом начались сложные узлы: как сжимать распухший контекст, как не дать агенту делать заново уже сделанное, как понять, что он правда закончил, а не выдохся. На каждом таком узле я застревал и шёл смотреть, как это решают взрослые. Благо исходники Codex, OpenCode и Pi лежат открыто, а архитектуру Claude Code Anthropic описывает сама.

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

Читать далее

Пять проектов, где ИИ-агент проверяет сам себя — итоги хакатона Built with Claude

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели9.4K

7 июля стартовал недельный онлайн-хакатон Built with Claude: Life Sciences. Его провели Anthropic вместе с институтом Гладстона и площадкой Cerebral Valley, участники со всего мира собирали проекты на стыке ИИ и биомедицины, используя Claude Code и научный доступ к Claude. Вчера - 17 июля объявили победителей. Ниже, разбор пяти призовых проектов и общий инженерный приём, который их объединяет.

Читать далее

Как я прошил наушники soundcore, портировал на них кастомную прошивку и DOOM. Часть 1

Время на прочтение5 мин
Охват и читатели27K

Я хотел исполнить свою давнюю мечту — запустить DOOM на собственных наушниках.
В итоге вместе с портом я создал проект для полной модификации их софтверной части. Это первая часть статьи — она рассказывает о создании патчера стоковой прошивки.

Читать далее

Пишем движок для игры Arcanum на С++ 23 в 3D. Глава 00 — В начале славных дел

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

Приветствую, Хабравчане.

Предлагаю вам, окунуться в ретро программирование на С++ 23 и модулях. Да вы не ослышались. Это вполне возможно и я готов вам рассказать это и показать на практике.
Но сначала мы напишем движок для моей любимой игры Arcanum. Но мы не остановимся на спрайтах и старой графике, я добавлю 3D.

Если хотите узнать как. Заходите. Я рад всем.

Егог

Когда Kubernetes нельзя, а Ansible боль: чего я не договорил про Horchestra

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели8.1K

Настоящая проблема — не отсутствие одной платформы, а разнородность сред, в которые нужно доставить одно и то же приложение. Каждая среда тянет доставку к своему механизму, а инфраструктурный код — тот самый «второй API» с сотнями параметров установки — форкается под каждую цель.

Цель принести Kube-way туда, где Kubernetes под запретом!

Читать далее

ggrebalance: Часть 2. Планирование операции ребаланса

Уровень сложностиСредний
Время на прочтение18 мин
Охват и читатели7.6K

В статье рассматривается планирование ребаланса кластера Greengage DB (open-source fork Greenplum) после shrink, декомиссии и добавления хостов: формальная модель размещения primary- и mirror-сегментов, минимизация числа перемещений, сравнение точных и эвристических алгоритмов и реализация планировщика в ggrebalance

Читать далее