Обновить
64K+

Rust *

Мультипарадигмальный компилируемый язык

157,67
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

C++ в 2026-м: память, прод, игры, Rust и ИИ — зачем учить язык, который невозможно знать целиком

Уровень сложностиСредний
Время на прочтение40 мин
Охват и читатели4.2K

C++ умеет ровно то, за что его одновременно любят и боятся: дает разработчику почти полный контроль над происходящим, позволяет выжимать из программы максимум производительности, но при этом оставляет возможность столкнуться с ошибкой, которая проявится только через несколько часов или даже дней работы. На C++ строят высоконагруженные системы, движки, embedded-решения и инфраструктуру, хотя рядом уже много лет развиваются Go, Rust и другие языки, которые обещают сделать разработку проще и безопаснее.

Так зачем учить C++ в 2026 году? Насколько важно программисту разбираться в памяти и устройстве процессора? Почему сильных C++-разработчиков по-прежнему мало, хотя язык преподают в университетах? Где без C++ действительно сложно обойтись, а где бизнесу выгоднее выбрать Go и при необходимости добавить серверов? Сможет ли Rust потеснить C++, как нейросети меняют работу программиста и почему современному разработчику уже недостаточно просто знать синтаксис?

Я, Александр, автор телеграм-канала «Shulepov Code», поговорил с Александром Малковым — C++-разработчиком, бывшим сотрудником Яндекса и CTO компании «Вертикаль». Александр также ведет свой телеграм-канал «Thread of Thoughts | Поток мыслей», где делится материалами и наблюдениями из профессиональной практики.  

Разговор получился не только про сам C++, но и про то, что сегодня требуется от сильного разработчика. Мы обсудили userver и падения продакшена, высокие нагрузки и работу с памятью, HFT и геймдев, компиляторы и санитайзеры, работу с legacy-кодом, а также влияние ИИ на профессию. Поговорили о нейросетях в роли своеобразного «джуна на ревью», выгорании в Big Tech и о том, в каких задачах глубокое понимание устройства системы по-прежнему важнее знания конкретного языка.

Читать далее

Новости

С нуля до чипа: программирование FPGA на t27

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели10K

Большинство курсов по FPGA начинаются со слов «установите Vivado». Мы пошли с другого конца: в каждом из 27 уроков есть рабочий виджет, собранный из реальных запусков на нашем стенде. Сначала разбираем, что такое FPGA и как числа становятся битами. Потом пишем спеку на t27, компилируем её t27c и превращаем в битстрим на плате. В конце — лаборатория из трёх уроков о наших собственных исследованиях, включая результаты, которые нам не понравились. Каждая картинка ниже — снимок живого виджета; нажмите, чтобы открыть его.

Читать далее

800 тысяч строк кода: как ИИ-агенты переписывали движок Copilot

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели8K

GitHub переписал движок Copilot: 832 378 строк нового кода, большинство из которых написали ИИ-агенты. По дороге они перегрузили ноутбук, забрали чужие незаконченные изменения и сами разрешили себе пройти проваленную проверку. Инженер Microsoft Стивен Тауб рассказал, как шел перенос и за что все это время отвечал человек.

Читать далее

OpsDeck: собрал рабочее место DevOps‑инженера в одном окне и выложил в open source

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели22K

Вспомните свой обычный рабочий день: три терминала, Lens, вкладки с Grafana, Argo CD и GitLab, KeePassXC, Obsidian с ранбуками, DBeaver, WinBox для роутеров и где-то среди всего этого — чат с ИИ. Алерт прилетает в Telegram, команду из ранбука копируешь руками, пароль ищешь в третьем окне. Мне надоело собирать себя по кусочкам каждое утро, и я сделал OpsDeck — бесплатное приложение с открытым кодом, в котором всё это живёт вместе и знает друг о друге. Ниже — экскурсия по каждому разделу со скриншотами.

Интересненько...

Aquilum — open source аналог Obsidian на Rust, который потребляет около 27 МБ ОЗУ

Время на прочтение10 мин
Охват и читатели26K

Aquilum — быстрый local-first заметочник на Rust для Windows с потреблением около 27 МБ ОЗУ и установщиком размером 11 МБ. В нём есть граф знаний, обратные ссылки, live preview Markdown, несколько баз знаний, расширенные таблицы, книги и читалка, Dataview-подобный анализ данных, быстрый поиск, история изменений и интеграция с MCP-агентами. Подробный обзор функций и архитектуры — в статье.

Узнать больше

Как плеер угадывает тональность трека: 12 чисел и одна корреляция

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели11K

Плеер показывает у трека «ми минор», но как он это узнал? Программа не слушает гармонию, как музыкант: она считает, сколько звучит каждой из 12 нот, и ищет гамму, на которую набор похож сильнее всего. Разбираю алгоритм Крумхансл-Шмуклера на реальных треках, показываю, где он путает квинту и родственную тональность, и что тут меняют нейросети.

Читать далее

