Rust programming language По всем вопросам- @haarrp @ai_machinelearning_big_data - машинное обучение @programming_books_it - бесплатные it книги @pythonl - 🐍 @ArtificialIntelligencedl - AI @datascienceiot - ml 📚
🦀 Rust-задача: неожиданный вывод из-за владения и `for`
fn main() {
let data = vec!["rust", "go", "zig"];
for item in data {
println!("{item}");
}
println!("{:?}", data);
}
rust
, go
, zig
, затем ["rust", "go", "zig"]
data
уже перемещён &str
копируются for item in data
в Rust перемещает `data`, потому что Vec<T>
по умолчанию потребляется в IntoIterator
. Это значит, что после цикла data
больше не принадлежит функции main
.data
в println!
после этого приведёт к ошибке компиляции: value borrowed after move
.
for item in &data {
println!("{item}");
}
println!("{:?}", data);
🎮 PartyDeck‑RS — мультиплеерный лаунчер с разделённым экраном для Linux/SteamOSpartydeck‑rs
— это лаунчер, написанный на Rust, который позволяет запускать до 4 копий одной игры одновременно — с автопозиционированием окон, разграничением контроллеров и сохранений.
🚀 Основные возможности
- Запуск до 4 экземпляров игры с автоматическим размещением окон на одном экране
- Поддержка как Linux-игр, так и Windows-версий через Proton
- Эмуляция Steam Multiplayer API для запуска нескольких копий локально
- Контроллеры без конфликтов — каждый экземпляр видит только свой контроллер благодаря bubblewrap
- Профили игроков: отдельные сохранения и настройки
- Поддерживает SteamOS (без дополнительной настройки)
🛠 Установка и использование
1. Скачать [релиз](#) (например, `partydeck-rs-0.3.2`) и распаковать.
2. На SteamOS (версия 3.7+): запустить partydeck-rs
или добавить PartyDeckKWinLaunch.sh
как non‑Steam игру — и отключить Steam Input в настройках
3. На Desktop Linux с KDE Plasma:
- Убедиться, что установлены Gamescope и bubblewrap
- Запустить partydeck-rs
из терминала
При первом запуске автоматически скачиваются UMU Launcher и Goldberg Steam Emu
📦 Последние версии
- v0.3.2 "Laying Low" (3 июня 2025):
- Исправлено создание папки AppData/LocalLow
для Proton-игр
- Встроен новый handler для Luma Island
- v0.3.1 "Dual‑Sensed" (2 июня 2025):
- Улучшена поддержка PS4/PS5 контроллеров через ProtonGE {index=6}
- v0.3.0 "Steamed Hams" (2 июня 2025):
- Автоматический поиск Steam-установок
- Проверка обновлений и начало работы над автообновлением
- Обновлён формат handler’ов (имена полей Steam API)
- Включён шаблон handler’а для упрощённого создания
⚠️ Ограничения и планы
- Не поддерживает AppImage/Flatpak — только исполняемые файлы
- Пока работает только на одном экране; мульти‑монитор и мышь/клавиатура — в планах- UI простое, без прогресс‑баров — заморозка интерфейса возможна
- Желание улучшить контроллер‑ориентированный UI, но пока нет планов
📚 Архитектура
Используются:
- KWin-session для управления окнами
- Gamescope для каждого экземпляра и обработки контроллеров
- Bubblewrap — разграничение устройств и директорий
- Steam Runtime/Proton — для совместимости Windows-игр
- Goldberg Steam Emu — для эмуляции Steam‑сети в мультиплеере
💡 Зачем это нужно
Это удобное решение для локального кооператива на ПК, особенно на одном экране. Игры, изначально не поддерживающие split-screen, теперь можно запускать вместе с друзьями.
https://github.com/wunnr/partydeck-rs
Athena Crisis — это современная реализация тактической стратегии в духе Advance Wars с использованием движка Bevy.
Особенности:
* Сражения в стиле пошаговой стратегии
* Кампания с диалогами и кат-сценами
* Пользовательские карты и редактор уровней
* ИИ-противники
* Полностью кроссплатформенный: работает в браузере, на ПК и мобильных устройствах
* Сохраняемые игры
Проект в активной разработке. Вы можете попробовать демо прямо сейчас в браузере: Играть в демо
https://github.com/nkzw-tech/athena-crisis
@rust_code
💎 Quadratic — электронные таблицы нового поколения с кодом и ИИ. Проект предоставляет гибридную среду, где формулы, Python и SQL работают бок о бок, позволяя анализировать миллионы строк прямо в браузере без потерь производительности.
Особенность инструмента — технологичный стек (Rust, WebAssembly, WebGL). Интерфейс с поддержкой 60 FPS и масштабированием как в Figma делает работу с большими данными неожиданно плавной.
🤖 GitHub
@pythonl
PurrCrypt — шифратор на Rust, который маскирует серьёзную криптографию под мурлыканье котиков.
Под забавным интерфейсом — настоящая эллиптическая криптография, как у биткоина.
И да, есть режим с собаками 🐶.
https://github.com/vxfemboy/purrcrypt
🎯 Задача на владение (ownership) и ссылки в Rust
Напиши функцию longest_word<'a>(a: &'a str, b: &'a str) -> &'a str
,
которая возвращает слово с наибольшей длиной из двух строк.
Но есть ограничение: ты не можешь копировать строки — только возвращать ссылку.
📌 Пример:
fn main() {
let s1 = String::from("pirate");
let s2 = String::from("gold");
let result = longest_word(&s1, &s2);
println!("Longest: {}", result); // 👉 "pirate"
}
'a
, компилятор не поймёт, какая ссылка может жить дольше.String
нельзя — только &str
(ссылка на строку).МТС приглашает разработчиков на масштабную ИТ-конференцию True Tech Day 6 июня. Участие бесплатное.
В программе — спикеры российского и международного ИИ-рынка, лидеры бигтехов и ученые.
Тебя ждут 4 трека и 40+ докладов. Какие темы будем обсуждать:
— GPT для роботов: как ИИ учится взаимодействовать с реальным миром.
— Мультиагенты — главный AI-тренд 2025. Речь не просто о чат-ботах, а о системах, которые умеют спорить, сотрудничать и достигать целей.
— Автоматизация архитектурных аудитов с помощью ИИ: создание архитектурного datalake для сбора данных из Git, Kubernetes, мониторинга и других источников.
— Новая архитектура под AI: что приходит на смену микросервисам и как архитектор становится дизайнером когнитивного интерфейса.
— Архитектура «as code»: как автоматизировать проверку актуальности схем и генерировать их из реальной инфраструктуры, чтобы разработка всегда соответствовала замыслу архитектора.
— Разбор RAG: что это, зачем нужно, архитектурные подходы и их слабые места, как измерять качество и избегать ложных метрик.
Среди спикеров:
Иван Оселедец (AIRI), Пабло дель Веккио (NTT DATA), Кен Чжун Ли (Kyung Hee University), Алексей Друца (Яндекс), Александр Абрамов (Сбер), Павел Бабин (MWS GPT), Валентин Малых (MTS AI), Антон Скогорев (Т-Банк), Артем Якимчук (Сколтех) и другие эксперты.
Тебе точно стоит быть, если ты:
— разработчик, архитектор или технический руководитель;
— хочешь понять, что реально работает, а что — хайп.
Когда: 6 июня
Где: Москва, МТС Live Холл и онлайн
Регистрация по ссылке.
🦀 Rust понижает поддержку 32-битной сборки для Windows (i686-pc-windows-gnu)
26 мая 2025 года команда Rust официально объявила: начиная с версии Rust 1.88.0, цель i686-pc-windows-gnu
(32-битная сборка под Windows с GNU toolchain) больше не будет Tier 1. Её статус понижен до Tier 2 с поддержкой хост-инструментов.
🔧 Что изменится:
• Бинарники и стандартная библиотека по-прежнему будут доступны через rustup
• Однако автоматическое тестирование на CI сокращается
• Возможны баги и сниженная стабильность без гарантий быстрой починки
📉 Почему так:
• Нет активных мейнтейнеров для *-windows-gnu
целей
• Сложно отлаживать ошибки без специалистов
• 32-битная сборка почти не используется в сравнении с x86_64-pc-windows-gnu
📌 Что дальше:
Если ситуация не изменится, возможен полный отказ от поддержки этой цели. Сообщество Rust призывает желающих подключиться к поддержке *-windows-gnu
.
📖 Подробнее:
https://rust-lang.github.io/rfcs/3771-demote-i686-pc-windows-gnu.html
@rust_code
🦀 Rust и магия динамики: как создать Python‑подобный API с помощью Serde
В новой статье *Ohad Dravid* демонстрирует, как в языке Rust можно добиться удобства динамического доступа к данным — в духе Python — но без потери строгой типизации и производительности. Всё это — с помощью мощной библиотеки serde
.
📌 Статья: *“A Rust API Inspired by Python, Powered by Serde”*
🔗 [ohadravid.github.io/posts/2025-05-serde-reflect](https://ohadravid.github.io/posts/2025-05-serde-reflect/)
🔍 Проблема
Python позволяет обращаться к произвольным полям объектов, например при работе с WMI:
for fan in c.Win32_Fan():
print(fan.Name, fan.DesiredSpeed)
get_attr
, делать match
, проверять типы и всё это каждый раз.serde
и аккуратной архитектуры.raw_api.rs
— примитивный уровень
pub enum Value { Bool(bool), I1(i8), UI8(u64), String(String), Object(Object) }
impl Object {
pub fn get_attr(&self, name: &str) -> Value { /* ... */ }
}
match
, приведения типов, извлечения значений.v1_api.rs
— пользователь сам описывает структуру + ручная десериализацияstruct
, и сам реализует для него трейт, чтобы распаковать поля.v2_api.rs
— Serde‑магию включеноquery()
возвращает Vec<T>
:
#[derive(Debug, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct Fan {
name: String,
active_cooling: bool,
desired_speed: u64,
}
let res: Vec<Fan> = query();
for fan in res {
if fan.active_cooling {
println!("Fan `{}` is running at {} RPM", fan.name, fan.desired_speed);
}
}
match
serde::Deserialize
meta.rs
, который: Deserialize
, можно использовать как результат запроса.serde-reflection
для полного introspection serde
— это не только про производительность и безопасность, но и про удобный API, если правильно подойти к задаче. Этот проект показывает, как можно сделать гибкий, декларативный, типобезопасный интерфейс для работы с данными — без костылей и магии рантайма.🦀 Как упростить изучение Rust: советы от Corrode
Rust — мощный и надёжный язык, но его обучение часто вызывает трудности даже у опытных разработчиков. В свежем блоге [Corrode Rust Consulting](https://corrode.dev/blog/flattening-rusts-learning-curve/) делятся рекомендациями, как сгладить кривую обучения Rust без боли и выгорания.
🔑 Основные советы:
- Примите особенности языка
Не сопротивляйтесь системам владения и заимствования — воспринимайте их как инструменты безопасности, а не ограничения.
- Начинайте с "грязных" решений
Используйте clone()
, unwrap()
, expect()
на старте — позже замените на идиоматичный и безопасный код.
- Учитесь постепенно
Разбивайте обучение на этапы, пишите много маленьких программ в [Rust Playground](https://play.rust-lang.org/).
- Читайте ошибки компилятора вдумчиво
В Rust компилятор — это не враг, а учитель. Он подсказывает, как мыслить «по-растовски».
- Пишите вручную, не полагайтесь на IDE
Автокомплит мешает усвоению синтаксиса — набирайте код вручную, чтобы лучше понять структуру.
- Проектируйте через типы
Rust даёт мощную систему типов — используйте её как инструмент проектирования, а не просто проверки.
📖 Полный текст: https://corrode.dev/blog/flattening-rusts-learning-curve/
Хороший Rust-разработчик — не тот, кто никогда не ошибается, а тот, кто умеет читать сообщения компилятора и не сдаваться.
🦀 Задача на Rust: "Найди пропавшее число"
Условие
У тебя есть Vec<String>
, в котором находятся строки от "1"
до "100"
, но одно число отсутствует.
Найди его без использования sort
, HashMap
, iter().sum()
и т. д.
Можно использовать parse::<u32>()
.
Формат функции:
fn find_missing_number(data: &Vec<String>) -> u32
fn find_missing_number(data: &Vec<String>) -> u32 {
let mut xor_full = 0;
let mut xor_data = 0;
for i in 1..=100 {
xor_full ^= i;
}
for s in data {
if let Ok(n) = s.parse::<u32>() {
xor_data ^= n;
}
}
xor_full ^ xor_data
}
fn main() {
let mut data: Vec<String> = (1..=100)
.filter(|&x| x != 42)
.map(|x| x.to_string())
.collect();
use rand::seq::SliceRandom;
let mut rng = rand::thread_rng();
data.shuffle(&mut rng);
let missing = find_missing_number(&data);
println!("Пропущено: {}", missing); // Ожидается 42
}
[dependencies]
rand = "0.8"
a ^ a = 0
, 0 ^ b = b
.
Читать полностью…
📌 napi-rs — мост между Node.js и Rust. Это фреймворк для создания нативных расширений Node.js на Rust через Node-API, без необходимости работать с node-gyp или другими инструментами сборки C++.
Достаточно добавить аннотацию #[napi]
к Rust-функциям и они становятся доступными в JavaScript как обычные модули. Под капотом napi-rs автоматически генерирует binding-код, поддерживает асинхронные операции через tokio и даже предоставляет CLI для удобной сборки. Собранные `.node`-файлы работают на Windows, macOS, Linux и даже Android.
🤖 GitHub
🛡Децентрализованные приложения (dApps) — от идеи до реального продукта
Вы узнаете, как создаются современные приложения на блокчейне — без серверов, посредников и единого центра управления.
Простыми словами разберем:
- Что такое dApps и чем они отличаются от обычных мобильных приложений.
- Как превратить свою идею в работающий блокчейн-проект — пошаговый план.
- Какие инструменты используют разработчики (и как в этом разобраться без технического бэкграунда).
На живом примере вместе пройдем путь от задумки до готового прототипа — вы увидите, как выглядит процесс разработки "под капотом".
👉 Регистрация и подробности о курсе “Разработка децентрализованных приложений”
https://otus.pw/xxlS/?erid=2W5zFJSTFWx
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
🎉 С днём рождения, Rust! 🦀
10 лет с момента выхода Rust 1.0 — языка, который подарил миру безопасное, быстое и конкурентное программирование.
Отпразднуем вместе с невероятным сообществом и тысячами проектов, созданных на Rust!
#rust #Rust10Years #программирование
https://blog.rust-lang.org/2015/05/15/Rust-1.0/
🚀 Nova — новый движок JavaScript/Wasбm на Rust. Этот экспериментальный проект пытается переосмыслить архитектуру JS-движков через призму data-oriented design. Вместо классических указателей Nova использует индексы и векторы, чтобы минимизировать накладные расходы и улучшить кэширование.
Пока движок далёк от готовности, но подход к разработке вызывает интерес, например safepoint garbage collector, построенный на особенностях системы заимствований Rust — это попытка максимально приблизить структуру кода к ECMAScript-спецификации.
🤖 GitHub
🦀 Новый SQL-клиент на Rust — rsql
Лёгкий, быстрый и мощный инструмент для работы с файлами и базами данных из терминала.
📌 Что умеет
● Поддержка множества форматов: CSV, JSON, Parquet, Excel, XML, YAML, Avro и др.
● Подключение к SQLite, PostgreSQL, MySQL, SQL Server, DuckDB, Snowflake, CrateDB и даже DynamoDB
● Работа с архивами: Gzip, Zstd, Brotli, LZ4, Bzip2 и др.
● Удобная CLI: автодополнение, подсветка, история, интерактивный REPL
● Вывод в разных форматах: Markdown, HTML, JSON, CSV, plaintext
● 100 % безопасный Rust-код — #![forbid(unsafe_code)]
● Кастомизация: Vi/Emacs режимы, локализации, собственные темы вывода
📥 Установка
curl -LsSf https://raw.githubusercontent.com/theseus-rs/rsql/main/install.sh | sh
# Одноразовый запрос к SQLite
rsql --url "sqlite://file.db" -- "SELECT * FROM users LIMIT 5;"
# Интерактивная сессия с PostgreSQL
rsql --url "postgres://user:pass@localhost/db"
🖥 Вышел Git 2.50
Вот основные обновления:
1. Новый уровень работы с cruft packs
- Git хранит неиспользуемые (невидимые) объекты в специальных “cruft packs”.
- Раньше управлять ими было сложно: чтобы добавить или объединить объекты, нужно было всё перепаковывать, что занимало много времени и места.
- Теперь появился флаг --combine-cruft-below-size
: можно легко объединять мелкие cruft packs в один, постепенно “чистить” репозиторий.
- Исправлена важная ошибка: раньше такие объекты могли случайно удаляться раньше времени — теперь это под контролем.
2. Быстрее для больших репозиториев — многослойные битмапы
- В больших проектах Git создаёт специальные “карты” (bitmaps), чтобы быстро понимать, какие объекты нужны для определённых коммитов.
- Новая версия поддерживает “инкрементальные” битмапы для multi-pack index — можно добавлять новые данные быстро, не пересоздавая всю структуру.
3. Новый движок слияния ORT
- Старый движок recursive
полностью удалён: теперь слияния (`merge`) обрабатывает только быстрый и надёжный ORT.
- Это упростит разработку, повысит скорость merge и уменьшит количество ошибок.
4. Улучшения в утилитах и команде cat-file
- Теперь можно фильтровать объекты по типу, например, быстро получить только “деревья” (tree) с помощью --filter='object:type=tree'
.
- Команда для удаления reflog стала интуитивной: вместо сложных параметров просто пишем git reflog delete <branch>
.
5. Больше контроля над сетевыми соединениями
- Добавлены настройки для TCP Keepalive, теперь можно гибко управлять поведением Git в нестабильных сетях.
6. Меньше Perl — проще тестировать и собирать
- Git ещё больше избавился от зависимостей на Perl: тесты и документация теперь проще и стабильнее, особенно на системах без Perl.
7. Работа с разреженными (sparse) репозиториями стала удобнее
- Команды вроде git add -p
теперь не требуют полной загрузки содержимого — удобно при работе с огромными проектами.
8. Косметические улучшения
- При ребейзе (rebase -i) названия коммитов теперь оформляются как комментарии — так ясно, что это просто для ориентира.
9. Быстрее клонируем через bundle-uri
- Git стал лучше справляться с ускоренным клонированием через *.bundle: теперь клиент правильно учитывает все ссылки, ускоряя загрузку репозитория.
Git 2.50 — это не просто исправление багов, а реальное ускорение и упрощение работы для всех, кто ведёт большие проекты, часто сливает ветки и заботится о “чистоте” репозитория. Новые команды делают жизнь проще, а старые баги — ушли в прошлое.
➡️ Почитать про все обновления
@pythonl
Senior Rust Developer в BlockSniper
Удалёнка | full-time | 400–700K ₽ + премии
Мы лидеры в снайпинге токенов на Solana. Пишем трейдинг-ботов и высокоскоростные стратегии. Уже 4 года в деле, 50 человек в команде, работаем без бюрократии — только результат. Премии от прибыли: топы получают +300K к зп.
💻 Что важно:
— Опыт в Rust от 3 лет и обязательно Solana (Anchor, CLI, деплой)
— Понимание RPC/DApps/PoS
— Опыт с HFT, трейдингом или ботами будет преимуществом
🧩 Ищем тех, кто не боится челленджей:
у нас нужно разбираться, предлагать, выстраивать. Самостоятельность — must-have. Взамен даём максимум свободы, зп и роста.
🎁 Можете быть уверены в:
— Конкурентной зп + доход от прибыли команды
— Полной удаленке, оплачиваемом отпуске и больничном
— Том, что мы вкладываемся в рост: обсуждаем бенефиты, помогаем развиваться
Напиши нашему HR Маргарите 👉 @m_dereviakina, если ищешь место, где можно развиваться, расти и хорошо зарабатывать.
🦊 Chain-Fox — кроссплатформенный блокчейн-кошелёк с открытым исходным кодом
Chain-Fox — это лёгкий, но функциональный десктопный кошелёк для работы с блокчейнами, разработанный на Rust с использованием Tauri и React. Проект ориентирован на безопасность, прозрачность и максимальную простоту.
🔐 Ключевые возможности:
• Работа без необходимости запускать узел (light wallet)
• Поддержка нескольких кошельков и аккаунтов
• Отображение баланса и истории транзакций
• Генерация новых адресов и экспорт ключей
• Кроссплатформенность: работает на Windows, macOS и Linux
🛠️ Стек технологий:
- Ядро написано на Rust
- Интерфейс — на React + Tauri
- Криптография через secp256k1
- Хранение данных — sled
💡 Отлично подходит для:
- Изучения разработки блокчейн-кошельков
- Создания кастомных криптографических интерфейсов
- Прототипирования криптосервисов на основе Tauri
👉 https://github.com/Chain-Fox/Chain-Fox
Открытый код — разбирай, форкай, дорабатывай. Это хороший пример, как Rust + React дают мощный и лёгкий кошелёк.
@rust_code
⚡️ Илон Маск придумал телеграм анонсировал новый XChat.
Новый XChat теперь доступен с шифрованием, самоуничтожением сообщений, возможностью отправки любых типов файлов и поддержкой аудио- и видеозвонков.
Приложение создано на Rust и использует шифрование (как в Биткойн) и новую архитектуру.
А еще можно звонить без номера телефона.
@ai_machinelearning_big_data
#elonmusk #ai #news #ml #grok
🔥 From C# to Rust: 42-дневный челлендж от Chris Woody Woodruff
Chris Woodruff, экспериментающий .NET-разработчик, объявил старт своего 42-дневного пути погружения в Rust — язык системного программирования, совмещающий производительность, безопасность и отсутствие null:contentReference[oaicite:0]{index=0}.
🎯 Цели проекта
- Жить и дышать Rust — по одному уроку в день.
- Противостоять строгому borrow checker.
- Осознанно учиться и делиться выводами от лица C#-разработчика.
🛠 Что ожидается изучить
- Владение памятью, шаблоны, трейты, времена жизни (`lifetimes`).
- Яркие сравнения Rust и C#: синтаксис, ownership vs GC, ошибки компилятора:contentReference[oaicite:2]{index=2}.
- Краткие ежедневные отражения из .NET-мира.
📅 Примерный план на 42 дня
1. День 1–7: Почему Rust? Установка, cargo new
vs dotnet new
, "Hello, World!", переменные, функции:contentReference[oaicite:4]{index=4}.
2. День 8–14: Неделя владения — темы: ownership, borrowing, borrow checker:contentReference[oaicite:5]{index=5}.
3. День 15–42: Структуры, перечисления (`enum`), match
, Option<T>
, Result<T, E>
, модули, ошибки, трейты, дженерики, лямбды и многое другое.
💬 Голос из сообщества
> «What happens when a C# dev swaps null for Option, garbage collection for ownership… You get 42 days of brain‑bending, compiler‑fighting…»
✨ Подытожим
- Проект идёт с апреля 2025 года, уже опубликованы десятки дневных эссе.
- Каждая запись по мотивам реального опыта: «why won’t this compile?!», сравнения с привычным C#.
- В финале — обзор полученного опыта, личные инсайты и примеры рабочего CLI‑приложения на Rust:contentReference[oaicite:8]{index=8}.
🚀 Готовы бросить вызов себе и глубже понять Rust?
Следите за дневником Woody и за входом в мир безопасных без‑GC систем прямо с .NET-опытов!
🔗 Подробнее: From C# to Rust: A 42-Day Developer Challenge
https://woodruff.dev/from-c-to-rust-a-42-day-developer-challenge/
🦀 Победа для всего Rust-сообщества: состоялся релиз Linux 6.15 — и он действительно важный
Новый релиз ядра Linux 6.15 — не просто очередное обновление. Это первая версия, где Rust-код стал частью реального продакшн-функционала ядра, а не просто экспериментом.
🔥 Что нового:
• Поддержка Rust в драйверах и подсистемах (в том числе networking)
• Начало перехода некоторых компонентов с C на memory-safe Rust
• Улучшена совместимость с архитектурами RISC-V и ARM
• Обновления в системах безопасности, файловых системах и планировщике задач
💬 Линус Торвальдс уже заявил, что Rust — это будущее для многих чувствительных компонентов ядра, особенно в мире, где безопасность становится ключевым фактором.
📌 Rust в ядре — это не просто «новый язык». Это переход к более безопасной, надёжной и современной экосистеме Linux.
🔗 Подробнее:
https://www.zdnet.com/article/the-linux-6-15-kernel-arrives-and-its-big-a-victory-for-rust-fans/
@rust_code
⚡️ Pydantic Core — Rust-ядро для валидации данных в Python. Этот низкоуровневый валидатор демонстрирует впечатляющую скорость: до 17x быстрее оригинальной реализации на чистом Python.
Хотя напрямую с ним обычно не работают (используя вместо этого основной пакет pydantic), проект интересен как пример интеграции Rust в Python-экосистему. Валидация описывается через JSON-схемы, поддерживая сложные условия вроде ge: 18
для чисел или вложенных структур. Сборка требует Rust toolchain, но результат стоит того: например, валидация списка из 10к элементов занимает миллисекунды.
🤖 GitHub
RustScan – Инструмент для быстрого сканирования портов
Данный проект может похвастаться высокой скоростью работы(Сканирует все 65 тыс. портов за 3 секунды), гибкой расширяемостью и адаптивным методом работы.
https://github.com/bee-san/RustScan
⚡️Почему Rust — один из самых любимых языков среди разработчиков? Почему он всё чаще выбирается вместо C++ и других языков для разработки высокопроизводительных приложений?
На открытом вебинаре 22 мая в 20:00 мск мы расскажем, почему Rust привлекает так много разработчиков по всему миру. Вы узнаете, какие проблемы решает этот язык, почему его производительность и безопасность привлекают специалистов, а также как Rust занимает свою нишу в программировании.
Если вы хотите перейти на Rust или улучшить свои навыки, вы получите ответы на все вопросы. Мы обсудим его ключевые особенности, нововведения и возможности для использования в реальных проектах.
👉Запишитесь на открытый урок и получите скидку на большое обучение «Rust Developer. Basic»: https://otus.pw/GPhS/
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ", ИНН: 9705100963
🤖 Тест по Rust проверь свои знания, готов ли ты к обучению на курсе.
Ответишь — пройдешь на курс "Rust Developer. Professional" от OTUS по специальной цене + получишь доступ к записям открытых уроков курса
За 5 месяцев обучения ты разберёшь ключевые особенности Rust и сможешь не только разрабатывать сложные программные продукты, но и в целом лучше проектировать ПО.
➡️ ПРОЙТИ ТЕСТ
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
OpenAI представляет Codex — облачного агента для генерации кода, способного выполнять множество задач параллельно.
В основе — модель codex-1.
🧠 Ключевые особенности:
• Codex работает прямо в браузере
• Поддерживает многозадачность: можно одновременно проверять код, задавать вопросы и переключаться между задачами
• Построен на **новой модели Codex-1** — самой мощной модели для кодинга от OpenAI
• Интеграция с GitHub — можно подключить свой аккаунт, и агент будет работать с вашими репозиториями
🚀 Codex — это шаг в сторону полуавтоматизированной разработки, где ИИ способен выполнять рутинную и аналитическую работу без постоянного контроля со стороны разработчика.
📅 Запуск ожидается уже сегодня.
▪ Релиз: https://openai.com/index/introducing-codex/
@ai_machinelearning_big_data
#OpenAI #Codex #AI #CodeAutomation #DevTools
Выпуск Rust 1.87
🔧 Основные изменения
- Улучшения системы типов: Введены новые возможности для более точного определения типов, что повышает безопасность и выразительность кода.
- Оптимизации компилятора: Улучшена производительность компиляции, особенно для крупных проектов, что сокращает время сборки.
- Расширения стандартной библиотеки: Добавлены новые функции и улучшены существующие модули, такие как std::fs и std::net, что упрощает разработку приложений.
- Улучшения в работе с асинхронным кодом: Обновления в async/await механизмах обеспечивают более стабильную и предсказуемую работу асинхронных операций.
Полный список изменений и подробности:http
⁉️ Хотите научиться разрабатывать веб-сервисы на Rust?
📅 19 мая в 20:00 МСК на открытом вебинаре мы покажем, как создать мощный и эффективный веб-сервис с использованием HTTP и gRPC API на Rust.
Что вас ждёт:
— Разбор бизнес-логики веб-сервиса.
— Реализация HTTP и gRPC API.
— Разработка клиентского приложения и тестов для сервиса.
🎁 Открытый урок проходит в преддверие старта курса «Rust Developer. Professional». Все участники получат скидку на обучение.
➡️ Запишитесь прямо сейчас, чтобы не пропустить: https://otus.pw/ESP2/?erid=2W5zFGbnWVE
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
🔐 Как сделать код на Rust надёжнее и безопаснее?
📅 14 мая в 20:00 МСК мы разберём ключевые аспекты работы с контрактами и инвариантами в Rust на открытом вебинаре.
❗️Что вас ждёт:
— Разберём понятие инварианта и как он работает в Rust.
— Обсудим инвариант безопасности и его роль в написании надежного кода.
— Узнаем, как создавать удобные и безопасные контракты для API.
🦀 Вы освоите использование системы типов Rust для создания надёжных решений и узнаете, как компилятор и система типов помогают писать безопасный и эффективный код.
➡️ Регистрируйтесь и получите скидку на программу обучения «Rust Developer. Professional»: https://otus.pw/9LnV/?erid=2W5zFHCHQ3a
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.