Hacker News Digest

Обновлено: 20 ноября 2025 г. в 04:50

Постов: 4339 • Страница 104/434

The game theory of how algorithms can drive up prices (quantamagazine.org)

by isaacfrond • 23 октября 2025 г. в 11:38 • 150 points

ОригиналHN

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

Imagine a town with two widget merchants. Customers prefer cheaper widgets, so the merchants must compete to set the lowest price.I always found this statement to be rather wishful. Individual lowering of prices makes sense if and only if your competitor is capable of saturatin

Harder, Better, Faster, Stronger Version of Uber H3 in Rust (grim7reaper.github.io)

Проект h3o представляет собой полную переработку библиотеки Uber H3 на языке Rust, а не просто обертку. Основные цели - упрощение интеграции в Rust проекты (особенно для WASM), создание более безопасного API с использованием строгой типизации, достижение сопоставимой или превосходящей производительности и 100% покрытие API H3 версии 4.0. Для обеспечения качества использовалось дифференциальное тестирование против эталонной реализации, включая 756 тестов, 166 интеграционных тестов, 42 юнит-теста и 15 fuzz-целей.

Бенчмарки, состоящие из 911 тестов, показывают, что в 862 случаях h3o превосходит оригинальный H3 по производительности. В 463 тестах h3o работает в 2-5 раз быстрее, в 117 тестах - в 5-10 раз быстрее, и в 24 тестах - более чем в 10 раз быстрее. Однако в 44 тестах H3 все еще быстрее, особенно при работе с пятиугольными ячейками и преобразованиями координат. Основные оптимизации h3o включают использование предвычисленных таблиц вместо формул на лету и применение битовых операций вместо циклов для достижения постоянного времени выполнения.

by ashergill • 23 октября 2025 г. в 11:23 • 94 points

ОригиналHN

#rust#h3#geospatial#performance#wasm#testing#uber#s2

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

  • H3/Hexagonal tiling vs. S2/Square tiling: обсуждение сфокусировалось на том, что H3 обеспечивает равные расстояния между соседними ячейками, что важно для анализа данных и моделирования потоков, в то время как S2 не обеспечивает равные расстояния между соседними ячейками. Однако, S2 имеет преимущество в том, что он может быть более эффективен для запросов, которые включают родительские и дочерние ячейки, тогда как H3 может быть более удобен для визуализации и анализа данных, особенно если важно сохранить равные расстояния между ячейками.

  • Использование H3 в различных контекстах: обсуждение включало примеры использования H3 в различных контекстах, включая Uber, FCC, ClickHouse, Overture Maps и другие. Это показывает, что H3 используется в различных контекстах, включая телематика, анализ данных, визуализация и хранение данных.

  • Сравнение H3 с другими системами: обсуждение также коснулось сравнения H3 с другими системами, включая S2 и другие геометрические системы. Это показывает, что H3 имеет свои уникальные преимущества и недостатки, которые важно учитывать при выборе системы для конкретного применения.

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

Corrosion (fly.io)

Fly.io столкнулся с крупнейшим сбоей в истории 1 сентября 2024 года из-за ошибки в Rust-коде их системы распределенного состояния Corrosion. Ошибка в if let выражении над RWLock привела к мгновенному и "заразному" deadlock, который парализовал все прокси-серверы платформы. Авторы подчеркивают, что распределенные системы — это "усилители взрывов": они распространяют данные по сети, а вместе с ними — и ошибки в системах, зависящих от этих данных.

Эта катастрофа стала следствием архитектурных решений Fly.io. В отличие от Kubernetes с его централизованной базой данных, Fly.io использует децентрализованную модель, где серверы являются источником правды о своих рабочих нагрузках. Чтобы масштабироваться по всему миру, они перешли от HashiCorp Consul и SQLite-кэшей к собственной системе Corrosion. Авторы предупреждают: если распределенная система еще не испортила вам выходные или не заставила не спать всю ночь, вы еще не до конца ее понимаете.

by cgb_ • 23 октября 2025 г. в 11:21 • 206 points

ОригиналHN

