Top down learning
I was first exposed to computers when my uncle got a computer. I liked playing around with MS Paint in Win 95 and some simple video games. Then I had computer labs at school where I was introduced to programming. When I had the opportunity to choose a course of my choice at college, I chose Computer Science and Engineering.
I realized 2 things very quickly though:
- The field was vast and deep. It was not just programming alone.

- I loved it. I felt that I was naturally drawn to understanding and building systems.
I also realized that I could not grasp very abstract concepts immediately. I learnt concepts only when I could relate to them.
Whenever there was a lot of bottom-up learning, there was no indication on when I could relate it to a concept that I knew already. This made me lose interest gradually in that concept.

After nearly 15 years in the industry, I think I have exposure on multiple relatable topics. But I don't want to follow the same approach that I was forced to follow at college.
I want to start from relatable topics that I already know and drill down.

Several high level topics might share the same foundational topic. Which is a good problem to have. It will reinforce my learning.
So, I will be following a top-down approach for all content in this blog.

I will try my best to keep things linked. Therefore, if you are having trouble following a topic, you can navigate quickly to those topics.