Перейти к содержимому
Технологии IT обновлён 26.03.2025

Rust Books

Rust Books — канал для разработчиков на Rust. Здесь вы найдёте книги и материалы для изучения языка.

Публикации канала

Настройка Linux-окружения перед началом работы: профессиональные советы Как правильно настроить Linux-окружение для разработки: обновления, SSH, zsh, Git, Docker, pyenv и dotfiles. Пошаговый чек-лист с командами. Час, потраченный на настройку Linux-окружения, экономит десятки часов на отладке конфликтов версий, потерянных ключей и ручных повторений. Разработчики с опытом придерживаются одного правила: система должна быть безопасной, воспроизводимой и удобной с первого дня. Ниже - пошаговое руководство для Ubuntu/Debian (для Fedora замените apt на dnf). Советы подходят для рабочей станции, VPS и WSL2. https://uproger.com/nastrojka-linux-okruzheniya-dlya-raboty/

Открыть в Telegram

📘 На Mentorix вышел курс — «Rust-разработчик: подготовка к собеседованию» Хотите на собеседовании спокойно объяснить, откуда E0502, чем Send отличается от Sync и как устроен Future? Этот курс — полный путь от диагностики пробелов до пробных собеседований junior, middle и senior. • Владение и заимствование: E0382, E0502, E0597, NLL • Времена жизни: elision, HRTB, variance • Типажи: dyn Trait, object safety, blanket impl • Умные указатели: Box, Rc, Arc, RefCell, Cow • Конкурентность: Send и Sync, Mutex, атомики и Ordering • Async изнутри: Future, Waker, Pin — без tokio • Unsafe и FFI: UB, MaybeUninit, repr(C) • Live-coding: LRU-кэш, трие, Dijkstra, парсер выражений • Карьера: резюме, оффер, торг о зарплате 🎓 Сертификат — добавьте в резюме или LinkedIn 🏷 Скидка 50%, действует 48 часов 12 990 ₽ → 6 495 ₽ ➜ Пройти курс на Mentorix Ещё 25 курсов бесплатно — доступны после регистрации

Открыть в Telegram

В systemd добавлена возможность разработки компонентов на языке Rust В кодовую базу системного менеджера systemd принято изменение, добавляющее возможность создания компонентов на языке Rust. Rust намерены использовать только для разработки новых компонентов, а существующий код на языке Си переписывать на Rust не планируют. Пакетный менеджер cargo в процессе сборки не применяется, остаётся задействована только сборочная система Meson. Rust-код используется в режиме no_std (без стандартной библиотеки), разрешено использовать только библиотеки core, alloc и libc. Полный текст: https://opennet.ru/66539/ https://opennet.me/66539/

Открыть в Telegram

Forwarded From Big Data AI Ник Матсакис предлагает для Rust северную звезду эпохи ИИ-агентов: ноль unsafe-кода Один из ключевых людей в дизайне Rust опубликовал текст о том, что кодинг-агенты значат для языка. Это письменная версия доклада на REBASE в рамках SPLASH. Сам автор называет содержимое «недопечёнными идеями», так что это видение, а не предложение новых фич. Выводы такие: люди в программировании всё ещё нужны, дизайн языков по-прежнему важен, а Rust хорошо подходит для агентной разработки и может подойти ещё лучше. По производительности аргумент простой. Хорошие значения по умолчанию плюс явные ручки для тонкой настройки. По словам автора, люди, которые раньше вручную оптимизировали криптографический код, теперь обращаются к агентам. Вместе с профайлером вроде dial9 получается цикл: бенчмарк, профиль, агент предлагает правку, PR в репозитории. С надёжностью сложнее. Типы удерживают агента в рамках, но тесты показывают наличие багов, а не их отсутствие, и типы гарантируют лишь отсутствие определённых классов ошибок, а не корректность результата. Тут нужны доказательства. Для Rust уже есть Verus, Creusot, Aeneas и Kani. При этом типы продолжают играть роль, потому что делают доказательства дешевле. &mut даёт гарантию уникальности, и Verus опирается на borrow checker именно ради этого, чтобы солверу было проще. Куда, по мнению Матсакиса, стоит двигаться: более выразительная система типов (view types, внутренние ссылки, даже проверка вроде «в лог не попадают персональные данные»), расширяемый компилятор, чтобы инструменты доказательств не жили на костылях из макросов и привязке к конкретным версиям компилятора, и поддержка доказательства корректности unsafe-кода. Северная звезда: больше никакого unsafe. Это не значит убрать ключевое слово. Это значит уметь доказать, что весь unsafe-код корректен и не приводит к неопределённому поведению. Главной открытой проблемой автор называет дизайн, то есть решение о том, что вообще строить. Ставка на специализированные языки дизайна, которые превращают высокоуровневое намерение в проверки типов, линты или теоремы. Для контекста Матсакис цитирует Дэвида Толная: инженеры Meta в этом году написали первосторонний Rust-кода вдвое больше, чем за предыдущие девять лет вместе взятые. Блог: https://smallcultfollowing.com/babysteps/blog Источник: https://smallcultfollowing.com/babysteps/blog

