Обновить
1024K+

Open source *

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

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

Backstage — управление микросервисным ландшафтом без хаоса

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

Представьте: сотни микросервисов, неделя на поиски API, устаревшая документация. Backstage от Spotify превращает хаос в порядок — и возвращает контроль над масштабом.

Читать далее

Новости

HalChat теперь Open Source: как успешный старт в Google Play изменил курс разработки

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

Всем привет!

Недавно я публиковал статью о том, что HalChat вышел в Google Play, и это вызвало небольшой ажиотаж вокруг проекта. Буквально за пару дней мы пробили отметку в 100+ скачиваний, а за один день было зарегистрировано 60 новых пользователей. Оценив такой отклик, я решил, что нужно идти дальше и сделать клиент HalChat для Android открытым.

Далее: зачем Open Source для HalChat, обновление и планы на будущее.

Читать далее

Синхронизируем проекты Codex и Claude Code между несколькими устройствами через GitHub (для неинженерных проектов!)

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

У меня MacBook Air M4, ПК под Ubuntu 24.04, консальные Claude Code и Codex (каждый хорош немного под свои задачи, как по мне). Я люблю Ubuntu, но вот в поездках Mac прям незаменим — с ним удобно работать, батарея живет достаточно долго, даже в самолете можно комфортно что-то тыкать тачпадом. При этом яблочную экосистему я не люблю, Ubuntu мне ближе и приятнее в использовании. Важный момент: я не программист, так что большая часть моих проектов — это всякая маркетинговая, менеджерская и редакторская штукенция. Поэтому у меня нет под это всё каких-то IDE и т.п. Конечно, разработчики и другие инженеры обычно работают с кодом, а потому просто коммият всё напрямую в гитхаб.

Но к делу. У меня постоянно запущено по 6-10 окон Claude и Codex в терминале и я заколебался проекты синхронизировать через Избранное телеграма — зипами. Плюс хочется, чтобы проекты нормально работали и в той, и в другой нейронке. То есть мне понадобилась какая-то система синхнонизации проектов между разными устройствами и разными нейронками.

Сегодня наконец собрался с силами и доделал такую — выложил ее под Apache 2.0 на гитхабе, можно пользоваться, форкать, дорабатывать и выражать своё «фи» в ишшьюсах и комментариях. Наверянка уже кто-то что-то такое себе делал и я просто изобретаю велосипед. Но что ж теперь поделать, я его уже переизобрел.

В статье расскажу, как делал, что делал, где и что пришлось дотюнивать. Скажу честно, мне эту часть с инструкцией писать было лень и она написана уже GPT, так что простите. Немного пробегусь по стилистике, конечно, но в целом текст править почти не буду.

Читать далее

Navidrome: поднимаем свой стриминговый сервер за один вечер

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

Правообладатели убирают треки, платформы выполняют требования по контенту. Решение — свой стриминговый сервер. Navidrome + Docker: поднимается за один вечер на любом Linux, работает со всеми Subsonic-клиентами.

Читать далее

Зачем мне фото- и видеоредакторы с GUI, когда есть FFmpeg?

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

...или записки из палаты Линуксоида

Часто ли вам пригождается базовая обработка фото или видео? Понизить разрешение, вырезать область, нанести текст, перекодировать в другой формат и другие задачи. Раньше я пользовался для этих целей самыми разными средствами - загрузка в веб-редакторы, Paint, Photoshop, Sony Vegas.

Пока в один прекрасный момент не пересел на Linux...Удобного видеоредактора для себя не нашёл, а к рабочему процессу в командной строке и установке через dnf install уже привык (я использую Fedora). И понеслась...

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

Увидеть нестандартный workflow

Острова и несколько личностей на одном устройстве: как мы делаем приватность частью архитектуры

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

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

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

1. Фундамент: сервер, который мало что знает

Сначала коротко про основание, иначе дальше будет непонятно.

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

- Sealed sender: отправитель запечатан внутри зашифрованного конверта, а не лежит в заголовке. На транспортном уровне сервер видит "кому доставить", но не "от кого". Кто это понимает, тот сразу видит, что граф общения на сервере не собирается.

- Контент шифруется end-to-end: эфемерный X25519 на сообщение, HKDF, ChaCha20-Poly1305. Сервер пересылает шифротекст, ключей у него нет.

Идея простая: сервер это в основном тупая труба для шифротекста. Нет телефонов, нет графа, нет содержимого. Это важно для всего дальнейшего.

2. Острова: свой сервер вместо нашего

Раз сервер это тупая труба, его можно вынести куда угодно. Любая организация (редакция, юрфирма, команда, НКО) поднимает свой экземпляр RCQ, свой остров, и общается внутри него: свой сервер, свои UIN, своя история, свои группы, отдельно от публичной сети.

