Рубрика «Rust» - 4

Внимание: Этот материал создан только для учебы и исследований. Он нужен в первую очередь, чтобы понять, как устроена операционная система Microsoft Windows и какие механизмы защиты в ней есть. Текст не побуждает к незаконным действиям. Автор не несет ответственности за возможный вред, если использовать этот материал неправомерно или с нарушением закона.

WinSCP загружает version.dllЧитать полностью »

Всем привет! Я хочу рассказать про свой путь написания компилятора Svelte на языке Rust, о своих мотивах и результатах.

Компилятор лежит тут: https://github.com/MrWaip/svelte-rs


Предыстория

Меня зовут Константин, я работаю в enterprise-компании на протяжении 5 лет фронтенд-разработчиком. Мы используем SvelteKit ещё с бета-версии.

Читать полностью »

Продавцы на маркетплейсах управляют рекламой руками: утром посмотрел ставки, днём подкрутил, вечером обнаружил, что бюджет слит. При этом сама цель продавца формулируется одной цифрой: «хочу, чтобы реклама съедала не больше 12% выручки» (ДРР — доля рекламных расходов) или «каждый рубль рекламы должен приносить три» (ROMI). Кабинет же оперирует только ставками за тысячу показов.

Читать полностью »

Что мы любим в «Hello world» задачах для любого программного языка? Такое упражнение позволяет пройти через базовые этапы установки средств языка, сборку проекта и непосредственно лицезрение результата. Если нужно углубиться чуть больше, идеальным заданием может быть создание клиент‑сервер приложения. Для достижение этой цели уже, как правило, требуется линковка с внешними зависимостями, асинхронное программирование и прочие ключевые направления, необходимые для полноценной работы с языком.

sizeof(Mutex<()>) упал с 40 байт до 5: что внутри std::sync::Mutex после Rust 1.62 - 1

sizeof(Mutex<()>) в Rust 1.61 на Linux был 40 байт. В Rust 1.62 он стал 5 (точнее, 8 с учётом выравнивания, но базовый overhead 5).

Читать полностью »

Привет.

Это история о том, как я писал балансировщик нагрузки для телеграм‑ботов, на полпути понял, что телеграм тут вообще ни при чём, выкинул половину проекта — и теперь у меня Rust‑конструктор, из которого одинаково собирается реверс‑прокси, самодельный ngrok, мост HTTP → RabbitMQ → Kafka и тот самый балансировщик ботов, с которого всё началось.

Проект называется tgin. Раньше это был Telegram Gateway Interface, теперь — Traffic Gateway Interface.

С чего всё началось

Читать полностью »

Как я организовал своё генеалогическое исследование с ИИ‑помощником и контролем над данными.

Проект: gramps‑web‑mcp‑rs


Время self‑hosted решений

Если вы только начинаете строить генеалогическое дерево, то, скорее всего, после записей на листочках пойдете в один из крупных сервисов: MyHeritage, Ancestry, FamilySearch, Geni. И это вправду удобно: не надо ничего ставить и настраивать, приятный веб‑интерфейс, автоматический поиск совпадений, подсказки, можно поделиться результатом по ссылке.

Читать полностью »

Я работаю с Rust уже несколько лет. В основном - бэкенд, микросервисы, много асинхронного кода и многопототочных задач. А ещё я давно хотел разобраться в WebRTC. Не на уровне "вот туториал, скопируй и запусти", а чтобы реально понимать, что происходит с пакетами, как они передаются, как маршрутизируются.

В итоге я решил написать свой SFU.

Не для продакшена. Не чтобы конкурировать с LiveKit или Jitsi. Просто чтобы посмотреть, как оно работает изнутри. И написать его на Rust - потому что это мой основной инструмент, и мне было интересно, насколько он подходит для такого рода задач.

Читать полностью »

Предисловие

Возможно то, про что я хочу рассказать в своей первой статье тут, покажется не новым, уже знакомым велосипедом. Речь пойдет о контроллерах на базе ESP32 и программном обеспечении. Да, современных решений, открытых и бесплатных – много. А сейчас зарождается еще одно (а опенсорса мало не бывает, я считаю).

В статье я упущу и не буду рассказывать ни про свое знакомство с ардуиной, esp, php, python, js ни про то, что пришел сюда давным-давно гуманитарием. И да простят мой, вероятно не корректный, «жаргон» истинные профессионалы в микроэлектронике и программировании - итак, приступим.  

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js