Alex Takes Notes
Добрый день! Тут Вы найдёте заметки о технологиях, с которыми я имею дело. Возможно, они пригодятся и Вам!
Обновления
12.12.2025 Новый подход к строкам в Rust. Тема настолько большая, что уже переросла из статьи в подраздел, и количество интересных конструкций и методов в моей копилке всё растёт.
10.12.2025
В статью про словари приехали B-деревья с упорядоченными ключами.
Также я немного исследовал запуск Python-скриптов с помощью Rust. Самый простой и надёжный способ - передавать скрипту Python shell-команду на запуск. Варианты через спец-библиотеки типа pyo3 я пока решил не трогать, так как при компиляции с ними на простых примерах я получил сразу кучу ошибок.
И у меня второй подход к теме замера скорости кода: можно строить графики отображения суммарного времени работы функций, flamegraph. Его установкой и настройкой я дополнил соответствующую статью.
09.12.2025 Сегодня мне попалась задачка с подсчётом битов в двоичном представлении чисел - с этим я в Rust ещё не сталкивался, будет новая статья по теме.
05.12.2025 В описании к Rust всегда пишут, что это быстрый язык. Но насколько? Для выяснения я сделал первый подход к теме замера скорости кода и добавил статью
04.12.2025
Ещё немного про итераторы: команда итерирования по коллекции бывает 3-х видов => iter(), into_iter(), iter_mut(), сравнение их между собой я также добавил в свою копилочку.
27.11.2025
Прошло уже несколько лет как я набегами пробую свои силы в Rust, “переезд” с Python. Процесс непростой, мозги кипят постоянно, но и тут я подмечаю ходовые структуры данных и инструменты. Среди них в Rust постоянно применяются замыкания и итераторы - в копилку-статью про последние я занёс ещё немного интересного про повторяющиеся символы (repeat, repeat_n).
26.11.2025 В Rust есть модная концепция “перепеши на Rust”, когда народ берёт обыденные инструменты и переписывает. Формально с целью сделать их безопаснее, быстрее, но на самом деле, мне кажется, для практики с языком. Надо же сделать что-то интересное-полезное, а всё кругом уже сделали, новое придумывать лень - так что объявим эти готовые инструменты ненадёжными и перепишем! Один из таких инструментов - эмулятор терминала. Шикарный проект - WezTerm, быстрый, функциональный и, в отличие от iTerm, кроссплатформенный. А в пару к нему ещё один крутой проект - Nushell, кроссплатформенный интерпретатор и полноценный скриптовый язык взамен bash.
22.11.2025
Ещё один подход к замыканиям - теперь к конкретному замыканию fold(): с его помощью можно заменить сразу много разных функций: sum(), product(), filter(), map() и так далее, либо скорее они его заменяют. Но самое главное - возможность использовать этот мощный инструмент для сложных сценариев.
21.11.2025 Одна из непростых тем в Rust - работа замыканий. Второй подход к снаряду - я переделал статью про Closures. Это всё ещё лишь верхушка айсберга, так как я решил разобраться в практике применения, без углубления в детали реализации.
03.10.2025 Сегодня у меня разбор давно намеченных тем из области “как грамотно начать большой проект?” в Rust:
- Оформление Workspace под проект с определением версий и сборкой зависимостей в одном месте;
- Инициализация единого трассировщика на проекте и управление уровнями логгирования централизованно.
09.09.2025 Про Kubernetes у меня накопилось несколько статей, а вот про утилиту kubectl ещё не было. Исправляюсь статьёй про работу с разными контекстами-кластерами одновременно.
28.01.2025
Для разминки я решил быстро написать игру “угадай число” из 2-ой главы книги Rust Book, и вдруг оказалось, что библиотеку rand() переделали в новой её версии. Я внёс новые имена вызовов в статью.
14.01.2025 Я в несколько заходов пару дней возился, чтоб настроить возможность коммитить с 1 системы сразу в github и gitlab с помощью двух разных ssh-сертов. Оказалось, это не самое тривиальное дело, потому как у git нет ключа-указателя на нужный сертификат и имя пользователя. По итогам у меня получилась важная добавка к статье про git
09.01.2025 Новый год я начинаю постепенно, с замены инструмента отслеживания изменений в коде и запуска перекомпиляции. Ранее с задачей справлялся cargo watch, но автор проекта написал, что более не будет развивать его. Поэтому я опробовал и переехал на bacon, и добавил заметку о его использовании.