Show HN: Bottlefire – Build single-executable microVMs from Docker images
Bottlefire — превращает Docker-образы в единый исполняемый файл с микро-VM на Firecracker.
Запуск без root и настроек, где есть KVM.
curl -fL https://bottlefire.dev/run/
Собирается утилитой bake, внутри: сеть, порты, shared-папки.
Цены
Публичные образы — бесплатно.
Pro: 5 $/мес, 20 ГБ «активных» образов, любые регистри.
curl -fL -H "Authorization: Bearer …" -o app \
https://images.bottlefire.dev/ghcr.io/org/app:1.0
Нужен больше или ECR/GCP — пишите.
Спонсорство от 50 $/мес — публикуй свои образы для всех.
Комментарии (21)
- Участник спросил, можно ли «заморозить» microVM в bottlefire и возобновить позже — ответ: Firecracker умеет снимки, но в текущем формате пока не реализовано.
- Вопрос о запуске microVM в обычном облаке:部分 провайдеры (GCP, DigitalOcean) уже позволяют запускать Firecracker.
- Сеть у bake устроена через SOCKS5-прокси поверх tun2socks, используя сетёвой стек хоста.
- Проект по сути обёртка bake: с KVM можно запустить любой Docker-контейнер без установки Docker.
- Участники сравнили с docker2exe/dockerc, обсудили GUI-оболочку, 9p для rootfs и возможность адаптации под Apple Hypervisor.framework.
Belling the Cat
Басня «Повесить колокол кошке»
Крысы хотели повесить колокол кошке, чтобы слышать её приближение. План хорош, но никто не рискнул выполнить. Идиома: «лёгко советовать, трудно исполнять».
Комментарии (61)
- Участники обсуждают басню «Колокольчик на кошку» как метафору коллективной бездействия: все хотят результата, но никто не берётся за опасное исполнение.
- Некоторые узнали фразу впервые и теперь используют её вместо саркастического «а кто это будет делать?» в командной работе.
- Всплыли разные интерпретации: от детской «строим сложный механизм» до циничной «пусть кто-то другой рискнёт».
- Название Bellingcat теперь воспринимается как сознательная игра на идее «повесить колокол», но в контексте журналистских расследований.
- Обсуждение ушло в политику: Украина «вешает колокол» на Россию, пока Европа ждёт, что сделает кто-то другой.
Air pollution directly linked to increased dementia risk
- Анализ 56 млн человек показал: длительное дыхание мелких частиц PM2,5 ускоряет развитие деменции с тельцами Леви и болезни Паркинсона с деменцией у генетически предрасположенных людей.
- Риск госпитализации из-за тяжёлой формы деменции с тельцами Леви выше на 12 % в районах с повышенным уровнем загрязнения.
Комментарии (96)
- Исследование показывает корреляцию между загрязнением воздуха (PM2.5) и деменцией, но не доказывает причинно-следственную связь.
- Участники обсуждают, почему в некоторых регионах с высоким уровнем загрязнения (например, Юта) уровень деменции ниже, чем в других (например, Майами-Дейд), указывая на возраст, миграцию и другие факторы.
- Поднимаются вопросы о влиянии внутреннего загрязнения (например, от готовки), пестицидов, а также о том, учитываются ли они в исследованиях.
- Некоторые считают, что статьи и пресс-релизы преувеличивают выводы, делая из корреляции выводы о причинности.
- Обсуждается, почему в странах с сильным загрязнением (Китай, Индия) не фиксируется всплеск деменции — возможно, из-за недостатка диагностики и молодого населения.
Postal traffic to US down by over 80% amid tariffs, UN says
- Почтовый трафик в США упал >80 % после отмены беспошлинного порога $800 с 29 авг.
- 88 операторов приостановили доставку: не успели настроить сбор пошлин и связь с таможней.
Комментарии (55)
- Почтовые операторы 88 стран приостановили доставку в США: не успели за 6 месяцев внедрить сбор пошлин после отмены de minimis.
- Участники считают, что удар по «почтовому демпингу» из Китая был целенаправленным, но системы растаможки не готовы.
- USPS рискует потерять объёмы, частные курьеры (UPS, FedEx) выиграют, разберясь с бумагами.
- Пользователи ждут рецессии/депрессии, обсуждают, куда спрятать деньги и как жить без «фабричных» дешёвых товаров.
More and more people are tuning the news out: 'Now I don't have that anxiety
Почему люди отключают новости: «Теперь у меня нет тревоги»
Рост информационной перегрузки и негативных новостей приводит к рекордному отказу от потребления медиа.
Пользователи жалуются на «думскроллинг» — бесконечную ленту тревожных событий, вызывающих тревогу, бессонницу и выгорание.
Решение:
- детокс от новостей (от 1 дня до года);
- лимит времени в приложениях;
- выборочное чтение — только добровольные дайджесты или позитивные каналы.
Результат:
«Я стал спать лучше и забыл, что такое постоянное напряжение».
Комментарии (71)
- Участники обсуждают, как избавиться от тревожного «думскроллинга»: кто-то полностью отказался от новостей, кто-то перешёл на текстовые дайджесты (NPR Text, Fix the News, The Economist «World in Brief», Reuters, AP News).
- Популярный приём — фильтрация через RSS/LLM-сводки, блокировки сайтов (LeechBlock, Screen Time) и переход на местные источники вместо глобального хайпа.
- Многие отмечают улучшение психического здоровья, но чувствуют вину за «осознанное неведение» и страх перед авторитарными трендами.
- Часть пользователей считает отказ от новостей привилегией: «пока тебя не коснётся, можно не следить», другие напоминают, что без гражданского контроля власть разойдётся бесконтрольно.
- Общий вывод: новости превратились в развлекательный спам и инструмент манипуляции; задача — найти баланс между информированностью и личным спокойствием.
Semantic Line Breaks (2017)
Семантические разрывы строк
Разбивай текст на строки по смысловым границам: после предложений, придаточных, запятых, двоеточий.
Markdown и др. склеивают строки пробелом, поэтому в исходнике видно структуру, а в выводе — нет.
Кратко:
- точка/вопрос/восклицание — обязательный разрыв
- запятая/точка с запятой/тире — желателен
- 80 символов — мягкий лимит
- не режь слова и гиперссылки
Плюсы:
автору легче мыслить, редактору — править, читатель ничего не замечает.
Комментарии (55)
- «Семантические» разрывы строк (по предложению/подпредложению) делают исходник читаемым, упрощают редактирование и уменьшают шум в diff.
- Поддержка в Markdown/HTML проблематична: одиночный перевод строки превращается в пробел, что портит тире и списки; выход — U+200B или
<wbr>. - Противники считают это микро-оптимизацией, ломающей авто-перенос и затрудняющей «визуальные» разрывы в финальном тексте.
- Инструменты уже есть: плагины редакторов,
git diff --color-words,sembrдля автоматического расстановления.
Algebraic Effects in Practice with Flix
Алгебраические эффекты на практике в Flix
Алгебраические эффекты — уже не академия. Это рабочий инструмент, который сегодня делает код:
- Тестируемым — «что» отделено от «как»; mock-и и DI не нужны.
- Прозрачным — сигнатура функции сразу показывает все побочные действия (IO, сеть, исключения).
- Гибким — async/await, корутины, backtracking реализуются обычными библиотеками, без изменения языка.
В отличие от монад, эффекты понятны без теории категорий и работают «из коробки» в языке Flix.
Мотивирующий пример
Без эффектов:
def calculateSalary(base, percent) -> float:
# может отправить письмо бабушке
С эффектами (Flix):
def calculateSalary(base: Float64, percent: Float64): Float64 \ {Email} =
...
Сигнатура не лжёт: любой вызов Email будет отслежен компилятором.
Обработчики эффектов (интуиция)
Эффект = операция + обработчик.
Код бросает операцию, обработчик решает, что с ней делать.
eff Ask { // объявляем эффект
pub def ask(): String
}
def greet(): String \ Ask = // используем
"Hello " + Ask.ask()
def main(): Unit = // обрабатываем
println(greet() with Ask {
def ask() = "World"
})
Реальный проект: рекомендательная система фильмов
Задача: достать данные из SQLite, вызвать внешний AI-сервис, кешировать результат, логировать.
Эффекты: Db, Http, Log, Cache.
def recommend(user: String): List[Movie] \ {Db, Http, Log, Cache} =
Cache.getOrElse(user,
for {
prefs <- Db.query(user)
_ <- Log.info("Prefs loaded")
recs <- Http.post("ai.example.com", prefs)
_ <- Log.info("AI answered")
_ <- Cache.put(user, recs)
} yield recs)
Тест: подменяем обработчики на in-memory реализации — никаких реальных запросов.
Куда дальше
- Попробовать онлайн: https://play.flix.dev
- Документация: https://doc.flix.dev
- Репозиторий: https://github.com/flix/flix
Flix ещё молод, но уже поддерживает эффекты, регионы, структурную конкурентность и Datalog.
Комментарии (42)
- Участники восторгаются идеей алгебраических эффектов: они проще монад, решают «цветную» проблему функций и позволяют гибко компоновать побочные эффекты.
- Примеры уже есть: экспериментальная реализация в OCaml 5, библиотеки Effect и Effectively для TypeScript, языки Koka, Effekt, Unison.
- Отличие от ОО-интерфейсов: эффекты явно указывают контекстные требования (Net, IO) и позволяют подменять реализацию динамически, а не статически.
- Критика: система всё равно «окрашивает» код, требует прокидывать эффекты через весь стек вызовов и пока выглядит академично/громоздко.
- Практические вопросы: как скрыть «дебажный» вывод, не нарушая типов, и можно ли обойтись без переписывания сигнатур каждой промежуточной функции.
Show HN: Semantic grep for Claude Code (local embeddings)
GitHub-репозиторий BeaconBay/ck
Публичный проект без описания.
Кнопки: «Code», «Issues», «Pull requests», «Actions», «Projects», «Wiki», «Security», «Insights».
Последний коммит: 2 года назад.
Язык: C.
Лицензия: отсутствует.
Комментарии (60)
- Утилита ck — это «семантический grep» на Rust: строет локальный векторный индекс файлов и ищет по смыслу, а не только по ключевым словам.
- Работает через embeddings (BAAI/bge-small-en-v1.5, планируется Gemma), повторное индексирование запускается автоматически при изменении файлов.
- Поддерживает почти все языки, но для точного семантического чанкинга требуется донастройка tree-sitter; grep-режим остаётся дефолтом.
- Пользователи жалуются на медленный поиск в больших проектах, отсутствие TypeScript-LSP и «разрезание» эмодзи; README считают «AI-флаффным».
- Альтернативы: Codanna, Serena, Roo с Qdrant, SemTools; автор приглашает тестеров и PR для доведения до зрелости.
Serverless Horrors 🔥 Горячее 💬 Длинная дискуссия
Сборник коротких серверлес-кошмаров
- $1189 – Webflow снял за месяц вместо $69.
- $100 000 – DoS на игровом сайте → счёт за Firebase за сутки.
- $738 – Vercel Pro + лимит $120 ≠ защита от «сюрприза».
- $70 000 – Проснулся с таким счётом за Firebase при тарифе $50.
- $22 640 – BigQuery на публичных данных.
- $250/мес – 9 тыс. просмотров в Framer.
- $1274 – AI Devin случайно устроил ддос в PostHog.
- $530 – Платный PostHog после нулевого периода.
- $384 – Документация на Mintlify.
- $103 – AWS Free Tier ловушка.
- $96 281 – Vercel: «я просто молчу».
- $120 000 – Cloudflare выключает сайт, требуя деньги за сутки.
- $1301 – Пустой приватный S3 + ддос.
- $11 000 – Mailgun во время атаки.
- $104 500 – Письмо от Netlify «переплата».
- $23 000 – Спам-атака на EchoFox в Vercel.
- $3000 – Тестовый деплой в Vercel.
- $620 – Sitemap.txt сожрал трафик.
- $72 000 – Тест Firebase + Cloud Run чуть не разорил.
Хочешь поделиться своим счётом-ужасом — пиши в твиттере или PR на GitHub.
Комментарии (406)
- Пользователи делятся историями о «серверлес-ужасах» — внезапных счетах за десятки и сотни тысяч долларов из-за DDoS, ошибок в конфигурации или забытого ресурса.
- Критика сосредоточена не на технологии serverless, а на модели оплаты «плати за использование» без жёстких потолков: бюджет — лишь уведомление, а не отключение.
- Многие считают, что провайдеры могли бы автоматически отключать сервис при превышении лимита, но не делают этого, теряя деньги на «ошибках» новичков.
- Участники советуют: ставить rate-limit, использовать VPS с фиксированной ценой, поднимать bare-metal или хотя бы включать billing-alerts и «пауz-лимиты» вроде Vercel.
- Поддержка AWS/GCP/Azure часто прощает счета после публичных твитов, но это выживший эффект: официальной политики нет, и никто не гарантирует прощение.
Show HN: I'm a dermatologist and I vibe coded a skin cancer learning app 🔥 Горячее 💬 Длинная дискуссия
molecheck.info – тест «Опасно ли пятно?»
- Оптимизировано для телефона: открой сайт через камеру по QR-коду.
- На экране – фото родинки.
- Свайп влево = «опасаюсь», вправо = «не беспокоит».
- Кнопки: «Тревожно», «Спокоен», «Не уверен».
- После выбора – «Следующее изображение».
Комментарии (234)
- Врач-дерматолог за выходные собрал на LLM-генераторах обучающий «квиз» по фото родинок: «опасно / не опасно».
- Пользователи быстро научаются отличать очевидные меланомы, но путают BCC с прыщами и keratosis с невусами; объяснений «почему» пока нет.
- Критика: в выборке ≈75 % онкопатологии (в жизни <5 %), что повышает чувствительность тренажёра, но может лишний раз нагнать тревогу.
- Проект вызывает дискуссию о «vibe-coding»: эксперт предметной области теперь может реализовать идею без команды разработчиков.
- Врачи предлагают добавить шкалы размеров, ABCDE-справку, лог ошибок и чёткое предупреждение: «это не диагностика, а учебная игра».