#rust#corrosion#distributed-systems#deadlock#consul#sqlite#postgresql#gossip-protocol#swim

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

  • Баг с if let и RWLock в Rust приводил к мгновенному глобальному дедлоку, что вынудило перейти от единого кластера к региональной двухуровневой схеме данных.
  • Использование cr-sqlite (CRDT SQLite) для согласованности вызвало проблемы с nullable-колонками и масштабируемостью, что привело к критике выбора SQLite вместо Postgres.
  • Gossip-протокол (SWIM) показал ограниченную масштабируемость (~2K-3K узлов), что потребовало иерархической структуры и разделения на региональные кластеры.
  • Дизайн блога и отсутствие дат в статьях вызвали нарекания, но технические решения (регионализация, отказ от мгновенного глобального состояния) признаны необходимыми.

SpaceX disables 2,500 Starlink terminals allegedly used by Asian scam centers (arstechnica.com) 💬 Длинная дискуссия

by jnord • 23 октября 2025 г. в 11:15 • 196 points

ОригиналHN

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

The title is underselling the nuance—there's the entire Myanmar civil war hiding behind the word "allegedly". The group in power claims a group trying to overthrow them is operating scam centers (they deny it); this SpaceX intervention cuts off communications on a large scale, pr

PyTorch Monarch (pytorch.org) 🔥 Горячее

Команда PyTorch представила Monarch - новую распределенную программную среду, призванную упростить сложные ML-рабочие процессы. Современные рабочие процессы стали гетерогенными, асинхронными и должны учитывать отказы оборудования, что затрудняет их реализацию в традиционной HPC-модели с несколькими контроллерами. Monarch предлагает подход с единственным контроллером, где один скрипт управляет всеми распределенными ресурсами, делая их почти локальными.

Monarch позволяет программировать распределенные системы так, как будто это единая машина, скрывая сложность распределенных вычислений. Ключевые особенности включают программирование кластеров как массивов с помощью простых API, прогрессивную обработку сбоев по аналогии с исключениями в Python, разделение управляющего и информационного потоков для оптимизации, а также интеграцию с PyTorch для работы с распределенными тензорами, которые ощущаются как локальные.

by jarbus • 23 октября 2025 г. в 10:15 • 358 points

ОригиналHN

#pytorch

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

  • Monarch предоставляет инфраструктуру для распределённых вычислений, в то время как Tinker — это сервис для fine-tuning, построенный поверх неё.
  • Monarch использует Rust в бэкенде и Python во фронтенде, что позволяет ему быть высокопроизводительным и масштабируемым.
  • Monarch не поддерживает тензорные движки, что ограничивает его применимость для ML.
  • Monarch не является заменой для PyTorch, а скорее дополнительным инструментом для распределённого обучения.
  • Monarch не поддерживает тензорные движки, что ограничивает его применимость для ML.

Rouille – Rust Programming, in French (github.com)

Предоставленный текст содержит только навигационное меню и элементы интерфейса GitHub, но не содержит описания самого проекта rouille. Для создания точного пересказа необходима информация о содержимом репозитория: его назначении, функциональности, особенностях и т.д. Без этих данных невозможно составить содержательный пересказ.

by mihau • 23 октября 2025 г. в 09:43 • 186 points

ОригиналHN

#github#rust

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

  • Обсуждение вращается вокруг того, как носители разных языков воспринимают чужеродные ключевые слова и идентификаторы в коде: французы чувствуют диссонанс при чтении кода на родном языке, в то время как носители других языков могли бы чувствовать то же самое при чтении английского кода.
  • Участники обмениваются лингвистическими анекдотами: французский Паскаль, немецкий Руст, русский Питон и даже латинский Си.
  • Обсуждается, что влияние может быть взаимным: англоязычные разработчики могли бы чувствовать себя так же странно при чтении кода на французском, немецком или русском.
  • Поднимается вопрос о том, как язык влияет на то, как мы думаем о коде, и о том, что язык программирования может быть более чем просто синтаксис.

C64 Blood Money (lemmings.info)

by mariuz • 23 октября 2025 г. в 08:41 • 114 points

