When I wrote my first Rust program, I got the advice "just clone everything until v1 compiles". I think this OK advice, but I think a better rule of thumb is "used owned types as much as possible".
I spent a ton of time returning &str or &[T] and fighting the borrow checker.
miniblog.
Related Posts
Show, don't tell: effective advice for writing for both LLMs and people!
Advice from one of the authors of Common Lisp on PL work: established languages tend to win in their domain. It really helps if you enjoy working in this space.
(There is a ton of PL skill and insight in the smaller languages IME.)
https://pldb.com/posts/scottFalhmanInterview.html
Today I learnt that Rust has an API guidelines book, with a ton of helpful advice on idiomatic style. For example, naming: https://rust-lang.github.io/api-guidelines/naming.html
Readers expect `to_foo()` to do more work than `as_foo()`, which was new to me.

