Hacker News Digest

Обновлено: 19 ноября 2025 г. в 23:44

Постов: 4333 • Страница 100/434

Modern Perfect Hashing (blog.sesse.net)

Автор обсуждает реализацию идеального хеширования для строк, где известный набор строк отображается в целые числа с отверганием остальных. Критикуется подход с использованием PEXT (из-за больших таблиц, отсутствия на ARM и медленной работы на старых x86), предлагается альтернатива из шахматного программирования — "магические битборды". Метод заключается в умножении значения на магическое число (например, 0x28400000U) и сдвиге верхних бит для получения уникальных индексов. Для строк длиной 4 символа это позволяет создать компактную таблицу с 10 записями, где проверка memcmp гарантирует отсутствие ложных срабатываний.

Для строк разной длины можно выбирать различные битовые диапазоны (16, 32 или 64 бита) или их комбинации. В удачных случаях, как с 24-символьными CSS-ключами, удается найти магическое число, дающее прямую индексацию без промежуточной таблицы. Авторы предпочитают меньшие типы данных для компактности кода и возможности перебора вместо случайного поиска. Подход эффективен для наборов в тысячи строк с допустимым временем компиляции.

by bariumbitmap • 24 октября 2025 г. в 01:59 • 103 points

ОригиналHN

#hashing#pext#magic-bitboards#css#memcmp#gperf#marisa-trie

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

  • Обсуждение началось с вопроса о том, как создать идеальный хеш-функцию для известного набора ключей, и обсуждение затронуло как теоретические, так и практические аспекты, включая использование gperf и других инструментов.
  • Участники обсудили, что вместо попыток создать идеальную хеш-функцию, иногда более практичным решением может быть отказ от совершенства в пользу более простого решения, особенно если набор ключей не полностью известен заранее.
  • Также было отмечено, что существуют библиотеки, такие как marisa-trie и другие, которые могут быть использованы для эффективного хранения и поиска больших наборов строк, и что они могут быть использованы вместо попыток создать идеальную хеш-функцию.
  • Было также упомянуто, что в некоторых случаях может быть более практично использовать простые, но менее идеальные решения, особенно если это позволяет избежать сложностей, связанных с созданием идеальной хеш-функции.
  • В конце обсуждение вернулось к вопросу о том, как лучше всего подходить к проблеме создания идеальной хеш-функции для известного набора ключей, и было высказано мнение, что вместо попыток создать идеальную хеш-функцию, иногда более разумно может быть просто использовать существующие инструменты и библиотеки.

Counter-Strike's player economy is in a multi-billion dollar freefall (polygon.com) 🔥 Горячее 💬 Длинная дискуссия

Экономика косметики Counter-Strike потеряла $1.75 млрд (25% стоимости) после обновления Valve от 22 октября. Игра, известная своей бесплатной моделью и рынком предметов стоимостью в миллиарды, столкнулась с обвалом из-за изменения правил trade up контрактов. Теперь редкие ножи и перчатки, которые ранее нельзя было получить таким способом, стали доступны для создания из менее ценных предметов второго высшего уровня.

Рынок реагирует паникой: некоторые ножи, как Doppler Ruby Butterfly Knife, упали в цене с $20,000 до $12,000 за короткий период. За последние 16 часов было продано 15 таких ножей, что свидетельствует о массовом сбросе активов. Это изменение делает ранее эксклюзивные предметы доступными для большего числа игроков, радикально снижая их ценность и разрушая экономическую модель, построенную на ограниченном предложении.

by perihelions • 24 октября 2025 г. в 00:24 • 426 points

ОригиналHN

#counter-strike#valve#player-economy#in-game-items#market-regulation#money-laundering

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

  • Valve умышленно изменил редкость предметов, что вызвало обвал цен на скины, и теперь они стоят в 10 раз меньше, чем раньше.
  • Это вызвало споры о том, что Valve могла бы предвидеть последствия и что это может быть частью стратегии по избежанию регулирования.
  • Обсуждение также затронуло вопрос о том, что игроки, которые тратят огромные суммы на скины, могут быть виновны в отмывании денег, и что Valve могла бы получать долю от этих операций.
  • Участники обсуждения также отметили, что цены на скины были искусственно завышены, и что Valve могла бы контролировать рынок, чтобы выгодно для себя.
  • Наконец, обсуждение подняло вопрос о том, что игроки, которые тратят такие большие суммы на скины, могут быть виновны в отмывании денег, и что Valve могла бы получать долю от этих операций.