ОригиналHN

#c64#vice#linux#game-development#retro-gaming#lemmings

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

  • Инструменты для разработки под C64 в Linux и запуска в Vice обсуждаются как нечто, что требует дополнительных усилий, поскольку большинство руководств ориентированы на Windows.
  • Участники вспоминают, что в эпоху 8-битных компьютеров разработчики игр использовали хост-компьютеры для сборки и тестирования, а не целевую систему.
  • Пользователи делятся впечатлениями о таких играх, как Blood Money и Xenon 2, которые формировали их вкус к шутерам с магазинами и апгрейдами.
  • Ностальгия по Lemmings и ожидание ремейка или духовного наследника.

The Programming Languages Zoo (plzoo.andrej.com)

by alabhyajindal • 23 октября 2025 г. в 06:01 • 99 points

ОригиналHN

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

Made me think about this book https://webperso.info.ucl.ac.be/~pvr/book.html where the author creates a mini language and extends it in many different paradigms. Brief discussions 4 years ago (https://news.ycombinator.com/item?id=27024804) and 7 years ago (https://news.ycombinato

Radios, how do they work? (2024) (lcamtuf.substack.com)

by aqrashik • 23 октября 2025 г. в 05:56 • 196 points

ОригиналHN

#radio#electronics#am#crystal-radio#modulation#hf#radio-amateur

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

  • Обсуждение началось с того, что кто-то поделился опытом изучения радио-любителей и отметил, что это хобби сочетает практическую электронику и устойчивую коммуникацию без инфраструктуры.
  • Участники вспомнили, как в детстве собирали кристалл-радио, и как этот опыт стал для них «входной дверью» в более серьёзное увлечение.
  • Обсуждение затронуло вопросы, как получить лицензию, и дали совет сразу сдать оба экзамена, чтобы открыть HF-диапазон.
  • Были поделились ссылкой на видео, демонстрирующее модуляцию AM, и обсуждались книга Пола Найна «The Science of Radio».
  • В конце обсуждение свелось к тому, что кристалл-радио может стать «транзит-гейтвей» в более сложные аспекты хобби, и что важно помнить, что даже простейший приёмник может потребовать усилителя и фильтра, чтобы сделать его практичным.

VST3 audio plugin format is now MIT (forums.steinberg.net) 🔥 Горячее

Steinberg выпустил VST SDK 3.8.0 с важными изменениями, включая переход на открытый исходный код под лицензией MIT. Основные обновления включают поддержку MIDI 2.0 с новыми интерфейсами IMidiLearn2 и IMidiMapping2, которые заменяют предыдущие версии, а также добавление отсутствующего перечисления ControllerNumbers для MIDI 1.0. Появилась предварительная поддержка Wayland в Linux с интерфейсами IWaylandHost и IWaylandFrame.

VSTGUI обновлен до версии 4.15.0 с новым API Task Concurrency для выполнения задач в фоновых потоках, поддержкой пользовательских макетов вида, включая GridLayouter, аналогичный CSS Grid, и скриптингом для UIDescription. Также добавлен новый текстовый редактор и предварительная поддержка Wayland. В SDK исправлены ошибки в cmake, helper classes и VST3PluginTestHost, а документация адаптирована под новую модель лицензирования.

by rock_artist • 23 октября 2025 г. в 05:48 • 611 points

ОригиналHN

#vst#midi#linux#gpl#cmake#wayland#steiberg

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

  • Steinberg/Yamaha открыли исходники VST3 SDK под GPL-3, что стало возможным благодаря давлению со стороны CLAP и сообщества.
  • Это снимает юридические барьеры для распространения VST3-плагинов в свободных программах и делает возможным включение SDK в дистрибутивы Linux.
  • Одновременно, Steinberg открыла исходники примеров и утилит, что упрощает разработку плагинов и хостов.
  • Несмотря на то, что VST3 всё ещё более сложен в реализации, чем CLAP, сообщество продолжит использовать VST3 из-за его широкой поддержки.
  • Сообщество приветствует этот шаг как победу свободного программного обеспечения в аудио-индустрии.