Vitaliy Zarubin | @keygenqt – Telegram
Vitaliy Zarubin | @keygenqt
463 subscribers
1.04K photos
276 videos
3 files
548 links
Привет! Я инженер-программист компании ОМП. За свою карьеру я сменил много платформ и языков, и продолжаю учить новые. На канале рассказываю о своей работе и моих pet-проектах.
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
#bot
👉 Flutter available.
👉 Psdk available.
👉 Sdk available.
🔥5👍4
#fyi Первый плагин Flutter для ОС Аврора с использованием Rust: flutter_selector_aurora. 🎉
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍3🍓2😁1
This media is not supported in your browser
VIEW IN TELEGRAM
#bot Это было не то что бы сложно (webm -> ffmpeg-next -> ffmpeg -> image -> crop -> gifski -> gif), но Телеграм все запорол - кропает Gif файл нафига-то.
👍8🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
#bot + convert to mp4
(webm -> ffmpeg-next -> ffmpeg -> image -> crop -> yuv -> openh264 -> mp4)
👍7🔥2
Создатель Linux Торвальдс своим поведением добился ухода еще одного важного члена сообщества разработчиков Linux, пока частичного

Кристоф Хеллвиг, главный противник кода на Rust в ядре Linux, называющий его раковой опухолью и радеющий за код на С, отказался быть мейнтейнером Linux

Ранее Торвальдс, сначала тоже выступавший на стороне адептов С, в личной переписке с Хеллвигом явно указал на хорошее отношение к Rust

@imaxairu Подписаться
😁8🤔1😱1
Forwarded from Aurora Developers (Vitaliy Zarubin)
Rust — язык, вызывающий бурю эмоций. Одними он любим, другие стараются его обходить стороной. Но при разработке программных продуктов мы не должны выбирать сторону: мы даём инструменты, которые может использовать программист для написания своих приложений, плагинов, библиотеки — всего, что душе угодно.

💻 В Аврора Platform SDK (PSDK) — наборе инструментов для разработки — в наличии Rust v1.61. Это не последняя текущая версия, но обновление вполне возможно в будущем. Установить rustc, cargo и rustup можно в таргет (целевая платформа) PSDK через sb2:
$PSDK_DIR/sdk-chroot sb2 -t {target_psdk} -m sdk-install -R zypper in -y cargo

где {target_psdk} — название тагрета PSDK.

Rust поддерживает различные платформы для сборки ваших проектов. Установить необходимый таргет можно через rustup, например:
$PSDK_DIR/sdk-chroot sb2 -t {target_psdk} rustup target add {target_rust}


Можно сопоставить таргеты PSDK & Rust следующим образом:
- armv7hl == armv7-unknown-linux-gnueabihf
- aarch64 == aarch64-unknown-linux-gnu
- x86_64 == x86_64-unknown-linux-gnu

Установив необходимые таргеты Rust, можно собирать проект через PSDK для целевой платформы:
$PSDK_DIR/sdk-chroot sb2 -t {target_psdk} cargo build --release --target {target_rust} --verbose -j 1

Обратите внимание на -j 1 - это решает проблему переодических сбоев сборки.

Недавно в открытом репозитории ОМП "Flutter Community Plugins" появился плагин, в котором UI написан на Flutter, а вся бизнес логика выполняется в библиотеке Rust с C интерфейсом через FFI.

Это первый плагин с использованием Rust во "Flutter Community Plugins" и, надеюсь, не последний. В репозитории плагина вы можете найти все необходимое для написания подобного плагина самостоятельно:

1️⃣ Скрипт сборки.
2️⃣ Логика подключения.
3️⃣ Логика общения Dart & Rust.
4️⃣ Создание привязок и подключения библиотеки.

🔍 Плагин можно найти в открытом репозитории ОМП: pickers_aurora.
1🔥8👍4
This media is not supported in your browser
VIEW IN TELEGRAM
#bot Добавлен статус прогресса в CLI, D-Bus и Telegram. Нашел я таки апдейт, бот не может обновить пользовательские сообщения, свои может. Кстати, через удаление это работает не гуд.
🔥5👍3
This media is not supported in your browser
VIEW IN TELEGRAM
#fun А как вы боритесь с усталостью и выгоранием?
😁12
Не расслабляйтесь, а то вас обойдут =)