React Flow, open source libraries for node-based UIs with React or Svelte (github.com)

Библиотеки React Flow и Svelte Flow представляют собой мощные open-source решения для создания интерфейсов на основе узлов. Они готовы к использованию сразу после установки и при этом предлагают практически безграничные возможности кастомизации. React Flow интегрируется с экосистемой React, а Svelte Flow - с фреймворком Svelte, предоставляя разработчикам гибкий выбор технологии для реализации визуальных редакторов, диаграмм и других node-based интерфейсов.

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

by mountainview • 23 октября 2025 г. в 23:33 • 147 points

ОригиналHN

#reactjs#svelte#open-source#node-based-ui#diagrams#github

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

  • React Flow и Svelte Flow — мощные, но гибкие библиотеки для построения node-based UI, активно развиваются и имеют обширную экосистему примеров и документации.
  • Пользователи отмечают простоту интеграции, готовность кастомизировать ноды и рёбра, а также активную поддержку сообщества.
  • Некоторые упоминают отсутствие React Native и Svelte Native поддержки, но при этом отмечают, что можно обернуть в WebView и использовать в мобильных приложениях.
  • Пользователи делятся примерами своих проектов, включая IaC-конструктор, визуализатор GitHub Actions, генератор диаграмм организационной структуры и т.д.
  • Библиотека MIT-лицензирована, но коммерческое использование без финансовой поддержки разработчиков может вызвать публичное осуждение.

Automating Algorithm Discovery: A Case Study in MoE Load Balancing (adrs-ucb.notion.site)

Notion — это универсальное рабочее пространство, объединяющее блокнот, базу данных, задачник и вики в одном приложении. Его главная особенность — гибкая система блоков, которые можно перетаскивать и настраивать под любые нужды, от простых заметок до сложных проектов. Пользователи создают персональные дашборды, управляют задачами, ведут базы знаний и даже строят целые рабочие процессы без кода.

Приложение завоевало популярность благодаря минималистичному дизайну и мощным возможностям кастомизации. По данным компании, у Notion более 20 миллионов пользователей по всему миру, включая команды в таких компаниях, как Airbnb, Disney и Pixar. "Мы хотим создать операционную систему для знаний", — отмечают основатели, подчеркивая амбиции стать платформой для управления информацией любой сложности.

by melissapan • 23 октября 2025 г. в 22:35 • 119 points

ОригиналHN

#moe#load-balancing#algorithm-discovery#llm

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

  • AI-открытый алгоритм балансировки нагрузки в MoE-моделях оказался в 5 раз быстрее, но вызвал споры о том, действительно ли это «открытие» или просто удачная генерация кода.
  • Критика в том, что LLM не «открывает» алгоритмы, а лишь генерирует код, который может быть удачным, и что человеческий экспертизе все еще необходима, чтобы проверить и понять этот код.
  • Обсуждение также подняло вопрос о том, что если LLM может предложить алгоритм, то он должен быть в состоянии объяснить, как он работает, и что это может быть критично для безопасности и надежности системы.
  • Некоторые комментаторы подчеркнули, что вместо того, чтобы полагаться на «открытие» алгоритма, стоит ли это вообще обсуждать, какие именно критерии безопасности и эффективности мы хотим, чтобы будущие системы могли бы быть устойчивы к подобным «открытиям».

Apple loses UK App Store monopoly case, penalty might near $2B (9to5mac.com) 🔥 Горячее 💬 Длинная дискуссия

Apple проиграла дело о монополии в Великобритании, связанное с App Store, где потенциальный штраф может достичь $2 миллиардов. Суд признал, что политика Apple по контролю над распространением приложений и взиманию комиссий создает недобросовестную конкуренцию на рынке. Компания требовала 30% комиссию с всех транзакций в приложениях, не позволяя разработчикам использовать сторонние платежные системы.

Это решение может стать прецедентом для других стран, где также ведутся расследования против App Store. В прошлом году аналогичные иски были поданы в США и ЕС. Для Apple это означает не только финансовые потери, но и необходимость пересмотреть свою бизнес-модель, которая приносила миллиарные доходы годами. Разработчики надеются, что решение приведет к снижению комиссий и большей свободе в установке цен на свои продукты.

by thelastgallon • 23 октября 2025 г. в 22:11 • 307 points

ОригиналHN

