Why is it easier to write initial code in Rust that doesn't compile than one that compiles? Don't you think the language needs simplification? It is okay that the purpose is to make everything very explicit for the programmer, but this is a very heavy burden when starting with language.
Initially, Rust is easy, but as soon as you are introduced to "LIFETIME HELL" everything becomes unpleasant. There are hours and hours spent trying to understand what the cryptographic message of the compiler means and in the end the code insists on not compiling with new mysterious errors. I already gave up and tried again several times. The language is very good for agile development but lifetime hell is an obstacle that is difficult to overcome.