Affiliate Disclosure: By buying the products we recommend, you help keep the lights on at MakeUseOf. Read more.
The world of programming seems endless in every direction. If you’re not mastering PHP, you’re looking to Python. If it’s not a language, it’s a framework.
You’ve got to start somewhere. Yet when there’s so much to learn, where should you begin? While you’ll hear programmers stress the need to find creative projects, you’ll need something small to build your confidence.
Here are the best beginner programming applications you can create in a few hours, start to finish.
Where to Begin as a New Programmer?
If you’re an absolute beginner, and don’t have to skills necessary to attempt a project, here’s a primer of the bare-bone basics regarding two basic markup languages: HTML and CSS.
If you’re comfortable with the basics, you can then venture out and create projects. While programming allows for a seemingly endless array of projects, the best projects end up being crash courses in coding themselves. That means they push the boundaries of what you already know, allowing you to consider a language, or a bit of code, in a new light.
The following projects are simple by design, even if they’re not exactly easy. While you aren’t going to end up with a beautiful UI or completed web app, you will walk away from the project with two things: a portfolio piece you can show to prove your ability, and a better understanding of just how wide-ranging programming can be!
1. Make Your Own Chess Game
Chess is a game as old as time, and has always followed the same rules (deviations aside). The logic of chess, however, matches up very nicely with the same logic you would use to program a game. Additionally, Chess makes for a fantastic starter piece—pun intended—towards a programming career.
You’ll start by mapping out both your board and your pieces. Then, you’ll go on to giving specific movements for your pieces. From brainstorm to final product, you’ll be forced to think of chess as less of a physical game and more of data-driven mental gymnastic! Click on the video above to begin learning how to maneuver your way through creating your very own chess program (and how to modify it to create your own version of chess).
While the video above isn’t exactly a step by step tutorial to create the program, it is an absolutely necessary insight into how programmers think and code in order to create a final product.
If you’d prefer a video you can follow along with, take a look at these code-along YouTube channels to learn programming.
2. Program a Soundboard
If a blinking cursor gets your stomach in knots, know that there are other, simpler alternatives to text-based coding that can assist in understanding how programs operate. MIT App Inventor, an adult alternative to the kid-friendly and highly popular Scratch, allows users to create an Android app using a simple and understandable UI.
Creating a soundboard is highly educational for a variety of reasons. For example, you are forced to understand how sound files and user interactions mesh together. Individual files, pieced together, become the immersive audio environments you enjoy when playing your favorite games!
3. Build Your Own Calculator
Inputs are absolutely vital to learn as a programmer. Creating a calculator allows users to perform simple tasks using simple operations like multiplication and division.
It may not be the most exciting application, but you can rest assured it’s absolutely necessary for a beginning programmer.
4. Create a To-Do List App
Building a to-do list app is how you know you’ve gotten somewhere. It involves most of what you would need to create a simple UI: buttons, animation, user interaction, and events.
5. Develop a Weight Conversion Tool
Along the same lines as a to-do list, you can also add a few simple formulaic operations to create a great looking weight conversion tool. Keep in mind that with projects like these you can add or subtract as much functionality as you’d like.
The above example integrates Bootstrap toolkit into your project as well, which some would consider an absolutely crucial experience for modern web development.
6. Code a Rock, Paper, Scissors Game
Rock, Paper, Scissors is kind of a catch all. It requires both user input and a randomizing element. You’re essentially playing against a robot, which you created, in a game you also created.
Additionally, it provides beginner coders with a tangible, interactive product you can pick up and play immediately. Since there are various graphic objects to interact with, you can be as personal and creative as you’d like!
7. Build Your Own Tic Tac Toe
You can even use the program as a Tic Tac Toe teacher of sorts, expanding the amount of teachable moments you can achieve with this project.
8. Web Scraping With Python
Python is famous for automating boring things, and the above project is no different. You can use Python, along with a Python library called Beautiful Soup, to extract data from HTML and XML documents, even if you’re a complete newcomer to python.
The above example of web scraping exports the data into a CSV file, so you can even use a program like Excel to create charts, graphs, plots, and so on from your data.
You will have to download a Python distribution named Anaconda before you undertake this project, as it’s not present on your PC by default. This is the case with many programming languages, so it’s best to get used to the process early on.
9. Build a Basic HTML5 Website
Few projects will teach you as much as a basic HTML and CSS website. From learning simple design principals, file linking, and web hosting, creating a simple website is always a great way to either begin, or further, a programming portfolio.
The complexity and general impressiveness of your website will grow the more you learn. Most other programming languages you learn in your coding journey can also be applied to websites, making them a fantastic go-to when flexing your programming skills.
After you’ve been coding for a while, you gain an almost intuitive sense of the logical progression of an application. A game as simple as Snake, for example, is not a complete chunk. It’s a sequence of logical pieces.
The above video perfectly exhibits an actual programmer undertaking a casual project (which I wouldn’t try coding along with in real time). With a thorough understanding of the language you’re coding in, along with a mental coding library developed through practice, you too can recreate in parts what always previously seemed like a solid chunk.
While a game of Snake isn’t the most impressive project you’ll undertake, the workflow exhibited in the above example is what you’re aiming for as an amateur programmer.
Start Small, Think Big
Now you have ten to pick apart and piece together. Or rather, a starting ten. Choose one, two, or all, but whatever you do: get coding! You can even collaborate on code with VS Live Share to learn programming from a pro. Speaking of Visual Studio, which is ideal for C# development, it’s practical to make C# the first programming language you learn. If you have a Raspberry Pi, you’ll eventually might want to get started with the Rust programming language.