#apple#app-store#monopoly#regulation#ios#macos

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

  • Apple вынуждена будет открыть iOS для альтернативных магазинов и платёжных систем, что сделает невозможным дальнейшее взимание 30% комиссии.
  • Судебное разбирательство в Великобритании, в котором Apple обвиняется в злоупотреблении монопольным положением, может привести к необходимости открыть iOS для конкуренции, что является более важным, чем штраф в 1.85 млрд долларов.
  • Обсуждение вокруг того, какой процент комиссии считается «справедливым», не имеет смысла, пока Apple может диктовать условия, потому что это не рыночная цена, а налог на доступ к рынку.
  • Даже если Apple продолжит взымать 30% комиссии, это не будет иметь значения, если бы они позволили устанавливать приложения из других источников, как на macOS.
  • Судебное разбирательство в Великобритании может привести к тому, что Apple будет вынуждена позволить альтернативные магазины приложений, что является более важным, чем штраф в 1.85 млрд долларов.

How memory maps (mmap) deliver faster file access in Go (info.varnish-software.com)

Memory maps (mmap) в Go позволяют отображать файлы непосредственно в адресное пространство процесса, избегая копирования данных через буферы. Этот подход устраняет необходимость в системных вызовах read/write, позволяя процессору обращаться к файловой памяти так же, как к обычной памяти. Техника особенно эффективна для больших файлов, когда требуется частый доступ к разным участкам данных, так как mmap обеспечивает постоянное время доступа к любой части файла.

Тесты показали впечатляющие результаты: mmap обеспечивает до 25-кратное ускорение по сравнению с традиционным чтением файлов. В одном эксперименте обработка 1.2GB JSON-файла через заняла 0.4 секунды с mmap против 10 секунд с использованием стандартного пак ioutil. Однако mmap имеет ограничения: он не подходит для очень больших файлов, которые могут не поместиться в виртуальном адресном пространстве, и требует осторожного управления при работе с несколькими процессами. Для оптимальной производительности mmap лучше всего работает с файлами, которые считываются целиком или accessed случайным образом, а не последовательно.

by ingve • 23 октября 2025 г. в 21:56 • 126 points

ОригиналHN

#mmap#go#file-access#json#performance-optimization

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

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

/dev/null is an ACID compliant database (jyu.dev) 🔥 Горячее 💬 Длинная дискуссия

/dev/null в Unix-системах с юмором представлена как база данных, полностью соответствующая принципам ACID. Атомарность обеспечивается тем, что любые записанные данные либо полностью исчезают, либо не записываются вовсе. Согласованность поддерживается инвариантом пустоты — файл всегда остаётся в одинаковом состоянии, независимо от операций. Изолированность проявляется в том, что множественные процессы могут одновременно писать в /dev/null без конфликтов, так как данные никогда не сохраняются. Долговечность гарантирует, что после сбоя система сохраняет своё главное свойство — полное отсутствие данных.

Эта шуточная статья подчёркивает, что /dev/null идеально соответствует всем требованиям ACID-совместимой базы данных, с единственным недостатком — нулевым объёмом хранения. Автор иронизирует, что для расширения пространства нужно обратиться в "корпоративные продажи", которые на самом деле являются им самим. Этот пример демонстрирует, как технические концепции можно рассматривать с неожиданной и забавной стороны.

by swills • 23 октября 2025 г. в 21:28 • 548 points

ОригиналHN

#acid#devnull#unix#databases

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

  • Обсуждение вокруг /dev/null как "база данных" выявило, что это скорее метафора, чем реальная технология, и подчеркнуло важность различать хранилище и СУБД.
  • Участники обсуждали, что /dev/null не является базой данных, но при этом подчеркнули, что он обеспечивает ACID-свойства и масштабируемость.
  • Были подняты вопросы о масштабируемости, отказоустойчивости и соответствии с ACID, а также о том, что такое "база данных" и как она отличается от просто носителя.
  • Участники также обсудили, что /dev/null действительно обеспечивает высокую доступность и согласованность, но не является базой данных в строгом смысле.

When is it better to think without words? (henrikkarlsson.xyz)

Исследования математика Жака Адамара 1940-х годов показали, что выдающиеся математики решали сложные задачи не через слова, образы или уравнения, а через неформальные ощущения: вибрации в руках, бессмысленные звуки или размытые образы. Этот способ мышления отличался от обычного дняdreaming и представлял собой напряженное, сфокусированное состояние без вербализации.

