Как стать автором
Обновить
49
0
Евгений Игумнов @igumnov

Senior Rust Developer

Отправить сообщение

Pet-проект на Rust нуждается в конструктивной критике

Уровень сложностиСредний
Время на прочтение1 мин
Количество просмотров5.5K

Примерно 8 месяцев назад я написал на Rust pet-проект, который пытается быть подобием Hibernate в экосистеме Java. Я даже опубликовал его в качестве Open Source, но получил негативный отзыв и удалил его с GitHub.

Сейчас я решил вернуться к этому проекту, но подойти к нему с другой стороны. Я бы хотел услышать идеи по проекту от опытных разработчиков на Rust. Что в моем проекте сделано не в идиоматическом стиле Rust и т.д. и т.п. В общем, хочется получить чек-лист того, что в проекте не так и как это исправить.

Читать далее
Всего голосов 24: ↑10 и ↓14+4
Комментарии15

Metatron — Open Source библиотека для генерации отчетов на языке Rust

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

Год назад возникла идея переписать весь Java-бекенд на Rust, который я уже несколько лет разрабатываю и поддерживаю. Я нашёл все аналоги библиотек и фреймворков из мира Java в экосистеме Rust:

Читать далее
Всего голосов 14: ↑14 и ↓0+14
Комментарии18

Shiva — Open Source проект на Rust для парсинга и генерации документов любого типа

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров9.7K

Идея проекта возникла у меня во время работы над проектом поисковика документов. Существует такая библиотека, как Apache Tika, написанная на Java, которая умеет парсить документы различных типов. Чтобы мой поисковик работал, он должен уметь извлекать текст из документов разных типов (PDF, DOC, XLS, HTML, XML, JSON и т. д.). Сам поисковик я писал на Rust. Но, к сожалению, в мире Rust нет библиотеки, которая умела бы парсить документы всех типов.

Читать далее
Всего голосов 24: ↑21 и ↓3+23
Комментарии31

Мини история Биткоина для чайников и возможные идеи для роста

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

Первый крупный рост цены биткона был связан с тем, что люди о нем узнавали и начинали изучать. Главные идеи были в том, что он децентрализован, защищен криптографически, и ограничена эмиссия, что его превращает в цифровое золото. Все стали его воспринимать с надеждой на то, что он станет в будущем платежным средством и средством накопления. 
 


Следующий крупный рост цены биткоина был вызван интересом к эфиру и его смарт контрактам, на основе которых проводили ICO. Как результат, следующая партия инвесторов погружалась в мир криптовалют и узнавала в том числе о биткоине. Это первая эра роста альткоинов, опережающая рост биткоина. 
 


Дальнейший крупный рост цены биткоина был вызван ажиотажем вокруг незаменимых токенов NFT на базе смарт контрактов. В то же время были запущены стейбл коины на USDC и USDT, которые явно конкурировали с биткоином как платежное средство, имеющие большое преимущество в скорости транзакции и стабильности курса почти 1 к 1 к USD. Как результат, произошел новый приток инвесторов и пользователей на крипторынок.

Текущий рост биткоина обоснован запуском Bitcoin ETF на американском рынке, совпавшим с ближайшим халвингом. Менеджерам легко рекомендовать покупку биткоина через ETF клиентам, так как халвинг меньше, чем через два месяца.

На будущий курс биткоина могут повлиять:

Масштабируемость: одним из ключевых технических вызовов для биткоина является масштабируемость сети. Решения второго уровня, такие как Lightning Network, предлагают значительное увеличение количества транзакций в секунду, при этом снижая комиссии. Успешное внедрение и адаптация этих технологий могут существенно повысить утилитарную ценность биткоина как средства платежа. 
 


Читать далее
Всего голосов 7: ↑1 и ↓6-5
Комментарии8

Как крысячить и выжить, или крысы бегут первыми с ИТ-корабля

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

Для меня загадка, почему программисты не могут оценить бизнес компании, в которую устраиваются. Почему у них прямо разрыв между тем, что компания должна быть прибыльной ежегодно, и тем, что она ему платит и повышает зарплату из-за этого, чтобы удержать программиста.

Читать далее
Всего голосов 87: ↑55 и ↓32+41
Комментарии140

Обновление Rust-библиотеки Ormlib, добавлена поддержка MySQL

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

