Thanks for this great article. It sounds similar to my experience with Rust: I picked it up for a toy project. It was a blast at first, but then, after few days and couple hundreds lines of code, there came lifetime errors I really could not resolve. I tried and tried but finally gave up and put Rust on a shelf labelled "maybe try out again later".
I never did, although for some time I'm starting to think about it. I think you have just encouraged me to do so, as your story is similar, but you managed to fully ovecome the difficulties. Thanks again!