https://trifectatech.org/blog/zlib-rs-is-faster-than-c/
🔥7👍6
Media is too big
VIEW IN TELEGRAM
#bot Aurora Bot | Обновление v0.0.4

👉 Конвертирование видео в Gif.
👉 Конвертирование видео в Mp4.
👉 Доступные версии Flutter.
👉 Доступные версии Platform SDK.
👉 Доступные версии Аврора SDK.
👉 Статус прогресса в процентах.
👉 Загрузка файла в эмулятор.
👉 Загрузка файл по URL в эмулятор.
👉 Загрузка файл из Telegram.

▶️ RUTUBE

Поддержать проект можно ⭐️ на GitHub.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥3
#bot Rust качает PSDK на 34% быстрее 🎉

Для того, чтобы отобразить процесс скачивания, требуется получение размера файла, и Rust это делает быстрее. А вообще, мог вмешаться рандом доступа к файлу на сервере, но хочется верить, что Rust все же побыстрее качает в мульти-треде 🤫
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍4
This media is not supported in your browser
VIEW IN TELEGRAM
#bot
+ flutter download
+ psdk download
+ sdk download
👍6🔥1
#fyi Страсти по Rust

Недавно я начал новый проект - AuroraBot. Проект предполагает приложение на ПК, которое будет являться базой для всех интерфейсов (а их 4 - умная и классическая командная строка, d-bus, telegram). Я давно хотел попробовать Rust, а AuroraCLI (написанная на Python) медлительная для таких важных задач. И я выбрал Rust для реализации приложения.

Освоился я быстро, через 2 недели уже был собран первый релиз с базовым функционалом и общей логикой, реализующей все необходимые интерфейсы. Мне Rust понравился: единая инфраструктура, современная сборка, он быстр и собирается в единый бинарник из коробки (если вы не имеете дело с привязками сишных либ). Отличная работа с IDE: все зависимости подтягивает, ни единого красного инклуда, а компилятор сходу указывает на проблемы - еще до компиляции. Подробный вывод ошибок, даже panic - это совсем не segmentation fault. Синтаксис мне напомнил Kotlin - тут конечно спорно, но он приятен и современен.

Я продолжил погружение в Rust и обнаружил бурление С/C++ сообщества по поводу Rust. Настоящие страсти. "Зачем он нам, не лезьте с Rust, он нам не нужен" etc. Я имею некоторое отношение к плюсам, мне приходится писать на нем, и мне это не особо нравится. Я не одинок в этом - плюсы это одно из стоп-слов для многих программистов. Да и я понимаю почему: часто плюсы - это не разработка чего-то на последнем стандарте, а поддержка зоопарка различных библиотек ~возраста ZZ Top. Не говоря про общую логику таких проектов и кастомные фичи, которые каждый программист считает своим долгом написать самостоятельно.

Я бы вот что хотел отметить: Rust - отличный и современный язык, сравнивать его с C/C++ нет смысла. Это как сравнивать Flutter & KMP - что само по себе ошибочно. Хоть вы и получаете на выходе приложение, разработка совершенно разная - в KMP у вас может быть нативный интерфейс, а может и Compose Multiplatform, а на Flutter только children, children, children... В Rust вы можете использовать unsafe, а можете и не использовать - в си все unsafe, плюсы не далеко ушли - один указатель умнее другого...

Если вы программист, пришедший с высокоуровневых языков в системную разработку - смело пробуйте Rust, он должен вам понравиться. Если же вы плюсовик, напишите несколько тысяч строк на Rust, чтобы ощутить удобства, которые он предлагает, не влияя на производительность, он вполне может вам не понравиться, но вам придётся, скорее всего, с ним иметь дело - его все больше...
1🔥11👍3🤡2😱1
#bot Вот так потихоньку, день за днём, методов все больше - их уже 50.
👍5🔥4😱1
This media is not supported in your browser
VIEW IN TELEGRAM
#fun Написать проект - пол дела, его еще нужно презентовать правильно.
😁15