Читать далее

Я сделал Vite-плагин, который сохраняет изменения CSS прямо в исходники

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

Каждый раз, когда я хотел поправить отступ или цвет в процессе разработки, я делал одно и то же:

открыл DevTools → нашёл элемент → поменял значение → понравилось → скопировал → переключился в редактор → нашёл файл → вставил.

Это семь шагов ради однострочного изменения. Я сделал LiveStyleSync, чтобы это был один шаг.

Читать далее

Возрождение классической игры для Unix: 20-летний процесс археологии ПО

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

Открытие: цифровая капсула времени из 1987 года

Представьте: на дворе 26 октября 1987 года. Ещё стоит берлинская стена, World Wide Web состоит из одного текста, а ПО распространяется через новостные группы USENET в текстовых файлах, разбитых на несколько постов. В этот день Эдвард Барлоу опубликовал на comp.sources.games нечто особенное:

«conquest – многопользовательская игра в средиземье, Part01/05»

Так Эд Барлоу впервые объявил о ней, но вскоре поменял название на Conquer.

Это была Conquer — сложная многопользовательская стратегия, повлиявшая на бесчисленное количество других. Игроки брали под своё командование народы Средиземья, управляли ресурсами, армиями, системами магии и дипломатическими отношениями. Примечательной игру делал не только геймплей, но и то, что она была создана и распространялась в эпоху, когда ещё даже не придумали понятие «open source».

Читать далее

Дешёвая модерация анонимной стены: 3-слойный каскад и ROT13-джейлбрейк в проде

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

Построили модерацию для открытой анонимной мультиязычной стены — дешёвый каскад (regex → классификатор → LLM-судья → fallback), ≈$0 на API. И кто-то попытался обойти его ROT13-джейлбрейком, LLM-судья раскусил закодированную инъекцию, которую keyword-фильтр бы пропустил. Разбор архитектуры, экономики и того, что спросил r/selfhosted.

Читать далее

Как один зажёванный лист в принтере Xerox привел к созданию GNU/Linux и всей философии Open Source

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

Принято считать, что современный IT-мир построили Гейтс, Джобс или Торвальдс. Но без одного бородатого хакера из MIT, который в 80-х вусмерть разругался с принтером Xerox, у нас бы не было ни Linux, ни Android, ни концепции Open Source в её нынешнем виде.

Ричард Столлман — создатель проекта GNU и вирусной лицензии GPL, самый радикальный, неудобный и бескомпромиссный философ от мира IT. Долгие годы индустрия считала его эксцентричным параноиком, который принципиально не пользуется смартфонами и шарахается от проприетарного софта. Но в эпоху тотальной корпоративной слежки и коммерциализации каждого байта его идеи внезапно обрели новый, пугающе актуальный смысл. Вспоминаем историю человека, который в одиночку решил сделать программное обеспечение свободным — и у него почти получилось.

Читать далее

Как оценивать ИИ‑агентов в проде: нижняя планка, трассы и кодовые проверки

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

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

Читать далее

Трансформер в on-premise AppSec: как мы встроили ML-модель для классификации секретов в продукт без GPU

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

Рассказываем, как мы интегрировали CodeBERT-based модель классификации секретов в production-продукт с жёсткими ограничениями по железу, сократив время инференса с 320 до 90 секунд и размер модели с ~600 до ~130 МБ — без дискретных ускорителей и тяжёлых зависимостей.

Читать далее

Распределённый ПЛК без шкафов автоматики

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

Insol-1000 в сборе: центральный модуль с OLED и с модулями расширения на DIN-рейке.

Статья посвящена практическому построению распределённой системы автоматизации на основе открытого стандарта IEC 61499 и экосистемы 4diac (Eclipse Foundation).

Читать далее

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

Редактор, в котором главный — терминал: как я делал лёгкую IDE под эпоху ИИ-агентов

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

Год назад я почти перестал писать код руками - теперь чаще диктую задачу агенту прямо в терминале. И однажды понял, что мой здоровенный IDE превратился в дорогую рамку вокруг одного окна. Так появился лёгкий редактор, где терминал главный, а код с git - сбоку.

Внутри - про инженерию, а не про “качайте продукт”: как агент-независимо ловить “агент работает / ждёт ответа / закончил” через /proc, как собрать Windows-сборку Electron прямо с Linux без Wine, темы на контракте CSS-токенов и пара граблей, на которых я знатно подгорел (привет, Ctrl+V в русской раскладке).

Читать далее

Obsidian Hybrid Search (OHS). MCP и CLI, которые выводят поиск по заметкам с AI-агентами на новый уровень

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

