This is personal experience, your mileage may vary.
Today I want to talk about my method of learning a new programming language and the upsides and downsides of my method.
I have tried using tutorials to learn new languages, but it usually bores the shit out of me and in the end, because everything was mostly done for me, I rarely retain anything from them (or at least that's how I feel).
- It's a project I enjoy, and thus I am more motivated to work on it (and hence learn the language that I'm trying to).
- I learn a few "quirks" of that language that best apply to me, as I'm usually developing stuff for Hive, so Hive-related libraries/systems knowledge is transferrable, and I don't have to go and learn about it afterwards.
- It works for me... that's sort of the main thing. It's the way I learn and so it's the way I learn 🤪
- Output, quickly - I quickly get feedback about what I'm doing wrong (thanks compiler and stack overflow) - this is probably what keeps me motivated to power on through the learning.
- Spaghetti Code - Looking back at my first React project, I can now see that it is in fact written very poorly, and before I release it I'm going to have to rewrite it from scratch (which I'm not going to be pumped for)
- For larger projects, the above can mean that I'm still working on some of these projects, but they've grown so large already that poor practice is programmed in, and now I gradually (as I get time) have to remove these issues.
- It has to be a project I really want to do, because otherwise I'll just cheap out and write it in some language that I already know for speed.
- It should be something suited towards the new language, which can take time to come up with because not every language is a great fit for every task... let's not write my new website frontend in python (not the server, the code that excecutes in the browser)
How do you learn a new language, or have you given up on any endeavour like that for a while?
Please let me know in the comments & thanks for reading!