Подсознательная обработка проблем после интенсивной работы над ними приводит к "озарению" - внезапному появлению решения после периода бессознательного инкубации. Однако Адамар описывал иной процесс: математики сознательно, но без слов удерживали проблему в центре внимания, используя метафорические образы (как "лента переменной толщины" для бесконечных рядов). Это позволяет направлять ментальные ресурсы на решение важных задач, превращая подсознание в бесплатного ассистента.

by Curiositry • 23 октября 2025 г. в 21:26 • 238 points

ОригиналHN

#cognitive-science#neurodiversity#problem-solving#mathematics#consciousness

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

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

FocusTube: A Chrome extension that hides YouTube Shorts (github.com) 💬 Длинная дискуссия

Разработчик создал расширение FocusTube с целью борьбы с прокрастинацией на YouTube Shorts. Проект основан на идее, что человеческая жизнь слишком ценна, чтобы тратить её на бесконечный просмотр коротких видео. Расширение, вероятно, блокирует или ограничивает доступ к разделу Shorts на YouTube, помогая пользователям вернуть контроль над своим временем и вниманием.

Название проекта "FocusTube" прямо указывает на его цель - вернуть фокус при использовании YouTube. Разработчик подчеркивает важность осознанного использования времени, предлагая простой, но эффективный способ борьбы с одной из самых распространенных форм цифровой зависимости в современном мире.

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

ОригиналHN

#chrome-extensions#youtube#web-development#user-experience#github

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

  • Обсуждение показало, что Shorts вызывают у пользователей чувство вины, тревоги и страха за будущее поколений, а также вызывает желание блокировать их всеми доступными средствами.
  • Участники обменивались ссылками на расширения и фильтры, которые позволяют скрывать Shorts, и обсуждали, какие именно элементы интерфейса можно скрыть или отключить.
  • Некоторые участники поделились личными историями о том, как Shorts влияют на их жизнь и продуктивность, и как они пытаются избежать их влияния.
  • Обсуждались различные способы блокировки Shorts, включая использование расширений браузера, изменение настроек YouTube и использование альтернативных клиентов.
  • Участники также обсудили, какие именно аспекты Shorts вызывают наибольшее беспокойство, включая их влияние на внимание, фокус и психическое здоровье, и как они могут быть уменьшены или устранены.

Date bug in Rust-based coreutils affects Ubuntu 25.10 automatic updates (lwn.net) 💬 Длинная дискуссия

В Ubuntu 25.10 обнаружен баг в Rust-версии команды date из пакета uutils, нарушающий автоматические обновления системы. Проблема затронула облачные развертывания, контейнеры, десктоп и серверные версии. Системы с rust-coreutils версии 0.2.2-0ubuntu2 или ранее подвержены уязвимости, исправленной в версии 0.2.2-0ubuntu2.1. Интересно, что баг не влияет на ручные обновления через apt.

Ubuntu реализует проект "окисления" дистрибутива, переходя на uutils и sudo-rs для версии 25.10, чтобы оценить пригодность Rust-утилит для долгосрочного выпуска в апреле. Этот переход вызвал дискуссию: одни считают, что замена проверенных десятилетиями C-утилит неизбежно приведет к краткосрочным проблемам, другие поддерживают инициативу как необходимую. Также поднимаются вопросы лицензирования MIT вместо GPL и управления проектом uutils.

by blueflow • 23 октября 2025 г. в 20:49 • 238 points

ОригиналHN

#rust#ubuntu#coreutils#uutils#apt#gpl#mit#containers

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

  • Обсуждение вокруг замены GNU coreutils на Rust-версию свелось к тому, что проблема лицензии (GPLv3 vs MIT), а не безопасность, и что в конце концов, как и следовало ожидать, никакой "серьёзной" уязвимости там не было.
  • Участники обсуждения отмечают, что даже если бы это была уязвимость, то это была бы не более чем типичная для мейнтейнеров Ubuntu ошибка пакетов, которые не были бы исправлены в нужное время.
  • Сообщество высказывает опасения по поводу переписывания критически важных утилит, которые были проверены временем, на новом и потенциально менее стабильном языке программирования.
  • Некоторые комментаторы подчеркивают, что обсуждение не касается безопасности, а вопрос лицензии и что это не более чем естественное течение времени и что в конце концов, как и следовало ожидать, никакой "серьёзной" уязвимости там не было.