Обновить
468.08

Open source *

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

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

MegaSD: новый адаптер для атаки DaMAgeCard, или Как подключить NVMe-диск к Nintendo Switch 2

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

С выходом интерфейса SD Express всё больше производителей начинают использовать его в своих устройствах. Nintendo Switch 2 — не исключение. Этот интерфейс позволяет запускать игры прямо с карты памяти за счёт значительно возросшей пропускной способности — спасибо PCIe. Но интересен он не только геймерам.

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

Установить NVMe-диск!

Новости

Новый релиз OpenBSD 7.8 с поддержкой Pi 5 и многопоточным TCP

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

На днях вышла OpenBSD 7.8, продолжая традицию регулярных обновлений каждые полгода. С 1995 команда держит фокус на безопасности, переносимости и простоте кода. Размер базового ISO-образа — около 597 МБ. Скачать его можно с зеркал — например, ftp.openbsd.org. В отличие от более громоздких дистрибутивов, OpenBSD предпочитает минимализм: система собирается из исходников, а пакеты портов обновляются параллельно.

За тридцать лет в стандартной установке нашлось всего лишь две уязвимости, что делает OpenBSD эталоном для других ОС. Если предыдущая версия 7.7 вышла в апреле, то этот релиз накопил изменения, ориентированные на современное железо и сетевые нагрузки. Разработчики подчеркивают, что улучшения касаются почти всех компонентов, от ядра до утилит, без лишней мишуры. В целом, обновление подойдет администраторам, работающим с виртуализацией или embedded-устройствами, где стабильность важнее новизны. Что ж, давайте посмотрим, что нам тут приготовили.

Читать далее

Внедрение автоматизированного AppSec конвейера за пару дней без смс и регистрации

Время на прочтение10 мин
Количество просмотров498

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

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

Меня зовут Алексей Исламов, я администратор СИБ в Точка Банк. В статье предлагаю готовый вариант реализации такой системы из open‑source инструментов, которым может воспользоваться каждый.

Читать далее

Мой первый AI-агент на базе Neuron — PHP-агентного фреймворка

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

Я PHP-разработчик с многолетним стажем (от слова «много»). Привык, что мой мир — это веб‑приложения, серверный код и бесконечные «фичи» на Laravel или Yii (да... легаси — это мой конёк). В последние пару лет вокруг бушует AI‑бум: всюду слышно про нейронки, LLM, про каких‑то «агентов», которые сами решают задачи. И, признаться, временами у меня появлялась лёгкая тревога. Не отстану ли я от поезда, если не перейду полностью на Python/NodeJS или не выучу новый фреймворк? Ведь почти все примеры ИИ‑интеграций, что я видел, были на Python или JavaScript. PHP в этих разговорах фигурировал редко, если вообще упоминался.

Недавно я наткнулся на упоминание о Neuron — инструменте, который гордо назван «первым enterprise‑ready агентным фреймворком на PHP». Мой скептицизм сразу поднял голову: «Агентный фреймворк? На PHP? Серьёзно?» С другой стороны, это заинтриговало. Если всё правда, то вместо того чтобы судорожно перелистывать учебник по Python, возможно, я смогу внедрять ИИ прямо там, где мне комфортно — в PHP‑стеке. И вот я решил разобраться, что же такое этот Neuron и насколько он реален.

Погрузиться в Neuron

Как memory maps (mmap) обеспечивают в 25 раз более быстрый доступ к файлам в Go

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

Команда Go for Devs подготовила перевод статьи о том, как memory maps (mmap) обеспечивают молниеносный доступ к файлам в Go. Автор показывает, что замена обычного чтения и записи на работу с памятью может ускорить программу в 25 раз — и объясняет, почему это почти магия, но с нюансами.

Читать далее

ИИ-помощники для Python: как выбрать между чат-песочницей, IDE-ассистентом, агентами и open-source

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

В 2025-м помощники для Python распались на 4 класса: онлайн-чаты с изолированной песочницей, IDE-плагины, автономные агенты и локальные/открытые модели. Разбираемся, что чем отличается, где уместно, сколько стоит и на что смотреть разработчикам при выборе. А так же примеры кода.

Читать далее

GhostBSD — Unix с человеческим лицом

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

