Building a GitHub account x 100 days of code: Day 15
Today’s Goal: Reflect on the DSA journey, and think about a new undertaking
Well well well, 2 weeks of Data Structures, Algorithms and I’ve barely scratched the surface of what Python has to offer. But here’s the tea — baby steps make all the difference.
How do I know? Remember when Python wasn’t even on the list of languages on my GitHub account 2 days ago — it is now the third on my list.
Is ~13% a huge number, not really — BUT in 14 days, I am very proud of myself!
Here’s something else that I have picked up while dabbling in the realm of DSA — consistency is key. So whether you think you have time for it or not, once you remove the optional clause from anything you’d like to do, you end up doing it way more than you originally would have. So set a goal and even on days that seem like you could slack off, keep at it. No one can motivate you like yourself.
Understanding data structures is an important component of algorithm design and to do your best work, you need to understand the tools you are working with. This is why, when you learn any new language, it’s always a good idea to start from its building blocks.
How you approach this learning is unique to your perspective and purpose, but if you are looking for ideas — Neetcode is a great place to start. The roadmap categorizes top Leetcode problems and takes you seamlessly from simple to complex concepts and questions.
Over the last 2 weeks I solved 50 problems and what was great about it was I could track my progress and for the purpose of this documentation, know in advance what umbrella concept I could cover next.
What is next? Now that I have deep-dived into the practice of Data Structures and algorithms, I want to understand and implement the practices of good design.
The point of this challenge is to come out the other end equipped to take on any and all programming challenges, so I will be reading “100 Things Every Designer Needs to Know About People”. Written by Susan Weinschenk, a behavioral scientist the book is a guide on how to design intuitive and engaging software that takes into account the way people think and behave.
In my opinion, forming a strong understanding of how certain design/feature choices can affect users is important before jumping into any development. So over the next week or so, I will be reading and discussing Susan’s take on good design and my thoughts about the same.