Reading view

Teen who recorded San Diego mosque shooting livestream has been charged with murder, DA says

A North Carolina district attorney says a 17-year-old girl who recorded a livestream of a shooting that killed three people at a San Diego mosque and disseminated the attackers' white-supremacist writings has been charged with murder by aiding and abetting.

  •  

Olivia Rodrigo’s Daisy Chain Fields: A New Feminist Music Festival Takes Shape

At the first Daisy Chain Fields festival, the 23-year-old pop star presented a cross-generational vision of female empowerment. (With Taco Bell activations, too.)

© Amanda Hakan for The New York Times

  •  

Lionel Messi’s Retirement From Soccer Sparks Heartbreak Across Argentina

Lionel Messi’s retirement from the national soccer team, though widely expected, sparked fears of a diminished squad, and heartbreak over the departure of a national icon.

© Vincent Alban for The New York Times

Lionel Messi during the 2026 FIFA World Cup Final against Spain in July, in East Rutherford, N.J.
  •  

Как мы скрестили Go, Rust и MCP, чтобы построить масштабируемый оркестратор ИИ-агентов

Model Context Protocol (MCP) от Anthropic перевернул работу с ИИ-агентами, но когда их становится больше трех, начинается ад с правами доступа, сетевым I/O и визуальным контролем. Мы задолбались собирать костыли на Python и написали масштабируемый опенсорс-оркестратор. Внутри — честный инженерный разбор: почему для ядра выбрали Go, как упаковали асинхронный движок JSON-RPC 2.0 на Rust в cdylib для вызова через cgo, и как мы героически побеждали утечки памяти на стыке этих двух миров.

Читать далее
  •  

Fluent Swap: как я вышел за пределы CRUD и начал разрабатывать matchmaking на Go

Большинство backend‑проектов начинаются предсказуемо: HTTP‑запрос, бизнес‑логика, SQL и ответ клиенту. Но что изменится, если вместо очередного CRUD нужно одновременно искать собеседников, поддерживать долгоживущие WebSocket‑соединения и не допускать двойного matchmaking?

В этой статье я расскажу, как появился Fluent Swap, почему его первая версия работает без базы данных и как очередь в памяти одного Go‑процесса постепенно подводит архитектуру к Redis и горизонтальному масштабированию.

Читать далее
  •  

Анимации в терминале — это сложно (иногда)

Не так давно я на ровном месте занялся написанием библиотеки на Go (spinq) для, казалось бы, тривиальной задачи — спиннера, который гарантированно не будет ломаться при конкурентных записях в stderr и stdout.

Все началось с того, что я писал вообще другой код — консольную утилиту для запуска тестов. И захотел прикрутить туда спиннер. Но не просто спиннер, а такой, что позволил бы использовать оба потока вывода — stderr и stdout, без риска оставить артефакты на экране. Более того, во время анимации мне нужно иметь возможность показывать на экране отчеты по завершившимся тестам, не откладывая это все до конца запуска/остановки спиннера. И так уж почему‑то получилось (спойлер: потому что не слишком просто, иногда совсем невозможно и мало кому нужно), что я не смог найти библиотеку, которая бы мне подошла.

Читать далее
  •  

Находки в опенсорсе: мир питона за август 2026

Всем привет, вот и заканчивается лето :(

Мой прошлый дайджест неожиданным образом зашел, а значит - людям такое интересно. В августе было много новых интересных PEP’ов (например, PEP 805: Safe Parallel Python), которые я поревьюил, было много новых релизов, было много новых опенсорс проектов чуваков из нашего сообщества, пару интересных подкастов и множество другого интересного!

С меня как всегда статья без нейрослопа и ИИ, с вас как всегда интересные комментарии и лайки! Но немного нейрослопа я все же добавил в некоторые свои проекты. Но осторожно и с пользой для всех.

Погнали смотреть, что у нас в питоне происходило!

Читать далее
  •  

Судьба в пайплайне: пишем детерминированный Quality Gate на Go с механикой Таро

В рамках этой статьи расскажу, как реализовалась идея о псевдорандоме и магии внутри пайплайна, и как я выложил инструмент который гадает «удачный ли будет релиз?» с помощью Таро на GitHub Market.

Читать далее
  •  

[Перевод] Rust 1.98.0: алгебраические методы для f32,f64, исправление взаимодействия между ManuallyDrop и Box

Команда Rust рада объявить о выходе новой версии Rust — 1.98.0. Rust — это язык программирования, который помогает каждому создавать надёжное и эффективное программное обеспечение.

Если у вас уже установлена предыдущая версия Rust через rustup, вы можете получить 1.98.0 командой:

$ rustup update stable

Если Rust ещё не установлен, вы можете получить rustup на соответствующей странице нашего сайта и ознакомиться с подробными release notes для 1.98.0.

Если вы хотите помочь нам, тестируя будущие релизы, рассмотрите возможность переключиться локально на beta-канал (rustup default beta) или nightly-канал (rustup default nightly). Пожалуйста, сообщайте о любых обнаруженных ошибках!

Читать далее
  •  
❌