Rust 1.99.0: функции с переменным числом аргументов, информация о схеме размещения типа

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели7.2K

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

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

$ rustup update stable

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

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

Читать далее

Следуй за белым кроликом: пишем VPN на Rust и ищем выход из собственного туннеля

Время на прочтение12 мин
Охват и читатели14K

Следуй за белым кроликом.

В «Матрице» герои возвращались в реальный мир через телефон. Мне эта идея понравилась настолько, что собственный VPN я назвал PAYPHONE, а в консольном клиенте сделал зелёный дождь из символов. Правда, прежде чем через него удалось выйти в интернет, пришлось разобраться, почему туннель отправляет пакеты самому себе, таймер не срабатывает, а нажатие Ctrl+C не возвращает сеть. Об этом и будет статья — с устройством протокола, фрагментами кода и ошибками, которые обнаружились уже после первого успешного подключения.

Читать далее

900 гипотез об уязвимостях и 12 миллиардов токенов

Время на прочтение18 мин
Охват и читатели9.7K

«Просто напишите правильный промпт», говорили они

У меня появился проект, которому нужно перекладывать миллионы пакетов со скоростью канала. Для такой задачи я рассматривал C, C++ и Rust. На C я последний раз писал в 2009 году, и обратно не тянет. Слабак, согласен.
Выбрал Rust: современный язык, удобная сборка, большая библиотечная экосистема и обещание безопасности памяти. Когда в описании технологии встречается слово «безопасный», у меня по профессиональной привычке начинает чесаться в кончиках пальцев.

Язык для меня новый, поэтому я хотел разобраться, какие ошибки остаются в программах на Rust и чем их искать. В результате появились учебное приложение, сигнатуры для SAST, собственный исследовательский конвейер rust-in-peace, находки в библиотеках и приложениях, а затем и патч для ядра Linux и выступление на конференции. По дороге выяснилось, сколько убедительных ошибок способны произвести модели, агенты, проверяющие модели и я сам.

На ZeroNights я рассказывал об этом в докладе Rust in Peace: How to Raise Your Own Pet Mythos. Здесь можно позволить себе больше подробностей: откуда взялся каждый механизм, какую проблему он решал и что получилось при проверке в бою.

Читать далее

Трек на 46 минут долго молчал: отдаём перекодированный звук, пока ffmpeg его ещё пишет

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели8.4K

Сервер перекодирует длинный трек в Opus и отдаёт его только целиком. Пока ffmpeg пишет файл, клиент молчит: на 46-минутной записи это 19 секунд тишины. Экономный режим, в котором человек ждёт быстрой загрузки, грузится дольше оригинала. ▎ ▎ Разбираю, как отдавать файл, пока ffmpeg его ещё пишет, и сохранить при этом кеш и один прогон ffmpeg на все запросы. Почему не подошёл пайп, где прячется гонка на последнем чтении, что делать с переименованием на Windows и почему M4A без фрагментации не играет с первых байтов.

Читать далее

CanvasDesk: от замены рабочего стола до визуального математического моделирования

Уровень сложностиПростой
Время на прочтение2 мин
Охват и читатели7.2K

Меня всегда расстраивало, что рабочий стол любой системы это обычно «мёртвый» кусок. Почему не превратить его в используемый сервис? Так появился CanvasDesk — бесконечная canvas‑доска вместо рабочего стола, где диаграмма и есть формула.

Я проверил идею на PoC: написал на Rust с помощью ИИ‑агентов (Kimi Code, Z.ai) за 2,5 недели и 80$, потратив более 3000 запросов. Результат — рабочий бинарник для Windows/Linux/macOS и WASM‑версия в браузере.

Главная боль, которую решаю: рваный путь проектирования, когда архитектура на доске, а расчёты в Excel, и их синхронизация — ад. Как человек с визуально‑пространственным мышлением и 10-летним опытом в ИТ‑ и продукт‑менеджменте, я делаю инструмент, где диаграмма и формула едины.

Читать далее

Я написал свой музыкальный плеер со своим стримингом: Android, Windows, Linux и сервер на Rust

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели9K

У меня есть коллекция музыки, которой нет ни в одном стриминге: FLAC, японские альбомы, редкие релизы. Слушать её хотелось так же удобно, как Spotify, с телефона и компьютера, с текстами и итогами года. Готовые решения закрывали задачу по кусочкам, поэтому я написал своё: Nami — плеер для Android, Windows и Linux и собственный сервер на Rust. Внутри: синхронизация между устройствами через одну SQL‑таблицу вместо девяти, караоке‑тексты с выравниванием по словам нейросетью прямо на телефоне, фуригана и ромадзи для японских песен, bit‑perfect‑вывод на USB‑ЦАП и сервер, который занимает 69 МБ памяти.

Читать далее

Rust для микроконтроллеров: что он даёт по сравнению с С

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели91K

Си отлично работает на микроконтроллерах и никуда не исчезает. Но часть правил, которые в Си держатся на архитектуре проекта и дисциплине разработчика, в Rust можно выразить так, чтобы их проверял компилятор.

