I found https://boxyuwu.blog/posts/an-incoherent-rust
an interesting read. It's partially touching the matter of 3rd party crates (as opposed to being part of the language) competing, and more often than not - enforcing "ecosystem" development towards certain direction.
What it does not mention, but has been already noticed by #embedded #rustlang surveys and reports is name-squatting and multiple runtimes, for example async. What it could also touch is, how some crates, due to opinionated ideas about what... 1/2
... 2/2 to do next, how to continue development (and partially by lack of manpower), stay in limbo for months or years. And some serve important purpose of aligning projects like cortex-m, heapless or embedded hal crates. Certainly it has touched the matter, that whatever comes first - even if not yet ready - as long as it sees commits and some time invested, often wins, and stays. Even if better solution came - it won't be able to break through the old, widely used one. (Caveat, not always!)