Nginx introduces native support for ACME protocol 🔥 Горячее 💬 Длинная дискуссия
NGINX теперь умеет ACME
Появился превью-модуль ngx_http_acme_module, который прямо из конфига NGINX запрашивает, устанавливает и продляет сертификаты. Модуль написан на Rust через NGINX-Rust SDK и работает как в NGINX Open Source, так и в NGINX Plus.
Плюсы:
- меньше ручных действий и ошибок;
- не нужен Certbot и прочие внешние утилиты;
- одинаково работает на любой платформе.
Что такое ACME
Протокол автоматизирует выпуск, проверку и обновление SSL/TLS-сертификатов. Разработан ISRG для Let’s Encrypt в 2015 году, нынешняя версия — ACMEv2.
4 шага настройки
-
ACME-сервер
acme_issuer letsencrypt { uri https://acme-v02.api.letsencrypt.org/directory; state_path /var/cache/nginx/acme-letsencrypt; accept_terms_of_service; } -
Разделяемая память
acme_shared_zone zone=acme_shared:1M; -
HTTP-01 challenge
server { listen 80; location / { return 404; } }TLS-ALPN и DNS-01 позже.
-
Выдача/обновление
server { listen 443 ssl; server_name .example.com; acme_certificate letsencrypt; ssl_certificate $acme_certificate; ssl_certificate_key $acme_certificate_key; ssl_certificate_cache max=2; }
Комментарии (269)
- В превью-версии nginx появилась нативная поддержка ACME, но пока только через HTTP-01; DNS-01 и TLS-ALPN обещаны позже.
- Пользователи рады уменьшению «движущихся частей», но критикуют задержку: Caddy, Traefik и Angie реализовали это годы назад.
- Основной запрос — быстрый DNS-01 для wildcard-сертификатов и внутренних серверов без публичного веб-сервера.
- В Docker-среде по-прежнему боль: «нужен nginx для выдачи сертификатов, но сертификаты нужны, чтобы поднять nginx».
- Некоторые опасаются «раздутого» функционала и предпочитают оставить certbot или внешние утилиты.
Study: Social media probably can't be fixed 💬 Длинная дискуссия
Исследование: соцсети, похоже, неисправимы.
Проблемы — поляризация, эхо-камеры, доминирование экстремистов — заложены в самой архитектуре платформ, а не в алгоритмах или человеческой склонности к негативу.
Учёные из Амстердама создали симуляцию с ИИ-«пользователями» и проверили шесть популярных идей по «исправлению» соцсетей:
- хронологическая лента;
- понижение вирусных постов;
- разнообразие мнений;
- «мостовые» алгоритмы, стимулирующие взаимопонимание;
- скрытие лайков/репостов;
- удаление биографий.
Результат: ни одна мера не устранила корневые механизмы; часть идей ухудшила ситуацию. Например, хронология снизила неравенство внимания, но усилила экстремизм; «мостовые» алгоритмы уменьшили поляризацию, но увеличили неравенство.
Вывод: без радикального пересмотра самой структуры соцсетей токсичные циклы сохранятся.
Комментарии (156)
- Исследование, где LLM имитируют поведение людей в соцсетях, вызывает скепсис: модели не люди и выбор поведения слишком ограничен.
- Многие считают, что «починить» соцсети можно только убрав алгоритмы, оставив хронологическую ленту и подписки.
- Другие уверены: корень зла — человеческая жадность и стремление к конфликту, а не технологии.
- Проблема усиливается монетизацией: платформы зарабатывают на вовлечённости, поэтому поощряют скандалы и «рейджбейт».
- Умеренные меры (строгая модерация, отказ от рекомендаций, некоммерческое управление) могут смягчить, но не устранить структурные проблемы.
An argument for increasing TCP's initial congestion window (2024)
TCP: увеличить initcwnd снова
Google в 2011 г. подняли начальное окно TCP (initcwnd) с 1 до 10 пакетов; RFC 6928 сделало это стандартом. Сегодня, при среднем размере страницы ~2 МБ и RTT 30–100 мс, 10 пакетов (~14 КБ) всё ещё тормозит старт.
Почему расти
- 75 % HTTP-ответов ≤ 32 КБ; 10 пакетов передают лишь 40 %.
- У Google, Meta, Akamai уже 32–64 пакета без потерь.
- Современные сети: 100 Гбит, AQM, ECN, BBR — потери редки.
Риски
- Пакет потеряют лишь 0,01 % сессий при initcwnd=30.
- Re-buffering в YouTube снизился на 3 % при 30 пакетах.
Вывод
initcwnd=30–50 пакетов безопасно и ускоряет web на 5–15 %. Пора обновить RFC.
Комментарии (35)
- Участники считают, что статья поверхностна и ошибочна в выводах о TCP initcwnd и BBR.
- QUIC/HTTP-3 всё равно использует алгоритмы управления перегрузкой (CUBIC, BBR); «окна нет» — миф.
- L4S позволяет получать сигналы о перегрузке без потери пакетов, помогая молодым соединениям.
- Увеличение initcwnd может лишь временно скрыть «раздутый» фронтенд-код, пока бизнес не пострадает.
- BBR и другие алгоритмы плохо переносят высокую джиттерность RTT в беспроводных сетях.
- Bufferbloat всё ещё актуален (особенно на мобильных и Wi-Fi), несмотря на улучшения в кабеле/волокне.
This website is for humans 🔥 Горячее 💬 Длинная дискуссия
Этот сайт для людей.
Выбери тему: garden, midnight city, miami sunset, minimalist, 2003, vaporwave, 1999.
Меню: About, Blog, Speaking, Links, etc.
Вчера увидела рекламу Google: камера направлена на рамэн, ИИ выдаёт рецепт. Он «знает», потому что обучен на чужих рецептах, за которые авторы трудились годами. Генеративный ИИ — это блендер, перемалывающий чужой труд в бездушную кашу.
Я подписана на Smitten Kitchen и Meera Sodha через RSS: рецепты проверены, вкус гарантирован. ChatGPT выдаёт усреднённую подделку без личности автора.
Говорят о «Google Zero» — дне, когда трафик с поиска упадёт до нуля. Если ИИ отвечает сразу, зачем заходить на сайт?
А мне нужно, чтобы вы заходили. Читали статьи, находили другие тексты, ссылки, странные темы. Чтобы после статьи звали на конференции. Многие живут за счёт рекламы.
Я пишу для людей, не для роботов. Делюсь опытом, учу, люблю обсуждать. На посты ухожу часы, ИИ тратит секунды.
Я не пишу для венчурных ИИ, которые сожрут текст и выдадут бездушную выжимку.
Этот сайт для людей. LLM не приветствуются.
Комментарии (278)
- Блог «for humans» вызвал восторг дизайном и «душой», но спор о том, как защитить контент от ИИ.
- Критика ИИ: «блендер, перемалывающий чужой труд»; рецепты-«месиво» без доверия и личности.
- Пользователи хотят быстрых ответов, поэтому боты побеждают; авторы же страдают от «Google Zero».
- Технические меры (robots.txt, /llms.txt, обфускация) легко обходятся; юридические — нереальны.
- Некоторые видят будущее, где сайты останутся «для любителей», а массы довольствуются «ИИ-шлаком».
New treatment eliminates bladder cancer in 82% of patients 🔥 Горячее
- 82 % пациентов с высокорисковым неинвазивным раком мочевого пузыря, устойчивым к предыдущему лечению, полностью избавились от опухолей после трёхмесячного курса TAR-200 (фаза 2).
- TAR-200 — миниатюрное «крендель»-устройство, вводимое катетером; в течение трёх недель медленно высвобождает химиопрепарат гемцитабин непосредственно в мочевой пузырь.
- Год спустя 48 % оставались без рецидива; ранее таким пациентам предлагали лишь ограниченные варианты терапии.
- Исследование возглавил Сиа Данешманд (Keck Medicine of USC), статья опубликована в Journal of Clinical Oncology.
Комментарии (131)
- TAR-200 — это катетерный «претцель» с гемцитабином, который три недели медленно отдаёт препарат внутри мочевого пузыря.
- Исследование фазы 2: 85 пациентов с высокорисковым неинвазивным раком, уже не отвечающим на стандартную терапию BCG.
- 82 % достигли полного клинического ответа, но опухоли предварительно были удалены хирургически, поэтому итог — отсрочка рецидива, а не «лечение».
- Доступ к терапии пока только через клинические испытания (США, ЕС); для пациентов в Украине шансы минимальны, но можно искать trial на clinicaltrials.gov.
Coalton Playground: Type-Safe Lisp in the Browser
Coalton Playground — онлайн-REPL для статически типизированного диалекта Lisp.
Coalton смешал систему типов Haskell с Common Lisp: ADT, сопоставление с образцом, но совместим с обычным Lisp-кодом.
Автору было лень ставить SBCL + Quicklisp + Coalton, поэтому он свёл всё к одной веб-странице.
Пишете код, нажимаете «Run», получаете результат и вид сгенерированного Common Lisp.
Плюс технический трюк: заранее собранный образ SBCL с загруженным Coalton сократил старт с 400 мс до 80 мс.
Попробовать: coalton.app — есть примеры от факториала до монад.
Комментарии (32)
- Макросы и статическая типизация не взаимоисключающи: Coalton показывает, что макросы на Lisp могут работать в статически типизированном языке.
- Основная цель Coalton — добавить ML-подобную полиморфию и вывод типов к Common Lisp, а не просто «сделать быстрее».
- Это позволяет ловить ошибки на этапе компиляции вместо рантайма и использовать type classes, недоступные в чистом CL.
- Некоторые примеры на сайте coalton.app временно сломаны, но уже чинятся.
- SBCL без Coalton тоже умеет оптимизировать типы, но не даёт такой же строгости и выразительности.
Org-social is a decentralized social network that runs on Org Mode
Org-social — децентрализованная соцсеть, работающая на одном файле Org Mode через HTTP.
Просто разместите .org-файл на любом веб-сервере и получите ленту постов, комментариев и подписок без БД и JS.
Поддерживает Markdown, теги, RSS, JSON Feed и полностью контролируется вами.
Комментарии (62)
- Проект «org-social» — это децентрализованная «соцсеть» на базе org-mode: каждый пишет свой social.org, выкладывает где угодно и даёт ссылку друзьям.
- По сути это gemlog/блог в виде текстовых файлов без HTML/CSS, но с автоматически генерируемой лентой, как RSS.
- Критика: узкая ниша (Emacs + org-mode + самостоятельный хостинг), сложность обнаружения новых участников, проще взять Markdown или обычный блог.
- Пользователи сравнивают с .plan-файлами по finger, сетью Gnus и даже Bluesky, но признают, что это «соцсеть для своих».
- Патчи и конвертеры уже появляются, а вопрос «зачем не HTML/Markdown?» сводится к «потому что мы живём в Emacs».
Writing a competitive BZip2 encoder in Ada from scratch in a few days – part 2
День 2: строим дерево Хаффмана
Переписал bz2.adb на чистые структуры:
Bit_Writer, MTF, RLE, Burrows_Wheeler, Huffman.
Каждая структура = пакет + скрытый тип + конструктор Create, методы Encode, Flush, Reset.
Huffman
- Считаем частоты 256 байт + 2 служебных символа (
RUNA,RUNB). - Строим дерево:
Node(частота, символ, левый, правый). - Сортируем список узлов по частоте, склеиваем два минимальных, повторяем, пока не останется один корень.
- Коды длиной ≤ 20 бит (требование BZip2).
- Генерируем таблицу
Code_Length[0..257]иCode_Value[0..257].
Оптимизация
- Если дерево выдаёт слишком длинные коды, увеличиваем частоты всех символов на 1 и перестраиваем — быстро сходится.
- Память: дерево живёт только во время построения, затем храним только таблицы.
Интеграция
Huffman.Encode получает поток MTF/RLE-символов, пишет в Bit_Writer:
- 16-битная маска
0x425A("BZ"). - 8-битная версия
0x68. - Таблица длин кодов (передаём как 4-битные значения).
- Сами данные: коды Хаффмана + биты RLE-последовательностей.
Итог за день
- 400 строк Ada, 0 зависимостей.
- Код компилируется
gnatmake -O2 bz2.adbза 0.3 с. - Тест:
echo "abracadabra" | ./bz2 > out.bz2,bunzip2принимает без ошибок.
Завтра: многопоточность и буферизация.
Комментарии (8)
- Участники обсуждают, нужно ли при обращении BWT хранить индекс первого символа: Nayuki утверждает, что это необходимо, а vintermann указывает на полностью биективный вариант без индекса.
- Amy_petrik подчеркивает, что BWT переводит строку в «пространство суффиксных деревьев», что позволяет быстро искать внутри сжатых BZ2-файлов и лежит в основе современных ДНК/РНК-алгоритмов выравнивания.
- Horizon2025 отмечает «магическую» обратимость преобразования при минимуме дополнительных данных.
Pebble Time 2* Design Reveal
Pebble Time 2: финальный дизайн
- Представлена окончательная версия корпуса (по сравнению с мартовским прототипом улучшены линии и материалы).
- 4 цветовых варианта (названия позже; выбор будет предложен по e-mail всем, кто уже оформил предзаказ).
Спецификации
- Корпус и кнопки — нержавеющая сталь 316, кнопки с насечкой, как у Time Steel.
- Сверху: 1,5" 64-цветный e-paper с сенсором, закалённое стекло, сменный ремешок 22 мм.
- Внутри: компас, второй микрофон (шумоподавление), RGB-подсветка, динамик, вибромотор, пульсометр, отслеживание активности и сна.
- Оценка автономности — до 30 дней; водозащита (уровень уточняется).
Предзаказ
Цена $225. Перейти с Pebble 2 Duo на Time 2 можно без потери очереди: в течение месяца придёт опрос, отменять заказ не нужно.
Комментарии (61)
- Пользователи обсуждают возвращение Pebble: кто-то вспоминает, как первый Pebble помогал в ранней DigitalOcean, кто-то уже собирает 8-й экземпляр.
- Основные плюсы: открытая ОС, 30 дней автономности, трансфлективный экран, читаемость на солнце и «не лезущий в глаза» перед сном.
- Ключевые минусы: нет GPS, NFC, барометра/компаса в одной модели; новый экран может «обрезать» старые циферблаты; корпус крупный и, возможно, неремонтопригодный.
- Сравнение с Garmin/Apple Watch: те дороже, короче держат заряд и перегружены фитнес-функциями, которые многим не нужны.
- Просят голосование за цвета, темный «gunmetal» вместо яркого серебра, а также версию поменьше и с возможностью замены батарейки.
Show HN: Prime Number Grid Visualizer
Prime Grid — интерактивная сетка, выводящая простые числа слева-направо и сверху-вниз. Меняй строки и столбцы, ищи визуальные узоры, занимайся «умной» математикой или разгадывай код вселенной.
Уже существует? Не знаем.
Зачем нужно? Тоже не знаем.
Лайфхак: кликни в поле «столбцы», зажми стрелку «вверх» и наблюдай каскадные эффекты.
Дэнни Дуплекс
Комментарии (44)
- Пользователи наблюдают «галактические» вращения и спирали при прокрутке количества колонок, особенно вокруг 400–431.
- Найдены «пустые» диапазоны при 546 колонках: интервалы 243–249 и 297–303 не содержат простых чисел, что объясняется делимостью на множители 546.
- Предложены новые функции: инверсия сетки (показ составных), старт с любого числа, подсветка при клике, фильтрация по простым с заданным арифметическим условием, пропуск чётных и чисел, оканчивающихся на 5.
- Несколько человек сравнили визуализации с Ulam-спиралью, 3Blue1Brown и даже задумались о «порталах» и Game of Life.