An overengineered solution to `sort | uniq -c` with 25x throughput (hist)
Проект hist-rs представляет собой высокопроизводительный утилиту для подсчета уникальных строк, написанную на Rust. Его ключевое преимущество — скорость работы, которая в 25 раз превышает производительность классической команды sort | uniq -c в Unix-системах. Это делает его идеальным инструментом для анализа больших лог-файлов и наборов данных, где важна скорость обработки.
Проект реализует эффективный алгоритм подсчета, минимизируя потребление памяти и процессорного времени. Он особенно полезен для разработчиков и системных администраторов, работающих с большими объемами текстовых данных. Код проекта открыт и доступен на GitHub, что позволяет сообществу вносить вклад в его развитие и адаптацию под различные задачи обработки текста.
Комментарии (62)
- Обсуждение началось с вопроса о производительности различных инструментов для подсчёта уникальных строк в файле, где был упомянут
clickhouse-localкак самый быстрый способ. - Участники обсуждали различные инструменты, включая
sort,uniq,awk,uniq -c,sort | uniq -c | sort -n,tsvиcsv, а также их производительность и использование памяти. - Были упомянуты такие инструменты как
tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort,tsort, `tsor
Geoutil.com – Measure distances, areas, and convert geo data in the browser
GeoUtil.com — это универсальный онлайн-инструмент для работы с географическими данными, картами и координатами. Платформа предлагает профессиональные инструменты для ГИС-специалистов, разработчиков и энтузиастов географии, работающие полностью в браузере без загрузки данных на серверы. Все сервисы бесплатны, не требуют регистрации и обеспечивают мгновенную обработку информации локально. Поддерживаются открытые стандарты: GeoJSON, TopoJSON, Shapefile, KML, WKT и CSV.
Сайт включает измерительные инструменты для расчёта расстояний (включая большие круговые маршруты), площадей сферических регионов, азимута между точками и статистики GeoJSON. Также доступны конвертеры между форматами (например, TopoJSON сокращает файлы на 80% и более), утилиты для сжатия, объединения и разделения геоданных. Интерфейс поддерживает множество языков, включая русский, и обеспечивает визуализацию расстояний на интерактивной 3D-глобусе с учётом кривизны Земли.
Комментарии (16)
- GeoUtil.com предлагает бесплатный браузерный набор инструментов для работы с геоданными без регистрации и с клиентской обработкой.
- Пользователи спрашивают о будущих планах, возможном опенсорсинге и создании библиотеки.
- Создатель отмечает, что используются open-source библиотеки, такие как turf.js, и что GeoUtil.com уже предоставляет инструменты для разработчиков.
- Обсуждение затрагивает вопросы лицензий, использования кода и вклада в open-source сообщество.
Show HN: Duck-UI – Browser-Based SQL IDE for DuckDB
Duck UI представляет собой обновленный интерфейс поисковой системы DuckDuckGo, сфокусированный на минимализме и конфиденциальности. Новый дизайн упрощает навигацию с более крупными шрифтами, увеличенными интерактивными элементами и улучшенной цветовой схемой, что повышает читаемость и удобство использования. Интерфейс адаптируется под разные устройства, сохраняя при этом свою основную философию — не отслеживать пользователей и не собирать персональные данные.
Ключевым преимуществом Duck UI является его скорость и эффективность. Как отмечают разработчики, новый интерфейс загружается на 30% быстрее предыдущей версии, при этом потребляя на 20% меньше данных. Это особенно важно для пользователей с ограниченным интернет-соединением. DuckDuckGo также подчеркивает, что их интерфейс не использует персонализированные рекомендации или рекламу, что делает его уникальным на фоне других поисковых систем.
Комментарии (57)
- DuckDB продолжает набирать обороты: встроенный UI, WASM-версия и расширения вроде DuckLake делают его ещё более удобным для разработки и использования.
- Пользователи отмечают, что DuckDB легко справляется с большими объемами данных, включая работу с Parquet и CSV, и что он хорошо взаимодействует с различными источниками данных.
- Некоторые участники обсуждения выразили обеспокоенность по поводу того, что UI DuckDB не является open-source, и что это может ограничивать вносимые улучшения.
- Обсуждались также такие темы, как будущее поддержки визуализации результатов запросов и интеграция с другими инструментами и библиотеками.
Show HN: Scriber Pro – Offline AI transcription for macOS
Scriber Pro — это приложение для Mac, которое выполняет транскрибацию аудио и видеофайлов прямо на устройстве, без интернета. Оно работает на порядок быстрее облачных сервисов: например, видео длительностью 4,5 часа обрабатывается всего за 3,5 минуты.
Основные возможности: поддержка любых форматов аудио и видео (MP3, MP4, WAV и др.), высокая точность даже в длинных файлах, полная офлайн-работа и сохранение конфиденциальности данных.
Приложение также генерирует субтитры (SRT, VRT), текстовые документы (DOCX, PDF) и структурированные данные (JSON, CSV) из одной и той же расшифровки.
Scriber Pro можно скачать в Mac App Store, и пока что все промокоды на Hacker News уже разобраны.
Комментарии (98)
- Privacy-first, browser-only transcription tool launched; no audio or text leaves the device.
- MacWhisper vs. new tool: long-form (>1 h) stability, speaker diarization, and editing UI are the open questions.
- Pricing: one-time $3.99 vs. subscription; model is downloaded on first run, not bundled with the app.
- macOS 12+ requirement and lack of Windows/Linux builds are the main adoption blockers.
- No public API or CLI yet; community is asking for Python/JS bindings and programmatic access.
OpenZL: An open source format-aware compression framework 🔥 Горячее
OpenZL — это новый фреймворк для сжатия структурированных данных с открытым исходным кодом, разработанный Meta. Он обеспечивает сжатие без потерь, достигая производительности специализированных компрессоров, но при этом использует единый универсальный декомпрессор. Ключевая идея в том, что данные имеют предсказуемую структуру — колоночную, перечисления, повторяющиеся поля — и OpenZL явно использует это знание, применяя конфигурируемую последовательность преобразований для выявления скрытых закономерностей.
Фреймворк устраняет компромисс между эффективностью формато-специфичных решений и простотой поддержки общего инструмента. В отличие от универсальных методов, которые тратят ресурсы на угадывание структуры, OpenZL заранее знает тип данных и фокусируется только на релевантных трансформациях. Это позволяет экономить вычислительные циклы и улучшать соотношение скорости к степени сжатия. Практический вывод: один бинарный инструмент может заменить множество кастомных компрессоров без потери производительности.
Комментарии (84)
- OpenZL использует SDDL для описания структуры данных, что позволяет применять специализированные методы сжатия, значительно улучшая компрессию по сравнению с общими алгоритмами (zstd, xz).
- Инструмент эффективен для структурированных и колоночных форматов (Parquet, CSV), но требует описания формата данных через SDDL, C++ или Python код.
- Поддерживает сжатие без потерь, гарантирует точное восстановление данных, планирует добавление потоковой обработки и работы с чанками.
- Вызывает интерес для сжатия геномных данных, JSON (после преобразования), логов и других структурных форматов, но не оптимален для случайных текстовых файлов.
- Реализация включает открытый код (BSD-3-Clause), документацию и white paper; активно развивается, включая будущую поддержку языковых привязок (Python, .NET).
Which table format do LLMs understand best?
Эксперимент показал, что формат данных существенно влияет на точность понимания таблиц LLM. Лучший результат показал Markdown-KV (key-value пары в markdown) с точностью 60,7%, но он потребовал в 2,7 раза больше токенов, чем самый экономный CSV. XML и INI также показали высокую точность (56% и 55,7%), тогда как CSV и JSONL оказались наихудшими — около 44%. Это указывает на возможность улучшения RAG-пайплайнов простой сменой формата данных, хотя эффективность часто требует компромисса с количеством токенов.
Комментарии (83)
- Результаты тестирования GPT-4.1-nano показали, что точность извлечения данных из таблиц варьируется от 40% до 60% в зависимости от формата, при этом Markdown-KV показал наилучший результат.
- Многие участники раскритиковали методологию исследования, указав на использование только одной, слабой модели (GPT-4.1-nano) и недостаточный размер данных для оценки влияния контекстного окна.
- Было высказано сомнение в практической целесообразности использования LLM для обработки табличных данных, учитывая доступность более точных и эффективных традиционных инструментов (например, Python-скриптов, SQL).
- В качестве альтернативы предложены агентные подходы, где LLM генерирует код (например, SQL-запросы или функции) для последующего выполнения, что показало высокую эффективность в реальных задачах.
- Обсуждались потенциально более эффективные форматы данных (XML с короткими тегами, TOML, KSON) и необходимость тестирования на более мощных моделях (GPT-5, Claude, Gemini) для получения репрезентативных результатов.
Flipper Zero Geiger Counter
Flipper Zero Geiger Counter
Примечание: все модули протестированы на сторонних прошивках. Рекомендуется использовать:
Совместимые приложения
Счётчик Гейгера
Приложение отображает график с показаниями в импульсах в секунду (CPS) и в минуту (CPM). Есть функции записи, масштабирования и смены единиц измерения.
CPS отображается в левом углу, CPM — справа. Новые значения CPS добавляются каждую секунду.
Для тестирования без трубки Гейгера подключите GPIO A4 к A7 — он генерирует сигнал с меняющейся частотой.
Управление:
- OK (долгое нажатие): очистить график
- Влево/вправо: выбор единиц измерения (CPM, μSv/h, mSv/y, Rad/h, mRad/h, uRad/h)
- Вверх (долгое нажатие): включить/выключить запись (индикатор красный)
- Вверх/вниз: масштабирование
- Вниз (долгое нажатие): показать версию приложения
- Назад (долгое нажатие): выход
Примеры использования:
- Фоновая радиация (обнаруживаются продукты распада радона)
- Измерение образцов урановой руды
- Проверка стрелок часов с радиевой краской
- Керамика с урановым покрытием
- Америций-241 из детектора дыма
Запись сохраняется в CSV-файлы на SD-карте. Трубка J305 чувствительна только к бета- и гамма-излучению.
Генератор случайных чисел
Приложение создаёт истинно случайные числа на основе показаний счётчика Гейгера. Используются два метода хеширования:
- CRC32 (8 импульсов) — для низкой активности
- MD5 (32 импульса) — для высокой активности
Числа генерируются на основе временных меток при обнаружении излучения. Даже без радиоактивных источников можно использовать естественный радиационный фон от радона в воздухе.
Комментарии (77)
- Обсуждаются возможности и ограничения самодельных и бюджетных счетчиков Гейгера: низкая чувствительность, быстрое насыщение при высоких уровнях излучения, отсутствие калибровки и невозможность спектрометрии (идентификации изотопов).
- Отмечается, что для серьезных задач (радон, аварийные ситуации) требуются профессиональные приборы (Radiacode, Better Geiger, Radeye), способные измерять высокие уровни излучения и предоставлять энергетически корректные данные о мощности дозы.
- Поднимаются вопросы безопасности: открытые высоковольтные контакты на плате, хотя риск оценивается как низкий из-за малой силы тока от батарейного питания.
- Упоминаются практические сложности: необходимость сглаживания показаний, калибровки и использования защитного корпуса для исключения ложных срабатываний и загрязнения.
- Обсуждаются альтернативы: готовые недорогие китайские наборы, модули для Arduino/ESP32 с сетевым интерфейсом, а также использование камеры смартфона в качестве детектора.
Murex – An intuitive and content aware shell for a modern command line
Murex.Rocks
Интуитивная и контекстно-ориентированная оболочка для современной командной строки.
Современная оболочка для всех
Murex предлагает множество уникальных возможностей:
Контекстная осведомленность
Нативная поддержка форматов данных: JSON, YAML, CSV и других. Типы данных могут быть явно приведены или выведены автоматически.
Выражения
Умная обработка переменных и выражений для предотвращения ошибок. Больше не нужно беспокоиться о специальных символах в именах файлов.
Интерактивность
Интуитивная интерактивная оболочка с подсказками из man-страниц и интеграцией с ИИ.
Расширяемость
Встроенный менеджер пакетов для простого обмена конфигурациями и переноса окружения между машинами.
Начало работы
- Тур по языку для старта
- Rosetta Stone как шпаргалка с сравнением Bash
- Интерактивная оболочка для использования в командной строке
Простая установка
Установите murex через ваш пакетный менеджер:
macOS:
brew install murex
# или
port install murex
Arch Linux:
wget -O PKGBUILD 'https://aur.archlinux.org/cgit/aur.git/plain/PKGBUILD?h=murex'
makepkg --syncdeps --install
FreeBSD:
pkg install murex
Другие варианты в документе установки.
Лицензия GPLv2, Copyright © 2017-present Laurence Morgan
Комментарии (46)
- Пользователи столкнулись с техническими проблемами при установке и запуске Murex, включая ошибки с aspell, HTTPS-протоколом и системными вызовами.
- Обсуждаются исторические и культурные отсылки в названии оболочки (Murex — моллюск, источник пурпурного красителя, значимый для финикийцев и иудеев).
- Поднимается вопрос о целесообразности изучения нового синтаксиса, несовместимого с Bash, и необходимости убедительных преимуществ для перехода.
- Murex сравнивается с альтернативными оболочками, в частности с Nushell и PowerShell, отмечается сходство в подходе к работе с структурированными данными.
- Критикуется маркетинг и описание проекта за отсутствие конкретных примеров и явных преимуществ перед существующими решениями.
- Отмечается, что для широкого применения скрипты должны быть совместимы с Bash, что ставит под вопрос нишевый потенциал Murex.
- Некоторые пользователи выражают заинтересованность в тестировании Murex при условии, что он будет стабильным и быстрым.
Bookmarks.txt is a concept of keeping URLs in plain text files
bookmarks.txt — идея хранить закладки в обычных текстовых файлах.
Проект на GitHub: soulim/bookmarks.txt.
Комментарии (128)
- Участники делятся на «быстрые закладки» (часто посещаемые сайты) и «долгосрочное хранение» (контент, который может исчезнуть).
- Популярны минималистичные форматы: plain-text, Markdown, YAML, .url-файлы, CSV, либо просто e-mail/рассылки.
- Многие жалуются на link rot и предпочитают сохранять снапшоты страниц (Wallabag, EagleFiler, PDF, Internet Archive).
- Некоторые вообще отказались от закладок, заменив их табами, поиском в истории или собственными скриптами/расширениями.
- Востребованы фичи: полнотекстовый поиск, автотеги, проверка живости ссылок, офлайн-доступ и кросс-девайс синхронизация.
Show HN: Base, an SQLite database editor for macOS 🔥 Горячее 💬 Длинная дискуссия
Base — компактный и мощный редактор SQLite для macOS.
Возможности
-
Инспектор схем
Быстро просматривайте структуру таблиц, типы столбцов и связи без SQL. -
Визуальный редактор таблиц
Создавайте и изменяйте таблицы мышью, безCREATE/ALTER. -
Браузер данных
Просматривайте, фильтруйте и правьте записи прямо в таблице. -
SQL-редактор
Пишите запросы с подсветкой синтаксиса, автодополнением и сохранением сниппетов. -
Импорт/Экспорт
Загружайте CSV и SQL-дампы; выгружайте в CSV, SQL, JSON и Excel.
Системные требования
macOS 15 Sequoia и выше.
Бесплатная версия ограничена; полная — единоразовая покупка.
Комментарии (166)
- Пользователи удивлены, что Base существует уже 15 лет, но плохо заметен в поиске.
- Хвалят «ремесленный» подход: маленькая команда, узкая задача, высокое качество.
- Часто сравнивают с TablePlus, Postico и sqlitebrowser, отмечая превосходство в «родном» macOS-UX.
- Просят добавить DuckDB, UUID, автозагрузку расширений, FK по умолчанию и диаграммы схемы.
- Покупатели благодарны за возможность покупки вне Mac App Store и за льготную цену.