Hacker News Digest

За три дня: 18 августа 2025 г. в 12:00 — 20 августа 2025 г. в 12:00

Постов: 67

China blocked all HTTPS connection abroad for 1 hour in midnight (gfw.report)

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 минуты; приглашаем сообщить дополнительные наблюдения.

by kotri • 20 августа 2025 г. в 04:27 • 94 points

ОригиналHN

#tcp#https#networking#vpn#starlink#lora#china#gfw#baidu

Комментарии (39)

  • Участники обсуждают внезапное отключение интернета в Китае, которое одни называют «интернет-комендантским часом», а другие — просто сбоем.
  • Поднимается вопрос, как туристы и удалённые сотрудники могут обойти блокировку: предлагают Starlink Mini, LoRA-радио за $10–35 и VPN.
  • Некоторые считают, что такие отключения могут быть учениями перед реальным конфликтом, например, с Тайванем.
  • Отмечается, что даже краткий «часовой сбой» может парализовать работу тех, кто тайно работает из Китая на американские компании.

Copilot broke audit logs, but Microsoft won't tell customers (pistachioapp.com) 🔥 Горячее

Уязвимость Copilot: доступ к файлам без записи в журнал аудита
Автор: Zack Korman, 19.08.2025

Суть проблемы

M365 Copilot может читать файлы и не фиксировать это в журнале аудита, если попросить «не давать ссылку на файл». Это позволяет скрытно скачивать данные, нарушая безопасность и требования к соответствию.

Как обнаружил

Исследуя логику аудита для новой функции Pistachio, автор заметил пропуски в журнале. Проверка показала: достаточно добавить фразу «без ссылки» — запись исчезает. Это может произойти случайно, поэтому у многих организаций журналы уже искажены.

Реакция Microsoft

  • Уязвимость признали «важной» и исправили.
  • Клиентов не уведомили; официального бюллетеня нет.
  • Процесс MSRC занял 45 дней, ответы были формальными, без деталей.

Вывод

Журналы аудита M365 Copilot ненадёжны, а Microsoft не планирует информировать пользователей. Организациям стоит перепроверить свои логи и усилить контроль доступа к чувствительным данным.

by Sayrus • 20 августа 2025 г. в 00:18 • 385 points

ОригиналHN

#m365-copilot#audit-logs#security#microsoft#hipaa#compliance#llm#privileged-access

Комментарии (131)

  • Пользователи обеспокоены, что Copilot может читать файлы без записи в журнал аудита, что ставит под сомнение соблюдение HIPAA и других нормативных требований.
  • Некоторые считают, что Copilot использует привилегированный доступ или читает индексированные данные, а не сами файлы, из-за чего событие не фиксируется.
  • Участники спорят, достоин ли этот баг CVE, поскольку Microsoft сама решает, присваивать ли идентификатор, а исправление будет автоматическим.
  • Подчеркивается, что журнал аудита должен вестись на уровне инфраструктуры, а не зависеть от поведения LLM или клиентского кода.
  • Недовольство вызывает и общая стратегия Microsoft внедрять Copilot везде без прозрачности и явного согласия пользователей.

AGENTS.md – Open format for guiding coding agents (agents.md) 🔥 Горячее 💬 Длинная дискуссия

AGENTS.md — открытый формат инструкций для AI-агентов, используется >20k проектов.
Это «README для агентов»: единое место для команд сборки, тестов, стиля кода и прочих деталей, которые не нужны людям, но критичны для ИИ.

## Команды
- `pnpm i` — зависимости  
- `pnpm dev` — запуск  
- `pnpm test` — тесты  

## Стиль
TypeScript strict, одинарные кавычки, без точек с запятой, функциональный стиль.

Зачем отдельный файл?

  • README — для людей, AGENTS.md — для агентов.
  • Не загромождает документацию.
  • Один формат подходит всем: Codex, Amp, Jules, Cursor, Factory, RooCode и др.

Как использовать

  1. Создайте AGENTS.md в корне.
  2. Добавьте: обзор проекта, команды сборки/тестов, стиль, security, правила PR.
  3. В монорепозиториях кладите отдельные файлы в каждый пакет; агент читает ближайший.

Примеры

Ещё 20k примеров

by ghuntley • 20 августа 2025 г. в 00:15 • 349 points

ОригиналHN

#typescript#markdown#pnpm#llm#documentation#openai#apache-airflow