AI-агенты умеют искать по Obsidian-хранилищу, но делают это слишком топорно через glob и grep. Да, для кода эти инструменты работают потрясающе, но хранилище в Obsidian не имеет такой же высокой структурированности. Искать по нему чисто лексически – значит терять инсайты, которые связаны по смыслу.

Чтобы решить эту проблему, я разработал Obsidian Hybrid Search – MCP-сервер и CLI, которые дают агенту мощный поисковый движок поверх заметок.

GitHub + Obsidian Plugin

Перестать заниматься glob-grep-ингом

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

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

В своих прошлых статьях «Три пути к 4K» и «Нейросетевой апскейлинг дома» я рассказывал о выборе софта, базовых принципах нейросетевого апскейлинга и реставрации исходников уровня DVD и VHS. Но время идёт, навыки растут, и вот от простого (кусок дерева -> игрушка) мы переходим к сложному (игрушка -> коллекционная фигурка), а именно на территорию 720p–1080p исходников, Blu-ray и вебки.

И именно здесь для меня началось то, что я назвал «долиной отчаяния».

Вы берёте отличный исходник, выбираете крутую open-source модель, запускаете рендер… и всегда получаете что-то странное на выходе. Цвета поплыли, контраст упал, на градиентах неба появились какие-то искажённые линии, а ваш FPS в процессе ужасен. Кажется, что ПО сломано, а ИИ-модели взбесились и вместо «качественного апскейла» портят картинку.

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

Читать далее

KeyboardHook: кроссплатформенный глобальный перехват клавиатуры и мыши для .NET

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

Рассказываю, как написал кроссплатформенную .NET-библиотеку для глобального перехвата клавиатуры и мыши. Под капотом: WH_KEYBOARD_LL на Windows, CGEventTap на macOS и polling через XQueryKeymap на Linux. Один интерфейс, три реализации, ноль внешних зависимостей.

Читать далее

Бесплатная синхронизация Obsidian на разных устройствах

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

Уже многие написали и рассказали о таком полезном инструменте для организации своих заметок как Obsidian.

Если кто еще не знает, Obsidian - это бесплатное Electron-приложение, доступное на всех основных платформах, созданное Эрикой Сю и Шидом Ли уже в далёком 2020 году. В этой программе итересным UI-решением, позволившим привлечь внимание аудитории, стало визуализация графа заметок, как некой общей карты,мозга, базы знаний, состоящией из md-документов. Для меня на приктике эта фича оказалась самой бесполезной по сравнению с другими возможностями платформы. Встроенные плагины для ежедневных заметок, тэги, мощный поиск, шаблоны, работа с изображениями и многое другое + больше колличество стороннних плагинов на любой вкус и возможность при необходимости написать их самому. Вот, что мне пригодилось на самом деле. Я действительно за короткое время перенес все свои заметки из разрозненных источников в одно место и программа стала моим ежедненвным инструментом. Поэтому я стал ее использовать на нескольких устройствах.

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

В качестве решения я нашел opensource-программу syncthing. Она простая, быстро устанавливается, имеет довольно простой интерфейс. На своих устройствах я использую Ubuntu, поэтому данное ПО также отлично подходит.

Читать далее

Фотограмметрическая поворотка на Arduino за 2500 рублей

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

Ко мне на кафедре обратились двое старшекурсников. Они пишут программу для археологов: пользователь фотографирует, что нашел, программа лезет в модель (которая натренирована на исторические архивах) и возвращает карту вероятностей, где поблизости могут лежать неметаллические артефакты, которые металлоискатель не ловит. Дерево, керамика, кость, ткань и тд. Для обучения модели им нужен был большой датасет фотографий находок времен WW2 (значки, гильзы, медали, фрагменты обмундирования) под разными углами и наклонами.

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

Я предложил собрать автоматическую поворотку. Спроектировал, напечатал, написал прошивку и питоновский скрипт. Сразу не заработало, переделал пару дней. К ночи рабочей версии я сидел за столом и каждые 12 минут жал ресет на Arduino, меняя предмет на платформе. К утру датасет был готов.

Читать далее

Plan-tango: как я перестал гонять план между Claude Code и Codex руками

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

Codex стабильно находит в моих планах разработки то, чего Claude в своём же плане не видит. Я заметил это в первые недели после покупки GPT Pro — и теперь не сажусь писать код, пока план не пройдёт хотя бы один раунд cross-review.

В тексте — как из ручной возни с переключением вкладок Claude Code ↔ Codex вырос plan-tango: команда в Claude Code, которая сама гоняет план через Codex CLI, пока не останется замечаний.

Читать далее
1
23 ...