Date | Title | Description |
10.02.2025 | The Evolution of Programming Languages: Navigating the Future with C++ and Rust | In the world of programming, languages evolve like living organisms. They adapt, grow, and sometimes face extinction. C++ and Rust are two prominent players in this ecosystem, each with its strengths and weaknesses. As technology advances, ... |
05.02.2025 | Параллельный A на Rust и Rayon: ищем путь для воробушка* | Привет, Хабр! Сегодня у нас задачка из мира природы: представьте, что маленький воробушек потерялся в городе. Ему нужно срочно найти путь домой, а дороги кишат кошками, людьми и прочими препятствиями. Разумеется, вручную искать маршрут — не... |
02.02.2025 | The Rise of Rust: A Language for the Future | In the world of programming, languages come and go like seasons. Yet, one language is making waves and catching the attention of developers everywhere: Rust. It’s not just a passing trend; it’s a revolution. Rust is a systems programming la... |
02.02.2025 | Я размышляю о языке Rust: почему он может стать языком будущего | Привет! Меня зовут Андрей, и я давно занимаюсь веб-разработкой. Однако в последнее время я все чаще обращаю внимание на новые языки и инструменты, которые обещают улучшить качество кода и повысить мою продуктивность. Сегодня я хочу поделить... |
31.01.2025 | Стандартная библиотека С не потокобезопасна: проблему не решает даже Rust | Мы работаем над базой данных EdgeDB и в настоящее время портируем с Python на Rust существенную часть кода, отвечающего за сетевой ввод/вывод. В процессе работы мы узнали много всего интересного.Отказ, который происходит только на ARM64
Мы ... |
31.01.2025 | RabbitMQ на Rust: библиотека Lapin | Привет, Хабр!
Сегодня рассмотрим библиотеку Lapin в Rust. Lapin — это библиотека, реализующая протокол AMQP 0.9.1, она помогает взаимодействовать с RabbitMQ.
Многоканальная работа: один TCP‑соединение поддерживает множество каналов.
Поддерж... |
24.01.2025 | The Rise of ReBack: A Backup Utility Built on Rust | In the world of software development, the need for reliable backup solutions is as essential as a safety net for a tightrope walker. When disaster strikes, having a solid backup can mean the difference between chaos and calm. Enter ReBack, ... |
22.01.2025 | Создание бэкап-утилиты ReBack на Rust: от проблем до решения | Привет, Хабр!
Меня зовут Иван, я автор Telegram‑канала и сайта «Код на салфетке». Уже три года я изучаю Python, а последний год занимаюсь фрилансом.
В разработке мне очень нравится Python, но в какой‑то момент я понял, что пора двигаться «в... |
18.01.2025 | Rust 1.84: новый релиз отличного языка программирования. Еще лучше, еще эффективнее, как всегда | Источник изображения.
Вышел новый релиз языка программирования Rust версии 1.84. Этот язык общего назначения изначально разрабатывался проектом Mozilla, но теперь его поддерживает независимая некоммерческая организация Rust Foundation. Rust... |
14.01.2025 | Как просто добавить ИИ в приложения на Rust: универсальный опенсорсный инструмент | Системный разработчик ИТ-компании «Криптонит» написал статью про новый инструмент на Rust, который облегчает запуск моделей машинного обучения и их внедрение в приложения. Дальше публикуем текст от первого лица.
Привет, Хабр! Меня зовут Мих... |
11.01.2025 | Revolutionizing SQLite: The Limbo Project and the Future of Asynchronous Databases | SQLite is a trusted companion in the world of databases. It’s lightweight, efficient, and reliable. But can it be faster? Researchers from the Universities of Helsinki and Cambridge think so. They’ve embarked on a journey to transform SQLit... |
10.01.2025 | Rust 1.84.0: MSRV при выборе зависимости, новый резолвер трейтов и API для отслеживания происхождения указателей | Команда Rust рада сообщить о новой версии языка — 1.84.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение.
Если у вас есть предыдущая версия Rust, установленная через rustup, то... |
14.12.2024 | Navigating the Rust Landscape: Common Pitfalls and Innovations in Dioxus | Rust is a language that demands respect. It’s a powerful tool, but it comes with its own set of challenges. Developers often find themselves in a maze of memory management, concurrency issues, and performance pitfalls. In this article, we’l... |
12.12.2024 | Dioxus 0.6 | Значительное улучшение инструментария: эмуляторы для мобильных устройств, магический Hot-Reloading, интерактивный CLI, и многое другое!
Сегодня мы выпускаем Dioxus 0.6!
Dioxus — это фреймворк для создания фуллстек, десктопных и мобильных пр... |
09.12.2024 | Rust без прикрас: где мы продолжаем ошибаться | Привет, Хабр!
В предыдущей статье мы разобрали, как не ломать себе карьеру, бездумно используя unwrap() или игнорируя ошибки через let _ =. Но давайте честно: это были цветочки. Настоящие проблемы начинаются там, где ваш код работает «почти... |
01.12.2024 | Допустим, вы решили изучить Rust | Поначалу всё будет хорошо. И вы будете изучать Rust, и думать, какие хорошие люди его написали. В нём есть автоопределение типов, безопасные указатели aka ссылки, столько синтаксического сахара, что любой Kotlin позавидует, и плюс ко всему ... |
19.10.2024 | Rust 1.82.0: A New Dawn for Developers | The world of programming is ever-evolving. In this landscape, Rust stands out like a lighthouse guiding developers through the fog. The recent release of Rust 1.82.0 brings with it a treasure trove of features and improvements. This update ... |
19.10.2024 | Обзор библиотеки LIBMF для Rust: факторизация матриц | Привет, Хабр!
Сегодня поговорим о библиотеке libmf — одном из лучших инструментов для факторизации матриц на Rust. libmf используется для задач машинного обучения: построение рекомендаций, сжатие данных и уменьшение размерности.
Устанавлива... |
18.10.2024 | Rust 1.82.0: cargo info, AArch64 для macOS в tier1, use, небезопасные указатели и другое | Команда Rust рада сообщить о новой версии языка — 1.82.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение.
Если у вас есть предыдущая версия Rust, установленная через rustup, то... |
18.10.2024 | Rust IPC Ping-Pong | На работе наша команда недавно столкнулась с необходимостью в высокопроизводительном IPC в Rust. Поиск привел нас к содержательной статье от 3tilley «IPC in Rust — a Ping Pong Comparison», что стало превосходной отправной точкой в нашем исс... |
10.10.2024 | The Digital Race: Enhancing Content Delivery in the Age of Streaming | In a world where digital content reigns supreme, speed is the name of the game. The recent partnership between Rostelecom and VK is a testament to this truth. On October 4, 2024, these two giants announced a significant upgrade to their con... |
08.10.2024 | Генератор паролей на Rust | Привет, Хабр!
Представляю вам свою первую статью о программировании на Rust. Я только начинаю изучать этот язык, и в качестве первого задания выбрал написание генератора паролей.
Процесс разработки консольного приложения будет состоять из н... |
24.09.2024 | The Art of Refactoring: A Deep Dive into Code Transformation | Refactoring is like sculpting. You start with a block of stone, rough and unrefined. With each chisel strike, you reveal the masterpiece within. In the world of programming, refactoring is the process of improving existing code without chan... |
24.09.2024 | Битовые поля в Rust | Привет, Хабр!
В этой статье мы рассмотрим использование битовых полей в Rust и их значимость для создания оптимизированных приложений, работающих с сетевыми протоколами. Битовые поля позволяют компактно представлять данные, минимизируя испо... |
23.09.2024 | Рефакторинг вглубь | Рефакторинг – это “это контролируемая техника совершенствования структуры существующего кода” [Фаулер]. Сейчас уже написано так много всего о запахах кода и приёмах рефакторинга в микромасштабе (есть, например, книги и целые сайты). А я хоч... |
20.09.2024 | Генерация AST на Rust | Привет, Хабр!
Сегодня мы рассмотрим одну из тем систем компиляции — генерацию абстрактного синтаксического дерева или просто AST на Rust. Создадим свое собственное AST, разберем, как структурировать синтаксическое дерево, и рассмотрим, как ... |
15.09.2024 | Портируем декодер AV1 с С на Rust для повышения быстродействия и безопасности | AV1 становится всё более значимым видеоформатом, которому требуется безопасный и производительный декодер. Исходя из этой идеи, мы в тандеме с командой из Immutant создали rav1d, портировав на Rust написанный на С декодер dav1d. Перед вами ... |
13.09.2024 | Оптимизация, которая невозможна в Rust | Поскольку я изучаю системы баз данных для получения степени магистра в Германии, статья с названием «Why German Strings are Everywhere» сразу привлекла мое внимание. Мне было интересно узнать, что речь идет о структуре данных, описанной в с... |
01.09.2024 | The Power of Middleware in Rust: A Deep Dive into Tower and Actix Web | In the world of web development, middleware acts as the unsung hero. It quietly processes requests and responses, adding functionality without disrupting the core application. Two prominent frameworks in Rust, Tower and Actix Web, showcase ... |
28.08.2024 | Начало работы с Actix Web | Привет, сегодня я попытаюсь объяснить все то, что я хотел бы знать в начале пути разработки на Actix Web.
Немного лирики для начала.
Rust - мультипарадигменный компилируемый язык программирования общего назначения, разрабатываемый Mozilla. ... |
25.08.2024 | Как я ускорила парсинг строк в serde_json на 20% | Недавно я писала код, завязанный на производительность, и поняла, что рассказы про мой опыт могут быть захватывающим чтивом. Учить как думать так же важно, как и учить писать код, но делают так редко, и мне кажется, что то, на что я угрохал... |
25.08.2024 | Альтернативные способы поиска и установки программ в Linux | Проведу небольшой ликбез, где и как искать необходимое прикладное ПО и как его устанавливать, причем большее внимание уделю именно альтернативным вариантам - рассмотрю случаи, когда требуется ПО, которого не оказалось в официальном репозито... |
22.08.2024 | Как я создал 175 шрифтов при помощи Rust | В декабре 2023 года я выпустил 175 Pixel Font Megapack, за которым вскоре последовали 42 отдельных пака для каждого из семейства шрифтов. Я создал собственный тулчейн для генерации, тестирования и развёртывания этих шрифтов ... на Rust! В п... |
15.08.2024 | Библиотека RustCrypto: симметричное и асимметричное шифрование | Привет, Хабр!
Сегодня рассмотрим такую библиотеку в Rust, как RustCrypto. RustCrypto — это набор библиотек, реализующих различные криптографические алгоритмы, такие как AES, RSA, SHA, и многие другие.Симметричное шифрование AES
AES — это ст... |
13.08.2024 | The Power of Rust: Unpacking Its Features and Innovations | Rust is a language that stands out like a lighthouse in a stormy sea. It offers safety and performance, making it a popular choice among developers. Today, we will explore some of its most useful features, focusing on associated types, Copy... |
12.08.2024 | Макросы в tentacli. Часть один | Со времени публикации первых двух статей мой проект сменил имя и концепцию. Теперь он называется TentaCLI и это название, являющееся игрой слов tentacle и cli, полностью отражает новую суть проекта. Хотя tentacli по прежнему может быть скач... |
09.08.2024 | Вскрываем средства для DDoS-атак на российскую ИТ-инфраструктуру. Часть вторая | Введение
По разным источникам, в 2023 году было зафиксировано несколько миллионов DDoS-атак на российские информационные системы. И судя по статистике, их количество только растёт. В связи с этим, а также по многочисленным просьбам коллег м... |
02.08.2024 | Программируем микроконтроллер STM32 на Rust | Rust — отличный язык, но насколько он подходит для разработки встраиваемых систем? В этом посте будет подробно рассказано, как обустроить инструментарий для такой разработки. Кроме того, мы рассмотрим один удивительный аспект Rust, проявляю... |
28.07.2024 | Rust 1.80: A Leap Forward in Programming Efficiency | The world of programming is ever-evolving. With each new release, languages strive to become more efficient, more intuitive, and more powerful. Rust, a language known for its safety and performance, has just released version 1.80. This upda... |
27.07.2024 | Rust 1.80.0: типы LazyCell, LazyLock, проверяемые имена и значения cfg, эксклюзивные диапазоны в шаблонах | Команда Rust рада сообщить о новой версии языка — 1.80.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение.
Если у вас есть предыдущая версия Rust, установленная через rustup, то... |
03.07.2024 | Учимся летать: симуляция эволюции на Rust. 5/5 | Это заключительная часть серии статей по разработке симуляции эволюции с помощью нейронной сети и генетического алгоритма.
Первая часть
Вторая часть
Третья часть
Четвертая часть
Туториал целиком (предупреждение: много букв :D)
Репозиторий с... |
29.06.2024 | Жизнь – боль: как одновременно поддерживать в Rust синхронный и асинхронный код | Введение
Присаживайтесь поудобнее и послушайте стариковскую байку: что случилось, когда я попросил у Rust слишком многого.
Допустим, вы хотите написать на Rust новую библиотеку. Всё, что для этого требуется — обернуть её в публичный API, че... |
28.06.2024 | Работа с базами данных в Rust с помощью Diesel | Привет, Хабр!
Сегодня мы поговорим о Diesel ORM — инструменте, который превращает работу с базами данных в Rust в настоящее удовольствие. Diesel ORM — это расширяемый и безопасный объектно-реляционный маппер и конструктор запросов для Rust.... |
28.06.2024 | Rust и асинхронные функции: не надо менять future | В начале 2010-х годов в программировании появился новый подход к реализации параллелизма с использованием абстракций future и promise, а также синтаксического приёма async/await. Эти технологии облегчили работу с асинхронным кодом, но вызва... |
25.06.2024 | Как уберечься от кражи репозитория (реподжекинга) | " data-abbr="от англ. repojacking, по аналогии с “hijacking” — незаконный захват/угон самолёта">Реподжекинг или захват репозитория / перехват контроля над репозиторием — это особый вид атак на цепочки поставок. В этой стат... |
16.06.2024 | Написать X-docker-isolation-provider сложно — но не невозможно | Вы когда-нибудь чувствовали себя пионерами? Вот именно так я себя и ощущал, когда писал docker-isolation-provider для платформы ассоциативного программирования Deep.
Все было так: в один прекрасный день у нас на платформе связей решили - бы... |
09.06.2024 | Учимся летать: симуляция эволюции на Rust. 2/5 | Это вторая часть серии статей по разработке симуляции эволюции с помощью нейронной сети и генетического алгоритма.
Первая часть
В этой статье мы заложим основы нашего проекта и реализуем простую FFNN (feedforward neural network — нейронная ... |
21.05.2024 | Туториал по Tokio. 1/2
Обзор
Настройка
Привет, Tokio
Создание потоков
Общее состояние
Каналы
Ввод-вывод | Hello world!
Представляю вашему вниманию первую часть туториала по Tokio.
Tokio — это асинхронная среда выполнения (runtime) кода Rust. Она предоставляет строительные блоки, необходимые для разработки сетевых приложений любого размера.
Соде... |
18.05.2024 | Почему я отказался от разработки игр на Rust, часть 3 | Часть 1
Часть 2Ситуация с GUI в Rust просто ужасна
В сообществе Rust ходит шутка, что на 5 игр существует 50 игровых движков; наверно, ещё одна такая шутка нужна про фреймворки GUI. Люди пробуют разные подходы, что, учитывая полную обобщённ... |
13.05.2024 | Простой SDR в помощь ICOM 9700 | Недавно увлёкся приёмом телеметрии и SSTV со спутников, благо сейчас энтузиасты организуют различные квесты и акции, используя ресурсы спутников «UMKA-1 (RS40S)», «VIZARD-METEO (RS38S)», «NANOZOND-1 (RS49S)» и «UTMN-2 (RS27S)». Подробнее о ... |
11.05.2024 | Коротко о том, почему Rust лучше C/C++ | Это будет статья-рассуждение о том, почему Rust лучше C/C++. Тут будут затронуты не столько сравнение производительности, сколько сравнение удобства инфраструктуры языка, его темпы развития и актуальность.
Толчком к её написанию были многоч... |
08.05.2024 | Спецификация уникальных идентификаторов UUIDv7 для ключей баз данных и распределенных систем по новому стандарту RFC9562... | Долгожданный стандарт RFC9562 "Universally Unique IDentifiers (UUID)" с тремя новыми версиями идентификаторов UUID (6, 7 и 8) вместо малопригодного RFC4122 наконец-то вступил в силу. Я участвовал в разработке нового стандарта. Обз... |
07.05.2024 | Книга рецептов Rust. 1/2
1. Алгоритмы
2. Командная строка
3. Сжатие
4. Параллелизм
5. Криптография
7. База данных
8. Дата и время
9. Инструменты для разработки... | Hello world!
Книга рецептов — это коллекция простых примеров, демонстрирующих хорошие практики решения распространенных задач программирования с помощью крейтов экосистемы Rust.
Содержание
1. Алгоритмы
1.1. Генерация произвольных значений
1... |
25.04.2024 | Mozilla переписала Firefox Crash Reporter на Rust | В блоге Mozilla Hacks вышла статья инженера Mozilla Алекса Франчука о том, как команда проекта Firefox переписала код оригинального кроссплатформенного приложения с графическим интерфейсом Crash Reporter для браузера на языке программирован... |
10.04.2024 | Пишем калькулятор на Rust с GUI | Зачем еще один калькулятор? Да незачем, просто как тестовый проект для рассмотрения GUI-библиотеки.
Изначально я хотел попробовать такие крейты, как GPUI, Floem и Xilem, но первая, кажется, пока работает только под MacOS и Linux, вторая не ... |
02.04.2024 | Rust — это не «memory safe C» | TL;DR:
— в Rust намного больше достоинств, чем просто скорость и безопасность;
— в Rust по умолчанию CDD (compiler-driven development, разработка через компилирование). Это как TDD, только CDD;
— Rust — не сложный язык, особенно если не гна... |
25.03.2024 | Rust 1.77.0: C-подобные строки, offset_of!, рекурсивные async fn, strip в release-профилях | Команда Rust рада сообщить о новой версии языка — 1.77.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение.
Если у вас есть предыдущая версия Rust, установленная через rustup, то... |
20.03.2024 | Практическое руководство по Rust. 4/4 | Hello world!
Представляю вашему вниманию четвертую и последнюю часть практического руководства по Rust.
Первая часть
Вторая часть
Третья часть
Руководство основано на Comprehensive Rust — руководстве по Rust от команды Android в Google и ра... |
21.02.2024 | Практическое руководство по Rust. 2/4 | Hello world!
Представляю вашему вниманию вторую часть практического руководства по Rust.
Первая часть
Руководство основано на Comprehensive Rust — руководстве по Rust от команды Android в Google и рассчитано на людей, которые уверенно владе... |
14.02.2024 | Начало работы с Axum — самым популярным веб-фреймворком Rust | Когда дело доходит до выбора серверного веб-фреймворка в экосистеме Rust, можно запутаться из-за большого количества вариантов. В прошлом, лидером по популярности был Rocket, но сейчас за первенство сражаются Axum и actix-web, и Axum все бо... |
31.01.2024 | Большая шпаргалка по Rust. 2/2
Организация кода
Обработка ошибок | Hello world!
Представляю вашему вниманию вторую часть большой шпаргалки по Rust.
Первая часть.
Обратите внимание: шпаргалка рассчитана на людей, которые хорошо знают любой современный язык программирования, а не на тех, кто только начинает ... |
28.01.2024 | Управление зависимостями в Rust с Cargo | Привет!
Cargo - это хороший менеджер пакетов Rust, который берет на себя тяжелую работу по управлению зависимостями, сборке проекта, тестированию и многому другому.Cargo
Cargo – это официальный менеджер пакетов и система сборки для Rust. Он... |
28.01.2024 | Обманчиво простой и интересный RSA | Недавно, читая книгу Real-World Cryptography, я узнала об атаке Блейхенбахера, иначе называемой атакой миллионом сообщений. Этот вид атаки Даниэль Блейхенбахер продемонстрировал в 1998 году, взломав RSA через функцию шифрования PKCS #1. В к... |
22.01.2024 | Мейнтейнеры FreeBSD обсудили использование языка программирования Rust в базовой системе | Мейнтейнеры проекта FreeBSD обсудили стоимость использования языка программирования Rust в базовой системе и продумали возможность перевода на этот язык программирования части утилит в будущем.
Инициатором обсуждения стал разработчик новой ... |
19.01.2024 | Арифметика первого класса в системе типов Rust | Арифметика – наука непростая, но к нашему удобству работу с ней можно облегчить с помощью экспрессивной системы типов языка Rust. В статье мы разберём реализацию на этом языке простейших математических операций, таких как сложение, вычитани... |
16.01.2024 | Большая шпаргалка по Rust. 1/2
Основы
Больше, чем основы
Сложная часть | Hello world!
Представляю вашему вниманию первую часть большой шпаргалки по Rust.
Обратите внимание: шпаргалка рассчитана на людей, которые хорошо знают любой современный язык программирования, а не на тех, кто только начинает кодить ;)
Такж... |
03.01.2024 | Millions still haven’t patched Terrapin SSH protocol vulnerability | Enlarge
Getty Images reader comments 29
Roughly 11 million Internet-exposed servers remain susceptible to a recently discovered vulnerability that allows attackers with a foothold inside affected networks. Once they're in, attackers comprom... |
27.10.2023 | Мнение три года спустя: стоил ли того переход с JavaScript на Rust? | Озадаченный краб
Несколько лет назад я отказался от всего и полностью сосредоточился на WebAssembly. В то время Rust имел наилучшую поддержку компиляции в WebAssembly, а самые полнофункциональные среды исполнения WebAssembly были основаны н... |
27.10.2023 | Интеграция Axum с S3-хранилищем | Недавно столкнулся с проблемой подружить веб-фреймворк Axum и библиотеку rust-s3. Собственно, задача сделать 2 эндпойнта:
Загрузка файла в хранилище и получение ссылки
Скачка файла из хранилища по ссылке
Разумеется, без временных файлов и б... |
27.10.2023 | Как в 180,000 раз ускорить анализ данных с помощью Rust | В этой статье я опишу одно из последних своих дерзновений в сфере оптимизации производительности с помощью Rust. Надеюсь, что в ней вы откроете для себя какие-то новые приёмы для написания быстрого кода на Rust.
Контекст следующий: представ... |
22.10.2023 | Тест производительности Web-фреймворков для Rust | В этой статье мы сравним производительность 3 наиболее популярных бекэнд-фреймворков для Rust: Axum, Actix и Rocket.Методика тестирования
На каждом из фреймворков мы напишем простой веб-сервис имеющий три эндпоинта:
POST /test/simple Приним... |
18.10.2023 | Одна игра, один разработчик, шесть платформ | Недавно компания Valve объявила о том, что Counter-Strike 2 не будет поддерживать macOS. Я инди-разработчик, в одиночку выпустивший игру с поддержкой macOS, поэтому поначалу меня удивило это решение Valve. Но вспомнив о своём собственном оп... |
12.10.2023 | Сборка мусора: как это делается в системном программировании | Давайте поговорим об одной из наиболее критичных по производительности программ, которой вы пользуетесь ежедневно: о вашей операционной системе. Поскольку при каждом разгоне железа вы получаете дополнительную вычислительную мощность, операц... |
24.09.2023 | Марк Руссинович: запущен проект по включению разработки драйверов для Windows на Rust | Технический директор Azure и культовый разработчик ПО для Windows (SysInternals) Марк Руссинович сообщил, что запущен открытый проект по включению разработки драйверов для ОС Windows на базе языка программирования Rust.
Проект получил назва... |
31.07.2023 | Самый быстрый и безопасный PNG декодер в мире | TL;DR: декодер изображений PNG из стандартной библиотеки языка программирования Wuffs работает в 1.22–2.75 раза быстрее, чем libpng (широко используемая реализация PNG декодера на C с открытым исходным кодом), C-библиотеки libspng, lodepng ... |
17.07.2023 | Криптография на Rust и немного FFI | Частичный перевод моей статьи с Medium
Начнем с того, что эта статья как и большинство моих статей родилась в процессе разработки. В данном конкретном случае - разработки внешней крипто-библиотеки для генерации крипто-кошельков.
Да, определ... |
05.07.2023 | Создание своей библиотеки на Rust: от cargo init до cargo publish | Вступление
Приветствую, растиане, сегодня мы поговорим о сборке и публикации собственного крейта на crates.io.
Rust - open-source язык программирования, благодаря чему каждый может внести свой вклад в его развитие разными способами. Одним и... |
23.06.2023 | Интероперабельность между С++ и Rust | Этот пост основан на презентации, с которой автор выступил на конференции EuroRust 2022 в Берлине. Доступны слайды и видеозапись.
Автор, работающий в компании Slint, участвует в создании UI-инструментария, написанного на Rust. Этот UI-инстр... |
19.06.2023 | Picodata: простое масштабирование Tarantool | Привет! Сегодня я хочу познакомить вас с ПО, которое мы разрабатываем в нашей компании — кластерной СУБД и сервером приложений на языке Rust. Мы профессионально занимаемся созданием и эксплуатацией решений на основе Tarantool и с некоторых ... |
17.05.2023 | Diceroller — разбор реального проекта на Rust | В этой статье мы с вами разберем пример приложения, реализующего (часть) подсистемы генерации урона путем броска дайсов, которое я разработал для системы HERO Champions.
Для меня лучший процесс обучения — это регулярное переключение между п... |
10.05.2023 | Rust, Telegram и GTFS против Петербургского транспорта | Долгое время я жил в районе, где общественный транспорт был скорее проблемой, чем благом (привет, Кудрово!). Приходилось в любую погоду ходить пешком до метро три километра, в мороз, слякоть и зной. Спустя некоторое время я переехал и появи... |
05.05.2023 | 32 полезных Rust крейта, о которых вы могли не знать | В этой статье хочу поделиться информацией о крейтах для языка rust, про которые вы могли не знать. Большинство из них позволяют писать меньше шаблонного кода или улучшают его читаемость. Эта статья будет полезна для разработчиков всех уровн... |
05.05.2023 | Дополнить Rust-библиотеку примерами? Легко | Когда вы пишете библиотеку, которая в дальнейшем будет задействована во множестве других проектов, крайне важно продумать, как именно разработчики будут работать с ней своем коде.
Один из лучших способов позаботиться о том, чтобы работа с в... |
18.04.2023 | Преобразуем карты DOOM в SVG для лазерной резки
Формат WAD DOOM
Геометрия
Снижаем количество слоёв
Записываем SVG
Кроличья нора: 3D-рендеринг и триангуляция
Готовый результат... | Я много слышал о формате данных классического Doom, поэтому решил написать код на Rust для извлечения его карт и преобразования в векторную графику для лазерной резки.
В статье я опишу процесс: извлечение данных, воссоздание геометрии и выв... |
13.04.2023 | Чат в терминале на Rust | Всем привет! Эта статья — туториал по написанию небольшого чат сервиса (серверное и клиентское приложения) на Rust, используя функционал TCP сокетов из стандартной библиотеки Rust. Сам чат для пользователя будет выглядеть, как приложение в ... |
03.04.2023 | Что нового в Rust 1.68 | Упрощённый протокол проверки крейтов
(Cargo's sparse protocol)
Протокол "sparse" реестра Cargo был стабилизирован для чтения индекса крейтов, а также была создана база данных на https://index.crates.io/ для тех крейтов, которые оп... |
20.03.2023 | Самая маленькая хеш-таблица в мире | 1 декабря я в очередной раз поучаствовал в Advent of Code, написав программу на Rust. Если интересно — код можно найти на GitHub. Тут мне хотелось бы рассказать о моём решении задачи, предлагавшейся во 2 день мероприятия, так как это решени... |
10.03.2023 | Пишем игру от первого лица в 2КБ на Rust | Введение
Поначалу кажется, что создать игру от первого лица без движка или графического API практические невозможно. В этом посте я расскажу, как это сделать при помощи алгоритма под названием ray casting.
Моя цель — показать, что сложную з... |
10.03.2023 | Пишем игру от первого лица в 2КБ на Rust | Введение
Поначалу кажется, что создать игру от первого лица без движка или графического API практические невозможно. В этом посте я расскажу, как это сделать при помощи алгоритма под названием ray casting.
Моя цель — показать, что сложную з... |
27.02.2023 | Полиморфизм: подавать холодным | Полиморфизм ("истинный", параметрический) - свойство, позволяющее обрабатывать данные разных типов одним образом.
Полиморфизм является одним из трёх столпов ООП, наравне с наследованием и инкапсуляцией, да и в целом краеугольным к... |
07.02.2023 | Что может быть проще (сложнее), чем упорядочивание чисел? | Предположим, вы программист и у вас есть два числа. Вы хотите узнать, какое из чисел больше. Если оба числа имеют одинаковый тип, то почти в любом языке программирования решение будет тривиальным. Для этой операции обычно даже есть специаль... |
06.02.2023 | Какой язык программирования выбрать? Часть 1. Rust | Какой язык программирования выбрать? Открываем серию статей об этом! Наши разработчики будут рассказывать об особенностях, применении, плюсах и минусах языков, которые используются в «Криптоните». Начинаем с Rust: опытом поделится Андрей Че... |
30.01.2023 | Rust 1.67.0: #[must_use] для Future, смена реализации mpsc | Команда Rust рада сообщить о новой версии языка — 1.67.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение.
Если у вас есть предыдущая версия Rust, установленная через rustup, то... |
22.12.2022 | Как я собрался писать открытую библиотеку для разработки и управления спутниками | Зачем и почему?
В жизни каждого человека есть время разбрасывать камни, а есть время собирать. После 12 лет работы в космической отрасли настало и мое время. И как мне видится есть противоречие между трендом в спутникостроении и технологиче... |
15.12.2022 | От крышки рояля до фреймворка на rust: как системное программирование помогает творческой реализации | Сижу за корпоративным маком и тоскую по этим нашим Линуксам
Здравствуйте, меня зовут Тимофей, и я алкоголик программирую, чтобы писать музыку. Судя по всему, недуг мой прогрессирует:
Пять лет назад, когда я впервые услышал про LilyPond — яз... |
28.09.2022 | Работа с графикой на языке Rust | Всем привет! Меня зовут Саша и я backend разработчик. Нет, не на rust. Но раст мой любимый язык и недавно я задался целью портировать движок онлайн игры, написанный на C++. Первый месяц ушел на то, чтобы разобраться с бинарными ассетами, их... |
26.09.2022 | Децентрализованный поиск для свободного веба | Возможно ли создать поисковую систему, которую на практике нельзя подвергнуть цензуре, влиянию и блокировке?
Говоря техническим языком, возможно ли выполнять полнотекстовый поиск не имея удаленного сервера, удобным для пользователя способом... |
18.08.2022 | Для подписи приложений iOS/macOS не нужен компьютер Apple | В экосистеме Apple сейчас так устроено, что для выпуска приложений iOS/macOS требуется получение сертификата, затем подпись кода и нотаризация подписи. Согласно документации, подпись кода гарантирует пользователям, что приложение получено и... |
18.08.2022 | Вычисления с плавающей запятой: сравниваем вывод в разных языках | С вашим языком программирования все в порядке — он просто производит вычисления с плавающей запятой. Изначально компьютеры могут хранить только целые числа, так что им нужен какой-то способ представления десятичных чисел. Это представление ... |
30.06.2022 | Разрабатываем десктопное приложение для заметок с помощью Tauri (React + Rust) | Привет, друзья!
В данном туториале мы разработаем десктопное приложение с помощью Tauri. Tauri — это фреймворк для создания десктопных приложений, похожий на Electron, но позволяющий использовать Rust вместо Node.js, например, для взаимодей... |