An illustrated introduction to linear algebra 🔥 Горячее
Линейная алгебра начинается с двух ключевых идей: метода Гаусса и концепции строкового и столбцового представления. На примере монет: уравнение 5x + y = 23 (где x — никели, y — пенни) имеет несколько решений, например, 4 никеля и 3 пенни или 23 пенни. Это линейное уравнение, так как его график — прямая.
Сложность возникает, когда переменных две, но нужно удовлетворить двум условиям. Например, в задаче о питании: молоко (1 г углеводов, 2 г белка) и хлеб (2 г углеводов, 1 г белка). Чтобы получить 5 г углеводов и 4 г белка, нужно решить систему из двух уравнений. Метод Гаусса позволяет найти такие x и y, которые одновременно удовлетворяют обоим уравнениям, демонстрируя переход от одной переменной к системам.
Комментарии (77)
- Пользователи высоко оценили визуальный стиль и доступность объяснений в блоге, сравнивая его с другими популярными ресурсами.
- Было высказано пожелание начинать объяснение линейной алгебры с практической задачи и графической интерпретации, а не с абстрактного метода (как Gaussian elimination).
- Обсуждалась цель изучения линейной алгебры: для практического применения или глубокого теоретического понимания.
- Отмечены технические проблемы с отображением иллюстраций в тёмном режиме на iOS Safari.
- Упомянуты другие учебные материалы по теме и выражена благодарность автору за качественный контент.
My first contribution to Linux 🔥 Горячее
Разработчик-энтузиаст, изучая исходники Linux, заметил, что старый ноутбук Fujitsu Lifebook S2110 2005 года неправильно обрабатывает нажатие специальных клавиш «Application» и «Player». Он выяснил, что в режиме «Player» клавиши вообще не генерируют события, а в режиме «Application» они работают, но не так, как ожидается. Вместо этого в журнале ядра появляются сообщения об ошибках ACPI. Он подготовил и отправил на рассмотрение патч, который корректно обрабатывает эти клавиши в обоих режимах, и теперь ждет его включения в основную ветвь Linux.
Комментарии (76)
- Участники обсуждали, как начать вклад в ядро Linux: находить задачи по метке «good first issue», писать патч, проходить ревью и попадать в историю коммитов.
- Подчеркивалось, что даже микро-фикс требует тщательной проверки, но именно такие шаги и делают open-source сообщество устойчивым.
- Несколько человек поделились историями о своих первых коммитах в ядро, включая односимвольное исправление макроса, которое потребовало двух недель перепроверок.
- Участники обменялись советами о том, как начать, если ты не знаешь с чего начать: начни с документации, тестов или мелких улучшений.
- Замечено, что даже если патч кажется мелким, он может быть критически важным для конкретного оборудования, и что такие патчи могут быть применены к старому железу.
- Поднята тема о том, что вклад в ядро Linux может быть полезен при приеме на работу, и что такой опыт ценится.
Show HN: Write It Down – Personal finance tracker 💬 Длинная дискуссия
Write It Down — это простой трекер личных финансов на базе Google Таблиц, который помогает контролировать доходы и расходы без сложных подписок. Всего за 5 долларов разового платежа вы получаете доступ к инструменту, где можно настраивать категории, быстро записывать транзакции и анализировать финансовую картину целиком. Данные хранятся в вашем Google Диске — это безопасно, прозрачно и удобно.
Пользователи хвалят его за понятный интерфейс, отсутствие лишних функций и лёгкость освоения. В отличие от многих приложений с ежемесячной подпиской, Write It Down даёт полный контроль над данными и не перегружает деталями. Это практичное решение для тех, кто хочет навести порядок в финансах без лишних сложностей.
Комментарии (157)
- Проект представляет собой простую таблицу для учёта личных финансов, созданную на основе Google Sheets, которая стала популярной благодаря своей простоте и эффективности.
- Обсуждается ироничное использование автором фраз об избегании AI-хайпа, в то время как его предыдущие проекты и стиль письма вызывают подозрения в использовании AI.
- Поднимаются вопросы о безопасности данных, учитывая, что решение построено на Google Sheets, что означает хранение информации у третьей стороны.
- Участники отмечают, что успех проекта доказывает востребованность простых и узкоспециализированных решений, в противовес сложным и перегруженным функциями продуктам.
- Обсуждаются технические детали, возможные альтернативы (Tiller, самописные решения) и скептицизм относительно цены в $5 за продукт.
AMD signs AI chip-supply deal with OpenAI, gives it option to take a 10% stake 🔥 Горячее 💬 Длинная дискуссия
AMD заключила сделку с OpenAI о поставках чипов для искусственного интеллекта, предоставив также опцион на приобретение 10% доли в компании. Это стратегическое партнёрство усиливает позиции AMD на рынке AI-чипов, где доминирует NVIDIA, и обеспечивает OpenAI доступ к передовым аппаратным решениям для разработки и масштабирования своих моделей.
Опцион на долю демонстрирует глубокую интеграцию интересов: AMD получает ключевого клиента и потенциального инвестора, а OpenAI — влияние на поставщика и приоритетный доступ к технологиям. Это может ускорить инновации в области аппаратного обеспечения для ИИ и снизить зависимость от единственного поставщика.
Комментарии (309)
- AMD предоставила OpenAI опцион на покупку 10% своих акций по цене $0.01 за акцию при выполнении определенных условий
- Сделка призвана стимулировать OpenAI к закупкам GPU AMD на сумму до $100 млрд и совместной разработке ПО для AI-чипов
- Рыночная капитализация AMD выросла примерно на $100 млрд после анонса, что частично компенсирует стоимость опциона
- Многие участники обсуждения расценивают сделку как признак финансового пузыря и циркулярных денежных потоков в AI-индустрии
- Партнерство рассматривается как стратегический ход для создания альтернативы доминированию NVIDIA и CUDA
Modern messaging: Running your own XMPP server
Запуск собственного XMPP-сервера на базе ejabberd позволяет избежать слежки за перепиской и утечек данных, которые характерны для коммерческих мессенджеров. Это особенно актуально на фоне планов ЕС по автоматическому мониторингу всех чатов и сообщений. XMPP поддерживает шифрование OMEMO, обмен файлами, групповые чаты и аудио-/видеозвонки, оставаясь ресурсоэффективным решением.
Для развёртывания сервера требуется настроить DNS-записи для оснвных и вспомогательных поддоменов, установить ejabberd через официальный репозиторий или GitHub, открыть необходимые порты (5222, 5269, 5280 и другие) и настроить конфигурацию в YAML. Ключевые настройки включают отказ от модулей, нарушающих приватность (mod_last, mod_bosh), использование SQLite вместо Mnesia и генерацию свежих DH-параметров. Все шаги автоматизированы с помощью Ansible-ролей в открытом репозитории.
Комментарии (114)
- Участники обсуждают проблемы с клиентами XMPP, особенно на iOS: отсутствие реакций, ненадежные уведомления, неудовлетворительный пользовательский интерфейс и недостаток современных функций (гифки, звонки).
- Многие отмечают простоту настройки и надежность серверов XMPP (Prosody, ejabberd), но подчеркивают, что основная сложность для широкого внедрения — это сетевой эффект и нежелание неподготовленных пользователей мириться с отсутствием привычного удобства.
- В качестве альтернатив упоминаются Matrix (критикуется за сложность и нестабильность), Delta.Chat (на основе email) и Signal (отмечаются проблемы с приватностью из-за номера телефона и возможный уход из ЕС).
- Поднимается вопрос цензуры и тотального мониторинга в ЕС, что может подтолкнуть пользователей к самохостингу и децентрализованным решениям.
- Обсуждаются технические аспекты развертывания: проблемы с блокировкой портов на публичных сетях, необходимость reverse proxy, использование Docker для упрощения установки и управления.
Embracing the parallel coding agent lifestyle
Инженеры всё чаще запускают несколько агентов одновременно — например, одновременно работают несколько экземпляров Claude Code или Codex CLI в разных директориях или даже в разных репозиториях. Саймон Уиллисон, который сам пишет код на Python и JavaScript, решил проверить, насколько полезно это на практике.
Основная идея: если ты уже знаешь, что именно ты хочешь сделать, то параллельные агенты позволяют тебе экономить время на рутинные задачи, пока ты сам занят более сложной работой. Агент может исследовать новую библиотеку, собрать доказательства концепции или найти примеры использования API без всякого риска для проекта. Для таких задач достаточно лишь четко указать модели, что именно от нее требуется.
В статье приводятся конкретные примеры: агент может самостоятельно запустить тесты и увидеть, что за ним стоит поправить предупреждение об устаревшем вызове. Или же, если ты уже решил, какую архитектуру использовать, можно просто сказать агенту, какие именно классы и методы нужно вызвать, и он сам найдет, где их стоит применить.
Саймон отмечает, что главное — это четко формулировать задачу и дать агенту контекст. Тогда сгенерированный код будет легко и быстро проверяем, и ревью требуется меньше усилий. Он также подчеркивает, что важно следить, чтобы агент не пытался внедрить изменения в тот репозиторий, где это не требуется. С другой стороны, если агент предлагает решение, которое требует лишь небольшой доработки, это может быть выгодно при условии, что оно не будет затем отвергнуто.
В заключение Саймон пишет, что пока еще не ясно, какие именно задачи лучше всего делегировать агенту, а какие стоит выполнять самому. Он экспериментирует с разными моделями и способами их запуска, включая запуск в Docker-контейнерах для изоляции. Он также отмечает, что в будущем, вероятно, придется еще больше полагаться на такие инструменты, и потому важно научиться использовать их эффективно и безопасно.
Комментарии (121)
- Обсуждение в основном вращается вокруг трёх тем: высокая стоимость ревью кода, параллельные агенты и их влияние на фокус и продуктивность, а также культурные и этические аспекты использования AI-агентов.
- Участники делятся личными стратегиями, такими как использование различных инструментов вроде Conductor и Crystal для управления агентами, и обсуждают, как сделать их более эффективными.
- Обсуждается, как сделать ревью кода менее трудоёмким, включая использование инструментов вроде bottleneck для ревью кода, и как влияет на продуктивность и фокус.
- Также обсуждается, как влияет на эффективность работы использование AI-агентов, и какие могут быть последствия для долгосрочной устойчивости и качества кода.
Nobel Prize in Physiology or Medicine 2025 🔥 Горячее
Нобелевскую премию по физиологии или медицине 2025 года получили Мэри Бранкоу, Фред Рамсделл и Симон Сакагути за открытие механизмов периферической иммунной толерантности. Они обнаружили регуляторные Т-клетки, которые действуют как «охранники» иммунной системы, предотвращая атаки на собственные ткани организма.
Их работа объяснила, как иммунитет отличает патогены от здоровых клеток, даже когда микробы маскируются под человеческие ткани. Это открытие фундаментально для понимания аутоиммунных заболеваний и привело к разработке новых методов лечения, например, с использованием регуляторных Т-клеток для подавления избыточного иммунного ответа.
Комментарии (68)
- Доктор Бранко сначала проигнорировала звонок из Швеции, приняв его за спам, и узнала о премии от фотографа.
- Двое американских лауреатов были «тёмными лошадками», не отмеченными другими крупными научными наградами.
- Открытие регуляторных T-клеток (T-reg) привело к прорыву в лечении аутоиммунных заболеваний, например, 40 пациентов с волчанкой уже в ремиссии.
- Нобелевский комитет предоставляет популярные объяснения открытий для широкой публики.
- Имя одного из лауреатов, Шимона, в японском языке можно интерпретировать как «решительный учёный», что стало примером номинативного детерминизма.
Testing two 18 TB white label SATA hard drives from datablocks.dev
Два 18 ТБ SATA-диска без бренда, купленные у европейского магазина datablocks.dev, оказались внешне слегка потертыми, но полностью рабочими. Цена — €13 за терабайт, что на 16,7 % дешевле, чем перепроданный Seagate. Диски пришли в картонной коробке с вмятиной и в антистатических пакетах, но без каких-либо кабелей или винтов. Автор тестирует их в домашнем сервере и делится впечатлениями: шум, энергопотребление и цена за гигабайт.
Комментарии (124)
- Обсуждение показало, что пользователи используют ноутбуки как серверы и NAS, несмотря на ограничения вроде отсутствия ECC-RAM и множества SATA-портов.
- Участники обсуждали, что использование ноутбука в качестве сервера или NAS может быть экономически выгодным, особенно если учитывать стоимость электроэнергии и покупка готового решения.
- Обсуждались преимущества и недостатки использования ноутбука в качестве сервера, включая вопросы энергоэффективности, шумности, и возможность подключения внешних накопителей.
- Участники также обсудили, что использование ноутбука как сервера или NAS может быть более экономически выгодным, особенно если учитывать стоимость электроэнергии и покупка готового решения.
Under the hood: Vec<T>
Rust-разработчик взглянул на Vec<T> и обнаружил, что вместо ожидаемых трёх полей ptr, len, capacity внутри структура скрыта целая иерархия обёрток: RawVec, RawVecInner, Unique, NonNull и NonNull<T> — всё ради безопасности и гибкости. Это вызвало вопрос: зачем такая сложность, если можно было обойтись тремя полями? Ответ оказался в том, что каждый слой добавляет безопасность и абстракцию, защищая от ошибок с указателями.
Комментарии (114)
- Обсуждение развивалось вокруг того, что стандартная библиотека Rust предоставляет безопасные абстракции над низкоуровневыми деталями, но при этом не скрывает их полностью, и что это влияет на то, как код на Rust выглядит и ощущается.
- Участники обсуждали, что сложность реализации Vec в стандартной библиотеке Rust отражает компромисс между безопасностью и производительностью, и что это влияет на то, как разработчики думают о системе типов и управлении памятью в Rust.
- Также обсуждались вопросы о том, как документация и обсуждение в сообществе Rust может быть улучшена, включая сравнение с C++ и обсуждение того, как язык программирования влияет на то, как мы думаем о коде.
- Участники также затронули тему того, что сложность реализации может отпугнуть новичков, но что это может быть уменьшено путем улучшения документации и обучающих материалов.
- В конце концов, обсуждение завершилось тем, что участники сошлись на том, что хотя Rust и предоставляет мощные и безопасные абстракции, это не делает его легким для новичков без качественного обучения и документации, и что это может быть улучшено.
Structured Procrastination (1995) 🔥 Горячее
Структурированная прокрастинация — это стратегия превращения склонности откладывать дела в продуктивность. Вместо того чтобы бездельничать, прокрастинатор выполняет менее срочные, но всё же полезные задачи из своего списка, чтобы избежать самых важных и пугающих. Так, откладывая написание статьи, можно переключиться на проверку работ студентов или общение с коллегами — и в итоге сделать многое, просто не то, что планировалось изначально.
Ключевой момент — правильно организовать список дел: наверху должны оказаться задачи, которые кажутся срочными и важными, но на самом деле таковыми не являются (например, статья с просроченным дедлайном или форма заказа книг). Это создаёт мотивацию для выполнения других полезных дел, пока вы избегаете вершин списка. Таким образом, прокрастинатор сохраняет продуктивность и даже зарабатывает репутацию человека, который успевает многое. Опасно лишь сокращать список задач до минимума — тогда исчезает сама возможность структурированного откладывания, и человек рискует впасть в полное бездействие.
Комментарии (148)
- Участники обсуждают личный опыт прокрастинации, связывая её с ADHD и другими особенностями, такими как интерес-базированная система внимания.
- Поднимается тема «структурированной прокрастинации» как стратегии, когда менее важные задачи используются для избегания более важных, но это может приводить к хаосу.
- Обсуждается, что прокрастинация часто вызвана не ленью, а неприятием бессмысленной работы или необходимостью выхода из стабильного состояния.
- Отмечается рост упоминаний ADHD в обсуждениях о прокрастинации за последние годы.
- Некоторые пользователи видят в прокрастинации потенциальную суперсилу или способ избежать выгорания, переключаясь между задачами.