Комментарии (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 (nautil.us)

Микроб, который ставит под сомнение определение клеточной жизни

Учёные обнаружили микроскопического организма, который лишён привычных клеточных структур: мембраны, ядра, митохондрий и рибосом. Это существо, названное Pandoravirus salinus, обитает в солёных водах и достигает размеров, сопоставимых с некоторыми бактериями, но генетически ближе к вирусам. Его ДНК содержит гены, не имеющие аналогов у других форм жизни, и способна к саморепликации без классического клеточного аппарата.

Исследователи выяснили, что P. salinus может синтезировать белки, используя механизм, ранее считавшийся невозможным вне клетки. Это ставит под вопрос границу между живым и неживым, а также между вирусами и клеточными формами жизни. Открытие может пересмотреть наши представления о происхождении клеток и эволюции жизни на Земле.

by jnord • 19 августа 2025 г. в 23:18 • 76 points

ОригиналHN

#dna#biology#genetics#evolution#microbiology

Комментарии (11)

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

How to Draw a Space Invader (muffinman.io)

Как нарисовать инопланетянина из Space Invaders

Сначала я делал 3D-рендерер Rayven, но решил быстрее получить результат и выбрал простую тему — инопланетян. Они узнаваемы, легко строятся из кубиков и хорошо смотрятся в серии.

Для генератора я нарисовал 38 вариантов в Aseprite (15×15 пикселей). Вручную заметил: тела почти все похожи на низкополигональные фигуры. Это подсказало алгоритм.

Алгоритм генерации

  1. Сетка 15×15 остаётся на экране.
  2. Тело делаем векторным, потом пикселизируем.
  3. Симметрия по вертикали: строим левую половину и зеркалим.
  4. Центр тела смещаем вверх, чтобы снизу осталось место для щупалец.
  5. Верхняя и нижняя точки выбираем случайно на оси симметрии.
  6. Слева добавляем 1-5 случайных точек (раньше 2-3 и только выпуклые, но расширил правила).
  7. Зеркалим точки вправо и замыкаем полигон.
  8. Перекрывающиеся линии при пикселизации исчезают, сохраняя узнаваемость.

Всё остальное — случайные ограничения и мелкие детали, код на GitHub.

by abdusco • 19 августа 2025 г. в 22:41 • 241 points

ОригиналHN

#aseprite#rasterization#vector-graphics#symmetry#random-walk#pixel-art

Комментарии (21)

  • Пользователи делятся ссылками на коллекции инопланетян и генераторы (flashinvaders, iao, levitated.net).
  • Всех впечатляют качество спрайтов, UI, цветовые палитры и «живой» предпросмотр.
  • Обсуждают технику: билатеральная симметрия, случайные пиксели, random-walk, растеризация вектора.
  • Появились идеи использовать результат как аватары, анимацию «дыхания» или эволюцию врагов.
  • Кто-то заметил, что при обновлении страницы меняется сгенерированный инопланетянин.

Perfect Freehand – Draw perfect pressure-sensitive freehand lines (perfectfreehand.com)

perfect-freehand
Для работы приложения включите JavaScript.

by NikxDa • 19 августа 2025 г. в 19:53 • 118 points

ОригиналHN

#javascript#tldraw#svg

Комментарии (9)

  • Библиотека perfect-freehand от Стивена Руиза (tldraw) делает плавные «ручные» линии.
  • Похожая функция была в Xara Designer ещё в 2000-х, но редко встречается в других редакторах.
  • В tldraw уже встроена улучшенная версия perfect-freehand, где линии выглядят лучше и легко экспортировать в SVG.
  • Некоторые пользователи жаловались на «острые» концы и проблемы сохранения; форк или tldraw решают это.

CRDT: Text Buffer (madebyevan.com)

Алгоритм CRDT для совместного текста

Каждый символ получает уникальный id: site (идентификатор узла) и clock (локальный счётчик, увеличиваемый после каждой операции), а также parent — указатель на предыдущий символ.

  • Вставка
    parent ставится на символ перед точкой вставки (null — в начало). Порядок символов задаётся прямым обходом дерева: родители идут раньше потомков.

  • Сортировка при одинаковом parent
    Сначала по убыванию counter, затем по site. При вставке перед символом с тем же parent берём его counter + 1.

  • Удаление
    id символа попадает в множество удалённых (tombstone). Значение можно забыть, но позиция нужна для корректного порядка.

Оптимизации

  1. Последовательные вставки одного узла объединяются в блок: массовая вставка стоит как одна операция.
  2. Блоки хранятся в отсортированном массиве; вставка — O(log n) без явного дерева.
  3. Удаления группируются диапазонами по site и clock.

Плюсы и минусы

  • Плюсы: разумный расход памяти, быстрые запросы/обновления.
  • Минусы: сложная логика слияния, только рост метаданных, сборка мусора требует координации.

Интерактивный пример
Четыре пира, задержка сети, редактирование кликом. Исходник — crdt-text-buffer.js.

Полезные ссылки

by skadamat • 19 августа 2025 г. в 19:38 • 99 points

ОригиналHN

#crdt#data-structures#algorithms#distributed-systems#javascript#automerge#rga#eg-walker#loro.dev#fugue

Комментарии (3)

  • Обсуждали RGA — CRDT-алгоритм для списков и текста, который Automerge раньше использовал до перехода на FugueMax.
  • У RGA есть редкая проблема: при вставке элементов в обратном порядке у разных пользователей возникает чередование.
  • Упомянули Eg-Walker — новый подход от Loro.dev, который вызвал интерес у участников.

Vendors that treat single sign-on as a luxury feature (sso.tax) 💬 Длинная дискуссия

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 должен быть либо в базе, либо за умеренную доплату.

by vinnyglennon • 19 августа 2025 г. в 19:38 • 231 points

ОригиналHN

#single-sign-on#sso#security#authentication#google#okta#azure-ad#cloudflare

Комментарии (159)

  • «SSO-налог» — это не техническая, а ценовая сегментация: крупные клиенты обязаны иметь SSO (SOC2), поэтому за него платят.
  • Поддержка SSO действительно дорога: множество тикетов, сложные интеграции, вызовы инженеров, особенно при частных IdP.
  • Часть вендоров всё же даёт базовый SSO через Google/GitHub/Microsoft, но «частный IdP» остаётся маркером Enterprise.
  • Малым компаниям SSO тоже нужен по контрактам, но высокие цены отталкивают; кто-то предлагает субсидии или прокси-решения.
  • Итог: SSO = не «фича», а показатель зрелости клиента и объём его кошелька.

AnduinOS (anduinos.com)

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 прошёл безболезненно, система лёгкая и красивая» — пользователи.

by TheFreim • 19 августа 2025 г. в 18:42 • 107 points

ОригиналHN

#ubuntu#gnome#flatpak#linux#open-source

Комментарии (127)

  • AnduinOS — это Ubuntu-ремикс одного китайского инженера Microsoft, который превращает GNOME в клон Windows 11.
  • Пользователей смущает название: многие прочитали «ArduinoOS» или «AndroidOS», а не «AnduinOS».
  • Критика: это всего лишь «скин» Ubuntu с Flatpak-пакетами, без ясных преимуществ над Mint или чистой Ubuntu.
  • Плюсы: может помочь консервативным пользователям перейти на Linux без шока от интерфейса.
  • Минусы: нет ARM-сборки, сомнительный выбор WPS Office в демо, риск путаницы при поиске linux-советов.

Notion releases offline mode (notion.com)

Работа в Notion офлайн

  • Доступно всем: просматривайте, редактируйте и создавайте страницы без сети в десктоп- и мобильном приложении.
  • Автозагрузка: на Plus/Business/Enterprise последние и избранные страницы сохраняются автоматически.
  • Вручную: откройте нужную страницу → •••Available offline; дождитесь полосы загрузки.
  • Проверка: в Settings → Offline видно, что сохранено; можно удалить лишнее.

Подготовка к офлайну

  1. На каждом устройстве включите офлайн-доступ отдельно.
  2. Убедитесь, что нужные страницы загружены через Settings → Offline.
  3. База данных: первые 50 строк загружаются автоматически; остальные — вручную.
  4. Подстраницы отмечайте индивидуально.

Работа офлайн

  • Изменения сохраняются локально и синхронизируются при подключении к интернету.

by ericzawo • 19 августа 2025 г. в 18:27 • 186 points

ОригиналHN

#notion#offline-mode#collaboration#obsidian#data-synchronization#cloud-storage

Комментарии (133)

  • Пользователи делятся на два лагеря: кто-то рад офлайн-режиму Notion, но многие уже ушли в Obsidian за скоростью, локальным хранением и «файл-овер-эпп» подходом.
  • Все сходятся, что офлайн-синхронизация сложна: конфликты, потеря данных, архитектура масштаба — всё требует огромных усилий.
  • Некоторые считают Obsidian неудобным для командной работы и предпочитают Notion для HR, спринтов и коллаборации.
  • Альтернативы: SiYuan, Anytype, Notesnook, Appflowy, но у каждого свои компромиссы.
  • Главный вывод: Notion — для команд и «документов в облаке», Obsidian — для личных баз знаний и контроля над данными.

D2 (text to diagram tool) now supports ASCII renders (d2lang.com) 🔥 Горячее

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.

by alixanderwang • 19 августа 2025 г. в 18:14 • 274 points

ОригиналHN

#d2#ascii#diagrams#vim#github#wasm

Комментарии (46)

  • Пользователи оценили новый режим ASCII-рендеринга в D2, но спрашивают, чем он лучше Mermaid и можно ли вручную подправить расположение блоков.
  • Добавлена возможность конвертации ASCII-обратно в D2, но пока неясно, как легко вернуть исходный код.
  • Некоторые жалуются на отсутствие официального Python-пакета и GitHub-поддержки, а также на то, что онлайн-версия требует сервера.
  • Разработчики подтвердили: WASM-порт (d2.js) уже работает в браузере, но ещё не анонсирован официально.

Why Semantic Layers Matter (and how to build one with DuckDB) (motherduck.com)

Зачем нужен семантический слой и как собрать его на DuckDB

Когда не нужен

  • Один инструмент аналитики (BI, ноутбук или приложение).
  • Метрики тривиальны: COUNT, SUM, AVG.
  • Все агрегаты уже материализованы в таблицах.

Зачем нужен

  1. Единое место определения метрик – версионируемые YAML-файлы с бизнес-логикой, которые читают BI, ноутбуки, веб-приложения, AI.
  2. Кеш и безопасность – быстрые ad-hoc-запросы без переноса данных, ролевая безопасность через API.
  3. Согласованность – 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.

by secondrow • 19 августа 2025 г. в 16:49 • 119 points

ОригиналHN

#duckdb#ibis#yaml#pandas#sql#data-analysis#business-intelligence

Комментарии (22)

  • Семантический слой — это абстракция, которая переводит технические детали БД в понятные бизнесу термины и метрики.
  • Он даёт переиспользуемость логики (джойны, агрегаты) и единое определение метрик, в отличие от жёстких SQL-вьюх.
  • Внедрение трудоёмко: аналитикам проще «скопировать SQL» сейчас, чем инвестировать в переиспользуемый слой.
  • Некоторые считают YAML-описания неудачным способом задать семантику и предлагают языки вроде Malloy или Looker.
  • Есть мнение, что это ORM для BI-дэшбордов и ML-фичей, а не просто «красивое имя для вьюхи».

Emacs as your video-trimming tool (xenodium.com)

Emacs как обрезчик видео

Марцин Борковский показал, как вырезать фрагменты прямо из редактора. Автору тоже часто нужно обрезать скринкасты, поэтому он вдохновился и написал video-trimmer-mode (~300 строк Elisp).

  • Использует ffmpeg для всей тяжёлой работы.
  • Показывает превью и позволяет задавать начало/конец кадрами.
  • Код живёт в dotsies и обновляется.

Если пригодилось — поддержите автора на GitHub Sponsors или купите его macOS/iOS-приложения.

by xenodium • 19 августа 2025 г. в 16:22 • 218 points

ОригиналHN

#emacs#elisp#ffmpeg#video-editing#github#open-source

Комментарии (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 (research.kudelskisecurity.com) 🔥 Горячее 💬 Длинная дискуссия

CodeRabbit: от PR до RCE и доступа к 1 млн репозиториев

CodeRabbit — самое популярное AI-приложение на GitHub Marketplace (1 млн репозиториев, 5 млн PR). При установке он анализирует каждый PR и оставляет AI-комментарии.

Найденные уязвимости

  1. RCE через Markdown-рендеринг

    • Внутри контейнеров запускается markdown-it с плагином markdown-it-katex.
    • Плагин использует child_process.exec без фильтрации LaTeX-ввода.
    • Внедрённый в PR $\input{/etc/passwd}$ запускает произвольные команды.
  2. Утечка токенов

    • Внутри контейнеров доступны переменные окружения: GITHUB_TOKEN, CODERABBIT_API_KEY, DATABASE_URL.
    • Чтение /proc/self/environ и ~/.netrc позволило получить токены GitHub, JWT-секреты и строку подключения к PostgreSQL.
  3. Доступ к 1 млн репозиториев

    • Установленный GitHub-App имеет scope contents:write во всех подключённых репозиториях.
    • С помощью украденного токена можно клонировать/писать в приватные репы, создавать PR, коммиты и релизы.

Цепочка атаки

  1. Создаём PR с вредным LaTeX.
  2. Получаем RCE в контейнере CodeRabbit.
  3. Считываем секреты.
  4. Используем токен GitHub для полного доступа к репозиториям.

Меры защиты

  • Переход на изолированные sandbox-среды.
  • Отключение опасных LaTeX-функций.
  • Минимизация scope GitHub-токенов.

by spiridow • 19 августа 2025 г. в 15:55 • 553 points

ОригиналHN

#github#github-marketplace#markdown-it#latex#rce#postgresql#child-process#security-vulnerability#sandbox

Комментарии (184)

  • Уязвимость позволяла RCE через RuboCop в прод-среде CodeRabbit; AI-ревьюер видел риск, но не мог остановить выполнение.
  • Пользователи упрекают компанию в отсутствии прозрачности: нет официального поста о баге, заявление «данные не пострадали» вызывает сомнения.
  • Ключи GitHub-приложения хранились в env-переменных, что считается грубейшей ошибкой управления секретами.
  • Критика также адресована GitHub: модель разрешений толкает интеграции запрашивать максимальные права.
  • CodeRabbit утверждает, что всё исправили в январе, добавили полную изоляцию и песочницы для всех инструментов.

A renovation project in Turkey led to the discovery of a lost city (2023) (atlasobscura.com)

Тайный подземный город в подвале дома

Житель турецкого Невшехира во время ремонта наткнулся на дверь в скрытый лабиринт. Под домом оказался камедеринский подземный комплекс — многоуровневая сеть туннелей, комнат и колодцев, выдолбленных в мягком вулканическом туфе.

  • Масштаб: 18 этажей, глубина до 85 м, протяжённость 8 км.
  • Назначение: укрытие от набегов; жили 20 тыс. человек.
  • Системы: вентиляционные шахты, колодцы, винодельня, часовня, школы.
  • Возраст: начало строительства — VIII век до н. э., активное использование — византийский период.

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

by areoform • 19 августа 2025 г. в 15:34 • 76 points

ОригиналHN

#lidar#archaeology#history

Комментарии (22)

  • Участники делятся впечатлениями о подземных городах: Derinkuyu, Özkonak, Naours и других.
  • Обсуждают, что такие города строились из-за постоянных вторжений, но турецкий гид утверждал, что после прекращения набегов их перестали использовать.
  • Упоминают, что вся Каппадокия выглядит «как другая планета» с долинами, музеями и пещерами.
  • Поднимают тему LiDAR-исследований, находящих в Латинской Америке целые мегаполисы, и задаются вопросом, есть ли аналоги в Африке.
  • Напоминают о греческом геноциде 1920-х, когда подземные убежища снова пригодились, и критикуют статью за «обеление» истории.

"Remove mentions of XSLT from the html spec" (github.com) 🔥 Горячее 💬 Длинная дискуссия

  • Что изменили: из спецификации HTML полностью убраны упоминания XSLT.
  • Почему: технология считается устаревшей, поддержка в браузерах минимальна, а спецификация XSLT живёт отдельно.
  • Что удалили:
    • раздел «XSLT» и связанные термины;
    • алгоритм «transform-to-document»;
    • обработку type="text/xsl";
    • примеры и ссылки на XSLT.
  • Как проверили: сборка без ошибок, тесты WPT не затронуты.

by troupo • 19 августа 2025 г. в 14:48 • 302 points

ОригиналHN

#xslt#html#web#libxslt#wasm#web-performance-tests#github

Комментарии (369)

  • Все браузеры, а не только Chrome, поддерживают идею убрать XSLT из веб-платформы.
  • Основная причина — безопасность и тяжёлая поддержка устаревшей библиотеки libxslt.
  • Часть пользователей возмущена: «спросили всех, все сказали “нет”, но всё равно уберут».
  • Некоторые предлагают замену на WASM-полифилл или серверную трансформацию.
  • Сторонники XSLT жалуются на разрыв обещания «HTML навсегда» и гибель старых сайтов.

Positron, a New Data Science IDE (posit.co)

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

by kgwgk • 19 августа 2025 г. в 14:20 • 135 points

ОригиналHN

#positron#r#python#tidyverse#ggplot2#dplyr#quarto#shiny#aws#azure

Комментарии (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 (h4x0r.org) 🔥 Горячее

Без 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. Учебник, игнорирующий этот примитив, не готовит к реальной разработке.

by eatonphil • 19 августа 2025 г. в 13:53 • 252 points

ОригиналHN

#linux#futex#multithreading#synchronization#system-calls#mutex#rust#c++#pthreads

Комментарии (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 (lists.thekelleys.org.uk)

Критическая уязвимость кэш-подмены в 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

by westurner • 19 августа 2025 г. в 12:56 • 115 points

ОригиналHN

#dnsmasq#dns#cache-poisoning#vulnerability#network-security#openwrt#unbound#dnssec

Комментарии (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 (theverge.com)

  • Суть: Лондон отказался требовать у Apple «чёрный ход» в шифрование iCloud (функция ADP).
  • Контекст: В январе 2025 г. Apple отключила ADP в Великобритании после ультиматума Home Office.
  • Результат: Без официальных объяснений власти отозвали приказ; Apple может вернуть полное сквозное шифрование.
  • Значение: Победа Apple и правозащитников, но британские спецслужбы сохраняют право подавать новые требования в будущем.

by iamdamian • 19 августа 2025 г. в 11:58 • 172 points

ОригиналHN

#apple#encryption#icloud#privacy#security

Комментарии (41)

  • Участники сомневаются, что Apple действительно отказалась от «задних дверей» в Великобритании: решение не подтверждено документально, а откат мог быть лишь публичным жестом.
  • Многие считают «победу» сомнительной: права на приватность всё равно зависят от страны и политического давления, а не от универсального принципа.
  • Поддержка детей и борьба с терроризмом воспринимаются как удобный предлог для анти-свободных законов.
  • Есть опасения, что власти просто временно отступили и скоро вернутся с новыми попытками или уже имеют доступ к данным.
  • Вопрос о восстановлении сервиса Advanced Data Protection (ADP) в UK остаётся открытым.

PyPI Preventing Domain Resurrection Attacks (blog.pypi.org)

Кратко
PyPI теперь ежедневно отслеживает, не истёк ли домен, к которому привязан e-mail пользователя. Если домен переходит в «период искупления» (redemption), адрес автоматически становится «неподтверждённым», что блокирует атаку «воскрешения» домена и захват аккаунта через восстановление пароля. С июня 2025 г. таким образом аннулировано более 1 800 адресов.

Как работает атака

  1. Владелец забывает продлить домен.
  2. Злоумышленник выкупает домен, поднимает почту, запрашивает сброс пароля PyPI.
  3. До внедрения 2FA (до 1 янв 2024) это давало полный доступ; теперь нужно ещё обойти второй фактор, но риск остаётся.

Жизненный цикл домена
Активен → дата окончания → льготный период (до 45 дней) → redemption (30 дней, высокая цена) → 5 дней «pending delete» → освобождение. PyPI проверяет статус раз в 30 дней через API Domainr и действует до момента смены владельца.

Что делает PyPI

  • С апреля 2025 ежедневный мониторинг.
  • При переходе в redemption статус e-mail меняется на «unverified».
  • Пользователю приходит уведомление; повторное подтверждение возможно только после продления домена.

Совет пользователям

  • Продлевайте домены заранее.
  • Используйте надёжный почтовый сервис с авто-продлением.
  • Добавьте резервный подтверждённый адрес на стабильном домене.

by pabs3 • 19 августа 2025 г. в 10:32 • 98 points

ОригиналHN

#pypi#domain#email#security#2fa#api#cryptography

Комментарии (37)

  • Проблема повторного использования email-адресов после удаления аккаунтов ставит под угрозу цифровую идентичность и безопасность пакетов (Maven, Go).
  • Google и Microsoft по-разному подходят к блокировке «мертвых» доменов и email, но единого стандарта нет.
  • URI-импорты и доменные namespace кажутся хрупкими: домен может истечь, а пакет — подмениться.
  • Сильная криптографическая идентичность (PGP, Keybase, SigSum) технически решена, но не взлетела из-за UX, потери ключей и репутационных проблем крипто-мира.
  • Участники сходятся во мнении: нужно что-то простое, децентрализованное и без единой точки отказа, но пока нет рабочего массового решения.

Custom telescope mount using harmonic drives and ESP32 (svendewaerhert.com) 🔥 Горячее

Суть проекта
Сделал GOTO-монтировку с нуля: два гармонических редуктора (100:1), ESP32-S3, шаговый и сервопривод, USB-C PD до 100 Вт. Управление — по Wi-Fi, протоколы step/dir, CAN, Modbus.

Почему
Начал с €200-трекера Move Shoot Move, но полярная настройка и поиск объектов были мукой. Профессиональные монтировки €1 200–4 000 казались перебором. Решил построить своё.

Путь

  1. Освоил FreeCAD и KiCad.
  2. Выбрал редукторы 14 и 17 типа с AliExpress (поиск через Google site:aliexpress.com).
  3. Изучил опыт HEMY, HrEM, DHEM и DIY EQ Mount V2.
  4. Плата полукруглая, вмещается в корпус; драйверы встроены в моторы, поэтому схема простая.
  5. Корпус алюминиевый, крепление Arca-Swiss, режимы экваториальный/альта-азимут.

Характеристики

  • RA: серво 42AIM15 + 17-редуктор → 32 768 шаг/об, 65 536 с оверсэмплингом.
  • DEC: шаговый MKS Servo42D + 14-редуктор → 1/256 микрошаг.
  • Скорость slew увеличивается переключением микрошага 256→128 по CAN.
  • GPIO и питание 5–24 В вынесены на разъёмы «на будущее».

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

by waerhert • 19 августа 2025 г. в 09:46 • 276 points

ОригиналHN

#esp32#freecad#kicad#can#modbus#stellarium#kstars#skyfield#onstep#indi

Комментарии (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 (susam.net) 🔥 Горячее

Prime Grid
Старт
Строки
Столбцы
« » ·

Для работы страницы требуется включённый JavaScript.

by todsacerdoti • 19 августа 2025 г. в 07:33 • 263 points

ОригиналHN

#javascript#prime-numbers#visualization

Комментарии (90)

  • Пользователи делятся ссылками на визуализаторы простых чисел и обсуждают разные способы отображения: решётки, Ulam spiral, «упаковки» по 100 чисел.
  • Отмечают, что при простом числе колонок возникают диагональные полосы из-за одинаковых остатков по модулю.
  • Удивляются «густоте» простых даже на больших числах, хотя теорема о простых числах говорит о снижении плотности как 1/log n.
  • Просят добавить hover-числа, анимацию, другие основания, 3-D, экспорт изображений.
  • Кто-то видит в узорах логотипы, «звёздные врата» или даже «клингонский» текст; другие предупреждают, что часть узоров — псевдопаттерны.

How to Build a Medieval Castle (archaeology.org)

  • В лесах Бургундии строят настоящий замок XIII века Геделон – эксперимент археологов и ремесленников.
  • С 1998 г. 40 мастеров используют только средневековые инструменты, материалы и методы.
  • Цель – восстановить забытые приёмы строительства, заполнить пробелы в знаниях историков и «замковедов».
  • Даже установка окна в часовне превратилась в коллективную головоломку: каменщики, плотники, кузнецы, историки и археологи спорили 8 лет, какое стекло допустимо.
  • Руководитель Флориан Ренюсси: «Замок начинает говорить – мы слышим, видим и чувствуем то, что обычная археология упускает».

by benbreen • 19 августа 2025 г. в 04:49 • 213 points

ОригиналHN

#archaeology#history#architecture#construction#medieval#bbc#youtube

Комментарии (66)

  • Участники делятся ссылками и впечатлениями о проекте замка Гюдельон и других «новых» средневековых замках.
  • Рекомендуют документальные фильмы BBC, видео на YouTube и книгу Маколея «Castle».
  • Обсуждают, что стекло поглощало до половины бюджета собора, а строительство без электричества требует невероятных усилий.
  • Вспоминают одночастные замки в США (Bishop Castle, Loveland Castle, Ozark Medieval Fortress) и феномен «follies» в Англии.
  • Европейцы удивляются, что для американцев средневековые постройки вызывают больший восторг, чем для них самих.

OpenMower – An open source lawn mower (github.com) 🔥 Горячее 💬 Длинная дискуссия

OpenMower — проект превращения недорогих серийных газонокосилок-роботов в умные устройства с точной навигацией RTK-GPS.

  • Цель: дать старому «железу» современные функции — карты, зоны, маршруты, автопарковку.
  • Что внутри: полностью открытая прошивка, платы и 3D-печатные крепления; заменяем только «мозги», оставляя моторы и датчики.
  • Требования: базовая газонокосилка (Flymo, Gardena, Worx и др.), плата-основа на Raspberry Pi 4, RTK-модуль, внешняя антенна.
  • Функции:
    • планирование маршрутов по векторной карте;
    • работа по зонам и расписанию;
    • возврат на зарядку и продолжение с места остановки;
    • OTA-обновления и веб-интерфейс.
  • Сборка: подробные инструкции и BOM в репозитории; сообщество в Discord помогает с отладкой.
  • Лицензия: GPL-3.0, все файлы и схемы свободны.

by rickcarlino • 19 августа 2025 г. в 00:35 • 529 points

ОригиналHN

#raspberry-pi#rtk-gps#gpl-3.0#discord#open-source#iot#arduino#github

Комментарии (166)

  • Кто-то считает, что «все современные газонокосилки ездят хаотично», но большинство пользователей отвечают: случайный алгоритм работает отлично, а провод периметра надёжен и дешёв.
  • Аппаратное обеспечение у Husqvarna, Mammotion, Sunseeker и др. хвалят, но ПО всё ещё «сырое» и требует доработок.
  • OpenMower заменяет «мозги» готового шасси RTK-GPS и открытым ПО; поддерживаемый корпус в США почти не продаётся.
  • Поднимаются вопросы безопасности (ежи, камни, ответственность), цены (как подержанная машина) и необходимости косить только днём.
  • Кто-то мечтает о солнечных микро-триммерах, другие просят RC-версию или модуль для сбора мусора.

Ted Chiang: The Secret Third Thing (linch.substack.com)

by pseudolus • 19 августа 2025 г. в 00:05 • 248 points

ОригиналHN

#science-fiction#philosophy#thermodynamics#determinism#religion#linguistics

Комментарии (112)

  • Участники подчёркивают, что Тед Чианг создаёт строго внутренне согласованные миры, чтобы исследовать человеческие последствия идей, а не «научную точность» в духе hard sci-fi.
  • Спорят, является ли «Hell Is the Absence of God» критикой религии: одни видят в нём разоблачение, другие — исследование страдания и веры в мире, где Бог существует наверняка.
  • «Exhalation» воспринимается как идеальный пример «герметичной» термодинамики: законы те же, но упрощённая вселенная позволяет ощутить энтропию «вживую».
  • «Story of Your Life» трактуют не как про язык Сапира-Уорфа, а как размышление о лагранжевом детерминизме и восприятии времени.
  • Несколько человек советуют Грега Игана и Кена Лю как авторов с похожим подходом к контрфакту и философии.

Croatian freediver held breath for 29 minutes (divernet.com) 🔥 Горячее

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₂. Требуется глубокая релаксация, контроль диафрагмы и минимальный пульс.

by toomanyrichies • 19 августа 2025 г. в 00:04 • 256 points

ОригиналHN

#freediving#apnoea#oxygen#breathing#human-physiology#safety

Комментарии (119)

  • Рекорд 29 мин 4 сек достигнут после предварительного дыхания чистым кислородом; на обычном воздухе рекорд 11 мин 35 сек.
  • Участники обсуждают, как тренируют толерантность к CO₂, контролируют диафрагмальные спазмы и используют млекопочитающий рефлекс для замедления обмена.
  • Поднимаются вопросы безопасности: риск потери сознания, «синих» blackout’ов и долгосрочного вреда мозгу; подчёркивается роль тренёров-сейфов.
  • Некоторые спрашивают, можно ли применять «кислородный трюк» для обычного снорклинга — ответ: нет, это сложно и небезопасно.
  • Упоминаются генетические и культурные факторы (баджаи, хорваты), а также увеличенные селезёнки у морских кочевников.

What could have been (coppolaemilio.com)

Вместо «умных» функций — просто работающие.

Везде впихивают ИИ, который никто не просил: браузеры, ОС, конференц-приложения ломаются, но деньги текут в «искусственный интеллект».
Gamescom добавил ИИ-расписание: люди получили сотни ненужных встреч, функцию быстро убрали.
Те же деньги могли бы починить DM, поиск, перенос встреч — базовые вещи, из-за которых все возвращаются к почте и LinkedIn.

Мотив один: быстрая прибыль. В итоге продукты гниют, а инвесторы кормят обещания «вот-вот будет AGI».
Один бюджет крупной компании хватило бы на 100 лет развития Godot, Blender, Ladybird — реальных инструментов, которые нужны сегодня.

Потерянные годы не вернуть.

by coppolaemilio • 18 августа 2025 г. в 22:29 • 122 points

ОригиналHN

#llm#artificial-intelligence#investment#software-development#agile#blockchain#cloud-computing#documentation#api#uml

Комментарии (104)

  • Участники жалуются, что вместо починки старых багов и улучшения базовых функций компании впихивают «AI-фичи», которые никому не нужны.
  • Многие считают, что инвесторы сознательно выбирают технологии, которые трудно децентрализовать, чтобы сохранить контроль и монополию.
  • Одни видят в нынешнем AI-хайпе очередную моду, как было с UML, блокчейном и облаками; другие – шанс на прорыв, оправдывающий «пузырь».
  • Популярная идея: деньги лучше бы пошли на документацию, API и совместимость, а не на обучение моделей водить мышкой по браузеру.
  • Подводный тезис – проблема не в AI, а в концентрации капитала и в том, что «зелёное поле» проще финансировать, чем ремонт «коричневого».

Lab-grown salmon hits the menu (smithsonianmag.com) 💬 Длинная дискуссия

  • FDA одобрила первую клеточную рыбу — лосося компании Wildtype.
  • 28 мая агентство выдало письмо «без вопросов» о безопасности продукта.
  • Шеф-повар Грегори Гурдэ подал лабораторный лосось в ресторане Kann (Портленд, Орегон).
  • Культивированное мясо — альтернатива промыслу; спрос на морепродукты растёт, а ресурсы исчерпываются.

by bookmtn • 18 августа 2025 г. в 22:29 • 131 points

ОригиналHN

#fda

Комментарии (209)

  • Пользователи спорят, можно ли клеточно-выращенный лосось называть «лососем» и считать ли его «ультрапереработанным».
  • Одни видят в продукте решение проблем экологии, благосостояния животных и безопасности пищи; другие называют его «аберрацией» и предпочитают редкое натуральное мясо.
  • Некоторые предлагают начать с экзотики (кит, фуа-гра), чтобы проще было войти на рынок.
  • Упоминаются вреды традиционного лососевого фермерства и риски отсутствия иммунной системы у клеточного продукта.
  • Ряд штатов США уже запрещает или рассматривает запрет на клеточное мясо, что вызывает обвинения в лицемерии «pro-deregulation» властей.

Shamelessness as a strategy (2019) (nadia.xyz)

В настольной игре Avalon персонаж Мерлин знает злодеев, но не может выдать себя. Обычно он прячется за Персивалем, но можно пойти напролом: Мерлин ведёт себя так вызывающе, что все решают — это точно не Мерлин, а Персиваль. Это требует, чтобы остальные не знали, тупит он или гениален.

Такой «бесстыжий» ход становится общей стратегией. Париж Хилтон сыграла «тупую блондинку» настолько убедительно, что все поверили. Её осмеивали, но говорили о ней постоянно; спустя десятилетие её метод переняли Кардашьяны и другие. Признать её успех — значит признать, что остальные играли по проигрышным правилам.

То же случилось на выборах 2016 года: нарушение «очевидных» правил вызвало отторжение у обеих партий, но, вероятно, заложило новый стиль политики. Марк Цукерберг следует старому сценарию и теряет доверие, тогда как Джек Дорси поступает «глупо» (посты о голодании), но остаётся интересен.

Раньше общество наказывало выходки, сохраняя порядок. Сегодня наказание лишь усиливает сигнал: в открытых онлайн-сообществах санкции превращаются в маяк для новых сторонников. «Эстеблишмент» ошибается, считая, что нарушителю нужно одобрение старой тусовки; на самом деле ему всё равно, кто в новой.

Критика «он же туп» тоже не работает: не важно, осознаёт человек свои действия или нет. Он просто носитель идей-вирусов, которые распространяются, пока находят благодатную почву.

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

by wdaher • 18 августа 2025 г. в 22:27 • 185 points

ОригиналHN

#mark-zuckerberg#jack-dorsey#paris-hilton#kardashians#2016-elections

Комментарии (104)

  • Обсуждение сводится к тому, что «бесстыдство» как стратегия всё чаще побеждает в политике, медиа и бизнесе, разрушая старые нормы и правила игры.
  • Часть участников считает это countersignalling’ом и «новой искренностью», другие — просто циничным расчётом на внимание любой ценой.
  • Утверждается, что бесстыдство работает, когда у тебя есть ресурсы или когда массово отказались от стыда, но при неудаче выглядишь клоуном.
  • Некоторые видят в этом запрос на «настоящее», уязвимое, «человеческое», другие — лишь разрушение общественных институтов и морали.
  • Решения почти не предложены: кто-то ждёт войны или жёсткого регулирования, кто-то — возврата к формальности и стыду.

Комментарии (24)

  • Суд против Fox из-за лжи о «украденных выборах» показал, что единственный действенный рычаг воздействия на СМИ — это иск о коммерческом ущербе, а не защита граждан от дезинформации.
  • Штраф в 1/3 годовой выручки многие считают «расходами на бизнес», но участники с опытом масштабных исков утверждают, что такие решения всё-таки заставляют компании менять процессы.
  • Спор о «бумаге против электроники» свёлся к тезису: бумажные бюллетени с ID и очным голосованием сложнее взломать, но и они не 100 % защищены; электронные системы теоретически возможны, но вызывают сомнения в безопасности.
  • Под поверхностью дискуссии о voter-ID скрываются партийные мотивы: республиканцы видят в этом способ подавления демократических голосов, демократы — барьер для избирателей без удостоверений.

Newgrounds: Flash Forward 2025 (newgrounds.com)

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.

by lsferreira42 • 18 августа 2025 г. в 21:54 • 83 points

ОригиналHN

#flash#ruffle#adobe#haxe#swfmill#internet-archive

Комментарии (28)

  • Участники вспоминали «золотой век» Flash-игр на Newgrounds и то, как легко тогда было распространять свои проекты.
  • Отмечены важные юридические уроки (спор с BBC из-за пародии на Teletubbies) и технические решения: эмулятор Ruffle, проекты Flashpoint и Internet Archive для сохранения наследия.
  • Взрослый контент теперь скрыт за настройками, а сам Flash воспринимается как «ретро-консоль веба 1.0».
  • Обсуждались инструменты для создания Flash-контента: Adobe (всё ещё проприетарный), Haxe + swfmill, а также мечты о «Unity с интерфейсом Flash».

Obsidian Bases (help.obsidian.md) 🔥 Горячее 💬 Длинная дискуссия

Основы Obsidian
Obsidian строится на базах — папках, где хранятся заметки (*.md). Одна база = одна папка. Внутри можно создавать подпапки, но все они считаются частью этой базы.

Создание

  • Новая: File → New Vault → выбрать папку.
  • Существующая: Open folder as vault — подключить уже готовую папку с .md.

Место хранения

  • Локально (по умолчанию) — файлы на диске.
  • Синхронизация — через Obsidian Sync, Git, iCloud, Dropbox и т.д. (файлы остаются вашими).

Одновременная работа
Можно открыть несколько баз одновременно: каждая в отдельной вкладке/окне. Переключение через Ctrl/Cmd+O.

Перенос
Просто скопируйте папку базы — она полностью переносима. Никаких скрытых зависимостей.

by twapi • 18 августа 2025 г. в 21:28 • 631 points

ОригиналHN

#obsidian#markdown#git#icloud#dropbox#api#crm#kanban

Комментарии (207)

  • Bases — это официальная табличная надстройка над файлами хранилища: каждая строка = один файл, каждый столбец = его свойство (рейтинг, дедлайн и т.д.).
  • Функция только вышла из платного раннего доступа; часть пользователей видит в ней замену плагинам Projects/Dataview, другие считают реализацию сырой.
  • Главная претензия: чтобы воспользоваться Bases, приходится дробить контент на множество мелких файлов, что неудобно и грузит файловую систему.
  • Тем, кто использует Obsidian как CRM или ведёт кампании D&D, возможность фильтровать и сортировать NPC/контакты уже оказалась полезной.
  • Пока нет множественного выбора ячеек, встроенных Kanban-видов и встраивания таблиц в существующие заметки, но API и улучшения обещаны в дорожной карте.

Show HN: Fractional jobs – part-time roles for engineers (fractionaljobs.io)

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/час, удалённо

Посмотреть ещё 24 вакансии

Также следите за новыми предложениями в LinkedIn и X.

by tbird24 • 18 августа 2025 г. в 21:10 • 214 points

ОригиналHN

#fractional-work#contentful#steelbay-equity-partners#wedwallet#linkedin#x

Комментарии (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 (github.com)

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.

by admp • 18 августа 2025 г. в 20:34 • 244 points

ОригиналHN

#systemverilog#fpga#pynq#verilator#vivado#dma#tensor-processing-unit#machine-learning#resnet#mnist

Комментарии (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 (theregister.com)

  • 95 % компаний не получают реальной пользы от генеративного ИИ: отсутствуют данные, экспертиза, процессы и культура.
  • Пилоты застревают на стадии демо; ROI не измеряется, бюджеты выгорают.
  • Ключевые барьеры: «грязные» данные, отсутствие стратегии, нехватка специалистов, правовые риски.
  • Выигрывают лидеры: 5 %, кто инвестировал в инфраструктуру, обучение и управление жизненным циклом моделей.
  • Совет аналитиков: начинать с узких, хорошо оплачиваемых сценариев (например, генерация отчётов), постепенно масштабировать.

by rntn • 18 августа 2025 г. в 19:54 • 174 points

ОригиналHN

#generative-ai#artificial-intelligence#machine-learning#data-management#business-process-outsourcing#roi#blockchain#dot-com-bubble

Комментарии (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 (tinytpu.com)

Tiny-TPU: почему и как

Мы решились на безумное: собрать собственный TPU, не имея опыта в железе. Движимы желанием «переизобрести» ускоритель, а не копировать Google, мы пошли «кривым» путём: сначала пробуем самые простые идеи, потом читаем документацию. Цель — научиться думать без ИИ и понять, как устроены нейросети и чипы.

TPU — это ASIC, заточенный под матричные умножения (до 95 % вычислений в трансформерах). В отличие от GPU, он не умеет рисовать кадры, зато делает одно дело быстро и эффективно.

Как работает железо

  • Тактовый цикл — базовая единица времени (пико-наносекунды). Всё происходит между «тиками».
  • Verilog описывает логику:
    always @(posedge clk) c <= a + b;
    
    Регистры обновляются раз в цикл, а не мгновенно, как в софте.

Путь к игрушечному TPU

  1. XOR-MLP 2→2→1 — разобрали вручную: прямой и обратный проходы, градиенты.
  2. Философия — рисуем всё на бумаге, кодим без ИИ, проверяем «тупые» идеи.
  3. Результат — работающий «той» TPU, который учится и выводит. Это не клон Google-TPU, а наша версия «как бы мы сделали».

Слайды и код: GitHub, Twitter, Drive.

by evxxan • 18 августа 2025 г. в 19:52 • 105 points

ОригиналHN

#verilog#asic#fpga#tpu#neural-networks#matrix-multiplication

Комментарии (18)

  • Проект описывает «игрушечный TPU», реализованный пока только в симуляции на Verilog.
  • Участники обсуждают следующий шаг — запуск на FPGA (LiteX, отсутствие опыта пока не мешает).
  • Вопросы о конечной цели: потребительские устройства, edge-вычисления или просто proof-of-concept.
  • Некоторые советуют перейти с SystemVerilog на Chisel, как Google, но другие считают это избыточным для маленького проекта.
  • Общий тон: восхищение работой и любопытство, что именно было «собрано».

T-Mobile claimed selling location data without consent is legal–judges disagree (arstechnica.com) 🔥 Горячее

  • Апелляционный суд США подтвердил штраф $92 млн для T-Mobile за продажу данных о местоположении абонентов без согласия.
  • FCC оштрафовала T-Mobile, AT&T и Verizon за передачу реального местоположения посредникам LocationSmart и Zumigo; злоупотребления стали известны в 2018 г.
  • Суд: каждый смартфон — трекер, данные раскрывают «интимные детали жизни»; операторы не проверяли согласие и не ввели защиту после инцидентов.
  • T-Mobile и Sprint не отрицали фактов, но заявляли, что FCC превысила полномочия; суд признал штрафы законными.
  • Решения по апелляциям AT&T и Verizon ещё не вынесены.

by Bender • 18 августа 2025 г. в 19:25 • 297 points

ОригиналHN

#t-mobile#att#verizon#fcc#location-data#privacy#mvno#google-fi

Комментарии (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 (trychroma.com)

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))

Документация | Бесплатный старт

by jeffchuber • 18 августа 2025 г. в 19:20 • 86 points

ОригиналHN

#chroma#chromadb#vector-search#full-text-search#llm#python#serverless#cloud#rag#apache-2.0

Комментарии (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 операционной боли».

Комментарии (68)

  • Участники обсуждают «духовного наследника The Sims», где LLM-агенты создают непредсказуемые, но логичные стратегии и социальную динамику.
  • Разработчики подтверждают, что игра началась как продукт и «повернула» в сторону игры; геймплей пока состоит из мини-игр с разными целями.
  • Поднимаются вопросы: как удержать LLM от «схода с рельсов», как задать уровень сложности и не перегрузить игру вычислениями.
  • Часть игроков хочет полного контроля над промптами и локальных моделей, другие опасаются лишних подписок и «генеративной угарности».
  • Побочные темы: баг с ToS, низкий звук в видео, отсутствие Linux-сборки и ностальгия по DXBall.

How much do electric car batteries degrade? (sustainabilitybynumbers.com)

  • Основной вывод: после 320 тыс. км большинство электромобилей сохраняют ≥80 % ёмкости аккумулятора.
  • Типы старения:
    • Календарное — 1–2 % в год даже при простое, усиливается в жаре.
    • Цикловое — потери при зарядке/разрядке из-за механического напряжения и роста SEI-слоя.
  • Динамика: быстрая потеря первые 30 тыс. км, затем линейное замедление.
  • Факторы, ускоряющие деградацию: высокие температуры, постоянная зарядка до 100 % или разрядка до 0 %.
  • Советы для замедления:
    • Держать SoC между 20–80 %.
    • Избегать частых «быстрых» зарядок.
    • Парковать в тени/прохладе.
  • Практика: Tesla Model S/X на 320 тыс. км теряют в среднем 12 %, Model 3/Y — 10 %.
  • Гарантии: большинство производителей покрывают ≥70 % ёмкости 8 лет или 160 тыс. км.

by xnx • 18 августа 2025 г. в 17:53 • 95 points

ОригиналHN

#electric-vehicles#batteries#tesla#nissan-leaf#battery-degradation#lifepo4#battery-management#state-of-charge

Комментарии (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 (graic.net) 🔥 Горячее 💬 Длинная дискуссия

Программа должна оставаться валидной по мере набора.
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]) ...

by graic • 18 августа 2025 г. в 17:08 • 406 points

ОригиналHN

#python#rust#javascript#ide#syntax#functional-programming#autocompletion#language-design

Комментарии (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 (github.com) 🔥 Горячее

Whispering — микросервис в репозитории epicenter-so/epicenter, каталог apps/whispering.
Предназначен для быстрого распознавания речи через OpenAI Whisper: принимает аудио-файл, возвращает текст.

Ключевые файлы

  • main.py — FastAPI-endpoint /transcribe (POST, multipart/form-data).
  • requirements.txtfastapi, 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": "распознанный текст"}.

by braden-w • 18 августа 2025 г. в 16:52 • 532 points

ОригиналHN

#python#fastapi#uvicorn#openai-whisper#docker#sqlite#local-first#speech-recognition#microservices#github

Комментарии (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.com)

MyRetroTVs
Для работы приложения включите JavaScript.

by the-mitr • 18 августа 2025 г. в 16:40 • 122 points

ОригиналHN

#javascript#raspberry-pi#nostalgia

Комментарии (21)

  • Пользователи делятся воспоминаниями и проектами по «оживлению» старых телевизоров на базе Raspberry Pi и сайтам вроде EXPTV.
  • Отмечают ностальгию по ограниченному эфиру, «щелчку» переключения каналов и даже звуку размагничивания.
  • Рекламы и новости 9/11 вызывают особые эмоции, подчеркивая, как медиа формируют «разные реальности» в разные годы.
  • Канадский музей MZTV в Торонто и виртуальные туры рекомендуются для «настоящего» погружения.
  • Мобильная версия сайта вызывает затруднения, но это не мешает «залипать» на часы.

Anna's Archive: An Update from the Team (annas-archive.org) 🔥 Горячее 💬 Длинная дискуссия

Мы живы и продолжаем борьбу: усиливаем инфраструктуру и безопасность. С 2022 г. спасли десятки миллионов книг, статей, газет — теперь они защищены от катастроф через торрент-сеть.

Провели крупнейшие скрапы: IA CDL, HathiTrust, DuXiu и др. Опубликовали рекордные метаданные WorldCat и Google Books, чтобы найти и приоритизировать редкие издания.

Партнёрства: два форка LibGen, STC/Nexus, Z-Library — добавили ещё десятки миллионов файлов и зеркалируют наши данные. Один форк LibGen исчез; подробностей нет.

Появился WeLib: зеркалируют нашу коллекцию и форк кода, но не делятся новыми материалами и улучшениями. Не рекомендуем пользоваться.

На серверах сотни терабайт новых коллекций ждут обработки. Нужны волонтёры и пожертвования — бюджет минимален.

Держитесь.
— Anna и команда

by jerheinze • 18 августа 2025 г. в 16:31 • 975 points

ОригиналHN

#torrent#libgen#z-library#web-scraping#metadata#digital-preservation#ddos

Комментарии (463)

  • Пользователи хвалят Anna’s Archive как «одно из последних хороших мест в интернете», подчеркивая удобство предварительного ознакомления перед покупкой и помощь в поиске редких изданий.
  • Некоторые авторы и правообладатели возмущены: книги выкладывают без разрешения, лишая доходов.
  • Участники обсуждают, как Meta и другие гиганты бесплатно «скребут» данные, а сами сайты-зеркала тратят деньги на хостинг.
  • Поднимаются вопросы долгосрочного выживания: DDoS-атаки, блокировки, отсутствие onion-домена, но есть торренты и система волонтёров.
  • Часть аудитории признаёт, что пользуется пиратскими копиями как «пробниками», а затем покупает бумажные или DRM-free версии, чтобы поддержать авторов.

Who Invented Backpropagation? (people.idsia.ch)

Кто изобрел обратное распространение ошибки (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 формирует полезные скрытые представления.

by nothrowaways • 18 августа 2025 г. в 15:50 • 161 points

ОригиналHN

#backpropagation#fortran#tensorflow#neural-networks#automatic-differentiation#gradient-descent#deep-learning#machine-learning

Комментарии (86)

  • Суть спора: кто «изобрёл» backpropagation — Хинтон/Румелхарт (1980-е) или она была раньше в теории управления и автоматическом дифференцировании (1960-е, Kelley, Amari и др.).
  • Большинство участников считают, что это лишь эффективное применение цепного правила, которое переоткрывалось множество раз.
  • Юрген Шмидхубер подаётся как главный «скептик», обвиняющий академическое сообщество в игнорировании более ранних работ.
  • Некоторые подчеркивают, что решающим стало не само «изобретение», а переход к GPU и масштабируемым фреймворкам в 2010-х.

The Road That Killed Legend Jenkins Was Working as Designed (strongtowns.org)

27 мая 2025 года в Гастонии, Северная Каролина, семилетний Legend Jenkins с братом шёл к магазину Food Lion и Subway. Отец разрешил, лишь держа их на связи. На обратном пути Legend вышел на West Hudson Boulevard — высокоскоростную магистраль с узкими тротуарами и без безопасных переходов — и был сбит внедорожником. Отец слушал, как это происходит.

Через два дня родителям предъявили обвинение в непредумышленном убийстве, залог — по 1,5 млн долларов каждому, шестерых других детей забрали у них.

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

by h14h • 18 августа 2025 г. в 15:33 • 91 points

ОригиналHN

#jenkins

Комментарии (56)

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

Launch HN: Reality Defender (YC W22) – API for Deepfake and GenAI Detection (realitydefender.com)

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; аудио как выше.

Начать бесплатно | Документация SDK

by bpcrd • 18 августа 2025 г. в 15:16 • 83 points

ОригиналHN

#api#deepfake-detection#genai-detection#python#typescript#java#go#rust#kyc#generative-ai

Комментарии (42)

  • Участники сомневаются в надёжности «детекторов ИИ» и предсказывают бесконечную «кошку-мышь» между генераторами и детекторами.
  • Предлагают альтернативу: криптографическую подпись контента, но признают, что добровольные стандарты легко обходятся.
  • Основатели Reality Defender отвечают: ансамбль моделей выдаёт лишь вероятность 1-99 %, API закрыт, таргетинг по паттернам и лимит 50 бесплатных сканов мешают злоупотреблениям.
  • Уже используется крупными банками и корпорациями для проверки подлинности медиа и документов.

Counter-Strike: A billion-dollar game built in a dorm room (nytimes.com) 🔥 Горячее 💬 Длинная дискуссия

by asnyder • 18 августа 2025 г. в 14:59 • 485 points

ОригиналHN

#counter-strike#valve#modding#lan#gambling

Комментарии (411)

  • Участники скучают по эпохе 1.5–1.6: сервер-браузеры, кастомные карты и моды создавали живые локальные сообщества.
  • Ностальгия по LAN-вечерам, de_dust2 и «funmaps» сменяется разочарованием современным матчмейкингом и отсутствием мод-сцены.
  • Главный упрек Valve — превращение игры в площадку для гемблинга: дорогие скины, лутбоксы, отключение CS:GO.
  • Некоторые случайно разбогатели на старых ящиках, другие вспоминают, как моддинг Counter-Strike дал старт их карьере программиста.
  • Есть мечта: open-source «духовный наследник» 1.6 без матчмейкинга, но с модами и полным контролем сообщества.

Class-action suit claims Otter AI records private work conversations (npr.org)

by nsedlet • 18 августа 2025 г. в 13:47 • 112 points

ОригиналHN

#otter-ai#llm#transcription#privacy

Комментарии (21)

  • Раньше риск утечки зависел от доверия к людям и платформе; теперь достаточно, чтобы один участник включил AI-запись.
  • Реклама Otter AI показывает, как бот заменяет человека на встрече, вызывая у многих шок.
  • Спор: кто виноват — пользователь, добавивший Otter без предупреждения, или сам сервис, не делающий уведомление обязательным.
  • Предложено ввести «DO NOT RECORD»-сигнал и open-source-решение dontrecord.me.
  • Истории о том, что запись продолжалась после ухода участников и убила сделку, подчеркивают опасность «человеческого фактора» и слабый контроль AI.

FFmpeg Assembly Language Lessons (github.com) 🔥 Горячее

FFmpeg/asm-lessons — репозиторий с уроками по ассемблеру для FFmpeg.
Цель: научиться писать высокопроизводительные рутины на x86-64, ARM и других архитектурах, ориентированные на мультимедиа-задачи.

Содержание (кратко):

  • Уроки: от базовых инструкций до векторных расширений (SSE/AVX, NEON).
  • Примеры: реализация IDCT, фильтров, цветового преобразования.
  • Тесты: юнит-тесты и бенчмарки для сравнения C vs asm.
  • CI: автоматическая проверка на x86-64 и ARM через GitHub Actions.

Как начать:

  1. Клонируйте репо.
  2. Установите nasm, yasm или llvm-mingw.
  3. Соберите пример: make lesson01.

Полезные ссылки:

by flykespice • 18 августа 2025 г. в 13:39 • 396 points

ОригиналHN

#ffmpeg#assembly-language#x86-64#arm#sse#avx#neon#simd#multimedia#github-actions

Комментарии (132)

  • Пользователи восхищаются масштабом FFmpeg и экономией вычислений даже при небольших улучшениях.
  • Обсуждаются случаи, когда ручная сборка быстрее intrinsic’ов, и инструменты для поиска «горячих точек».
  • Некоторые ждали более глубокой связи с FFmpeg, а не общее введение в ассемблер.
  • Поднимаются вопросы портативности (пока только x86-64), необходимости математических подготовок и перегруженности NASM-макросами.
  • Большинство соглашается: писать LLVM IR вручную нет смысла, проще использовать inline-assembly или векторные инструкции.

Texas law gives grid operator power to disconnect data centers during crisis (utilitydive.com)

  • Суть: закон SB 6, подписанный губернатором Техаса, обязывает крупные потребители (ЦОД ≥ 75 МВт) снижать нагрузку при аварийных отключениях ERCOT.
  • Добровольная программа: те же объекты могут участвовать в demand response, получая компенсацию за переход на резервное питание.
  • Дополнительно: новые правила присоединения, плата за техобследование, прозрачность расходов и возможность колокации с генерирующими мощностями.

by walterbell • 18 августа 2025 г. в 13:34 • 97 points

ОригиналHN

#ercot#demand-response#data-centers#grid-management#energy-policy#texas#power-grid#backup-power

Комментарии (85)

  • Участники считают, что центры обработки данных (ЦОД) должны выдерживать отключения: у них есть дизель-генераторы, контракты на топливо и практика ежеквартальных нагрузочных тестов.
  • Спорят, насколько допустимо принудительно ограничивать крупных потребителей: одни видят в этом справедливое распределение ресурсов «люди в первую очередь», другие опасаются политического давления и произвола.
  • Критикуют текущий «свободный» рынок электроэнергии в Техасе: он не учитывает долгосрочную надёжность и выталкивает инвесторов, готовых платить за резерв.
  • Упоминают, что биткойн-майнинг может быстро отключаться и тем самым «балансировать» сеть, но многие считают такую «помощь» избыточным созданием спроса.
  • Поднимают вопросы логистики: при массовых авариях может не хватить дизеля и времени доставки, а EPA ограничивает часы работы генераторов.
  • Резюмируют: если сервис действительно критичен, заказчик сам должен требовать SLA с дублированием и отказоустойчивостью, а не полагаться на исключения из правил.

Vibe coding tips and tricks (github.com)

Основы

  • Определите цель: чётко сформулируйте задачу перед генерацией кода.
  • Начинайте с 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 %: всегда читайте сгенерированный код.
  • Учитесь у ИИ: спрашивайте «почему так» для роста навыков.

by mooreds • 18 августа 2025 г. в 12:57 • 154 points

ОригиналHN

#fastapi#reactjs#pytest#eslint#mypy#docker#redis#aws#github

Комментарии (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 (theregister.com)

  • 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, вебинары, рассылки

by rntn • 18 августа 2025 г. в 11:58 • 117 points

ОригиналHN

#llm#machine-learning#iot#cloud#aws#cybersecurity#devops#database

Комментарии (53)

  • Все, что вы отправляете в онлайн-сервисы (AI, почта, соцсети), сохраняется навсегда и может быть использовано против вас.
  • Большинству пользователей всё равно: удобство «бесплатных» сервисов перевешивает риски.
  • Есть альтернатива — локальные модели (Ollama, LM Studio, Oobabooga), но они требуют мощного железа и навыков.
  • Даже если вы не пользуетесь сервисом, друзья могут передать ваши данные через чат-ботов.
  • Пока не появится жёсткое регулирование, единственный надёжный способ — не делиться чувствительной информацией и минимизировать использование облачных AI.

The new geography of stolen goods (economist.com)

  • Британия стала главным экспортёром украденного: за 10 лет краж авто выросли на 75 %, телефонов — на 30 %, тракторов и GPS-оборудования — в разы.
  • Маршруты: машины — в Западную Африку, iPhone — в Китай, тракторы — в Россию и Восточную Европу.
  • Схема: воры за 24 ч взламывают авто, меняют VIN, грузят в контейнеры под видом «плюшевых мишек».
  • Причины: насыщенный рынок, слабый контроль на вывоз, раскрываемость краж — 5 %.
  • Цепочка: кража → «чоп-шоп» → логисты → порт → покупатели. Hilux за £40 тыс. продаётся в Африке дороже, чем в Британии.
  • Масштаб: 130 тыс. угнанных машин в 2024 г.; страховка выросла на 45 %.
  • Порты: один полицейский на Феликстоу не успевает проверить 11 тыс. контейнеров в день.

by tlb • 18 августа 2025 г. в 11:29 • 79 points

ОригиналHN

#gps#supply-chain#logistics#cybertruck#vin

Комментарии (56)

  • В Великобритании и Канаде полиция почти не расследует угон автомобилей: даже если владелец показывает GPS-координаты, машины уезжают в контейнерах через порты без проверки.
  • Экспортные грузы почти не контролируются; забронировать контейнер может кто угодно, а задержание одного контейнера стоит полиции £200.
  • Преступники используют GPS-глушилки и фольгу для телефонов; за год в Великобритании угоняют 130 000 машин на £1–4 млрд, раскрывают лишь 2 %.
  • Утечка цепочки поставок видна на примере Кадырова: у него нашли угнанный в Канаде Cybertruck, подаренный министру.
  • Комментаторы считают, что стимулов бороться с угонами нет: страховые компании проще поднять премии, а полиция защищает имущество «аристократии», а не простых граждан.

LLMs and coding agents are a security nightmare (garymarcus.substack.com)

by flail • 18 августа 2025 г. в 11:04 • 136 points

ОригиналHN

#llm#code-review#security#code#devops

Комментарии (65)

  • Поддержали идею RRT: не использовать LLM в критичных местах, ограничивать права и отслеживать вход/выход.
  • Спорят, виноваты ли LLM в росте уязвимостей или это та же человеческая невнимательность, только ускоренная большим объёмом кода.
  • Локальные модели и строгие code-review рассматриваются как частичное решение, но не панацея.
  • Ключевой риск — давление «делай быстрее» приводит к меньшему тестированию и усталости ревьюеров.
  • Сравнение с автопилотами: LLM-генерация кода может стать безопаснее среднего разработчика, но пока не лучше экспертов.

Website is served from nine Neovim buffers on my old ThinkPad (vim.gabornyeki.com)

Кратко: плагин 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 буферов — весь сайт.

Безопасность: да, но мелочи мы игнорируем.

by todsacerdoti • 18 августа 2025 г. в 11:03 • 99 points

ОригиналHN

#neovim#lua#lua-jit#libuv#http#web-server#aiohttp#nginx#benchmarks#linode

Комментарии (17)

  • Пользователи в восторге от статьи: называют её «одной из любимейших» и приводят цитату «они были так заняты тем, могут ли, что не спросили себя, стоит ли».
  • Кто-то отмечает, что сайт резолвится на IP Linode, но не объясняется, зачем нужен промежуточный сервер.
  • Обсуждают безопасность: пример показывает, что «никогда не бывает так, чтобы код точно не запустили по сети».
  • Некоторые шутят, что Neovim теперь можно считать кроссплатформенным рантаймом «ужаса», но признают крутость эксперимента.
  • Предполагают, что высокая скорость может быть из-за хранения файлов в RAM, а не на диске, и что всё равно всё закешируется.

MCP doesn't need tools, it needs code (lucumr.pocoo.org)

CLI-инструменты часто зависят от платформы/версии, плохо документированы и ломаются при не-ASCII вводе. Агенты путаются в управлении состоянием (например, tmux-сессиями) и теряют контекст после мелкой ошибки. Каждый вызов ещё тормозит из-за предварительной проверки безопасности.

Композиция в CLI работает через bash: цепочки tmux send-keys, sleep, base64 и т.д. MCP сегодня так не умеет.

Выход — MCP-сервер с одним «убер-инструментом»: Python-интерпретатор, сохраняющий состояние между вызовами. Пример — pexpect-mcp: виртуальное окружение + pexpect, позволяющее скриптами управлять интерактивными CLI-программами. Вместо 30 отдельных MCP-функций достаточно одной, принимающей код.

by the_mitsuhiko • 18 августа 2025 г. в 09:53 • 172 points

ОригиналHN

#python#pexpect#cli#tmux#bash#api#openapi#websocket#yaml

Комментарии (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 (medicalxpress.com) 🔥 Горячее

Безлазерная альтернатива LASIK: имплантация линзы EVO/ICL

  • Что это: вместо выпаривания роговицы лазером в глаз вводится тонкая факичная линза EVO/ICL, которая работает вместе с собственной хрусталиком пациента.
  • Преимущества:
    – подходит при тонкой роговице и высокой близорукости;
    – сохраняется возможность «отката» (линзу можно извлечь);
    – быстрая реабилитация (чёткое зрение уже на следующий день).
  • Риски: повышенное внутриглазное давление, катаракта, световые ореолы; требуется регулярное наблюдение.
  • Стоимость: 2500–4000 $ за глаз, страховки не покрывают.
  • Кому не подходит: при астигматизме > 6 дптр, глаукоме, возраст < 21 года.

by Gaishan • 18 августа 2025 г. в 09:35 • 279 points

ОригиналHN

#medical#ophthalmology#eye-surgery#lasik#icl#prk#smile#ortho-k

Комментарии (119)

  • Обсуждение сосредоточено на новом методе «молекулярной хирургии» для коррекции зрения без лазера.
  • Участники сравнивают его с LASIK, PRK, SMILE и Ortho-K, отмечая меньшую травматичность и потенциальную обратимость.
  • Поднимаются вопросы о применении при астигматизме, кератоконусе, ночных ореолах и возрастной дальнозоркости.
  • Некоторые делятся личным опытом: кто-то прошёл PRK и жалуется на сухость, кто-то не кандидат из-за тонкой роговицы.
  • Упоминаются альтернативы — ICL, интрастромальные кольца, склеральные линзы.
  • Есть скепсис: «очковая индустрия» может тормозить внедрение, а название метода пугает.

Комментарии (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.com) 🔥 Горячее 💬 Длинная дискуссия

Hyperclay — однофайловые HTML-приложения
Работайте как с глиной: открыли файл, изменили — изменения сохранились. Без сборки, деплоя и фреймворков.

  • Прямое редактирование в браузере: меняете DOM — файл перезаписывает себя через /save.
  • Полная переносимость: скачали HTML — запустили где угодно, офлайн.
  • Версии: каждое сохранение фиксируется, откат в один клик.

Примеры: dev-log, writer, kanban, landing.

Почему это важно

Статические сайты удобны, но изменения исчезают после перезагрузки. Чтобы сделать цифровой объект «физическим» — нужен сервер, БД, API, аккаунты. Hyperclay убирает всё лишнее: UI, логика и данные — в одном самомодифицирующемся HTML-документе.

by pil0u • 18 августа 2025 г. в 06:38 • 575 points

ОригиналHN

#html#nodejs#dom#offline-apps

Комментарии (202)

  • Hyperclay — это NodeJS-сервер + клиентская библиотека, которая сохраняет изменения DOM прямо в исходный .html-файл, обновляя его на лету.
  • Идея вызывает ассоциации с TiddlyWiki, Webstrates и даже HTA-архивами Windows 98, но делает акцент на многопользовательской работе и версионировании.
  • Участники обсуждают проблемы локального file:// (CORS, модули), безопасность, ограничения iOS и то, что без сервера изменения не сохраняются.
  • Некоторые делятся своими однофайловыми решениями: шифровальщик, Asteroids, «твиттер» на git-коммитах и т.д.
  • Сообщество просит открытый код, нормальную документацию и понятную схему версионирования/обновления приложений.

SystemD Service Hardening (roguesecurity.dev)

systemd-харднинг: кратко и по делу

sudo systemd-analyze security показывает «красную» таблицу рисков.
sudo systemd-analyze security имя.service — детально по конкретному юниту.

Колонка Exposure — главный ориентир: чем выше значение, тем больше прав можно отнять.

Как править

  1. sudo systemctl edit имя.service создаст override-файл.
  2. Параметры пишутся в секции [Service] (или [Container] для quadlet).
  3. Сервис не стартует — значит убрал нужное, возвращай.

Часто используемые директивы

Директива Что делает
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.

Это не серебряная пуля; подгоняй под каждый сервис и смотри логи.

by todsacerdoti • 18 августа 2025 г. в 04:57 • 231 points

ОригиналHN

#systemd#security#linux#hardening#service#privileges

Комментарии (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 (accc.gov.au) 🔥 Горячее 💬 Длинная дискуссия

Google признал антиконкурентное поведение в Австралии:

  • компания согласилась, что ограничивала выбор поисковой системы на Android-устройствах;
  • подписала обязательство перед ACCC изменить практику и уведомлять пользователей о доступных альтернативах Google Search;
  • обязательство действует 5 лет и подлежит судебному контролю;
  • ACCC считает признание важным шагом к восстановлению конкуренции.

by Improvement • 18 августа 2025 г. в 02:54 • 266 points

ОригиналHN

#google#android#competition-law#search-engines#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.io)

Codemia
Подготовка к систем-дизайн-интервью через практику:
Начать | Блог | Системный дизайн

Юридика
Условия | Конфиденциальность | Контакт

Соцсети
Twitter | LinkedIn

by signa11 • 18 августа 2025 г. в 01:40 • 78 points

ОригиналHN

#numa#microservices#hpc#aws#gcp#kubernetes#linux

Комментарии (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 (github.com)

Mangle — проект Google на GitHub.
Язык: Go.
Лицензия: Apache-2.0.

Описание
Mangle — это компилятор/интерпретатор логического языка, ориентированного на:

  • анализ и трансформацию графов;
  • декларативные запросы к данным;
  • поддержку Datalog-подобного синтаксиса.

Ключевые особенности

  • Компилирует логические правила в Go-код или исполняет напрямую.
  • Поддерживает рекурсивные запросы и агрегации.
  • Работает с in-memory и persistent-хранилищами.

Установка

go install github.com/google/mangle/cmd/mangle@latest

Быстрый старт

  1. Создай файл example.mgl:
    edge("a", "b").
    edge("b", "c").
    path(X, Y) :- edge(X, Y).
    path(X, Z) :- edge(X, Y), path(Y, Z).
    
  2. Запусти:
    mangle example.mgl --query="path(\"a\", Z)"
    

Документация

by simonpure • 18 августа 2025 г. в 00:55 • 80 points

ОригиналHN

#go#datalog#graph-databases#google#github

Комментарии (14)

  • Участники спорят, связан ли новый язык Google с «Deductive Database» из видео 3b1b: одни считают, что это очередной внутренний эксперимент, другие — просто «люди, которые веселятся под крылом Google».
  • Поднимается вопрос, почему почти все инструменты расширяют «ванильный» Datalog: его ограничения делают расширения неизбежными.
  • В треде упоминаются альтернативные языки запросов — PreQL/Trilogy, Malloy, PRQL, PathQuery — и обсуждается, как они соотносятся с SQL и реляционной алгеброй.

Clojure Async Flow Guide (clojure.github.io)

Быстрый старт

Библиотека 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 мс)

by simonpure • 18 августа 2025 г. в 00:52 • 190 points

ОригиналHN

#clojure#core.async#flow#concurrency#functional-programming#jvm#genstage#elixir

Комментарии (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.