The Best Method To Learning Programming | Project-Based Learning

Shaun Smerling
4 min readMar 15, 2022

Learning programming is a daunting task for anyone trying to get into the technological field. A main part of the difficulty is the sheer amount of things one has to know in the field e.g. syntax, data structures, algorithms, languages.

The first path a beginner programmer usually takes are tutorials on the basics of a certain programming language. While its important to know the fundamentals and be able to perform rudimentary problems in the space, I’ve found that its not the most optimal way to get started as a beginner, mainly because it omits the most exciting part about programming: building

You see, in the beginning, it really is about fostering that excitement and building something with the tools programming provides you. Curating a space of imagination and ideas whilst you put pen to paper (or finger to keyboard) to give life to those ideas is super important as you start out.

You need to see the power of programming by building ideas from scratch.

Tutorials will easily get boring, frustrate you, and drag you down to no man’s land where you have no interest in continuing to program. That’s a real shame in my opinion.

Its like ordering your favorite burger but having to eat a bunch of salads before even getting to the main course. By the time you get to the burger, you’ll be full and can’t really enjoy all that you’ve been excited to experience.

Because of this, I think project based learning is the best way to get started as a beginner. This is the process of learning the ropes of programming by building projects that increase in difficulty as you get more adept at programming.

In this process, you’ll be taking project ideas and building them with the little base knowledge you have. Word of advice — Google is your best friend. You’ll know absolutely nothing, you might not even know where to get started, but you’ll be training your mind to master the ultimate skill all programmers need: Critical Thinking.

Here is a list of projects, in order from easiest to hardest, that I suggest you go ahead and try to build to further develop your skillset of programming. I haven’t added any resources or links to guides because that really is the whole point of this — you need to be able to discover how to build these projects yourself. It all starts with the idea.

Here are the projects I recommend building:

  1. Personal Website

2. To-Do List App

3. Meme Generator

4. Movie Database

5. Daily Sleep Tracker

6. Stocks Tracker App

7. Quora For College

8. Airbnb Clone

Although this list may look daunting to you — don’t worry. Your best skill as a programmer is the ability to Google things, look things up on Stack Overflow, and be resourceful in your question to move forward. Even solving one piece of your project a day moves you closer to that highly rewarding day of building out your first application.

The last thing I will say here is that if you are trying to eventually get a job as a software engineer, your employers will value the projects/apps you’ve built out rather than any past experience or certifications. The more projects you’ve built, the better chance you have at getting hired for a role as they can clearly see that you are capable of building from scratch and being a resourceful programmer.