Learning a new programming language can sometimes be quite intimidating. It’s not just the syntax. If you know one programming language, you understand more or less any programming language. It’s all the things around the language itself. The whole ecosystem might be special in its own ways, maybe a little quirky to your eyes if you’re so used to some other environment for a long time. Once you’re fairly confident to move a long in one language and its ecosystem you’re used to a certain way of how things work. At least for me its hard to really get into a new language simply because I have a certain standard of code quality in my mind. But what is considered good code in a new language? I don’t want to create tiny playground tools nobody needs and that only use the bare minimum of language features. I have other aspirations and a bigger project in mind. But bigger projects mean bigger responsibilities and bigger complexities as well. If you want to do it open source out in the public, it even means others judging your code. If you go into an ecosystem for the first time, this can be really intimidating.
What does this mean when learning a new language? To me it means figuring out how unit testing works and how to do concurrency and asynchronous tasks. How are you supposed to package your stuff? What to people in the community consider good code? What frameworks are considered the way to go for specific use cases? In my case it even means which of the many UI frameworks should I use?
There’s so much more to learning a new programming language. I still learn best reading books about it, but unfortunately the most books are often just about the syntax and maybe a little theory about how and why things work the way they do. It’s rare to find lots of books to cover more advanced but still generic topics that are needed for more complex solutions.
But it’s fun and rewarding to learn all these things. It’s my level of standard I like to adhere to when programming that slows me down in the beginning. I’ll get there… I just need a little longer to learn everything to get up to speed.