Открыть в Telegram

🔥 Хочешь быстрее расти в IT? Хватит учиться в одиночку Окружение решает больше, чем кажется. Собрал папки и каналы, где можно быстрее влиться в нужное направление, следить за трендами и не вариться в своём пузыре. AI: t.me/ai_machinelearning_big_data Python: t.me/pythonl Linux: t.me/linuxacademiya Хакинг: t.me/linuxkalii DevOps: t.me/DevOPSitsec Docker: https://t.me/+90Z5TAyfuNU5YmRi Golang: t.me/Golang_google Rust: t.me/rust_code C++: t.me/cpluspluc C#: t.me/csharp_ci Java: t.me/javatg JavaScript: t.me/javascriptv React: t.me/react_tg Frontend: t.me/front PHP: t.me/phpshka Android: t.me/android_its Мобильная разработка: t.me/mobdevelop Базы данных: t.me/sqlhub Data Science: t.me/data_analysis_ml Big Data: t.me/bigdatai Математика: t.me/data_math Физика: t.me/fizmat Kubernetes: t.me/kubernetc GameDev: https://t.me/gamedev Haskell: t.me/haskell_tg Собеседования и карьера: DS собеседования: t.me/machinelearning_interview Python собеседования: t.me/python_job_interview Папка с вакансиями: t.me/addlist/_zyy_jQ_QUsyM2Vi Папка Go разработчика: t.me/addlist/MUtJEeJSxeY2YTFi Папка Python разработчика: t.me/addlist/eEPya-HF6mkxMGIy Папка ML: https://t.me/addlist/2Ls-snqEeytkMDgy Папка Frontend: https://t.me/addlist/mzMMG3RPZhY2M2Iy Полезное сверху: ИТ-мемы: t.me/memes_prog Английский для программистов: t.me/english_forprogrammers ИИ и технологии: t.me/vistehno 954 ГБ open-source курсов: https://t.me/+rKBQEMccAA01MTcy ИТ-книги бесплатно: https://t.me/addlist/BkskQciUW_FhNjEy Max Ai: https://max.ru/ai_machinelearning_big_data Max python: https://max.ru/pythonl ТЕХНО: https://max.ru/vistehno Max Go: https://max.ru/Golang_google Max Linux: https://max.ru/linuxkalii Devops: https://max.ru/DevOPSitsec C#: https://max.ru/csharp_ci C++: https://max.ru/cpluspluc SQL: https://max.ru/sqlhub Java: https://max.ru/javatg Подписывайся на нужные направления и собирай себе ленту, которая реально двигает вперёд.

Открыть в Telegram

🧩 Чем жила инфраструктура Rust: итоги Q3 и планы на Q4 Команда инфраструктуры Rust подвела итоги третьего квартала. Это та кухня, на которой держатся crates.io, docs.rs, CI и вся обвязка вокруг компилятора. Собрали самое интересное. Безопасность и мониторинг. Логи из GitHub Enterprise, AWS CloudTrail, Heroku, Wiz, Fastly и Datadog теперь стекаются в Datadog Cloud SIEM. На crates.io и docs.rs повесили Next-Gen WAF и защиту от DDoS от Fastly, что уже помогло отбить атаки на crates.io. CDN стал быстрее. Из обработки загрузок убрали одну регулярку, и время вычислений на узлах Fastly упало примерно на 10%. В HEAD-ответы для .crate файлов добавили Content-Length, починив проблемы с Buck2. Железо и CI. Playground переехал с c5a.large на c7a.xlarge, дисковые квоты подняли до 200 ГБ на пользователя. Добавили ARM-инстанс под rustc-perf, внешние раннеры под s390x и armv7 и три крупных ARM-раннера под rustls за счёт ARM. Таргет riscv64gc-unknown-linux-musl дорос до tier 2 с host tools. Боты и гигиена. Для rust-lang/rust настроили Renovate, по всей организации включили алерты Dependabot. Воркфлоу crabwatch гоняет 23 аудита Zizmor по умолчанию. 25 репозиториев переименовали из master в main, сейчас расклад 113 на main против 56 на master. Семь крейтов перевели на trusted publishing. Экономия. On-call переехал с PagerDuty на Datadog On-Call, что дешевле и убирает лишнюю зависимость. Загрузки на 100% пустили через Fastly, чтобы тратить AWS-кредиты, оставив около 0,4% на CloudFront как запасной вариант. Планы на Q4. Докрутить SAML SSO, перевезти рассылки с Mailgun на Google Groups, собрать все логи в Datadog. Отдельная большая задача: перестать деплоить с личных ноутбуков и перейти на централизованное окружение с контролем доступа. Заодно выключат самохостный стек Prometheus, Alertmanager и Grafana. Скучная на вид инфраструктурная рутина, но именно она объясняет, почему cargo build тянет крейты быстро и без падений. https://blog.rust-lang.org/inside-rust/2026/10/12/infrastructure-team-q3-recap-and-q4-plan/