Сегодня я расскажу об одном из самых долгих «крестовых походов» в мире Unix — попытке сделать из FreeBSD полноценную настольную систему, способную потягаться с тройкой лидеров: Windows, Linux и macOS. Эта история началась еще с конца 90-х, когда KDE и GNOME стали делать Linux дружелюбным для обычных пользователей, а не исключительно для гиков.

Многие представители комьюнити FreeBSD тогда подумали: «А чем мы, собственно говоря, хуже? У нас есть всё то же самое, что и в Linux, только стабильнее и надежнее». А значит, превратить его в десктоп будет вполне разумным решением. Но суровая действительность быстро вернула энтузиастов с небес на землю. Об этом и поговорим.

Читать далее

Импорт, преобразование и оптимизация — одним конвейером SQL

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

Импорт терабайтов из S3 одним SQL: INSERT FROM FILES и PIPE. Партиционирование через date_trunc(), RANDOM‑бакетизация, трансформации с JOIN/UNNEST и гибкий ALTER TABLE.

Читать далее

Dumper: единый инструмент для резервного копирования баз данных

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

Когда в инфраструктуре десятки сервисов и баз данных разных типов, ручное резервное копирование превращается в кошмар.

Один сервер использует PostgreSQL, другой — MySQL, третий — MongoDB, и для каждого нужны свои команды (pg_dump, mysqldump, mongodump) и свои скрипты.

Проект Dumper решает эту проблему он объединяет все типы баз в один универсальный инструмент.

Dumper написан на Go и работает через CLI, конфигурация задаётся в YAML — поэтому его легко встроить в cron, CI/CD pipelines, GitHub Actions или Docker-окружение.

Читать далее

Можно ли было обнаружить бэкдор XZ при более продуманной работе с пакетами в Git и Debian?

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

Обнаружение бэкдора в XZ Utils весной 2024 года поразило опенсорс-сообщество и подняло серьёзные вопросы о безопасности цепочки поставок ПО. В этом посте мы изучим, могло ли улучшение практик работы с пакетами Debian помочь в выявлении этой угрозы, приведём руководство по аудиту пакетов и предложим улучшения на будущее.

Бэкдор XZ в версиях 5.6.0/5.6.1 быстро попал во многие крупные дистрибутивы Linux наподобие Debian и Fedora, но, к счастью, не добрался до многих реальных пользователей, потому что благодаря героическому усердию Андреса Фройнда релизы с бэкдором были быстро удалены. Нам крайне повезло, что мы выявили регрессию производительности SSH в полсекунды, уделили время её трассировке, обнаружили зловредный код в загружаемой SSH библиотеке XZ и быстро сообщили о нём различным командам безопасников для принятия быстрых координированных мер защиты.

Этот эпизод заставил разработчиков ПО задаться следующими вопросами:

Почему ни один из упаковщиков дистрибутивов Linux не заметил ничего странного при импорте новой версии XZ 5.6.0/5.6.1 из апстрима?

Легко ли проводить аудит современной цепочки поставок в самых популярных дистрибутивах Linux?

Возможно ли наличие других подобных бэкдоров, которые мы пока не выявили?

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

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

Читать далее

Systemd-rc — мост для тех кто привык к Systemd

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

Мост для тех кто привык к Systemd. Без эмуляции, без Systemd-зависимостей. Только переводит команды.

Читать далее

Веб-камера — глаза робота. Пишу веб-приложение на FastApi для управления DIY-проектом. Часть 5

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

В предыдущей статье я подключил два мотора к драйверу двигателей L298N. Сам драйвер управлялся с одноплатного компьютера Orange Pi Zero H+ через библиотеку gpiod, написанную на языке Python. Также я использовал avahi-daemon, чтобы задать для динамического IP одноплатника имя хоста, по которому к нему всегда можно обратиться, находясь в локальной сети.

В этом материале я ��становлю все электрические компоненты на гусеничную платформу. Напишу код для LED, который будет выполнять роль индикации состояния подключения робота. Для этого я спаяю небольшую плату, на которой будут установлены светодиод, резистор на 150 Ом и провода для подключения. В конце статьи робот пройдёт полосу препятствий, что продемонстрирует эффективность софта для управления. Также исправлю некоторые ошибки, обнаруженные в процессе разработки.

Статья будет полезна любителям DIY-проектов и веб-разработчикам, интересующимся фреймворком FastAPI.

