I'm never learning a new language by reading topics on documentation, I always look for a problem I already solved in the past and try to replicate the behavior.
Here are the steps I followed to learn Dart and Golang
- Identify the problem I want to solve
I want to get a full address with a given zip code - Put on the table the flow I need to get this job done
I need to expose a function calledGetAddress(zipCode string)
and perform a search on multiple zip code search providers to get the address. So I'll probably need to do afor loop
, HTTP request and handle some async stuff - Build a first version
Focus only on making things work, at this time we'll have a code with "accent" from past languages we worked with. The "accent" is when you program in Python and start programming in Javascript and name your functions likeget_address()
insteadgetAddress()
- Afterward, look for the standard of the language you want to learn
Just get the things you did and search for a pattern it should be to remove that accent
At the end of your journey, a new open-source project might be born