I've been programming since 2010. It was the third time I tried to learn how to program and the third time I stuck with it. I dropped the masters I was doing, because I considered programming more important and it was the right decision.
I started with Python and I did scraping with Scrapy and web development with Django. Then I realised I don't like scraping and I gave that up. I continued to do Django until I changed jobs.
At some point I discovered the importance of mathematics, so I went through the Khan Academy maths curriculum all the way to Calculus 2. Since then I realised how important graph theory is in a lot of real-world problems, so that's my next focus.
On the programming front, I discovered Haskell in 2014. It took me a long time to get comfortable with it and I kept leaving it and coming back to it. Then I discovered Elm and it made the transition into the functional programming world easier.
Along the way, I discovered many more languages. I used Lua for an nxing plugin. I learned R to translate a Python script into it. At some point, I also discovered TypeScript and it showed me how fun it is to work with a language with good tooling.
Finally, after 4 years, in November 2018 I started using Haskell and PureScript professionally. It was intense. I built a rudimentary compiler from Python to PureScript and I had to learn a lot of stuff in a short while: GHC Generics, freer-simple, language-python. It was the most challenging project I've ever worked on and I enjoyed it a lot.
Right now, I care a lot about tooling. As I said above, TypeScript showed me what good tooling gives you. This makes me feel very frustrated about the current state of Haskell tooling. Even more so, because Haskell's type system and solid theoretical foundations could support great tooling. So I'm looking to change that.