Я рад сообщить, что вышла новая версия моей Rust-библиотеки для объектно-реляционного отображения - Ormlib 1.0.1. В этой версии было проделано много работы по улучшению архитектуры библиотеки.

В предыдущей версии 0.3.3, Ormlib работал только с базой данных SQLite. Это ограничивало сферы применения библиотеки. В версии 1.0.1 была проделана большая работа по рефакторингу кода, чтобы абстрагировать ее от конкретной реализации СУБД.

После рефакторинга я использовал механизм "features", который позволяет компилировать Ormlib либо с поддержкой SQLite, либо с поддержкой MySQL.

Читать далее
Всего голосов 9: ↑3 и ↓6-1
Комментарии19

Проблема «error: future cannot be sent between threads safely» при использовании Rust-библиотек Tokio и Actix

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров2.7K

Приложения на Rust часто используют асинхронные библиотеки, такие как Tokio и Actix. Эти библиотеки предоставляют инструменты для асинхронного ввода-вывода и параллельных вычислений и т.д. Однако иногда возникают проблемы при совместном использовании разных асинхронных библиотек.

Сегодня я хочу поделиться с вами опытом решения одной из распространенных проблем при работе с библиотеками Tokio и Actix. Конкретно, мы рассмотрим ошибку "error: future cannot be sent between threads safely", которая может возникнуть, когда вы пытаетесь использовать клиент Actix внутри асинхронной функции, запущенной с помощью Tokio. Я расскажу вам, как преодолеть эту проблему.

Читать далее
Всего голосов 6: ↑3 и ↓30
Комментарии21

Упрощенный пример на Rust обучения нейронной сети на основе Candle Framework от Hugging Face

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров3.8K

Я недавно изучал примеры использования нейронных сетей из библиотеки Candle от Hugging Face и обратил внимание, что они довольно сложны для понимания людей, которые только начинают знакомство с нейросетями. Поэтому я решил написать максимально упрощенный пример кода на Rust, который демонстрирует обучение и использование простейшей нейросети.

Читать далее
Всего голосов 7: ↑6 и ↓1+5
Комментарии5

Идиоматический код на Rust для тех, кто перешел с других языков программирования

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

Привет, дорогие читатели! В предыдущей моей статье "Как легко перейти с Java на Rust" я делился с вами советами по переходу на Rust и уменьшению количества "потерянной крови" на этом пути. Но что делать дальше, когда вы уже перешли на Rust, и ваш код хотя бы компилируется и работает? Сегодня я хочу поделиться с вами некоторыми идеями о том, как писать идиоматический код на Rust, особенно если вы привыкли к другим языкам программирования.

Читать далее
Всего голосов 44: ↑30 и ↓14+23
Комментарии39

Разрабатываем свою ORM библиотеку на Rust: Оптимизация и Простота

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

Почему я решил разработать свою ORM библиотеку?

Мои первые шаги в мире ORM были сделаны с помощью библиотеки Diesel. В то время он был одним из немногих вариантов для работы с базами данных на Rust, и, конечно же, его популярность не оставила меня равнодушным. Вскоре, однако, я обратил внимание на SeaORM - другую перспективную библиотеку для ORM на Rust, которая также набирала обороты. Но у меня были с ними некоторые проблемы.

Читать далее
Всего голосов 8: ↑7 и ↓1+7
Комментарии8

Как легко перейти с Java на Rust: Особенности и советы

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

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

Кроме того, я создал три open source библиотеки на Rust, которые публиковал на GitHub. Это позволило мне лучше изучить идиоматичный Rust, работу с асинхронностью и т. д.

В целом, после работы над этими проектами у меня как Java-разработчика накопился интересный опыт, которым хотелось бы поделиться для тех, кто только начинает изучать Rust, приходя из мира Java. Далее я привожу несколько полезных советов, которые помогут в переходе на Rust.

Читать далее
Всего голосов 22: ↑19 и ↓3+20
Комментарии23

Опыт написания библиотеки управления акторами на Rust

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров2.5K

В своем последнем проекте я использовал популярную библиотеку Actix для реализации модели акторов. Однако в процессе разработки я столкнулся с ограничениями.

Читать далее
Всего голосов 8: ↑6 и ↓2+7
Комментарии18

Информация

В рейтинге
5 258-й
Откуда
Астана, Акмолинская обл. (Целиноградская обл.), Казахстан
Дата рождения
Зарегистрирован
Активность