The Iterative Nature of Learning to Code
learning to write software is rarely a one-time activity. It’s like watching a crocodile swim towards you. every time it does that, you learn a new sense of fear, but also appreciate the gloriousness of its pre-historic beauty from past interactions.
There are several different kinds of things that people learn. For instance, learning to ride a bicycle.
You learn it once when you are a kid, hopefully with your father or brother. Or, if you are like me, then, you learn on your own, falling and injuring yourself constantly until you finally manage not to fall down.
Then, that’s all there is to it.
You never forget. Till the day you die, you can always remember how to ride a bicycle. It’s a done deal.
This is because, a bicycle does not change over time. That is also why, programming is never a ‘one and done’ sort of deal.
Pick a programming language. Any programming language. There is always something new being added every year. JavaScript, for instance. We are now in the 13th iteration of ECMAScript! Yeah. I know.
That is only within the circle of JavaScript. There are always new things happening in React JS, Node JS, cloud deployment, version control, developer tools, tooling in general and so on and so forth.
The irony is, with each passing year, young people find themselves ever more distracted and have shorter and shorter attention spans. I remember when folks were complaining that 2-minute videos on YouTube are too short. Now, we have videos that are only 10 seconds or 20 seconds being considered too long.
Even for a person such as myself, who does have long attention spans that can expand to hours or even days, programming is challenging.
That is why, I resort to iterative learning, just like a for loop.
- I start learning a new subject, and let’s say it has 25 chapters.
- I skim through the learning textbook or online video series or similar material.
- I pick up the easy 5 chapters in my first run.
- Then, I practice and build mini projects with this 5 chapters knowledge.
- Then, I take a break.
- I return to the material. Repeat those 5 chapters and learn 2 to 3 more chapters.
- Then, I build mini projects with the 8 chapters of knowledge.
- I take a break.
- I keep repeating this until all 25 chapters are done.
Of course, every learning material will have topics that are never useful to me. I usually skip those.
Primarily because, I can always come back to the material, and learn the skipped chapters if an occasion arises which needs this specific piece of skill.
I work as a full-time freelance coding tutor. Hire me at UpWork or Fiverr or Stack Overflow or GitHub. see my personal website. see my photography art hobby at Behance and Unsplash and ArtStation. Also, podcast about life. podcast about movies.