How to Plan and Build a Programming Project

Internet keeps throwing this advice of "Build projects" to beginners, but "what?" & "How?" This article attempts to answer that question
The blog is a WIP, will finish soon and publish it
You want to learn to program, pick a tutorial online, and they will teach you the basics. Now you got good with syntax. But when it comes to writing a simple for loop, you get stuck. You look for solutions online and people suggest "Build projects". Instead of fixing your 1st problem they now give you a new problem.
I'm not saying "Build projects" advice is bad. I also received the same advice when I was in college ,but there are a lot of missing pieces to this broad advice. No one tells to what to build and more importantly how to build. But wait what about online courses
I'll tell you exactly how it goes. You search udemy for "Python Project based learning" and get a list of courses each teaching anything from 10-100 projects. You will purchase the one with the best reviews and good content
There are 3 things that might happen next
  1. 1.
    The first two lessons would be a cake walk and there will be a sudden jump in concepts, you will feel lost.
  2. 2.
    Three weeks into the course you will lose all the enthusiasm to build
  3. 3.
    You will finish the project and feel super accomplished but... As you open your code editor to do your own project, you will feel stuck.
Building projects on your own need a little more than just programming skills. It is because of the lack of these fundamental concepts that "project building" feels like a humongous task

What to Build?

People kept asking me to build a project. But no one ever told me what a project is, how big should it be?
The goal of the project in the learning phase can be as simple as a piece of code that will introduce you to new concepts and hardens your skills.
It can be as simple as a
  • Todo list app
  • Calculator app
  • Grocery list app
  • Weather app
Or as complex as
  • Ecommerce application
  • Streaming app
  • Chat app

But simple apps won't help me get a job

That's a valid fear to have and it is true too. Recruiters don't take todo apps into account. But remember how you learned to write English? First you learned the alphabets, you drew lines on top of what your parents or teacher drew, then you learned to say words, form sentences, read more and eventually writing your own beautiful essay. That is exacly what this phase is sharpening your tool kit

Where to Start?

Now you have picked a project to build but where do you start? Should you directly open the code editor and