Открыть в Telegram

Учить Rust через язык, который уже знаешь. Microsoft собрала бесплатную коллекцию руководств: Rust для разработчиков на C/C++, C# и Python. Вместо объяснений с нуля каждый гид опирается на знакомые концепции и показывает, что в Rust устроено иначе. Есть и материалы для тех, кто уже пишет на Rust: асинхронность, продвинутые паттерны, проектирование с помощью типов и инженерные практики. Книги Microsoft - https://microsoft.github.io/RustTraining/

Открыть в Telegram

20 примеров кода на Rust: чистый и идиоматичный код от функций до traits и многопоточности Rust ценят не только за производительность и безопасность памяти. Язык подталкивает разработчика к чистому коду: ошибки обрабатываются явно, зависимости видны, а состояние сложно изменить случайно. Лучше всего это понять на практике, поэтому ниже собраны примеры кода на Rust с коротким разбором каждого приёма. https://uproger.com/primery-koda-na-rust/

Открыть в Telegram

Миграция с Go на Rust: честный гайд Маттиас Эндлер, основатель Rust-консалтинга corrode и ведущий подкаста Rust in Production, выпустил большой гайд по переходу с Go на Rust. Ценен он тем, что автор не притворяется нейтральным. Он прямо пишет, что не любит Go и считает его плохо спроектированным, хоть и очень успешным языком, а его бизнес зарабатывает на Rust. При этом в тексте полно честных признаний сильных сторон Go, цитат инженеров из InfluxData, PubNub, Microsoft и Canonical и конкретных цифр по реальным миграциям. Раньше Эндлер уже сравнивал эти языки в статье «Go vs Rust? Choose Go.» 2017 года и в практическом сравнении для Shuttle. Разбираем главное. https://uproger.com/migracziya-s-go-na-rust-chestnyj-gajd/

Открыть в Telegram

🦀 Strand-Rust-Coder-14B - открытая модель для Rust с локальным запуском Fortytwo дообучила Qwen2.5-Coder-14B-Instruct на 191 тыс. синтетических примеров. Специализация - генерация кода, работа с ownership и lifetimes, поиск ошибок, рефакторинг и написание тестов. Датасет охватывает 15 категорий задач и использует 2383 крейта с crates.io. Примеры проходили взаимную проверку несколькими моделями и тестирование компиляции. По оценкам авторов, после дообучения: * RustEvo²: 30% → 43% * отложенный набор задач: 29% → 48% Оценивали долю решений, прошедших тесты с первой попытки, в окружении Rust 1.86.0. Веса доступны под Apache 2.0. Модель можно запускать локально через Transformers или vLLM; также опубликованы квантованные версии. https://huggingface.co/Fortytwo-Network/Strand-Rust-Coder-14B-v1

Открыть в Telegram

⚡️ Одинаковый async/await - разное поведение программы Исследователи Brown University сравнили семь реализаций асинхронности: JavaScript, C#, Swift, Tokio, Smol, Asyncio и Trio. Ни одна пара не показала полностью одинаковую семантику. В простом 12-строчном примере функция запускает фоновую запись в лог и завершает работу. Результат зависит от среды: * JavaScript: AC * C#: C * Tokio: ACB * Swift: AC * Trio: ABC Авторы выделили девять параметров, влияющих на выполнение: ленивость, гарантии приостановки, время жизни задачи, сила ссылок, уничтожение, передача исключений, обработка отмены, её направление и сохранение задачи. Особенности Rust: * вызов async fn только создаёт Future - выполнение начинается после опроса через runtime * задача не получает внутренний сигнал отмены, как в Swift или Python с Trio Одинаковый синтаксис скрывает разные правила запуска, отмены и завершения задач. http://cel.cs.brown.edu/blog/design-space-async-await

Открыть в Telegram