Читать далее

Масштабирование кластера Valkey до 1 миллиарда запросов в секунду

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

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

Читать далее

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

3 инструмента, которые автоматически превращают код Python в формулы LaTeX

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

Команда Python for Devs подготовила перевод статьи о том, как превратить код Python в элегантные математические формулы прямо в Jupyter-ноутбуке. Если вы строите финансовые модели, алгоритмы или научные расчёты — LaTeX поможет оформить их профессионально. В статье разбираем четыре инструмента: IPython.display.Latexдля ручного рендеринга, handcalcs для пошаговых вычислений, latexify-py для автоматического преобразования функций и SymPy для символьной математики.

Читать далее

Impala vs Greenplum vs StarRocks: тестирование производительности на объеме порядка десятков миллионов строк

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

Задача: быстро выполнять агрегирующие запросы (JOIN, GROUP BY, COUNT) по десяткам миллионов строк в офлайновых сценариях на Big Data‑платформе. Мы сравнили три подхода: Parquet + Impala в экосистеме CDH, MPP‑движок Greenplum и MPP‑СУБД StarRocks. В единой тестовой среде (SAD ~7 млн, ITEM ~3 млн записей) выполнили серию запросов JOIN + GROUP BY + ORDER BY и замерили суммарное время 10 прогонов. Показано, что внедрение MPP заметно ускоряет аналитику (типично 1–2 с на запрос), при этом StarRocks в среднем немного обходит Greenplum. В статье — методика, параметры развертывания, нюансы импорта из Oracle (CloudCanal) и сводные метрики.

Читать далее

Kubernetes кластер на миллион узлов. Обзор проекта k8s-1m

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

Команда Go for Devs подготовила перевод k8s-1m — кейса о том, как не догадки, а измерения двигают пределы Kubernetes. Ключевые идеи: изоляция QPS по типам ресурсов, смягчение гарантий хранения для эфемерных данных, и шардирование планировщика. Полезно всем, кто проектирует крупные кластеры или хочет работать с ними.

Читать далее

Веб-архитектуры и Джеймикс

Время на прочтение14 мин
Количество просмотров574

Это может прозвучать необычно, но развитие полноценных веб-приложений фактически началась с фронтенд-технологий. До разделения кода систем на фронтенд и бэкенд все они были как бы разновидностью сайтов, но с более сложными процессами, выполняющимися “на сервере”. На каждый запрос пользователя, сервером ему отдавался новый документ с такой же шапкой и подвалом. За редким исключением эти интерфейсы выходили достаточно примитивными, ведь каждое действие пользователя заставляло систему сначала немного подумать, и затем нарисовать новую страницу для результативного состояния. Значительные манипуляции с содержимым страницы в браузерах обычно были крайней непроизводительными, да и оказывались сложны для реализации. Изначально HTML-сайты или Web задумывались как упрощенный вариант издательской системы, в основе которой лежала идея "гипертекста” с переходами от одних страниц к другим через ссылки.  

Читать далее

Какие инструменты выбрать для управления облаком

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

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

Сегодня расскажем об инструментах, которые мы предоставляем для управления Т1 Облако: API, веб‑интерфейсе управления и Terraform. Разберём их особенности, приведём примеры из практики и дадим рекомендации, как с их помощью управлять инфраструктурой.

Читать далее

Дракончик учится летать: Brain-like Dragon Hatchling простыми словами

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

Искусственные нейросети научились распознавать лица и писать тексты, но до сих пор не умеют учиться на лету. Что если создать ИИ, который адаптируется к новому опыту прямо во время работы — как живое существо?

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

Читать далее

ClickHouse vs StarRocks: сравнение выбора MPP‑баз данных для всех сценариев

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

Сравнение ClickHouse и StarRocks: архитектура и функциональность, типы join и модели данных (широкая таблица vs звезда), конкурентность, частые обновления (Primary Key, Merge‑on‑Read), администрирование и онлайн‑масштабирование. Приводим результаты бенчмарков SSB и TPC‑H, а также тесты загрузки (GitHub dataset). Все тестовые данные и конфигурации актуальны на 2022 год. Если вам интересно, воспроизведите эксперименты по актуальным инструкциям проектов и поделитесь результатами и замечаниями — это поможет уточнить выводы и обновить сравнение.

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

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