China blocked all HTTPS connection abroad for 1 hour in midnight
20 августа 2025 г. с 00:34 до 01:48 по Пекину GFW безусловно сбрасывал все TCP-соединения на 443-порт, разрывая трафик между Китаем и остальным миром.
Ключевые факты
- Цель: только 443/tcp; 22, 80, 8443 не трогались.
- Механизм:
- из Китая:
SYN
илиSYN+ACK
вызывали три поддельныхRST+ACK
; - в Китай:
RST
посылались только наSYN+ACK
сервера.
- из Китая:
- Оборудование: отпечатки не совпадают с известными GFW-узлами ⇒ либо новое устройство, либо сбой.
Примеры трафика
Из Китая наружу
CN_IP → NON_CN_IP:443 [SYN]
NON_CN_IP:443 → CN_IP [RST+ACK] (seq 0, ack 1, win 1980-1982)
NON_CN_IP:443 → CN_IP [SYN+ACK]
NON_CN_IP:443 → CN_IP [RST+ACK] (seq 1, ack 1, win 3293-3295)
Снаружи в Китай
192.168.0.162 → baidu.com:443 [SYN]
baidu.com:443 → 192.168.0.162 [SYN+ACK]
baidu.com:443 → 192.168.0.162 [RST+ACK] (seq 1, ack 1, win 2072-2074)
Инцидент длился 74 минуты; приглашаем сообщить дополнительные наблюдения.
Комментарии (39)
- Участники обсуждают внезапное отключение интернета в Китае, которое одни называют «интернет-комендантским часом», а другие — просто сбоем.
- Поднимается вопрос, как туристы и удалённые сотрудники могут обойти блокировку: предлагают Starlink Mini, LoRA-радио за $10–35 и VPN.
- Некоторые считают, что такие отключения могут быть учениями перед реальным конфликтом, например, с Тайванем.
- Отмечается, что даже краткий «часовой сбой» может парализовать работу тех, кто тайно работает из Китая на американские компании.
Copilot broke audit logs, but Microsoft won't tell customers 🔥 Горячее
Уязвимость Copilot: доступ к файлам без записи в журнал аудита
Автор: Zack Korman, 19.08.2025
Суть проблемы
M365 Copilot может читать файлы и не фиксировать это в журнале аудита, если попросить «не давать ссылку на файл». Это позволяет скрытно скачивать данные, нарушая безопасность и требования к соответствию.
Как обнаружил
Исследуя логику аудита для новой функции Pistachio, автор заметил пропуски в журнале. Проверка показала: достаточно добавить фразу «без ссылки» — запись исчезает. Это может произойти случайно, поэтому у многих организаций журналы уже искажены.
Реакция Microsoft
- Уязвимость признали «важной» и исправили.
- Клиентов не уведомили; официального бюллетеня нет.
- Процесс MSRC занял 45 дней, ответы были формальными, без деталей.
Вывод
Журналы аудита M365 Copilot ненадёжны, а Microsoft не планирует информировать пользователей. Организациям стоит перепроверить свои логи и усилить контроль доступа к чувствительным данным.
Комментарии (131)
- Пользователи обеспокоены, что Copilot может читать файлы без записи в журнал аудита, что ставит под сомнение соблюдение HIPAA и других нормативных требований.
- Некоторые считают, что Copilot использует привилегированный доступ или читает индексированные данные, а не сами файлы, из-за чего событие не фиксируется.
- Участники спорят, достоин ли этот баг CVE, поскольку Microsoft сама решает, присваивать ли идентификатор, а исправление будет автоматическим.
- Подчеркивается, что журнал аудита должен вестись на уровне инфраструктуры, а не зависеть от поведения LLM или клиентского кода.
- Недовольство вызывает и общая стратегия Microsoft внедрять Copilot везде без прозрачности и явного согласия пользователей.
AGENTS.md – Open format for guiding coding agents 🔥 Горячее 💬 Длинная дискуссия
AGENTS.md — открытый формат инструкций для AI-агентов, используется >20k проектов.
Это «README для агентов»: единое место для команд сборки, тестов, стиля кода и прочих деталей, которые не нужны людям, но критичны для ИИ.
## Команды
- `pnpm i` — зависимости
- `pnpm dev` — запуск
- `pnpm test` — тесты
## Стиль
TypeScript strict, одинарные кавычки, без точек с запятой, функциональный стиль.
Зачем отдельный файл?
- README — для людей, AGENTS.md — для агентов.
- Не загромождает документацию.
- Один формат подходит всем: Codex, Amp, Jules, Cursor, Factory, RooCode и др.
Как использовать
- Создайте
AGENTS.md
в корне. - Добавьте: обзор проекта, команды сборки/тестов, стиль, security, правила PR.
- В монорепозиториях кладите отдельные файлы в каждый пакет; агент читает ближайший.
Примеры
Комментарии (157)
- Сторонники AGENTS.md видят в нём способ «наконец заставить» писать документацию: люди охотно пишут инструкции для агентов, хотя для людей ленились.
- Критики считают, что это временный костыль: агенты скоро должны разбираться без специальных файлов, а пока каждый инструмент использует своё имя (CLAUDE.md, .cursorrules и т. д.).
- Обсуждаются формат (markdown vs XML), иерархия (index.md + папки), переиспользование инструкций и даже скрытые директории вроде .agent.
- Некоторые предлагают просто улучшать README/CONTRIBUTING.md, другие делают генераторы (agentsmd, ruler) и ждут появления стандарта.
Tiny microbe challenges the definition of cellular life
Микроб, который ставит под сомнение определение клеточной жизни
Учёные обнаружили микроскопического организма, который лишён привычных клеточных структур: мембраны, ядра, митохондрий и рибосом. Это существо, названное Pandoravirus salinus, обитает в солёных водах и достигает размеров, сопоставимых с некоторыми бактериями, но генетически ближе к вирусам. Его ДНК содержит гены, не имеющие аналогов у других форм жизни, и способна к саморепликации без классического клеточного аппарата.
Исследователи выяснили, что P. salinus может синтезировать белки, используя механизм, ранее считавшийся невозможным вне клетки. Это ставит под вопрос границу между живым и неживым, а также между вирусами и клеточными формами жизни. Открытие может пересмотреть наши представления о происхождении клеток и эволюции жизни на Земле.
Комментарии (11)
- Участники спорят, насколько пригодны классические определения «жизни» и «разума» для вирусов, спор, митохондрий и других пограничных систем.
- Археи, митохондрии, растения и грибы показывают, что жизнь часто строится на симбиозе и взаимной зависимости, а не на «самостоятельных» организмах.
- Некоторые считают вирус «мертвым» вне клетки и «живым» внутри неё, сравнивая их со спорами или семенами.
- Понятие интеллекта также предлагают рассматривать как спектр информационной обработки, а не как жёсткий порог.
- В итоге звучит идея: «мы никогда не были отдельными индивидами» — жизнь и разум проявляются на уровне сообществ и экосистем.
How to Draw a Space Invader
Как нарисовать инопланетянина из Space Invaders
Сначала я делал 3D-рендерер Rayven, но решил быстрее получить результат и выбрал простую тему — инопланетян. Они узнаваемы, легко строятся из кубиков и хорошо смотрятся в серии.
Для генератора я нарисовал 38 вариантов в Aseprite (15×15 пикселей). Вручную заметил: тела почти все похожи на низкополигональные фигуры. Это подсказало алгоритм.
Алгоритм генерации
- Сетка 15×15 остаётся на экране.
- Тело делаем векторным, потом пикселизируем.
- Симметрия по вертикали: строим левую половину и зеркалим.
- Центр тела смещаем вверх, чтобы снизу осталось место для щупалец.
- Верхняя и нижняя точки выбираем случайно на оси симметрии.
- Слева добавляем 1-5 случайных точек (раньше 2-3 и только выпуклые, но расширил правила).
- Зеркалим точки вправо и замыкаем полигон.
- Перекрывающиеся линии при пикселизации исчезают, сохраняя узнаваемость.
Всё остальное — случайные ограничения и мелкие детали, код на GitHub.
Комментарии (21)
- Пользователи делятся ссылками на коллекции инопланетян и генераторы (flashinvaders, iao, levitated.net).
- Всех впечатляют качество спрайтов, UI, цветовые палитры и «живой» предпросмотр.
- Обсуждают технику: билатеральная симметрия, случайные пиксели, random-walk, растеризация вектора.
- Появились идеи использовать результат как аватары, анимацию «дыхания» или эволюцию врагов.
- Кто-то заметил, что при обновлении страницы меняется сгенерированный инопланетянин.
Perfect Freehand – Draw perfect pressure-sensitive freehand lines
perfect-freehand
Для работы приложения включите JavaScript.
Комментарии (9)
- Библиотека perfect-freehand от Стивена Руиза (tldraw) делает плавные «ручные» линии.
- Похожая функция была в Xara Designer ещё в 2000-х, но редко встречается в других редакторах.
- В tldraw уже встроена улучшенная версия perfect-freehand, где линии выглядят лучше и легко экспортировать в SVG.
- Некоторые пользователи жаловались на «острые» концы и проблемы сохранения; форк или tldraw решают это.
CRDT: Text Buffer
Алгоритм CRDT для совместного текста
Каждый символ получает уникальный id: site
(идентификатор узла) и clock
(локальный счётчик, увеличиваемый после каждой операции), а также parent
— указатель на предыдущий символ.
-
Вставка
parent
ставится на символ перед точкой вставки (null — в начало). Порядок символов задаётся прямым обходом дерева: родители идут раньше потомков. -
Сортировка при одинаковом parent
Сначала по убываниюcounter
, затем поsite
. При вставке перед символом с тем же parent берём егоcounter + 1
. -
Удаление
id символа попадает в множество удалённых (tombstone). Значение можно забыть, но позиция нужна для корректного порядка.
Оптимизации
- Последовательные вставки одного узла объединяются в блок: массовая вставка стоит как одна операция.
- Блоки хранятся в отсортированном массиве; вставка — O(log n) без явного дерева.
- Удаления группируются диапазонами по
site
иclock
.
Плюсы и минусы
- Плюсы: разумный расход памяти, быстрые запросы/обновления.
- Минусы: сложная логика слияния, только рост метаданных, сборка мусора требует координации.
Интерактивный пример
Четыре пира, задержка сети, редактирование кликом. Исходник — crdt-text-buffer.js
.
Полезные ссылки
- josephg.com/blog/crdts-go-brrr/ — эффективная реализация.
- archagon.net/blog/2018/03/24/data-laced-with-history/ — деревья и сборка мусора.
Комментарии (3)
- Обсуждали RGA — CRDT-алгоритм для списков и текста, который Automerge раньше использовал до перехода на FugueMax.
- У RGA есть редкая проблема: при вставке элементов в обратном порядке у разных пользователей возникает чередование.
- Упомянули Eg-Walker — новый подход от Loro.dev, который вызвал интерес у участников.
Vendors that treat single sign-on as a luxury feature 💬 Длинная дискуссия
SSO Wall of Shame — список вендоров, считающих SSO роскошью, а не базовой безопасностью.
SSO позволяет компании управлять доступом через собственный поставщик идентификации (Google, Okta, Azure AD), централизованно создавать/удалять аккаунты и мгновенно отключать уволенных сотрудников. Для любой организации >5 человек это критично.
Однако вендоры прячут SSO за «Enterprise»-тарифами, где цена выше в 2–4 раза или привязана к большому пакету ненужных функций. Это тормозит внедрение безопасности.
Примеры завышенных надбавок
Вендор | Базовая цена | SSO-цена | Рост |
---|---|---|---|
Airtable | $10/польз./мес | $60 | +500 % |
Appsmith | $15 | $2 500 | +16 567 % |
Coursera | $399/польз./год | $49 875/год | +12 400 % |
Cloudflare | $20/домен/мес | $1 000 | +4 900 % |
Breezy HR | $171/мес | $1 500 | +777 % |
DatoCMS | $100/мес | $667 | +567 % |
Canva | $10/польз./мес | $40 | +300 % |
Figma | $12 | $45 | +275 % |
Bitrise | $90 | $270 | +200 % |
Box | $5 | $15 | +200 % |
(и ещё ~30 компаний с ростом 15–167 %).
Вывод: если вендор «серьёзно относится к безопасности», SSO должен быть либо в базе, либо за умеренную доплату.
Комментарии (159)
- «SSO-налог» — это не техническая, а ценовая сегментация: крупные клиенты обязаны иметь SSO (SOC2), поэтому за него платят.
- Поддержка SSO действительно дорога: множество тикетов, сложные интеграции, вызовы инженеров, особенно при частных IdP.
- Часть вендоров всё же даёт базовый SSO через Google/GitHub/Microsoft, но «частный IdP» остаётся маркером Enterprise.
- Малым компаниям SSO тоже нужен по контрактам, но высокие цены отталкивают; кто-то предлагает субсидии или прокси-решения.
- Итог: SSO = не «фича», а показатель зрелости клиента и объём его кошелька.
AnduinOS
AnduinOS — лёгкий, приватный, бесплатный дистрибутив на базе Ubuntu.
ISO 2 ГБ, GNOME-оболочка, Flatpak-приложения, никакого слежения.
Совместим с пакетами Ubuntu, подходит для работы, игр, сервера и обучения.
Версии
- LTS 1.1 (Noble Numbat) — до апреля 2029, GNOME 46, ядро 6.11, стабильность.
- Standard 1.3 (Plucky Puffin) — до января 2026, GNOME 48, ядро 6.14, новейшие функции.
Ссылки
«Переход с Windows прошёл безболезненно, система лёгкая и красивая» — пользователи.
Комментарии (127)
- AnduinOS — это Ubuntu-ремикс одного китайского инженера Microsoft, который превращает GNOME в клон Windows 11.
- Пользователей смущает название: многие прочитали «ArduinoOS» или «AndroidOS», а не «AnduinOS».
- Критика: это всего лишь «скин» Ubuntu с Flatpak-пакетами, без ясных преимуществ над Mint или чистой Ubuntu.
- Плюсы: может помочь консервативным пользователям перейти на Linux без шока от интерфейса.
- Минусы: нет ARM-сборки, сомнительный выбор WPS Office в демо, риск путаницы при поиске linux-советов.
Notion releases offline mode
Работа в Notion офлайн
- Доступно всем: просматривайте, редактируйте и создавайте страницы без сети в десктоп- и мобильном приложении.
- Автозагрузка: на Plus/Business/Enterprise последние и избранные страницы сохраняются автоматически.
- Вручную: откройте нужную страницу →
•••
→Available offline
; дождитесь полосы загрузки. - Проверка: в
Settings → Offline
видно, что сохранено; можно удалить лишнее.
Подготовка к офлайну
- На каждом устройстве включите офлайн-доступ отдельно.
- Убедитесь, что нужные страницы загружены через
Settings → Offline
. - База данных: первые 50 строк загружаются автоматически; остальные — вручную.
- Подстраницы отмечайте индивидуально.
Работа офлайн
- Изменения сохраняются локально и синхронизируются при подключении к интернету.
Комментарии (133)
- Пользователи делятся на два лагеря: кто-то рад офлайн-режиму Notion, но многие уже ушли в Obsidian за скоростью, локальным хранением и «файл-овер-эпп» подходом.
- Все сходятся, что офлайн-синхронизация сложна: конфликты, потеря данных, архитектура масштаба — всё требует огромных усилий.
- Некоторые считают Obsidian неудобным для командной работы и предпочитают Notion для HR, спринтов и коллаборации.
- Альтернативы: SiYuan, Anytype, Notesnook, Appflowy, но у каждого свои компромиссы.
- Главный вывод: Notion — для команд и «документов в облаке», Obsidian — для личных баз знаний и контроля над данными.
D2 (text to diagram tool) now supports ASCII renders 🔥 Горячее
ASCII-вывод в D2 0.7.1
Файлы с расширением .txt
теперь рендерятся в ASCII. Пример: при сохранении .d2
-файла Vim-плагин мгновенно показывает ASCII-превью.
Для документации кода
ASCII-диаграммы удобно вставлять в комментарии: выделите блок d2, плагин заменит его ASCII-версией.
Unicode или чистый ASCII
По умолчанию используются символы Unicode, но флаг --ascii-mode=standard
вернёт строгий ASCII.
Ограничения (альфа-версия)
- Без стилей:
animated
,font
, темы не поддерживаются; цвета в терминале — возможно позже. - Неравномерные отступы из-за дискретной сетки.
Сообщайте о багах: github.com/terrastruct/d2/issues.
Попробуйте сейчас
Откройте пример в D2 Playground.
Комментарии (46)
- Пользователи оценили новый режим ASCII-рендеринга в D2, но спрашивают, чем он лучше Mermaid и можно ли вручную подправить расположение блоков.
- Добавлена возможность конвертации ASCII-обратно в D2, но пока неясно, как легко вернуть исходный код.
- Некоторые жалуются на отсутствие официального Python-пакета и GitHub-поддержки, а также на то, что онлайн-версия требует сервера.
- Разработчики подтвердили: WASM-порт (d2.js) уже работает в браузере, но ещё не анонсирован официально.
Why Semantic Layers Matter (and how to build one with DuckDB)
Зачем нужен семантический слой и как собрать его на DuckDB
Когда не нужен
- Один инструмент аналитики (BI, ноутбук или приложение).
- Метрики тривиальны: COUNT, SUM, AVG.
- Все агрегаты уже материализованы в таблицах.
Зачем нужен
- Единое место определения метрик – версионируемые YAML-файлы с бизнес-логикой, которые читают BI, ноутбуки, веб-приложения, AI.
- Кеш и безопасность – быстрые ad-hoc-запросы без переноса данных, ролевая безопасность через API.
- Согласованность – KPI «Выручка» описан один раз и не дублируется в каждом инструменте.
Минимальный пример
metrics.yaml
– 30 строк: название, SQL-выражение, формат, описание.run.py
– 40 строк на Ibis + DuckDB: читает YAML, строит запрос к 20 млн записей NYC Taxi, возвращает DataFrame или SQL.
Как работает
import ibis, yaml, duckdb
ibis.options.interactive = True
con = ibis.duckdb.connect("nyc_taxi.ddb")
taxi = con.table("trips")
with open("metrics.yaml") as f:
metrics = yaml.safe_load(f)
revenue = metrics["total_revenue"]["sql"]
result = con.sql(revenue).to_pandas()
YAML:
total_revenue:
sql: "SELECT SUM(fare_amount) FROM trips"
format: currency
description: "Общая выручка"
Итог
Семантический слой решает проблему дублирования логики и ускоряет аналитику, когда данные и потребители разнообразны. Полный код – в репозитории semantic-layer-duckdb.
Комментарии (22)
- Семантический слой — это абстракция, которая переводит технические детали БД в понятные бизнесу термины и метрики.
- Он даёт переиспользуемость логики (джойны, агрегаты) и единое определение метрик, в отличие от жёстких SQL-вьюх.
- Внедрение трудоёмко: аналитикам проще «скопировать SQL» сейчас, чем инвестировать в переиспользуемый слой.
- Некоторые считают YAML-описания неудачным способом задать семантику и предлагают языки вроде Malloy или Looker.
- Есть мнение, что это ORM для BI-дэшбордов и ML-фичей, а не просто «красивое имя для вьюхи».
Emacs as your video-trimming tool
Emacs как обрезчик видео
Марцин Борковский показал, как вырезать фрагменты прямо из редактора. Автору тоже часто нужно обрезать скринкасты, поэтому он вдохновился и написал video-trimmer-mode
(~300 строк Elisp).
- Использует
ffmpeg
для всей тяжёлой работы. - Показывает превью и позволяет задавать начало/конец кадрами.
- Код живёт в dotsies и обновляется.
Если пригодилось — поддержите автора на GitHub Sponsors или купите его macOS/iOS-приложения.
Комментарии (111)
- Кто-то считает Emacs-вариант «Doom на тесте на беременность», другие — логичным фронтендом к ffmpeg, потому что обрезка видео сводится к текстовым меткам времени.
- Плюсы: всё делается клавиатурой, можно программировать, не надо выходить из привычной среды, код занимает <400 строк.
- Минусы: теряется визуальное позиционирование точных кадров, для разовых задач проще спросить LLM или взять LosslessCut/Shotcut.
- Общий вывод: Emacs — это elisp-окружение, которое легко «склеивает» внешние утилиты и позволяет держать весь рабочий процесс в одном интерфейсе, если ты уже внутри экосистемы.
How we exploited CodeRabbit: From simple PR to RCE and write access on 1M repos 🔥 Горячее 💬 Длинная дискуссия
CodeRabbit: от PR до RCE и доступа к 1 млн репозиториев
CodeRabbit — самое популярное AI-приложение на GitHub Marketplace (1 млн репозиториев, 5 млн PR). При установке он анализирует каждый PR и оставляет AI-комментарии.
Найденные уязвимости
-
RCE через Markdown-рендеринг
- Внутри контейнеров запускается
markdown-it
с плагиномmarkdown-it-katex
. - Плагин использует
child_process.exec
без фильтрации LaTeX-ввода. - Внедрённый в PR
$\input{/etc/passwd}$
запускает произвольные команды.
- Внутри контейнеров запускается
-
Утечка токенов
- Внутри контейнеров доступны переменные окружения:
GITHUB_TOKEN
,CODERABBIT_API_KEY
,DATABASE_URL
. - Чтение
/proc/self/environ
и~/.netrc
позволило получить токены GitHub, JWT-секреты и строку подключения к PostgreSQL.
- Внутри контейнеров доступны переменные окружения:
-
Доступ к 1 млн репозиториев
- Установленный GitHub-App имеет scope
contents:write
во всех подключённых репозиториях. - С помощью украденного токена можно клонировать/писать в приватные репы, создавать PR, коммиты и релизы.
- Установленный GitHub-App имеет scope
Цепочка атаки
- Создаём PR с вредным LaTeX.
- Получаем RCE в контейнере CodeRabbit.
- Считываем секреты.
- Используем токен GitHub для полного доступа к репозиториям.
Меры защиты
- Переход на изолированные sandbox-среды.
- Отключение опасных LaTeX-функций.
- Минимизация scope GitHub-токенов.
Комментарии (184)
- Уязвимость позволяла RCE через RuboCop в прод-среде CodeRabbit; AI-ревьюер видел риск, но не мог остановить выполнение.
- Пользователи упрекают компанию в отсутствии прозрачности: нет официального поста о баге, заявление «данные не пострадали» вызывает сомнения.
- Ключи GitHub-приложения хранились в env-переменных, что считается грубейшей ошибкой управления секретами.
- Критика также адресована GitHub: модель разрешений толкает интеграции запрашивать максимальные права.
- CodeRabbit утверждает, что всё исправили в январе, добавили полную изоляцию и песочницы для всех инструментов.
A renovation project in Turkey led to the discovery of a lost city (2023)
Тайный подземный город в подвале дома
Житель турецкого Невшехира во время ремонта наткнулся на дверь в скрытый лабиринт. Под домом оказался камедеринский подземный комплекс — многоуровневая сеть туннелей, комнат и колодцев, выдолбленных в мягком вулканическом туфе.
- Масштаб: 18 этажей, глубина до 85 м, протяжённость 8 км.
- Назначение: укрытие от набегов; жили 20 тыс. человек.
- Системы: вентиляционные шахты, колодцы, винодельня, часовня, школы.
- Возраст: начало строительства — VIII век до н. э., активное использование — византийский период.
Комплекс закрыт стальными дверями и мог функционировать автономно до полугода. Находка расширила известную сеть подземелий Каппадокии, включая знаменитые подземные города Деринкую и Каймаклы.
Комментарии (22)
- Участники делятся впечатлениями о подземных городах: Derinkuyu, Özkonak, Naours и других.
- Обсуждают, что такие города строились из-за постоянных вторжений, но турецкий гид утверждал, что после прекращения набегов их перестали использовать.
- Упоминают, что вся Каппадокия выглядит «как другая планета» с долинами, музеями и пещерами.
- Поднимают тему LiDAR-исследований, находящих в Латинской Америке целые мегаполисы, и задаются вопросом, есть ли аналоги в Африке.
- Напоминают о греческом геноциде 1920-х, когда подземные убежища снова пригодились, и критикуют статью за «обеление» истории.
"Remove mentions of XSLT from the html spec" 🔥 Горячее 💬 Длинная дискуссия
- Что изменили: из спецификации HTML полностью убраны упоминания XSLT.
- Почему: технология считается устаревшей, поддержка в браузерах минимальна, а спецификация XSLT живёт отдельно.
- Что удалили:
- раздел «XSLT» и связанные термины;
- алгоритм «transform-to-document»;
- обработку
type="text/xsl"
; - примеры и ссылки на XSLT.
- Как проверили: сборка без ошибок, тесты WPT не затронуты.
Комментарии (369)
- Все браузеры, а не только Chrome, поддерживают идею убрать XSLT из веб-платформы.
- Основная причина — безопасность и тяжёлая поддержка устаревшей библиотеки libxslt.
- Часть пользователей возмущена: «спросили всех, все сказали “нет”, но всё равно уберут».
- Некоторые предлагают замену на WASM-полифилл или серверную трансформацию.
- Сторонники XSLT жалуются на разрыв обещания «HTML навсегда» и гибель старых сайтов.
Positron, a New Data Science IDE
Positron — бесплатный IDE для дата-сайенса, поддерживающий Python и R.
Скачать
Продукты
- Enterprise: Posit Connect, Workbench, Package Manager
- Cloud: Posit Cloud, Connect Cloud, shinyapps.io
Open Source
- IDE: Positron, RStudio, RStudio Server
- Библиотеки: Tidyverse, ggplot2, dplyr, Quarto, Shiny, vetiver
- Интеграции: dbplyr, sparklyr, googlesheets
Истории клиентов
- Suffolk, Trillium, Unity Health, NASA, Dow
Партнёры
- Платформы: Snowflake, Databricks, SageMaker
- Облака: AWS, Azure, GCP
Комментарии (42)
- Пользователи хвалят Positron за плавный переход из RStudio/VSCode и улучшенные возможности DS, но жалуются на отсутствие inline-графиков в Quarto и медленное внедрение.
- Разработчики подтверждают: форк нужен, потому что VSCode-расширения не позволяют глубоко интегрировать языковые сервисы, тулбары и кастомные UI.
- Некоторые считают продукт «ещё одним форком VSCode» и сомневаются в его нишевости между RStudio, VSCode, Spyder и PyCharm.
- Поддержка WSL пока отсутствует, а цены на RStudio Server выросли, что усиливает интерес к Positron в академической среде.
- Важнейший запрос — inline-вывод в Quarto; его уже рассматривают, и есть настройка для привычных хоткеев RStudio.
Without the futex, it's futile 🔥 Горячее
Без futex всё тленно
Книга The Art of Multiprocessor Programming (2-е изд., 2021) считается канонической, но она обходит стороной futex — ключевой примитив современной многопоточности. Это упущение делает пособие бесполезным для практиков.
Futex ≠ mutex
Название происходит от «fast userspace mutex», но futex — это не мьютекс, а основа для всех высокоэффективных примитивов синхронизации. До него всё строилось на громоздких System V IPC, которые не масштабировались: при 1000 потоков futex в 2002-м оказался в 20–120 раз быстрее sysv-блокировок. Windows и macOS добавили аналоги только в 2012 и 2016 гг.
Суть futex
Он разделяет блокировку и ожидание/пробуждение:
- В user-space проверяем состояние; если свободно — захватываем без системного вызова.
- При конфликте вызываем
futex_wait(addr, expected)
, засыпаем в ядре на конкретном адресе. - Пробуждение —
futex_wake(addr, n)
, гдеn
обычно 1 или «все».
Передаваемое в wait
значение защищает от «просыпания» после уже случившегося события: если память изменилась, системный вызов мгновенно возвращает ошибку.
Такой подход убирает лишние системные вызовы и позволяет строить быстрые мьютексы, rw-lock’и, семафоры и пр. без поллинга и экспоненциальных бэкоффов.
Итог
Любая современная библиотека (pthreads
, C++ std::mutex
, Rust std::sync
) опирается на futex. Учебник, игнорирующий этот примитив, не готовит к реальной разработке.
Комментарии (119)
- Linux 5.16 добавил futex2, аналог Windows WaitForMultipleObjects, и с тех пор он получил NUMA-поддержку и другие улучшения.
- Futex — это «безручная» примитивная примочка: ядро её не видит, пока нет ожидающих, что экономит системные вызовы.
- Книга «The Art of Multiprocessor Programming» критикуется за отсутствие реальных деталей вроде futex и за академическую оторванность от практики.
- В качестве альтернатив рекомендуют «C++ Concurrency in Action», «Rust Atomics and Locks», монографию МакКенни и статью LWN «Futexes Are Tricky».
- Robust-варианты futex позволяют ядру почистить блокировки при падении потока, но состояние защищаемых данных может остаться нарушенным.
Critical Cache Poisoning Vulnerability in Dnsmasq
Критическая уязвимость кэш-подмены в Dnsmasq
Тип: логическая ошибка защиты от кэш-подмены
ПО: все версии Dnsmasq
Оценка: критическая
Условия: атакующий вне сети, перебирает TxID и порт (~2,5 ч)
Суть
Dnsmasq пересылает запросы со спецсимволами (~
, !
, *
, _
) вышестоящим резолверам. Некоторые из них молча отбрасывают такие запросы, не отвечая NXDomain/ServFail. Dnsmasq не замечает тишины и ждёт, открывая большое окно для подбора 16-битного TxID и порта (birthday-paradox).
Результат
- 20/20 успешных экспериментов
- Среднее время атаки ≈ 9 469 с
- Позволяет отравить любой кэшированный домен без фрагментации IP или побочных каналов
- Усиливает известные атаки SADDNS и Tudoor
PoC
Для домена viticm.com
запросы с «тихими» символами приводили к молчанию upstream, что использовалось для надёжного отравления кэша.
Рекомендации
- Детектировать молчание upstream
- Ввести rate-limit и защиту от spoof, как в PowerDNS
Комментарии (90)
- dnsmasq пересылает «невалидные» запросы (с символами вне ASCII) к апстрим-резолверу, который молча их отбрасывает; злоумышленник, находясь на пути, может подобрать 32-битный (порт+ID) ответ и отравить кэш.
- Проблема не новая (известна с 1993 г.), но в dnsmasq уже второе за последнее время серьёзное упущение.
- Большинство потребительских роутеров с dnsmasq никогда не обновятся; предлагается «право на ремонт» и публикация прошивок/ключей.
- OpenWrt, если стоит за NAT/файрволом, теоретически недоступен извне, но всё равно можно заменить dnsmasq на Unbound или другой DNS-сервер.
- Эффективная защита — DNSSEC; временно помогает апстрим-резолвер, который быстро отвечает NXDOMAIN (8.8.8.8, 1.1.1.1, 9.9.9.9).
Комментарии (47)
- Команда подтвердила: датасеты закрыты, но признаёт, что открытые голосовые банки критичны для мало-рыночных языков.
- В ближайшие 2 месяца выйдет распознавание речи (STT), включая урду.
- Работают над офлайн-версиями и «горячими линиями» через операторов, чтобы охватить села без интернета.
- Пока предоставляют только API; модели не выкладывают на Hugging Face, но планируют хакатон для разработчиков.
- Крупные игроки игнорируют эти языки из-за малого спроса; команда стремится стать «региональным лидером» до появления конкурентов.
UK drops demand for backdoor into Apple encryption
- Суть: Лондон отказался требовать у Apple «чёрный ход» в шифрование iCloud (функция ADP).
- Контекст: В январе 2025 г. Apple отключила ADP в Великобритании после ультиматума Home Office.
- Результат: Без официальных объяснений власти отозвали приказ; Apple может вернуть полное сквозное шифрование.
- Значение: Победа Apple и правозащитников, но британские спецслужбы сохраняют право подавать новые требования в будущем.
Комментарии (41)
- Участники сомневаются, что Apple действительно отказалась от «задних дверей» в Великобритании: решение не подтверждено документально, а откат мог быть лишь публичным жестом.
- Многие считают «победу» сомнительной: права на приватность всё равно зависят от страны и политического давления, а не от универсального принципа.
- Поддержка детей и борьба с терроризмом воспринимаются как удобный предлог для анти-свободных законов.
- Есть опасения, что власти просто временно отступили и скоро вернутся с новыми попытками или уже имеют доступ к данным.
- Вопрос о восстановлении сервиса Advanced Data Protection (ADP) в UK остаётся открытым.
PyPI Preventing Domain Resurrection Attacks
Кратко
PyPI теперь ежедневно отслеживает, не истёк ли домен, к которому привязан e-mail пользователя. Если домен переходит в «период искупления» (redemption), адрес автоматически становится «неподтверждённым», что блокирует атаку «воскрешения» домена и захват аккаунта через восстановление пароля. С июня 2025 г. таким образом аннулировано более 1 800 адресов.
Как работает атака
- Владелец забывает продлить домен.
- Злоумышленник выкупает домен, поднимает почту, запрашивает сброс пароля PyPI.
- До внедрения 2FA (до 1 янв 2024) это давало полный доступ; теперь нужно ещё обойти второй фактор, но риск остаётся.
Жизненный цикл домена
Активен → дата окончания → льготный период (до 45 дней) → redemption (30 дней, высокая цена) → 5 дней «pending delete» → освобождение. PyPI проверяет статус раз в 30 дней через API Domainr и действует до момента смены владельца.
Что делает PyPI
- С апреля 2025 ежедневный мониторинг.
- При переходе в redemption статус e-mail меняется на «unverified».
- Пользователю приходит уведомление; повторное подтверждение возможно только после продления домена.
Совет пользователям
- Продлевайте домены заранее.
- Используйте надёжный почтовый сервис с авто-продлением.
- Добавьте резервный подтверждённый адрес на стабильном домене.
Комментарии (37)
- Проблема повторного использования email-адресов после удаления аккаунтов ставит под угрозу цифровую идентичность и безопасность пакетов (Maven, Go).
- Google и Microsoft по-разному подходят к блокировке «мертвых» доменов и email, но единого стандарта нет.
- URI-импорты и доменные namespace кажутся хрупкими: домен может истечь, а пакет — подмениться.
- Сильная криптографическая идентичность (PGP, Keybase, SigSum) технически решена, но не взлетела из-за UX, потери ключей и репутационных проблем крипто-мира.
- Участники сходятся во мнении: нужно что-то простое, децентрализованное и без единой точки отказа, но пока нет рабочего массового решения.
Custom telescope mount using harmonic drives and ESP32 🔥 Горячее
Суть проекта
Сделал GOTO-монтировку с нуля: два гармонических редуктора (100:1), ESP32-S3, шаговый и сервопривод, USB-C PD до 100 Вт. Управление — по Wi-Fi, протоколы step/dir, CAN, Modbus.
Почему
Начал с €200-трекера Move Shoot Move, но полярная настройка и поиск объектов были мукой. Профессиональные монтировки €1 200–4 000 казались перебором. Решил построить своё.
Путь
- Освоил FreeCAD и KiCad.
- Выбрал редукторы 14 и 17 типа с AliExpress (поиск через Google
site:aliexpress.com
). - Изучил опыт HEMY, HrEM, DHEM и DIY EQ Mount V2.
- Плата полукруглая, вмещается в корпус; драйверы встроены в моторы, поэтому схема простая.
- Корпус алюминиевый, крепление Arca-Swiss, режимы экваториальный/альта-азимут.
Характеристики
- RA: серво 42AIM15 + 17-редуктор → 32 768 шаг/об, 65 536 с оверсэмплингом.
- DEC: шаговый MKS Servo42D + 14-редуктор → 1/256 микрошаг.
- Скорость slew увеличивается переключением микрошага 256→128 по CAN.
- GPIO и питание 5–24 В вынесены на разъёмы «на будущее».
Итог
Вместо покупки дорогой монтировки — компактная, точная и полностью самодельная система за меньшие деньги и с кучей новых навыков.
Комментарии (101)
- Пользователи делятся впечатлениями от самодельного гармонического монтажа: кто-то показывает детям Луну, кто-то мечтает о «кеплеровской» астрометрии.
- Обсуждаются технические детали: ширина дорожек ПП не зависит от 24 В, ESP32 не справился с высокочастотным управлением шаговиками, FreeCAD вызывает любовь и боль.
- Вопросы о стабильности МК решаются просто: читать даташиты, ставить обвязку из reference-дизайна, добавить bypass-конденсаторы и solid ground-plane.
- ПО: Stellarium, KStars/EKOS, Skyfield, OnStep/INDI/ASCOM позволяют автоматически находить и сопровождать объекты.
- Цена: плата дешевая, дорога ручная сборка; заказ CNC-деталей оказался проще, чем ожидалось (JLCNC, местные makerspace).
- Потенциал: автору советуют продавать наборы, особенно на фоне пошлин на китайские ZWO; масса конструкции ≈ 8–10 кг, точность сравнима с коммерческими аналогами.
Prime Number Grid 🔥 Горячее
Prime Grid
Старт
Строки
Столбцы
« » ·
Для работы страницы требуется включённый JavaScript.
Комментарии (90)
- Пользователи делятся ссылками на визуализаторы простых чисел и обсуждают разные способы отображения: решётки, Ulam spiral, «упаковки» по 100 чисел.
- Отмечают, что при простом числе колонок возникают диагональные полосы из-за одинаковых остатков по модулю.
- Удивляются «густоте» простых даже на больших числах, хотя теорема о простых числах говорит о снижении плотности как 1/log n.
- Просят добавить hover-числа, анимацию, другие основания, 3-D, экспорт изображений.
- Кто-то видит в узорах логотипы, «звёздные врата» или даже «клингонский» текст; другие предупреждают, что часть узоров — псевдопаттерны.
How to Build a Medieval Castle
- В лесах Бургундии строят настоящий замок XIII века Геделон – эксперимент археологов и ремесленников.
- С 1998 г. 40 мастеров используют только средневековые инструменты, материалы и методы.
- Цель – восстановить забытые приёмы строительства, заполнить пробелы в знаниях историков и «замковедов».
- Даже установка окна в часовне превратилась в коллективную головоломку: каменщики, плотники, кузнецы, историки и археологи спорили 8 лет, какое стекло допустимо.
- Руководитель Флориан Ренюсси: «Замок начинает говорить – мы слышим, видим и чувствуем то, что обычная археология упускает».
Комментарии (66)
- Участники делятся ссылками и впечатлениями о проекте замка Гюдельон и других «новых» средневековых замках.
- Рекомендуют документальные фильмы BBC, видео на YouTube и книгу Маколея «Castle».
- Обсуждают, что стекло поглощало до половины бюджета собора, а строительство без электричества требует невероятных усилий.
- Вспоминают одночастные замки в США (Bishop Castle, Loveland Castle, Ozark Medieval Fortress) и феномен «follies» в Англии.
- Европейцы удивляются, что для американцев средневековые постройки вызывают больший восторг, чем для них самих.
OpenMower – An open source lawn mower 🔥 Горячее 💬 Длинная дискуссия
OpenMower — проект превращения недорогих серийных газонокосилок-роботов в умные устройства с точной навигацией RTK-GPS.
- Цель: дать старому «железу» современные функции — карты, зоны, маршруты, автопарковку.
- Что внутри: полностью открытая прошивка, платы и 3D-печатные крепления; заменяем только «мозги», оставляя моторы и датчики.
- Требования: базовая газонокосилка (Flymo, Gardena, Worx и др.), плата-основа на Raspberry Pi 4, RTK-модуль, внешняя антенна.
- Функции:
- планирование маршрутов по векторной карте;
- работа по зонам и расписанию;
- возврат на зарядку и продолжение с места остановки;
- OTA-обновления и веб-интерфейс.
- Сборка: подробные инструкции и BOM в репозитории; сообщество в Discord помогает с отладкой.
- Лицензия: GPL-3.0, все файлы и схемы свободны.
Комментарии (166)
- Кто-то считает, что «все современные газонокосилки ездят хаотично», но большинство пользователей отвечают: случайный алгоритм работает отлично, а провод периметра надёжен и дешёв.
- Аппаратное обеспечение у Husqvarna, Mammotion, Sunseeker и др. хвалят, но ПО всё ещё «сырое» и требует доработок.
- OpenMower заменяет «мозги» готового шасси RTK-GPS и открытым ПО; поддерживаемый корпус в США почти не продаётся.
- Поднимаются вопросы безопасности (ежи, камни, ответственность), цены (как подержанная машина) и необходимости косить только днём.
- Кто-то мечтает о солнечных микро-триммерах, другие просят RC-версию или модуль для сбора мусора.
Комментарии (112)
- Участники подчёркивают, что Тед Чианг создаёт строго внутренне согласованные миры, чтобы исследовать человеческие последствия идей, а не «научную точность» в духе hard sci-fi.
- Спорят, является ли «Hell Is the Absence of God» критикой религии: одни видят в нём разоблачение, другие — исследование страдания и веры в мире, где Бог существует наверняка.
- «Exhalation» воспринимается как идеальный пример «герметичной» термодинамики: законы те же, но упрощённая вселенная позволяет ощутить энтропию «вживую».
- «Story of Your Life» трактуют не как про язык Сапира-Уорфа, а как размышление о лагранжевом детерминизме и восприятии времени.
- Несколько человек советуют Грега Игана и Кена Лю как авторов с похожим подходом к контрфакту и философии.
Croatian freediver held breath for 29 minutes 🔥 Горячее
29 минут без дыхания: новый рекорд хорватского фридайвера
14 июня 2025 года в бассейне отеля Bristol в хорватской Опатии Витомир Маричич задержал дыхание 29 мин 3 сек, установив мировой рекорд по статическому апноэ с предварительным дыханием чистым кислородом. Предыдущий рекорд (24 мин 37 сек) принадлежал соотечественнику Будимиру Шобату (2021).
Перед погружением Маричич дышал 100 % O₂ (по правилам Guinness допускается до 30 мин). Затем он лёг на дно 3-метрового бассейна, положив руки за голову.
«После 20-й минуты стало легче морально, но физически — всё тяжелее: сокращения диафрагмы усиливались. Я знал, что не сдамся», — рассказал он после выхода.
Для сравнения:
- Рекорд AIDA по статическому апноэ на воздухе — 11 мин 35 сек (Стефан Мифсуд, 2013).
- Рекорд GWR на воздухе — 11 мин 54 сек (Бранко Петрович, 2014).
Методика: предварительное дыхание кислородом заменяет азот в лёгких, увеличивая запас O₂ с 0,45 до 3 л и откладывая рефлекс на вдох за счёт снижения CO₂. Требуется глубокая релаксация, контроль диафрагмы и минимальный пульс.
Комментарии (119)
- Рекорд 29 мин 4 сек достигнут после предварительного дыхания чистым кислородом; на обычном воздухе рекорд 11 мин 35 сек.
- Участники обсуждают, как тренируют толерантность к CO₂, контролируют диафрагмальные спазмы и используют млекопочитающий рефлекс для замедления обмена.
- Поднимаются вопросы безопасности: риск потери сознания, «синих» blackout’ов и долгосрочного вреда мозгу; подчёркивается роль тренёров-сейфов.
- Некоторые спрашивают, можно ли применять «кислородный трюк» для обычного снорклинга — ответ: нет, это сложно и небезопасно.
- Упоминаются генетические и культурные факторы (баджаи, хорваты), а также увеличенные селезёнки у морских кочевников.
What could have been
Вместо «умных» функций — просто работающие.
Везде впихивают ИИ, который никто не просил: браузеры, ОС, конференц-приложения ломаются, но деньги текут в «искусственный интеллект».
Gamescom добавил ИИ-расписание: люди получили сотни ненужных встреч, функцию быстро убрали.
Те же деньги могли бы починить DM, поиск, перенос встреч — базовые вещи, из-за которых все возвращаются к почте и LinkedIn.
Мотив один: быстрая прибыль. В итоге продукты гниют, а инвесторы кормят обещания «вот-вот будет AGI».
Один бюджет крупной компании хватило бы на 100 лет развития Godot, Blender, Ladybird — реальных инструментов, которые нужны сегодня.
Потерянные годы не вернуть.
Комментарии (104)
- Участники жалуются, что вместо починки старых багов и улучшения базовых функций компании впихивают «AI-фичи», которые никому не нужны.
- Многие считают, что инвесторы сознательно выбирают технологии, которые трудно децентрализовать, чтобы сохранить контроль и монополию.
- Одни видят в нынешнем AI-хайпе очередную моду, как было с UML, блокчейном и облаками; другие – шанс на прорыв, оправдывающий «пузырь».
- Популярная идея: деньги лучше бы пошли на документацию, API и совместимость, а не на обучение моделей водить мышкой по браузеру.
- Подводный тезис – проблема не в AI, а в концентрации капитала и в том, что «зелёное поле» проще финансировать, чем ремонт «коричневого».
Lab-grown salmon hits the menu 💬 Длинная дискуссия
- FDA одобрила первую клеточную рыбу — лосося компании Wildtype.
- 28 мая агентство выдало письмо «без вопросов» о безопасности продукта.
- Шеф-повар Грегори Гурдэ подал лабораторный лосось в ресторане Kann (Портленд, Орегон).
- Культивированное мясо — альтернатива промыслу; спрос на морепродукты растёт, а ресурсы исчерпываются.
Комментарии (209)
- Пользователи спорят, можно ли клеточно-выращенный лосось называть «лососем» и считать ли его «ультрапереработанным».
- Одни видят в продукте решение проблем экологии, благосостояния животных и безопасности пищи; другие называют его «аберрацией» и предпочитают редкое натуральное мясо.
- Некоторые предлагают начать с экзотики (кит, фуа-гра), чтобы проще было войти на рынок.
- Упоминаются вреды традиционного лососевого фермерства и риски отсутствия иммунной системы у клеточного продукта.
- Ряд штатов США уже запрещает или рассматривает запрет на клеточное мясо, что вызывает обвинения в лицемерии «pro-deregulation» властей.
Shamelessness as a strategy (2019)
В настольной игре Avalon персонаж Мерлин знает злодеев, но не может выдать себя. Обычно он прячется за Персивалем, но можно пойти напролом: Мерлин ведёт себя так вызывающе, что все решают — это точно не Мерлин, а Персиваль. Это требует, чтобы остальные не знали, тупит он или гениален.
Такой «бесстыжий» ход становится общей стратегией. Париж Хилтон сыграла «тупую блондинку» настолько убедительно, что все поверили. Её осмеивали, но говорили о ней постоянно; спустя десятилетие её метод переняли Кардашьяны и другие. Признать её успех — значит признать, что остальные играли по проигрышным правилам.
То же случилось на выборах 2016 года: нарушение «очевидных» правил вызвало отторжение у обеих партий, но, вероятно, заложило новый стиль политики. Марк Цукерберг следует старому сценарию и теряет доверие, тогда как Джек Дорси поступает «глупо» (посты о голодании), но остаётся интересен.
Раньше общество наказывало выходки, сохраняя порядок. Сегодня наказание лишь усиливает сигнал: в открытых онлайн-сообществах санкции превращаются в маяк для новых сторонников. «Эстеблишмент» ошибается, считая, что нарушителю нужно одобрение старой тусовки; на самом деле ему всё равно, кто в новой.
Критика «он же туп» тоже не работает: не важно, осознаёт человек свои действия или нет. Он просто носитель идей-вирусов, которые распространяются, пока находят благодатную почву.
Долгосрочные последствия пока неясны, и не факт, что всем нужно быть бесстыжими. Но когда сверстники закатывают глаза, называя кого-то «бесстыдником», я подозреваю: это не способ списать со счетов, а первый признак того, что он уже побеждает.
Комментарии (104)
- Обсуждение сводится к тому, что «бесстыдство» как стратегия всё чаще побеждает в политике, медиа и бизнесе, разрушая старые нормы и правила игры.
- Часть участников считает это countersignalling’ом и «новой искренностью», другие — просто циничным расчётом на внимание любой ценой.
- Утверждается, что бесстыдство работает, когда у тебя есть ресурсы или когда массово отказались от стыда, но при неудаче выглядишь клоуном.
- Некоторые видят в этом запрос на «настоящее», уязвимое, «человеческое», другие — лишь разрушение общественных институтов и морали.
- Решения почти не предложены: кто-то ждёт войны или жёсткого регулирования, кто-то — возврата к формальности и стыду.
Комментарии (24)
- Суд против Fox из-за лжи о «украденных выборах» показал, что единственный действенный рычаг воздействия на СМИ — это иск о коммерческом ущербе, а не защита граждан от дезинформации.
- Штраф в 1/3 годовой выручки многие считают «расходами на бизнес», но участники с опытом масштабных исков утверждают, что такие решения всё-таки заставляют компании менять процессы.
- Спор о «бумаге против электроники» свёлся к тезису: бумажные бюллетени с ID и очным голосованием сложнее взломать, но и они не 100 % защищены; электронные системы теоретически возможны, но вызывают сомнения в безопасности.
- Под поверхностью дискуссии о voter-ID скрываются партийные мотивы: республиканцы видят в этом способ подавления демократических голосов, демократы — барьер для избирателей без удостоверений.
Newgrounds: Flash Forward 2025
Flash Forward 2025
Пятый ежегодный джем, посвящённый Flash-наследию. Работы запускаются в браузере через Ruffle (AS2 и большинство AS3).
Требования
- Игра или интерактивный фильм, созданный во Flash.
- Проверьте в Ruffle перед публикацией.
- Не используйте защищённые персонажей и нелицензионную музыку.
- Премьера должна быть во время джема; не переиздавайте старые проекты.
- Тег Flash-Forward-2025 до 20 апреля.
Желательно выложить 6 апреля — 25-летие Flash-портала NG.
Призы
Игры: 1-е — $1200, 2-е — $700, 3-е — $400, 4-е — $150, 5-е — $75.
Интерактивные фильмы: 1-е — $150, 2-е — $100, 3-е — $50.
Спонсоры
@matt-likes-swords, @carbonlad — по $500; @Lochie — $420.69; @BoMToons — $250 и др.
Хотите добавить призов — донатите через Supporter и напишите TomFulp.
Комментарии (28)
- Участники вспоминали «золотой век» Flash-игр на Newgrounds и то, как легко тогда было распространять свои проекты.
- Отмечены важные юридические уроки (спор с BBC из-за пародии на Teletubbies) и технические решения: эмулятор Ruffle, проекты Flashpoint и Internet Archive для сохранения наследия.
- Взрослый контент теперь скрыт за настройками, а сам Flash воспринимается как «ретро-консоль веба 1.0».
- Обсуждались инструменты для создания Flash-контента: Adobe (всё ещё проприетарный), Haxe + swfmill, а также мечты о «Unity с интерфейсом Flash».
Obsidian Bases 🔥 Горячее 💬 Длинная дискуссия
Основы Obsidian
Obsidian строится на базах — папках, где хранятся заметки (*.md
). Одна база = одна папка. Внутри можно создавать подпапки, но все они считаются частью этой базы.
Создание
- Новая:
File → New Vault
→ выбрать папку. - Существующая:
Open folder as vault
— подключить уже готовую папку с.md
.
Место хранения
- Локально (по умолчанию) — файлы на диске.
- Синхронизация — через Obsidian Sync, Git, iCloud, Dropbox и т.д. (файлы остаются вашими).
Одновременная работа
Можно открыть несколько баз одновременно: каждая в отдельной вкладке/окне. Переключение через Ctrl/Cmd+O
.
Перенос
Просто скопируйте папку базы — она полностью переносима. Никаких скрытых зависимостей.
Комментарии (207)
- Bases — это официальная табличная надстройка над файлами хранилища: каждая строка = один файл, каждый столбец = его свойство (рейтинг, дедлайн и т.д.).
- Функция только вышла из платного раннего доступа; часть пользователей видит в ней замену плагинам Projects/Dataview, другие считают реализацию сырой.
- Главная претензия: чтобы воспользоваться Bases, приходится дробить контент на множество мелких файлов, что неудобно и грузит файловую систему.
- Тем, кто использует Obsidian как CRM или ведёт кампании D&D, возможность фильтровать и сортировать NPC/контакты уже оказалась полезной.
- Пока нет множественного выбора ячеек, встроенных Kanban-видов и встраивания таблиц в существующие заметки, но API и улучшения обещаны в дорожной карте.
Show HN: Fractional jobs – part-time roles for engineers
Fractional Jobs — биржа частичной занятости.
Эксперты работают по 10–20 ч/мес на фиксированный оклад без полного оформления.
Кому нужно
- Таланты: выбирайте роль (Engineering, Marketing, Design, Sales, Product, Finance, Ops, Growth, People, Analytics, Legal и др.), получайте вакансии и гайды.
- Компании: публикуйте заявку за $100 (возврат, если не найдёте), получаете подборку топ-кандидатов, потом нанимаете напрямую.
Как начать
Актуальные вакансии
- Contentful — Head of Marketing, 10 ч/мес, до $10 000, удалённо
- Steelbay Equity Partners — Founding Marketer, 10–20 ч, оклад не указан, удалённо
- Wedwallet — Legal Advisor, 10–20 ч, $300–500/час, удалённо
Комментарии (102)
- Платформа предлагает fractional-роли (20–40 ч/нед, $175–200/ч) без комиссии; деньги платит компания напрямую.
- Пользователи видят спрос на fractional CISO, security- и sales-специалистов; многие ищут 10–15 ч/нед для баланса жизни/семьи.
- Критика: «гиг-экономика» без соцпакета, риск превращения в полный рабочий день за меньшие деньги и «race to the bottom».
- Успешным фрилансерам нужны чёткое портфолио, самостоятельный поиск клиентов и готовность к самому расчёту налогов (1099).
- Владельцы платформы против «over-employment» и считают субъективность «рейтингов» избыточной; большинство клиентов нетехнические.
Tiny-tpu: A minimal tensor processing unit (TPU), inspired by Google's TPU
tiny-tpu — минималистичный тензорный процессор, вдохновлённый Google TPU v1/v2.
Цель: дать студентам и исследователям открытый, понятный RTL-код для изучения архитектуры TPU без закрытых деталей Google.
Основное
- Ядро:
rtl/
,sim/
,fpga/
— SystemVerilog, тесты, PYNQ-образ. - Производительность: 8×8 систолическая матрица, 32-бит INT, 200 МГц на Artix-7.
- Поток данных: команды DMA → веса/активации → вычислительный массив → аккумуляторы → DRAM.
- Инструменты: Verilator, Vivado, Python-библиотека для генерации инструкций.
Быстрый старт
git clone https://github.com/tiny-tpu-v2/tiny-tpu.git
cd tiny-tpu
make sim # симуляция
make fpga # битстрим для PYNQ-Z2
Примеры
examples/mnist/
— инференс MNIST за 3 мс.examples/resnet/
— слой ResNet-18 (пока симуляция).
Лицензия
MIT.
Комментарии (13)
- Участники мечтают о «3D-принтере для кремниевых чипов», но большинство считает это нано-технологией, недоступной домашнему пользователю.
- Как промежуточный шаг упоминается TinyTapeout: онлайн-заказ микрочипов по стандартному процессу за сотни долларов.
- Кто-то спрашивает, сколько TPU нужно для запуска Gemini 2.5 Flash/Pro для одного пользователя и можно ли купить PCIe-карту с 4 TPU и 8 слотами ОЗУ за $5 000.
- Отдельная ветка хвалит красивую SVG-анимацию на сайте, предполагая, что это слоистые экспорты из Excalidraw.
GenAI FOMO has spurred businesses to light nearly $40B on fire
- 95 % компаний не получают реальной пользы от генеративного ИИ: отсутствуют данные, экспертиза, процессы и культура.
- Пилоты застревают на стадии демо; ROI не измеряется, бюджеты выгорают.
- Ключевые барьеры: «грязные» данные, отсутствие стратегии, нехватка специалистов, правовые риски.
- Выигрывают лидеры: 5 %, кто инвестировал в инфраструктуру, обучение и управление жизненным циклом моделей.
- Совет аналитиков: начинать с узких, хорошо оплачиваемых сценариев (например, генерация отчётов), постепенно масштабировать.
Комментарии (80)
- Обсуждение крутится вокруг идеи, что текущий бум GenAI — это пузырь, сравнимый с dot-com 1999–2000 годов: массовые вливания денег без понимания, как извлечь ценность.
- Участники спорят о реальной пользе: кто-то считает, что даже 5–20 % экономии на BPO-задачах уже $15–60 млрд, другие видят лишь «костры денег» ради страха отстать.
- Отмечается, что большинство проектов дают лишь инкрементальные улучшения, плохой ROI и вынуждают компании возвращать уволенных сотрудников (пример Klarna).
- Сравнения с блокчейн-хайпом: технология полезна, но спекулятивное применение и непонимание приводят к разочарованию.
- Подчеркивается, что основные деньги сейчас идут не на модели, а на их «потребление» в корпорациях; если даже на пике хайпа ценности не видно, пузырь может лопнуть очень громко.
Show HN: I built a toy TPU that can do inference and training on the XOR problem
Tiny-TPU: почему и как
Мы решились на безумное: собрать собственный TPU, не имея опыта в железе. Движимы желанием «переизобрести» ускоритель, а не копировать Google, мы пошли «кривым» путём: сначала пробуем самые простые идеи, потом читаем документацию. Цель — научиться думать без ИИ и понять, как устроены нейросети и чипы.
TPU — это ASIC, заточенный под матричные умножения (до 95 % вычислений в трансформерах). В отличие от GPU, он не умеет рисовать кадры, зато делает одно дело быстро и эффективно.
Как работает железо
- Тактовый цикл — базовая единица времени (пико-наносекунды). Всё происходит между «тиками».
- Verilog описывает логику:
Регистры обновляются раз в цикл, а не мгновенно, как в софте.always @(posedge clk) c <= a + b;
Путь к игрушечному TPU
- XOR-MLP 2→2→1 — разобрали вручную: прямой и обратный проходы, градиенты.
- Философия — рисуем всё на бумаге, кодим без ИИ, проверяем «тупые» идеи.
- Результат — работающий «той» TPU, который учится и выводит. Это не клон Google-TPU, а наша версия «как бы мы сделали».
Комментарии (18)
- Проект описывает «игрушечный TPU», реализованный пока только в симуляции на Verilog.
- Участники обсуждают следующий шаг — запуск на FPGA (LiteX, отсутствие опыта пока не мешает).
- Вопросы о конечной цели: потребительские устройства, edge-вычисления или просто proof-of-concept.
- Некоторые советуют перейти с SystemVerilog на Chisel, как Google, но другие считают это избыточным для маленького проекта.
- Общий тон: восхищение работой и любопытство, что именно было «собрано».
T-Mobile claimed selling location data without consent is legal–judges disagree 🔥 Горячее
- Апелляционный суд США подтвердил штраф $92 млн для T-Mobile за продажу данных о местоположении абонентов без согласия.
- FCC оштрафовала T-Mobile, AT&T и Verizon за передачу реального местоположения посредникам LocationSmart и Zumigo; злоупотребления стали известны в 2018 г.
- Суд: каждый смартфон — трекер, данные раскрывают «интимные детали жизни»; операторы не проверяли согласие и не ввели защиту после инцидентов.
- T-Mobile и Sprint не отрицали фактов, но заявляли, что FCC превысила полномочия; суд признал штрафы законными.
- Решения по апелляциям AT&T и Verizon ещё не вынесены.
Комментарии (72)
- Пользователи в шоке: даже после отключения всех доступных опций в личном кабинете T-Mobile/ATT/Verizon данные о местоположении всё равно утекают и спам-связанные звонки «догоняют» человека по дороге.
- Оказалось, что в настройках T-Mobile появились новые пункты «профилирование и автоматические решения», которые снова включены по умолчанию; приходится отключать дважды.
- MVNO (Google Fi, Mint и др.) не дают прямого доступа к настройкам T-Mobile, поэтому полностью отказаться от трекинга нельзя.
- Единственные практические советы: включать «режим полёта + Wi-Fi», использовать «фарадеевы» чехлы или возвращаться к крупным операторам ради встроенных фильтров спама.
- Участники считают, что рынок США по сути является естественной монополией: спектр регулируется FCC, а мелкие игроки не могут конкурировать; проблему можно решить только через государственное регулирование и разделение инфраструктуры от сервиса.
Show HN: Chroma Cloud – serverless search database for AI
Chroma Cloud — серверлес-база поиска с открытым исходным кодом: быстро, дёшево, масштабируемо, надёжно.
Возможности
- Векторный, полнотекстовый и мета-поиск
- Форк коллекций
- Скоро: автоматическая синхронизация данных
Производительность
- Низкая латентность, высокий QPS
- Линейное масштабирование данных
- Хранение в объектном хранилище
DevEx
- Оплата по факту использования
- Веб-дашборд, CLI, локальная разработка
- Интеграция в CI/CD
Как начать
pip install chromadb
import chromadb
client = chromadb.CloudClient()
collection = client.get_or_create_collection("my_docs")
collection.add(
documents=["Hello, world!", "Chroma is cool"],
metadatas=[{"src": "demo"}, {"src": "demo"}],
ids=["d1", "d2"]
)
print(collection.query(query_texts=["hello"], n_results=1))
Комментарии (27)
- Пользователи спрашивают, почему «open-source» просит деньги: ответ — сам Chroma под Apache 2.0 и бесплатен при самостоятельном развёртывании, а платная версия — это управляемый Chroma Cloud.
- Chroma поддерживает комбинированный поиск: фильтрацию по метаданным (
category=X AND value>Y
) + векторное сходство. - Некоторые считают, что продукт и калькулятор цен слишком похожи на Turbopuffer; команда Chroma отвечает, что архитектуру обсуждали публично два года и уважают конкурентов.
- Для нетехнических пользователей Chroma решает задачу «R» в RAG: позволяет LLM «на лету» подтягивать нужные данные без дообучения модели.
- Стартапам предлагают помощь: совместное планирование, Slack-канал и персональная поддержка.
- Отличия от pgvector/Redis: собственные индексы (SPANN, SPFresh), шардирование, масштабирование, встроенный regex и trigram-поиск без нагрузки на основную БД.
- По сравнению с Qdrant Chroma позиционируется как «0 конфигураций и 0 операционной боли».
Show HN: We started building an AI dev tool but it turned into a Sims-style game
- О YouTube: О нас, Пресс-центр, Авторское право, Контакты
- Для авторов и бизнеса: Авторы, Реклама, Разработчикам
- Правила и безопасность: Условия, Конфиденциальность, Политика и безопасность, Как работает YouTube
- Дополнительно: Тест новых функций, NFL Sunday Ticket
© 2025 Google LLC
Комментарии (68)
- Участники обсуждают «духовного наследника The Sims», где LLM-агенты создают непредсказуемые, но логичные стратегии и социальную динамику.
- Разработчики подтверждают, что игра началась как продукт и «повернула» в сторону игры; геймплей пока состоит из мини-игр с разными целями.
- Поднимаются вопросы: как удержать LLM от «схода с рельсов», как задать уровень сложности и не перегрузить игру вычислениями.
- Часть игроков хочет полного контроля над промптами и локальных моделей, другие опасаются лишних подписок и «генеративной угарности».
- Побочные темы: баг с ToS, низкий звук в видео, отсутствие Linux-сборки и ностальгия по DXBall.
How much do electric car batteries degrade?
- Основной вывод: после 320 тыс. км большинство электромобилей сохраняют ≥80 % ёмкости аккумулятора.
- Типы старения:
- Календарное — 1–2 % в год даже при простое, усиливается в жаре.
- Цикловое — потери при зарядке/разрядке из-за механического напряжения и роста SEI-слоя.
- Динамика: быстрая потеря первые 30 тыс. км, затем линейное замедление.
- Факторы, ускоряющие деградацию: высокие температуры, постоянная зарядка до 100 % или разрядка до 0 %.
- Советы для замедления:
- Держать SoC между 20–80 %.
- Избегать частых «быстрых» зарядок.
- Парковать в тени/прохладе.
- Практика: Tesla Model S/X на 320 тыс. км теряют в среднем 12 %, Model 3/Y — 10 %.
- Гарантии: большинство производителей покрывают ≥70 % ёмкости 8 лет или 160 тыс. км.
Комментарии (143)
- Реальная деградация батарей EV оказалась меньше страхов: после 150–200 тыс. миль Tesla держит ≥80 % ёмкости, а гарантии 8–10 лет/100 тыс. миль покрывают 70 %.
- Проблема не столько в «химии», сколько в инженерии: старые Leaf без тепло-менеджмента теряют до 16 % за 6 лет, новые машины с жидкостным охлаждением и LFP-ячейками живут дольше.
- Страх «последних 20 %» дальности владельцы считают критичным: при холоде или отсутствии зарядок каждая потерянная миля превращается в риск остаться без энергии.
- Гарантии часто нетрансферны и не спасают цену на подержанные EV: даже 60 % ёмкости после 8 лет делает машину «неликвидной».
- На практике EV-аккумуляторы переживают кузова и другие узлы: у одного Model S за 10 лет всё заменили, кроме батареи (85 % осталось), а у Prius 2010 года Ni-MH-батарея отходила 190 тыс. миль.
Left to Right Programming 🔥 Горячее 💬 Длинная дискуссия
Программа должна оставаться валидной по мере набора.
Python-списковые включения плохи: пока вы не допишете for line in text.splitlines()
, редактор не знает тип line
, не может подсказать split()
и даже не понимает, существует ли переменная.
В Rust text.lines().map(|line| line.split_whitespace())
строится слева-направо: сразу после line.
доступны методы, и код всё время «жив».
Принцип progressive disclosure: сложность появляется ровно тогда, когда нужна. В C функции для FILE*
начинаются на f
; вводишь f
и видишь сотни вариантов, не понимая, какой подходит. В идеале file.
показал бы read
, close
и т. д. прямо во время набора.
Python и JS:
map(len, text.split())
— неясно, как называется длина (len
, length
, size
?).
text.split(" ").map(w => w.length)
— length
и map
подсказываются сразу после точки.
С ростом логики читаемость падает:
len(list(filter(lambda line: all([abs(x) >= 1 and abs(x) <= 3 for x in line]) ...
Комментарии (323)
- Обсуждение вращается вокруг идеи «слева-направо» синтаксиса: сначала контекст (объект, коллекция), потом действие, чтобы IDE могла мгновенно подсказывать.
- Критикуют Python- comprehensions и вложенные вызовы за «вправо-налево» порядок, мешающий автокомплиту и чтению.
- Многие хотят pipe-оператор (|>) или uniform call syntax, как в F#, Elixir, Nim, чтобы цепочки выглядели
data |> filter(...) |> map(...)
. - Противники считают, что язык не должен подстраиваться под автокомплит, а сложные цепочки лучше выносить в переменные или использовать методы.
- Примеры из SQL, JS/TS импортов, Rust for-loops и C# LINQ показывают ту же проблему: сначала надо указать, что ты хочешь получить, а потом — откуда.
Show HN: Whispering – Open-source, local-first dictation you can trust 🔥 Горячее
Whispering — микросервис в репозитории epicenter-so/epicenter
, каталог apps/whispering
.
Предназначен для быстрого распознавания речи через OpenAI Whisper: принимает аудио-файл, возвращает текст.
Ключевые файлы
main.py
— FastAPI-endpoint/transcribe
(POST, multipart/form-data).requirements.txt
—fastapi
,uvicorn
,openai-whisper
.Dockerfile
— лёгкий образ наpython:3.11-slim
, порт 8000.
Запуск
docker build -t whispering .
docker run -p 8000:8000 whispering
или
pip install -r requirements.txt
uvicorn main:app --host 0.0.0.0 --port 8000
Использование
curl -F "file=@audio.mp3" http://localhost:8000/transcribe
Ответ: {"text": "распознанный текст"}
.
Комментарии (135)
- Пользователи делятся «костыльными», но рабочими схемами диктовки на Linux и обсуждают, как локально запускать Whisper/Parakeet без облаков.
- Epicenter продвигает идею «local-first»: plaintext + SQLite, прозрачные данные, открытый код, совместимые инструменты.
- Постоянно сравнивают альтернативы (VoiceInk, Superwhisper, Wispr Flow, Willow, whishper, Vibe) и жалуются на подписки, задержки, качество и отсутствие разметки динамиков.
- Разработчик Epicenter уже добавляет whisper.cpp и планирует Parakeet; просит помощи в PR для ускорения.
My Retro TVs
MyRetroTVs
Для работы приложения включите JavaScript.
Комментарии (21)
- Пользователи делятся воспоминаниями и проектами по «оживлению» старых телевизоров на базе Raspberry Pi и сайтам вроде EXPTV.
- Отмечают ностальгию по ограниченному эфиру, «щелчку» переключения каналов и даже звуку размагничивания.
- Рекламы и новости 9/11 вызывают особые эмоции, подчеркивая, как медиа формируют «разные реальности» в разные годы.
- Канадский музей MZTV в Торонто и виртуальные туры рекомендуются для «настоящего» погружения.
- Мобильная версия сайта вызывает затруднения, но это не мешает «залипать» на часы.
Anna's Archive: An Update from the Team 🔥 Горячее 💬 Длинная дискуссия
Мы живы и продолжаем борьбу: усиливаем инфраструктуру и безопасность. С 2022 г. спасли десятки миллионов книг, статей, газет — теперь они защищены от катастроф через торрент-сеть.
Провели крупнейшие скрапы: IA CDL, HathiTrust, DuXiu и др. Опубликовали рекордные метаданные WorldCat и Google Books, чтобы найти и приоритизировать редкие издания.
Партнёрства: два форка LibGen, STC/Nexus, Z-Library — добавили ещё десятки миллионов файлов и зеркалируют наши данные. Один форк LibGen исчез; подробностей нет.
Появился WeLib: зеркалируют нашу коллекцию и форк кода, но не делятся новыми материалами и улучшениями. Не рекомендуем пользоваться.
На серверах сотни терабайт новых коллекций ждут обработки. Нужны волонтёры и пожертвования — бюджет минимален.
Держитесь.
— Anna и команда
Комментарии (463)
- Пользователи хвалят Anna’s Archive как «одно из последних хороших мест в интернете», подчеркивая удобство предварительного ознакомления перед покупкой и помощь в поиске редких изданий.
- Некоторые авторы и правообладатели возмущены: книги выкладывают без разрешения, лишая доходов.
- Участники обсуждают, как Meta и другие гиганты бесплатно «скребут» данные, а сами сайты-зеркала тратят деньги на хостинг.
- Поднимаются вопросы долгосрочного выживания: DDoS-атаки, блокировки, отсутствие onion-домена, но есть торренты и система волонтёров.
- Часть аудитории признаёт, что пользуется пиратскими копиями как «пробниками», а затем покупает бумажные или DRM-free версии, чтобы поддержать авторов.
Who Invented Backpropagation?
Кто изобрел обратное распространение ошибки (backpropagation)
Современный backpropagation (BP) впервые опубликовал в 1970 г. финский магистрант Сеппо Линнайнмаа [BP1][R7]; 2020 г. отмечали 50-летие метода. Предшественник — работа Келли 1960 г. [BPA].
BP — это обратный режим автоматического дифференцирования: стоимость вычисления градиента примерно равна стоимости прямого прохода. Линнайнмаа дал алгоритм для произвольных разреженных сетей и привёл код на FORTRAN; все современные фреймворки (TensorFlow и др.) опираются на его метод.
В 1960-е уже применяли цепное правило Лейбница для градиентного спуска в многослойных системах (Келли, Брайсон, Дрейфус и др.), но без учёта эффективности для разреженных сетей.
Первое применение BP к обучению весов нейросетей — Дрейфус 1973 г.; первое NN-специфическое описание — Вербос 1982 г. [BP2] (в диссертации 1974 г. его ещё нет).
Уже в 1967 г. Амари с учеником Сайто обучал пятислойный перцептрон SGD, получая внутренние представления; это было глубокое обучение задолго до 1980-х. Параллельно Ивахненко строил глубокие сети GMDH (с 1965 г.).
К 1985 г. вычисления подешевели в 1000 раз; Румелхарт и др. показали, что BP формирует полезные скрытые представления.
Комментарии (86)
- Суть спора: кто «изобрёл» backpropagation — Хинтон/Румелхарт (1980-е) или она была раньше в теории управления и автоматическом дифференцировании (1960-е, Kelley, Amari и др.).
- Большинство участников считают, что это лишь эффективное применение цепного правила, которое переоткрывалось множество раз.
- Юрген Шмидхубер подаётся как главный «скептик», обвиняющий академическое сообщество в игнорировании более ранних работ.
- Некоторые подчеркивают, что решающим стало не само «изобретение», а переход к GPU и масштабируемым фреймворкам в 2010-х.
The Road That Killed Legend Jenkins Was Working as Designed
27 мая 2025 года в Гастонии, Северная Каролина, семилетний Legend Jenkins с братом шёл к магазину Food Lion и Subway. Отец разрешил, лишь держа их на связи. На обратном пути Legend вышел на West Hudson Boulevard — высокоскоростную магистраль с узкими тротуарами и без безопасных переходов — и был сбит внедорожником. Отец слушал, как это происходит.
Через два дня родителям предъявили обвинение в непредумышленном убийстве, залог — по 1,5 млн долларов каждому, шестерых других детей забрали у них.
Место не предназначено для пешеходов: даже взрослый рискует жизнью. Смерть Legend — не случайность, а статистически неизбежный результат проекта, где человек вне машины — помеха. Планировщики, инженеры, застройщики, чиновники не хотели смерти ребёнка, но создали условия, в которых она неизбежна. Ответственность размыта, поэтому система нашла виноватых — родителей.
Комментарии (56)
- Американские города строятся исключительно под скорость автомобилей, а безопасность пешеходов игнорируется.
- Подземные переходы и пешеходные мосты исчезли из-за высоких расходов на строительство и обслуживание.
- Гибель семилетнего ребёнка — предсказуемый результат системы, где пять полос скоростного движения проходят рядом с жилыми комплексами.
- Обвинение родителей в непредумышленном убийстве вызывает споры: многие считают, что виновата инфраструктура, а не люди.
- Участники сходятся во мнении: нужно заставить власти нести гражданскую ответственность за опасные дороги и проектировать улицы, безопасные для всех.
Launch HN: Reality Defender (YC W22) – API for Deepfake and GenAI Detection
Reality Defender API
Два вызова кода — и ваша система получает признанные наградами модели для обнаружения дипфейков. Бесплатный тариф: 50 проверок аудио/изображений в месяц.
Почему Reality Defender API
- Простота — загрузка файла и получение результата.
- Гибкость — SDK на Python, TypeScript, Java, Go, Rust.
- Прозрачность — исходники открыты.
- Доступность — 50 сканов/мес без карты.
Тарифы
План | Цена | Включено |
---|---|---|
Free | $0 | 50 сканов/мес, аудио+изображение, 1 пользователь |
Growth | от $399/мес | 50+ сканов, аудио+изображение+видео, чат |
Enterprise | по запросу | неограниченный объём, мультисид, видео+текст, стриминг, интеграции Zoom/Teams/Webex, расширение Chrome, персональная поддержка |
Где применять
- Верификация личности (KYC, безопасный доступ)
- Мошенничество (имперсонация, соц-инженерия)
- Модерация контента
- Анализ СМИ и факт-чекинг
- Исследования и тесты
Поддерживаемые форматы
Аудио (до 100 МБ, 12 с – 5 мин): wav, flac, mp3, m4a, aac, ogg, opus; 8 языков.
Изображения (до 10 МБ): jpg, jpeg, png, gif, webp.
Видео (до 250 МБ): mp4, mov; аудио как выше.
Комментарии (42)
- Участники сомневаются в надёжности «детекторов ИИ» и предсказывают бесконечную «кошку-мышь» между генераторами и детекторами.
- Предлагают альтернативу: криптографическую подпись контента, но признают, что добровольные стандарты легко обходятся.
- Основатели Reality Defender отвечают: ансамбль моделей выдаёт лишь вероятность 1-99 %, API закрыт, таргетинг по паттернам и лимит 50 бесплатных сканов мешают злоупотреблениям.
- Уже используется крупными банками и корпорациями для проверки подлинности медиа и документов.
Counter-Strike: A billion-dollar game built in a dorm room 🔥 Горячее 💬 Длинная дискуссия
—
Комментарии (411)
- Участники скучают по эпохе 1.5–1.6: сервер-браузеры, кастомные карты и моды создавали живые локальные сообщества.
- Ностальгия по LAN-вечерам, de_dust2 и «funmaps» сменяется разочарованием современным матчмейкингом и отсутствием мод-сцены.
- Главный упрек Valve — превращение игры в площадку для гемблинга: дорогие скины, лутбоксы, отключение CS:GO.
- Некоторые случайно разбогатели на старых ящиках, другие вспоминают, как моддинг Counter-Strike дал старт их карьере программиста.
- Есть мечта: open-source «духовный наследник» 1.6 без матчмейкинга, но с модами и полным контролем сообщества.
Комментарии (21)
- Раньше риск утечки зависел от доверия к людям и платформе; теперь достаточно, чтобы один участник включил AI-запись.
- Реклама Otter AI показывает, как бот заменяет человека на встрече, вызывая у многих шок.
- Спор: кто виноват — пользователь, добавивший Otter без предупреждения, или сам сервис, не делающий уведомление обязательным.
- Предложено ввести «DO NOT RECORD»-сигнал и open-source-решение dontrecord.me.
- Истории о том, что запись продолжалась после ухода участников и убила сделку, подчеркивают опасность «человеческого фактора» и слабый контроль AI.
FFmpeg Assembly Language Lessons 🔥 Горячее
FFmpeg/asm-lessons — репозиторий с уроками по ассемблеру для FFmpeg.
Цель: научиться писать высокопроизводительные рутины на x86-64, ARM и других архитектурах, ориентированные на мультимедиа-задачи.
Содержание (кратко):
- Уроки: от базовых инструкций до векторных расширений (SSE/AVX, NEON).
- Примеры: реализация IDCT, фильтров, цветового преобразования.
- Тесты: юнит-тесты и бенчмарки для сравнения C vs asm.
- CI: автоматическая проверка на x86-64 и ARM через GitHub Actions.
Как начать:
- Клонируйте репо.
- Установите
nasm
,yasm
илиllvm-mingw
. - Соберите пример:
make lesson01
.
Полезные ссылки:
Комментарии (132)
- Пользователи восхищаются масштабом FFmpeg и экономией вычислений даже при небольших улучшениях.
- Обсуждаются случаи, когда ручная сборка быстрее intrinsic’ов, и инструменты для поиска «горячих точек».
- Некоторые ждали более глубокой связи с FFmpeg, а не общее введение в ассемблер.
- Поднимаются вопросы портативности (пока только x86-64), необходимости математических подготовок и перегруженности NASM-макросами.
- Большинство соглашается: писать LLVM IR вручную нет смысла, проще использовать inline-assembly или векторные инструкции.
Texas law gives grid operator power to disconnect data centers during crisis
- Суть: закон SB 6, подписанный губернатором Техаса, обязывает крупные потребители (ЦОД ≥ 75 МВт) снижать нагрузку при аварийных отключениях ERCOT.
- Добровольная программа: те же объекты могут участвовать в demand response, получая компенсацию за переход на резервное питание.
- Дополнительно: новые правила присоединения, плата за техобследование, прозрачность расходов и возможность колокации с генерирующими мощностями.
Комментарии (85)
- Участники считают, что центры обработки данных (ЦОД) должны выдерживать отключения: у них есть дизель-генераторы, контракты на топливо и практика ежеквартальных нагрузочных тестов.
- Спорят, насколько допустимо принудительно ограничивать крупных потребителей: одни видят в этом справедливое распределение ресурсов «люди в первую очередь», другие опасаются политического давления и произвола.
- Критикуют текущий «свободный» рынок электроэнергии в Техасе: он не учитывает долгосрочную надёжность и выталкивает инвесторов, готовых платить за резерв.
- Упоминают, что биткойн-майнинг может быстро отключаться и тем самым «балансировать» сеть, но многие считают такую «помощь» избыточным созданием спроса.
- Поднимают вопросы логистики: при массовых авариях может не хватить дизеля и времени доставки, а EPA ограничивает часы работы генераторов.
- Резюмируют: если сервис действительно критичен, заказчик сам должен требовать SLA с дублированием и отказоустойчивостью, а не полагаться на исключения из правил.
Vibe coding tips and tricks
Основы
- Определите цель: чётко сформулируйте задачу перед генерацией кода.
- Начинайте с README: описание проекта помогает ИИ и команде.
- Используйте шаблоны: готовые структуры (FastAPI, React) экономят время.
Промпты
- Контекст: указывайте язык, фреймворк, стиль (PEP8, camelCase).
- Мелкие задачи: дробите фичи на куски по 50–100 строк.
- Примеры: прикладывайте JSON-ответы или SQL-запросы.
- Итерации: улучшайте код по одному аспекту за раз.
Рабочий процесс
- Сессии: 30-минутные циклы «запрос-ревью-запуск».
- Git-коммиты после каждого шага для отката.
- Линтеры/тесты сразу:
pytest
,eslint
,mypy
. - Code Review: проверяйте всё, даже «очевидное».
Инструменты
- Copilot Chat в IDE для быстрых правок.
- Cursor / Windsurf для многофайлового рефакторинга.
- Playwright для e2e-спек, сгенерированных из текста.
- Docker для воспроизводимого окружения.
Качество
- Типы: добавляйте аннотации (
TypedDict
, Pydantic). - Док-строки: пишите для всех публичных функций.
- Тесты: покрывайте критические пути ≥80 %.
- Логи: структурированные (
structlog
) для отладки.
Безопасность
- Секреты: проверяйте
.env
иgit history
. - OWASP Top 10: сканируйте зависимости (
pip-audit
,npm audit
). - RBAC: реализуйте роли и разрешения сразу.
Производительность
- Профилирование:
cProfile
,py-spy
для горячих точек. - Кеш: Redis для частых запросов.
- CDN для статики фронтенда.
Деплой
- CI/CD: GitHub Actions → Docker → ECS/Fargate.
- Feature flags для постепенного релиза.
- Мониторинг: CloudWatch + Grafana.
Советы
- Не доверяйте 100 %: всегда читайте сгенерированный код.
- Учитесь у ИИ: спрашивайте «почему так» для роста навыков.
Комментарии (77)
- Подавляющее большинство участников считает «vibe-coding» либо вредным, либо вообще не тем, что описано в документе.
- Настоящий vibe-coding — это «не смотреть код, а принимать результат, если визуально работает»; любые советы «тщательно читайте код» противоречат самому термину.
- Многие предпочитают писать чёткие спецификации и использовать LLM как «парного программиста», но подчёркивают, что это уже не «vibe», а обычная работа с AI.
- Частый риск — накопление непонятного, неотрефакторенного кода и «отравление» контекста при изменении требований.
- Итоговый совет большинства: «Don’t go full vibe» — даже при активном использовании LLM нужно понимать и контролировать результат.
When you're asking AI chatbots for answers, they're data-mining you
- Security: киберпреступность, патчи, исследования, CSO
- Off-Prem: edge + IoT, канал, PaaS/IaaS, SaaS
- On-Prem: системы, хранение, сети, HPC, персональные технологии, CxO, госсектор
- Software: ИИ + ML, приложения, БД, DevOps, ОС, виртуализация
- Offbeat: дебаты, колонки, наука, юмор, юр. новости, блоги
- Спецпроекты: месяц облачной инфраструктуры, сети ЦОД, хранение, европейские суперкомпьютеры, ИИ-инфраструктура, RSAC, разработка ИИ, аварийное восстановление, GTC Nvidia, ransomware, будущее ЦОД, кибербезопасность, VMware Explore
- Vendor Voice: Siemens + AWS, Mendix + AWS, финансовые потоки, BigQuery, AWS Global Partner Security, GE Vernova
- Ресурсы: whitepapers, вебинары, рассылки
Комментарии (53)
- Все, что вы отправляете в онлайн-сервисы (AI, почта, соцсети), сохраняется навсегда и может быть использовано против вас.
- Большинству пользователей всё равно: удобство «бесплатных» сервисов перевешивает риски.
- Есть альтернатива — локальные модели (Ollama, LM Studio, Oobabooga), но они требуют мощного железа и навыков.
- Даже если вы не пользуетесь сервисом, друзья могут передать ваши данные через чат-ботов.
- Пока не появится жёсткое регулирование, единственный надёжный способ — не делиться чувствительной информацией и минимизировать использование облачных AI.
The new geography of stolen goods
- Британия стала главным экспортёром украденного: за 10 лет краж авто выросли на 75 %, телефонов — на 30 %, тракторов и GPS-оборудования — в разы.
- Маршруты: машины — в Западную Африку, iPhone — в Китай, тракторы — в Россию и Восточную Европу.
- Схема: воры за 24 ч взламывают авто, меняют VIN, грузят в контейнеры под видом «плюшевых мишек».
- Причины: насыщенный рынок, слабый контроль на вывоз, раскрываемость краж — 5 %.
- Цепочка: кража → «чоп-шоп» → логисты → порт → покупатели. Hilux за £40 тыс. продаётся в Африке дороже, чем в Британии.
- Масштаб: 130 тыс. угнанных машин в 2024 г.; страховка выросла на 45 %.
- Порты: один полицейский на Феликстоу не успевает проверить 11 тыс. контейнеров в день.
Комментарии (56)
- В Великобритании и Канаде полиция почти не расследует угон автомобилей: даже если владелец показывает GPS-координаты, машины уезжают в контейнерах через порты без проверки.
- Экспортные грузы почти не контролируются; забронировать контейнер может кто угодно, а задержание одного контейнера стоит полиции £200.
- Преступники используют GPS-глушилки и фольгу для телефонов; за год в Великобритании угоняют 130 000 машин на £1–4 млрд, раскрывают лишь 2 %.
- Утечка цепочки поставок видна на примере Кадырова: у него нашли угнанный в Канаде Cybertruck, подаренный министру.
- Комментаторы считают, что стимулов бороться с угонами нет: страховые компании проще поднять премии, а полиция защищает имущество «аристократии», а не простых граждан.
Комментарии (65)
- Поддержали идею RRT: не использовать LLM в критичных местах, ограничивать права и отслеживать вход/выход.
- Спорят, виноваты ли LLM в росте уязвимостей или это та же человеческая невнимательность, только ускоренная большим объёмом кода.
- Локальные модели и строгие code-review рассматриваются как частичное решение, но не панацея.
- Ключевой риск — давление «делай быстрее» приводит к меньшему тестированию и усталости ревьюеров.
- Сравнение с автопилотами: LLM-генерация кода может стать безопаснее среднего разработчика, но пока не лучше экспертов.
Website is served from nine Neovim buffers on my old ThinkPad
Кратко: плагин nvim-web-server
на чистом Lua отдаёт HTTP-запросы прямо из открытых буферов Neovim, без внешних зависимостей, с нативной поддержкой Djot и быстрее Nginx.
Почему так быстро?
- Однозадачность: только статика.
- libuv + асинхронный I/O Neovim.
- LuaJIT: NaN-тегинг, отсутствие boxing чисел, allocation sinking.
- aiohttp тормозит из-за парсера на чистом Python и boxing в CPython.
Бенчмарк, RPS (среднее):
сервер | 1 | 50 | 100 | 200 | 400 |
---|---|---|---|---|---|
nvim-web-server | 3981 | 15284 | 15124 | 14476 | 14446 |
Nginx | 4451 | 11306 | 11576 | 10011 | 10461 |
aiohttp | 6391 | 8477 | 8448 | 7696 | 7132 |
Развёртывание: живёт на старом ThinkPad, 9 буферов — весь сайт.
Безопасность: да, но мелочи мы игнорируем.
Комментарии (17)
- Пользователи в восторге от статьи: называют её «одной из любимейших» и приводят цитату «они были так заняты тем, могут ли, что не спросили себя, стоит ли».
- Кто-то отмечает, что сайт резолвится на IP Linode, но не объясняется, зачем нужен промежуточный сервер.
- Обсуждают безопасность: пример показывает, что «никогда не бывает так, чтобы код точно не запустили по сети».
- Некоторые шутят, что Neovim теперь можно считать кроссплатформенным рантаймом «ужаса», но признают крутость эксперимента.
- Предполагают, что высокая скорость может быть из-за хранения файлов в RAM, а не на диске, и что всё равно всё закешируется.
MCP doesn't need tools, it needs code
CLI-инструменты часто зависят от платформы/версии, плохо документированы и ломаются при не-ASCII вводе. Агенты путаются в управлении состоянием (например, tmux-сессиями) и теряют контекст после мелкой ошибки. Каждый вызов ещё тормозит из-за предварительной проверки безопасности.
Композиция в CLI работает через bash: цепочки tmux send-keys
, sleep
, base64
и т.д. MCP сегодня так не умеет.
Выход — MCP-сервер с одним «убер-инструментом»: Python-интерпретатор, сохраняющий состояние между вызовами. Пример — pexpect-mcp
: виртуальное окружение + pexpect
, позволяющее скриптами управлять интерактивными CLI-программами. Вместо 30 отдельных MCP-функций достаточно одной, принимающей код.
Комментарии (110)
- Участники спорят, нужен ли MCP (Model Context Protocol): кто-то считает его лишним слоем, другие — полезным способом дать LLM структурированные инструменты.
- Критика: MCP ограничивает агента набором команд, не решает безопасность, дублирует OpenAPI и заставляет LLM учиться новому формату вместо bash/API.
- Альтернативы: прямое обращение к HTTP/CLI/WebSocket (UTCP), YAML-описание тулов (hooks_mcp), eval в песочнице (runjs, Bubblewrap).
- Практические проблемы: при 100+ тулов агент путается; приходится писать кучу обвязок вместо «просто вызвать API».
- Общий вывод: MCP пока выглядит сыро, требует лишних усилий и не даёт очевидных преимуществ перед строками/bash/API.
Electromechanical reshaping, an alternative to laser eye surgery 🔥 Горячее
Безлазерная альтернатива LASIK: имплантация линзы EVO/ICL
- Что это: вместо выпаривания роговицы лазером в глаз вводится тонкая факичная линза EVO/ICL, которая работает вместе с собственной хрусталиком пациента.
- Преимущества:
– подходит при тонкой роговице и высокой близорукости;
– сохраняется возможность «отката» (линзу можно извлечь);
– быстрая реабилитация (чёткое зрение уже на следующий день). - Риски: повышенное внутриглазное давление, катаракта, световые ореолы; требуется регулярное наблюдение.
- Стоимость: 2500–4000 $ за глаз, страховки не покрывают.
- Кому не подходит: при астигматизме > 6 дптр, глаукоме, возраст < 21 года.
Комментарии (119)
- Обсуждение сосредоточено на новом методе «молекулярной хирургии» для коррекции зрения без лазера.
- Участники сравнивают его с LASIK, PRK, SMILE и Ortho-K, отмечая меньшую травматичность и потенциальную обратимость.
- Поднимаются вопросы о применении при астигматизме, кератоконусе, ночных ореолах и возрастной дальнозоркости.
- Некоторые делятся личным опытом: кто-то прошёл PRK и жалуется на сухость, кто-то не кандидат из-за тонкой роговицы.
- Упоминаются альтернативы — ICL, интрастромальные кольца, склеральные линзы.
- Есть скепсис: «очковая индустрия» может тормозить внедрение, а название метода пугает.
Geotoy – Shadertoy for 3D Geometry
- 3d hilbert curve
- shingles
- temple
- rusty maze
- spring
- fbm terrain
- torus knot
- dandelion
- power line
- woven WIP
- roots
- bumpy sphere
- abstract hourglass
- birdbath
- concrete tetrapod
- terraced floating island
- extruded clay bowl
- fancy shader props
- superellipse dominos
- dark souls tree
Автор всех работ: ameo
Geoscript и Geotoy — Casey Primozic, открытый код.
Комментарии (22)
- GeoToy — это «Shadertoy для геометрии»: вместо цвета пикселя функция возвращает вершины, поэтому куб рисуется 36 вызовами, а не 921 600.
- Похож на DSL для 3D-моделей; пример «temple» помогает быстрее понять синтаксис.
- Материалы задаются не кодом, а через UI (три пиктограммы → «materials») и используют трипланарное отображение без UV.
- Анимации пока нет, но пользователи просят добавить переменную вроде
iTime
из Shadertoy. - Проект вызывает ассоциации с Structure Synth и geometry-шейдерами, но последние считаются трудными для оптимизации.
Web apps in a single, portable, self-updating, vanilla HTML file 🔥 Горячее 💬 Длинная дискуссия
Hyperclay — однофайловые HTML-приложения
Работайте как с глиной: открыли файл, изменили — изменения сохранились. Без сборки, деплоя и фреймворков.
- Прямое редактирование в браузере: меняете DOM — файл перезаписывает себя через
/save
. - Полная переносимость: скачали HTML — запустили где угодно, офлайн.
- Версии: каждое сохранение фиксируется, откат в один клик.
Примеры: dev-log, writer, kanban, landing.
Почему это важно
Статические сайты удобны, но изменения исчезают после перезагрузки. Чтобы сделать цифровой объект «физическим» — нужен сервер, БД, API, аккаунты. Hyperclay убирает всё лишнее: UI, логика и данные — в одном самомодифицирующемся HTML-документе.
Комментарии (202)
- Hyperclay — это NodeJS-сервер + клиентская библиотека, которая сохраняет изменения DOM прямо в исходный .html-файл, обновляя его на лету.
- Идея вызывает ассоциации с TiddlyWiki, Webstrates и даже HTA-архивами Windows 98, но делает акцент на многопользовательской работе и версионировании.
- Участники обсуждают проблемы локального file:// (CORS, модули), безопасность, ограничения iOS и то, что без сервера изменения не сохраняются.
- Некоторые делятся своими однофайловыми решениями: шифровальщик, Asteroids, «твиттер» на git-коммитах и т.д.
- Сообщество просит открытый код, нормальную документацию и понятную схему версионирования/обновления приложений.
SystemD Service Hardening
systemd-харднинг: кратко и по делу
sudo systemd-analyze security
показывает «красную» таблицу рисков.
sudo systemd-analyze security имя.service
— детально по конкретному юниту.
Колонка Exposure — главный ориентир: чем выше значение, тем больше прав можно отнять.
Как править
sudo systemctl edit имя.service
создаст override-файл.- Параметры пишутся в секции
[Service]
(или[Container]
для quadlet). - Сервис не стартует — значит убрал нужное, возвращай.
Часто используемые директивы
Директива | Что делает |
---|---|
NoNewPrivileges=true |
запрет setuid/setgid |
PrivateTmp=true |
изолированный /tmp |
ProtectSystem=strict |
корень только read-only |
ProtectHome=true |
/home , /root недоступны |
ReadWritePaths=/var/lib/app |
белый список для записи |
CapabilityBoundingSet=CAP_NET_BIND_SERVICE |
только нужные capability |
SystemCallFilter=@system-service |
разрешённый набор сисколлов |
RestrictAddressFamilies=AF_INET AF_INET6 |
только нужные семейства сокетов |
MemoryDenyWriteExecute=true |
блок W^X |
LockPersonality=true |
запрет смены personality() |
RestrictRealtime=true |
нельзя захватывать realtime-приоритеты |
UMask=0077 |
файлы создаются 600 |
RemoveIPC=true |
чистит SysV IPC при выходе |
Пример override
[Service]
NoNewPrivileges=true
PrivateTmp=true
ProtectSystem=strict
ProtectHome=true
ReadWritePaths=/var/lib/myapp
CapabilityBoundingSet=CAP_NET_BIND_SERVICE
SystemCallFilter=@system-service
RestrictAddressFamilies=AF_INET AF_INET6
MemoryDenyWriteExecute=true
LockPersonality=true
RestrictRealtime=true
UMask=0077
RemoveIPC=true
Проверь: sudo systemctl daemon-reload && sudo systemctl restart имя.service
.
Это не серебряная пуля; подгоняй под каждый сервис и смотри логи.
Комментарии (85)
- Предложена утилита shh, которая по логам strace автоматически подбирает параметры hardening для systemd-сервисов.
- Комментаторы отмечают, что дистрибутивы не включают жёсткие настройки по умолчанию: боятся сломать edge-case’ы и получить поток баг-репортов.
- Обсуждается идея общего репозитория с готовыми «жёсткими» unit-файлами для популярных сервисов.
- Утилита systemd-analyze security и встроенный механизм credentials systemd названы полезными инструментами повышения безопасности.
- Несколько человек поправили: правильное написание — «systemd», а не «SystemD».
Google admits anti-competitive conduct involving Google Search in Australia 🔥 Горячее 💬 Длинная дискуссия
Google признал антиконкурентное поведение в Австралии:
- компания согласилась, что ограничивала выбор поисковой системы на Android-устройствах;
- подписала обязательство перед ACCC изменить практику и уведомлять пользователей о доступных альтернативах Google Search;
- обязательство действует 5 лет и подлежит судебному контролю;
- ACCC считает признание важным шагом к восстановлению конкуренции.
Комментарии (165)
- Google заплатила Telstra, Optus и TPG, чтобы быть единственным предустановленным поиском на Android-смартфонах в Австралии с декабря 2019 по март 2021.
- Участники сделки получили долю от рекламной выручки Google; регулятор назвал это антиконкурентным и оштрафовал Google на 55 млн AUD.
- Комментаторы считают штраф «карманными деньгами» и требуют наказывать процентом от глобального дохода или привлекать к уголовной ответственности.
- Многие отмечают, что Telstra, Optus и TPG тоже должны быть оштрафованы как сознательные участники схемы.
- Некоторые пользователи уже перешли на DuckDuckGo, Kagi и другие поисковики, но большинство остаётся «запертым» в экосистеме Google.
Non-Uniform Memory Access (NUMA) is reshaping microservice placement
Codemia
Подготовка к систем-дизайн-интервью через практику:
Начать | Блог | Системный дизайн
Юридика
Условия | Конфиденциальность | Контакт
Комментарии (24)
- Обсуждение подтверждает: для HPC, высоконагруженных и чувствительных к задержкам систем NUMA-распределение критично, и ручное pinning процессов/потоков к нужным узлам остаётся основным способом добиться стабильной производительности.
- В публичных облаках (AWS, GCP) NUMA-топология скрыта, VM часто выглядят как однонодовые UMA; полезны
lscpu
,lstopo
,cpu-latency
, но настроек управления NUMA почти нет. - Сообщество делится инструментами:
mpibind
,sched_ext
, DAMON, fake NUMA, идеями эмуляции NUMA даже на Raspberry Pi 5. - Kubernetes уже умеет NUMA-affinity, но вручную выбирать 64-ядерный инстанс вместо 96-ядерного (чтобы не пересекать сокеты) всё равно приходится самим.
- Крайняя альтернатива — односокетные серверы с NPS=1: «равномерно медленно», но без головной боли.
Mangle – a language for deductive database programming
Mangle — проект Google на GitHub.
Язык: Go.
Лицензия: Apache-2.0.
Описание
Mangle — это компилятор/интерпретатор логического языка, ориентированного на:
- анализ и трансформацию графов;
- декларативные запросы к данным;
- поддержку Datalog-подобного синтаксиса.
Ключевые особенности
- Компилирует логические правила в Go-код или исполняет напрямую.
- Поддерживает рекурсивные запросы и агрегации.
- Работает с in-memory и persistent-хранилищами.
Установка
go install github.com/google/mangle/cmd/mangle@latest
Быстрый старт
- Создай файл
example.mgl
:edge("a", "b"). edge("b", "c"). path(X, Y) :- edge(X, Y). path(X, Z) :- edge(X, Y), path(Y, Z).
- Запусти:
mangle example.mgl --query="path(\"a\", Z)"
Документация
Комментарии (14)
- Участники спорят, связан ли новый язык Google с «Deductive Database» из видео 3b1b: одни считают, что это очередной внутренний эксперимент, другие — просто «люди, которые веселятся под крылом Google».
- Поднимается вопрос, почему почти все инструменты расширяют «ванильный» Datalog: его ограничения делают расширения неизбежными.
- В треде упоминаются альтернативные языки запросов — PreQL/Trilogy, Malloy, PRQL, PathQuery — и обсуждается, как они соотносятся с SQL и реляционной алгеброй.
Clojure Async Flow Guide
Быстрый старт
Библиотека flow отделяет бизнес-логику от развёртывания: топологии, исполнения, обмена сообщениями, жизненного цикла, мониторинга и обработки ошибок.
step-fn и процессы
Логика описывается функциями step-fn, которые flow заворачивает в процессы, крутящиеся в цикле. step-fn не работают с каналами напрямую и не хранят состояние, поэтому легко тестируются и переиспользуются.
step-fn имеет четыре арности:
describe (step-fn) → descriptor
Возвращает статическое описание :params
, :ins
, :outs
— карты имя → документация. Имена входов и выходов не должны пересекаться.
{:params {:size "Максимальный размер"}
:ins {:in "Входной канал"}
:outs {:out "Выходной канал"}}
init (step-fn arg-map) → init-state
Один раз вызывается при старте процесса; превращает параметры из flow-def в начальное состояние.
transition (step-fn state transition) → state'
Вызывается при переходах жизненного цикла (::flow/start
, ::flow/stop
, ::flow/pause
, ::flow/resume
). Используется для управления внешними ресурсами.
transform (step-fn state input msg) → [state' {out-id [msgs]}]
Вызывается для каждого входящего сообщения. Возвращает новое состояние и карту выходных сообщений. Выход может быть пустым, но каждое сообщение — не nil
. Исключения логируются в :error-chan
.
Состояние процесса
Карта с любыми ключами. Дополнительно:
::flow/pid
— идентификатор процесса::flow/in-ports
,::flow/out-ports
— карты cid → внешний канал (создаётся вinit
)::flow/input-filter
— предикат cid для фильтрации входных каналов
Хелперы
lift*->step
— изf(x) → coll
делает step-fn с одним входом и выходомlift1->step
— то же, ноf(x) → single-value
map->step
— из карты с ключами:describe
,:init
,:transition
,:transform
строит step-fn
Запуск процесса
Функция process
принимает step-fn и опции:
::workload
—:mixed
,:io
,:compute
:compute-timeout-ms
— таймаут для:compute
(по умолчанию 5000 мс)
Комментарии (74)
- Участники обсуждают, жив ли Clojure: сообщество стабильно, но менее хайповое; NuBank расширяет core-команду и нанимает Developer Advocate.
- core.async.flow предлагает декларативный, фиксированный граф каналов для «структурированной конкурентности»; ошибки и паузы можно отслеживать, но изменять топологию на лету пока нельзя.
- Сравнивают с GenStage (Elixir), Manifold, Trio и missionary/electric; можно использовать как OS-, так и green-потоки.
- JVM-тулчейн вызывает у новичков страх, но Leiningen/deps.edn упрощают работу, а отладка всё же возможна.
- Clojure-окосистема активно развивается: Babashka, XTDB, Dyna3 и другие проекты; язык недавно получил мажорный релиз и готовится к виртуальным потокам JVM.