Разберём это на DMA, владении периферией, состояниях GPIO, прерываниях и unsafe — без попытки доказать, что Rust должен заменить Си.

Читать далее

Ближайшие события

Чудеса nightly, часть 1: на чём тайком держится stable Rust

Уровень сложностиСложный
Время на прочтение17 мин
Охват и читатели7.4K

Привет!

Заверните обычный File в структуру из одного поля и пробросьте чтение внутрь. Пара строк, логика не поменялась. А теперь скопируйте через io::copy файл на 64 мегабайта: голый File справлялся за два системных вызова, обёртка сделает больше шестнадцати тысяч.

Ошибки в коде нет, вы просто выпали из специализации, которой в стабильном Rust официально не существует. Зато в стандартной библиотеке на ней висит больше сотни функций, и такая фича там не одна: даже NonNull хранит адрес в типе, который на stable объявить нельзя.

Чем глубже копаешь, тем веселее. Та же специализация ускоряет collect и умеет заставить код без единого unsafe читать освобождённую память, а итератор, написанный как обычная функция, превращается в идеальный ассемблер и почему-то отказывается векторизоваться. Материала набралось на четыре-пять статей, это первая, и в ней пять фич: gen-блоки, pattern types, специализация, become и #[loop_match].

Читать далее

Почему я пишу Bun‑native альтернативу napi‑rs

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели7.7K

Я работаю над bffi‑rs, экспериментальным фреймворком для нативных биндингов Bun, написанным на Rust.

Проект появился из довольно практичной задачи. Я хотел сделать небольшое desktop‑приложение с нативным WebView, но при этом оставить Bun основным рантаймом.

В экосистеме уже есть решения для подобных приложений. Например, некоторые интеграции WebView для Bun используют Rust и napi-rs. В варианте Electrobun, который я рассматривал, для WebView используется Wry, а связка между Rust и JavaScript строится через napi-rs. Эти проекты решают реальные задачи, но у меня появился другой вопрос: что будет, если строить нативную часть приложения вокруг Bun, а не вокруг совместимости с Node.js?

Читать далее

Как зарабатывать на Open Source без смены лицензии: разбор Cap (22.8k звёзд) и схема с платными бинарниками

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели92K

Большинство попыток заработать на открытом коде упираются в две крайности: сбор донатов, где за десятки тысяч звёзд на GitHub автор получает пару сотен долларов в месяц, или внезапная смена лицензии на BSL, которая оборачивается волной хейта и немедленными форками.

Проект Cap (открытый аналог Loom с 22 800 звёзд) нашёл третий путь. Их монорепозиторий на Rust, Tauri и Next.js выложен полностью, но проект успешно зарабатывает. Ниже — подробный разбор архитектуры проекта, того, как устроено разделение лицензий MIT и AGPLv3, и почему юридическая схема с платными бинарниками за $29/год работает даже без DRM.

Читать далее

Локальные нейросети без Python, CUDA и терминала: делаю программу, в которой всё настраивается само

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели13K

Vulkan на моей GTX 1080 генерирует в полтора раза быстрее CUDA. Qwen вставляет китайские слова в русский текст даже при температуре 0. А маленькая модель однажды отчиталась, что удалила файл, и ничего не удалила. Всё это я узнал, пока делал Ollivo: программу, которая запускает локальные нейросети без Python, CUDA и терминала.

Читать далее

Как я автоматизировал работу врачей на Rust

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели7.9K

Написал локальный софт на Rust, который переносит реквизиты из ODT, помогает оформить выписку и собирает документы в один PDF.

Читать далее

Кросс-компиляция под андроид и не только

Уровень сложностиСредний
Время на прочтение18 мин
Охват и читатели7.7K

Сегодня широко используют cmake add_subdirectory и сборку через Gradle для кросс-компиляции сишных библиотек под андроид. Мы же рассмотрим более продвинутый и универсальный способ, который работает со множеством систем сборки и позволяет любым проектам найти свои зависимости без написания отдельных костылей под каждый проект: будем отдельно собирать каждую библиотеку ее собственной системой сборки в общий $PREFIX

Читать далее

YuE2 Studio: бесплатная замена Suno на своей видеокарте, и почему я перешел с Python и Gradio на Rust, Tauri и C++

Уровень сложностиПростой
Время на прочтение10 мин
Охват и читатели14K

Всем привет, любите ли вы генерировать музыку так, как люблю я? Можете не отвечать, скорее всего нет. Но вот с ужесточением правил Suno, генерировать музыку там стало просто бессмысленно (кто не в курсе с сентября, они закрыли скачку треков).

Потому я собрал десктопную студию в стиле Suno для YuE2, новой открытой модели генерации песен от команды M‑A‑P (Multimodal Art Projection). Пишете стиль и текст, получаете полноценную песню с вокалом и аккомпанементом в 48 кГц стерео. Всё считается на вашей видеокарте: без облака, подписок, очередей и без установки Python.

Читать далее
1
23 ...