California unemployment rises to 5.5%, worst in the U.S. as tech falters 💬 Длинная дискуссия
—
Комментарии (250)
- Основная версия: спад найма в tech не из-за AI, а из-за резкого роста предложения инженеров (CS-программы, буткемпы, иммиграция) и исчезновения «дешёвых» денег ZIRP.
- Анекдоты: кто-то полностью прекратил интервью, кто-то в июле вдруг получил 3 офера; активность рекрутеров неравномерна.
- Сомнения в данных: официальная статистика по 4 400 домохозяйствам вызывает недоверие, особенно после увольнения главы BLS.
- Сравнения с другими отраслями: страдают не только tech, но и entertainment, biotech, manufacturing.
- Политика и визы: звучат призывы сократить H1B и «вернуть работу домой».
TextKit 2 – The Promised Land
TextKit 2 (NSTextLayoutManager) появился на WWDC21, но уже 4 года не оправдывает надежд. Архитектура продумана: NSTextContentManager, NSTextElement, NSTextLayoutManager. На практике работает только NSTextContentStorage → NSTextStorage, а элементы должны наследовать NSTextParagraph. UITextView/NSTextView не принимает альтернатив.
Баги многочисленны: «extra line fragment», регрессии между версиями, часть отчётов без ответа.
Viewport — главная боль. Он лениво раскладывает только видимую область, поэтому высота документа постоянно пересчитывается и «прыгает» при прокрутке. Постоянные инвалидации и кэширование усложняют код.
Комментарии (26)
- TextKit 2 выглядит «сырым»: демо работает, но стоит отойти от happy path — всплывают баги, плохая документация и отсутствие публичного списка проблем.
- Основной способ использования — кастомизация UITextView/NSTextView; попытки полностью заменить их приводят к боли.
- На macOS TextKit 2 сломал даже TextEdit: появились глюки прокрутки и повреждение текста.
- «Дрожание» скроллбара из-за lazy layout и оценок высоты считается «как задумано», но выглядит неприемлемо; решения есть (Flutter, эвристики), но не встроены.
- Apple, судя по всему, не додогфудила API: внутренние приложения не отловили острые углы, поэтому теперь каждый разработчик получает синяки.
Thai Air Force seals deal for Swedish Gripen jets 💬 Длинная дискуссия
- Таиланд утвердил покупку четырёх истребителей Gripen производства Saab за $600 млн, отказавшись от американских F-16.
- Сделка закреплена через неделю после пограничных столкновений с Камбоджей, где применялись F-16; тогда погибло более 40 человек.
- Gripen станут частью долгосрочной программы модернизации ВВС Таиланда.
Комментарии (196)
- Таиланд выбрал шведские Gripen вместо F-16, следуя примеру Испании (Eurofighter вместо F-35) и, возможно, Швейцарии.
- Gripen хвалят за способность взлетать с обычных дорог и минимальной наземной поддержкой, что важно при угрозе дронов большим базам.
- США пытаются пересмотреть контракт со Швейцарией на F-35, повышая цену на ~1 млрд долларов, что вызывает раздражение.
- Покупки истребителей всё чаще становятся политическим выбором: нежелание зависеть от «ненадёжного» США и стремление к европейской оборонной автономии.
- Некоторые считают, что четыре самолёта — мало, но для небольших ВВС это заметное усиление.
Claude Opus 4 and 4.1 can now end a rare subset of conversations 💬 Длинная дискуссия
Claude Opus 4 и 4.1 теперь могут прерывать редкие диалоги, если пользователь настойчиво требует вредоносного или абьюзивного контента. Функция разработана как эксперимент по защите «благополучия модели» и применяется только в крайних случаях, когда:
- пользователь игнорирует многократные отказы и попытки перенаправить беседу;
- исчерпаны все способы продолжить конструктивный диалог;
- пользователь сам просит завершить чат.
При прерывании:
- текущий чат закрывается, но можно немедленно начать новый;
- сохраняется возможность редактировать и перезапускать предыдущие сообщения;
- остальные диалоги аккаунта не затрагиваются.
Функция не срабатывает, если есть риск, что пользователь навредит себе или другим. Почти все пользователи не заметят изменений, даже при обсуждении спорных тем. Anthropic просит оставлять фидбек, если кажется, что чат был закрыт ошибочно.
Комментарии (318)
- Пользователи обвиняют Anthropic в использовании «благополучия модели» как прикрытия для усиления цензуры и блокировки нежелательных тем.
- Многие считают, что LLM — это всего лишь матричные вычисления, и приписывать им «страдания» — антропоморфизм.
- Критики опасаются, что функция «Claude завершил чат» распространится за пределы запрещённого контента и станет инструментом произвольной модерации.
- Некоторые предлагают просто не обучать модели «страдать» от спорных тем, вместо того чтобы симулировать этическую озабоченность.
- В целом сообщество воспринимает нововведение как маркетинговый ход и признак всё большего отдаления разработчиков от реальных потребностей пользователей.
The future of large files in Git is Git 🔥 Горячее 💬 Длинная дискуссия
Большие файлы — давний враг Git: раздувают репозиторий, замедляют клонирование и дорого обходятся хостингам. С 2015 г. GitHub предлагает Git LFS, но он влечёт vendor-lock, плату за хранение, сложности отката и необходимость ставить расширение всем участникам.
Сегодня можно обойтись без LFS:
- Partial clone (
--filter=blob:limit=100k) скачивает только нужные большие файлы, ускоряя клонирование в 30–50 раз и уменьшая дисковый след до размеров LFS-чекаутов. - Недостаток: команды вроде
git blameтребуют до-загрузки, но для PNG-файлов это редко нужно.
Будущее — large object promisors:
Git-сервер будет прозрачно выгружать большие объекты в специальный remote, избавляя пользователей от LFS и хостинги — от лишних затрат.
Комментарии (244)
- Критикуют Git LFS за «проприетарность», но многие отмечают, что протокол открыт и работает и с GitLab, и с S3.
- Основные боли: сломанные офлайн-режимы, многократная аутентификация, высокие расходы на трафик и неочевидные команды при клоне.
- Альтернативы — git-annex, DVC, Oxen, datamon и просто «не класть большие файлы в git», а хранить их в Artifactory.
- Часть участников ждёт нативную поддержку больших файлов в самом Git, чтобы не помнить про
--filter=blob:noneи LFS-указатели.
Typechecker Zoo
Проект «Zoo» — мини-реализации самых влиятельных статических систем типов последних 50 лет. Начнём с простых и дойдём до зависимых типов. Всё пишем на Rust — просто потому что удобно и забавно строить чисто функциональные языки на не-функциональном.
Это не учебник, а выходные развлечение. За теорией и доказательствами смотрите TAPL, ATTAPL, PFPL и оригинальные статьи (ссылки в приложении). Здесь же — грязные детали реализации: структуры данных, AST, логика, всё, что можно осилить за уик-энд.
Код — идиоматичный Rust с полноценным парсером и тестами (lalrpop, logos, ariadne). Примеры урезаны, но понятнее продакшен-реализаций. Парсинг и MLIR считаем решёнными задачами, поэтому не фокусируемся на них.
Четыре «зверька»:
- Algorithm W (775 строк) — классический Hindley–Milner, полиморфный λ-исчисление.
- System F (1090 строк) — второе λ-исчисление, параметрический полиморфизм, Mini-OCaml.
- System F-ω (3196 строк) — высшие рода, паттерн-матчинг, дататипы, Haskell-lite.
- Calculus of Constructions (6000 строк) — иерархия универсумов, индуктивные типы, крошечный Lean.
MIT-лицензия, хобби-проект. Нашли опечатку — присылайте pull-request.
Комментарии (24)
- Пользователи хвалят Elaboration Zoo как полезный ресурс для изучения нормализации по вычислению и вывода неявных переменных.
- Просят аналогичный «зоопарк» для линейных типов и предлагают добавить быстрый вариант Hindley–Milner из OCaml.
- Автору советуют включить тёмную тему для блоков кода и рассмотреть простой однонаправленный type-checker в духе Featherweight Java.
- Уточняют, что присутствие индуктивных типов делает реализацию ближе к CIC, но Lean всё же сильнее за счёт аксиомы выбора.
- Картинки с животными вызывают путаницу; большинство считают их просто AI-орнаментом без смысловой нагрузки.
Lazy-brush – smooth drawing with mouse or finger 🔥 Горячее
Lazy Brush — библиотека для рисования плавных линий мышью, пальцем или любым другим указателем.
GitHub | npm | Reddit
Параметры:
- Lazy radius (60 px) — минимальное расстояние, при котором кисть тянется к курсору.
- Friction (0.10) — инерция: 0 — без задержки, 1 — бесконечная.
- Brush radius (13 px) — толщина кисти, не влияет на логику.
Автор: dulnan
Комментарии (67)
- Библиотека Perfect Freehand и её демо drawmote от автора TLDRaw признаны лучшей альтернативой для плавных подписей и рисования.
- Техника «ленивого» курсора с гистерезисом/стабилизатором уже применялась в Wii-играх, Krita, ZBrush, Black & White и других графических пакетах.
- Пользователи отмечают, что визуальный «поводок» между курсором и пальцем делает рисование интуитивным, особенно на мобильных устройствах и при работе мышью.
- Некоторые считают задержку слишком большой и предлагают использовать фильтр Калмана или DynaDraw для меньшего лага.
- Проект вызвал восторг («лучшее бесплатное», «шокирующе хорошо»), но кто-то жалуется на пропадающие линии и невозможность «естественных» штрихов.
OpenBSD is so fast, I had to modify the program slightly to measure itself 💬 Длинная дискуссия
OpenBSD быстрее Linux в 10 раз?
Тест Jann Horn: создаём поток, оба потока открывают по 256 сокетов.
Linux
elapsed: 0.017–0.026 s
OpenBSD
ulimit -n 1024
elapsed: 0.002–0.006 s
Машины примерно равны. Подсказка в коде (не в сетевом стеке).
Обычно OpenBSD проигрывает в странных тестах, а тут — наоборот.
Комментарии (153)
- Обсуждение выросло из «патологического» теста, который на Linux показывает замедление из-за роста таблицы файловых дескрипторов и блокировок, а на OpenBSD — нет.
- Участники спорят, что считать «быстрым»: OpenBSD жертвует скоростью ради безопасности, тогда как Linux активно оптимизирует критические пути.
- Для микробенчмарков советуют использовать __rdtsc(), но предупреждают о проблемах синхронизации TSC между ядрами и на ARM.
- Несколько человек отвлеклись на «пасхалку» в статье — плавающие «пушки», стреляющие курсором.
- Общий вывод: измеряйте свою нагрузку на одинаковом железе; универсального «быстрее» не существует.
Комментарии (48)
- Пользователи жалуются: код от «больших» LLM выглядит красиво, но полон галлюцинаций, особенно в редких/NDA-сферах.
- Embedder позиционируется как узкоспециализированный агент для embedded: ищет по даташитам, запускает стат-анализ, отладку GDB, работает офлайн (FDE/BYOK) для корпоративных клиентов.
- Основной способ борьбы с ошибками — «строгое грундование» через цитаты из документации и планирование, а не дообучение (пока обёртка над frontier-моделями).
- Поддержка ESP32 уже есть (можно загрузить доки вручную, готовится официальная интеграция с Espressif).
- Планы: MCP-сервер для Claude Code, локальное самостоятельное хранение кода, возможные узкие fine-tune-модели под топ-20 вендоров.
Imagen 4 is now generally available
- Imagen 4 и Imagen 4 Fast теперь доступны всем через Gemini API.
- Imagen 4 Fast генерирует изображения в 2 раза быстрее и дешевле, чем Imagen 3, без потери качества.
- Imagen 4 — флагманская модель: лучше текст, детали, стилизация; поддерживает 2K разрешение и редактирование (inpainting/outpainting).
- Цены:
- Imagen 4 Fast: $0,03 за изображение 1024×1024.
- Imagen 4: $0,05 за изображение 1024×1024.
- Как начать:
from google import genai client = genai.Client(api_key="YOUR_API_KEY") response = client.models.generate_images( model="imagen-4-fast", prompt="A cat wearing a space helmet on Mars" ) - Доступно в 180+ странах через Google AI Studio и Gemini API.
Комментарии (65)
- Пользователи жалуются, что Imagen 4/Ultra игнорирует детальные промпты: четырёхпанельный комикс не соблюдает ни стиль, ни содержание.
- Сравнения показывают, что «Ultra» не лучше обычной версии, а иногда даже хуже; OpenAI и Copilot дают точнее.
- Документация отсутствует, примеры устарели, а вывод часто «мультяшный» вместо фотореалистичного.
- Сообщество шутит над ошибками, опечатками Google и общим качеством «AI-slop».