Pull to refresh
48
32.1
Евгений Игумнов @igumnov

Rust Developer

Send message

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

Спасибо! Самому интересно кодить )

А почему diesel, а не sea_orm?

Ну и warp, а не axum?

Мне кажется это более в тренде сейчас.

Я каждые 2-3 года изучаю новый ЯП и новые либы и фреймворки ) У меня психотип новатора ) Все мои 45 летние знакомые старые пни, которые ничему новому не хотят учиться.

Вы оказались правы! Спасибо! Поигрался в песочнеце:

#[derive(Debug)]
pub enum Element<'a> {
    Header { level: u8, text: &'a str },
    Paragraph { elements: Vec<Element<'a>> },
    List { ordered: bool, text: &'a crate::Element<'a> },
    Text { text: &'a str, size: u8 },
}

fn main() {
    let header = Element::Header { level: 1, text: "Hello, World!" };
    let paragraph = Element::Paragraph { elements: vec![header] };
    let list = Element::List { ordered: false, text: &paragraph };
    println!("{:?}", list);
}

про fn new(element: &Box<dyn Element>) -> anyhow::Result<ListItemElement> тут вообще все очевидно - излишний Rusult конечно

Буду все рефакторить, пока кода мало!

Вы оказались правы! Спасибо! Поигрался в песочнеце:

#[derive(Debug)]
pub enum Element<'a> {

    Header { level: u8, text: &'a str },

    Paragraph { elements: Vec<Element<'a>> },

    List { ordered: bool, text: &'a crate::Element<'a> },

    Text { text: &'a str, size: u8 },

}


fn main() {
    let header = Element::Header { level: 1, text: "Hello, World!" };
    let paragraph = Element::Paragraph { elements: vec![header] };
    let list = Element::List { ordered: false, text: &paragraph };
    println!("{:?}", list);
}

про fn new(element: &Box<dyn Element>) -> anyhow::Result<ListItemElement> тут вообще все очевидно - излишний Rusult конечно

Буду все рефакторить, пока кода мало!

Хотите присоединиться к кодированию проекта?

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

У меня, к сожалению, всего две руки и 24 часа в сутки. Я иду на жертвы с точки зрения универсальности, иду на упрощение. В целом, я с вами не спорю. Надо, возможно, для каждой страницы делать и отступы, и т. д. Надо подумать. Может, пока не поздно, дойти до такой универсальности, как вы сказали.

Спасибо. Согласен. Опыт Java давит. Буду делать рефакторинг. А то не комильфо.

И по поводу всего остального, касаемо формул и так далее, — я знаю, думаю и планирую. Просто нужно с чего-то начать. Сделать минимально жизнеспособный продукт (MVP). А потом, рефакторинг никто не отменял. Учитывая, что это молодая и быстро растущая библиотека, у меня нет миллионов пользователей, чтобы поддерживать старые API, так что пока мои руки развязаны. Вороти и твори, что хочешь :) Это потом, когда достигнешь популярности, становится сложнее — нужно поддерживать старые версии. Нельзя же бросать людей, которые доверились тебе и использовали твою библиотеку. Но это пока всё лишь мечты. Впереди несколько лет кодирования. )

Признаюсь, пока с этим сложно. Сделал MVP, чтобы обкатать технологию и модель. Но у меня впереди несколько лет, чтобы это всё закодить. Я настроен оптимистично. Прикручу нейросеть, чтобы картинки в векторе или битмапе распознавать как текст. Есть опыт работы с библиотекой Candle на Rust от Hugging Face — в общем, распознавание текста — это банальная задача. Короче, все решаемо. Не вижу здесь особого R&D. Я бы сказал, что все понятно, нужно только сидеть и терпеливо кодить.

Спасибо! Хорошая идея. Когда я дойду до этой проблемы - сделаю рефакторинг.

Я конечно знаю про эту либу. Но она не на Rust )

Слил все по 65 тыс ) Дальше я в эту рулетку играть не хочу. Столкнулся с тем что битки и usdt щас все проверяют через AML бота. Вобщем скоро единственные битки будут котироваться что по фьючерсам куплены или через etf. Все остальное: наркота, санкций, азартные игры и тд. Это по сути убивают основную идею крипты. Мол не регулируема не подконтрольна и тд. Те получается что вот эту махровую крипту сейчас проблемно продать так как тут все теперь регулируется и замораживается если твоя крипта AML не проходит. Это смерть для крипты.

Интересный концепт точнее он не новый а от баффета но в современных примерах он прям играет, скажите свой акк в телеге я могу вас добавить в чат где разные интересные люди интересуются инвестициями, стратегиями, алгоритмами и тд и тп

Я просто когда сомневаюсь мучаюсь и тд. Не могу принять решение. Пишу статьи, расспрашиваю друзей, пишу книги. Собираю фидбек. Кристаллизую свой опыт в тексте. Это помогает самому себе понять, не чушь ли ты несешь. Как мне учитель по математике всегда говорил: "Евгений, не считайте в уме, все расчеты делайте на бумажке. Так вы избежите ошибок!"

Купил биткоины по 20 тыс $ за штуку) Сейчас подгадываю момент, когда соскочить с "темы" :)

нет - на картинки то что ChatGPT ответил на мою статью

Information

Rating
171-st
Location
Астана, Акмолинская обл. (Целиноградская обл.), Казахстан
Date of birth
Registered
Activity