Forwarded From React JS ⚡️ React Compiler переписали на Rust - сборка ускорилась в 17 раз Команда Master.dev перевела React Router-проект на новый нативный React Compiler из экосистемы oxc и получила очень заметный прирост скорости. На кодовой базе из 1 036 файлов: - Babel-версия компилятора - 14,3 с - Rust-версия - 0,81 с - ускорение компилятора - примерно 17,6× - вся сборка ускорилась с 22,1 до 9,3 с, то есть примерно в 2,4 раза Важно: 17× относится именно к работе React Compiler, а не ко всему build pipeline. Новый вариант построен вокруг oxc-transform-react. В @vitejs/plugin-react 6.1 появилась экспериментальная поддержка нативного компилятора: import { defineConfig } from "vite"; import react from "@vitejs/plugin-react"; export default defineConfig({ plugins: [react({ compiler: true })], }); После перехода можно убрать Babel-слой и @rolldown/plugin-babel, что делает конфигурацию не только быстрее, но и проще. Есть и функциональные улучшения: Rust-версия уже поддерживает некоторые конструкции, на которых старый Babel-компилятор делал bailout, включая часть логики в try/catch, computed property keys и отдельные случаи с destructured props. Для больших React-проектов это особенно интересно из-за CI: меньше времени на компиляцию - меньше GitHub Actions minutes и быстрее feedback loop. https://blog.master.dev/react-now-rusted-all-the-way-out/ @react_tg

Открыть в Telegram

GreptimeDB - open-source база для observability, которая пытается собрать metrics, logs и traces в одном backend. Вместо отдельных систем для каждого типа телеметрии здесь используется общий табличный подход с тегами, timestamp и полями поверх колонночного движка и object storage. Что умеет: - объединять metrics, logs и traces и связывать их через SQL по service, host, trace ID и другим идентификаторам - принимать данные через OpenTelemetry, Prometheus Remote Write, Loki Push, Elasticsearch Bulk, InfluxDB Line Protocol и gRPC - поддерживать SQL, PromQL и Jaeger-совместимые запросы для traces - хранить данные в S3, GCS, Azure Blob и S3-совместимых хранилищах - настраивать retention, downsampling, continuous aggregation, partitioning и индексы Может быть интересен тем, кто устал поддерживать несколько отдельных хранилищ для телеметрии и хочет свести observability-стек к одной системе. Apache 2.0. https://github.com/GreptimeTeam/greptimedb

Открыть в Telegram

🦀 grep 0.2.0 вышел - Rust-версия GNU grep стала заметно ближе к оригиналу Теперь проект поставляется с готовыми бинарниками для Linux, macOS и Windows. Главные изменения: - много исправлений после differential fuzzing против GNU grep - поправили bracket expressions - исправили zero-width matches - привели exit codes ближе к поведению GNU grep - проходит 78 из 128 тестов GNU против 75 раньше Пока это ещё не полная замена GNU grep, но совместимость постепенно растёт. https://github.com/uutils/grep/releases/tag/0.2.0 GitHub Release 0.2.0 · uutils/grep We are happy to announce the release of uu_grep 0.2.0 - a release focused on GNU compatibility and on shipping binaries. This cycle turned the differential fuzzer and the GNU test suite into a stea...

Открыть в Telegram

Rust, который наконец становится понятным 🦀 Давно хочешь выучить Rust, но ownership, borrowing и lifetimes выглядят как отдельный вид боли? Этот курс проведёт тебя с самого начала до уровня, где ты уже пишешь реальные системные и сетевые программы. Ты разберёшь: Ownership → Borrowing → ошибки → коллекции → Generics → Traits → модули → тесты → сетевой код Никакого бесконечного чтения документации. После каждого урока ты сразу пишешь код, проходишь тесты и решаешь задачу с автопроверкой. 🔥 Rust с нуля 🔥 5–6 часов в неделю 🔥 Практика после каждого урока 🔥 Подойдёт после Python, JavaScript, Java и других языков 🔥 Можно начать сразу В конце у тебя будет понимание Rust, с которым уже можно писать быстрые backend-сервисы, сетевые приложения и системные утилиты, а не смотреть на borrow checker как на врага. Пора добавить Rust в свой стек. Начинай курс и пиши первый код уже сегодня: https://stepik.org/a/294885/

Открыть в Telegram

🦀 Rust target-директории становятся заметно меньше Cargo тестирует в nightly новый подход, который сокращает дублирование метаданных в build-артефактах. По результатам тестов размер target удалось уменьшить до 33%. Особенно полезно для больших проектов и CI, где артефакты сборки быстро разрастаются. Подробнее: https://blog.rust-lang.org/inside-rust/2026/08/18/reducing-target-dir-size-on-nightly/ blog.rust-lang.org Experiment in reducing target directory size on nightly | Inside Rust Blog Want to follow along with Rust development? Curious how you might get involved? Take a look!

Открыть в Telegram

Комментарии

0

Комментарии пишут вошедшие — так видно, кто автор.

Войти

Комментариев пока нет

Будьте первым, кто расскажет о канале другим.

Пожаловаться на канал

Расскажите, что не так: модератор проверит канал и примет решение. Подпись не нужна, но почту можно оставить — тогда ответим.

Причина Что не так (необязательно) Почта для ответа (необязательно)
Открыть в Telegram