July 30, 2019 ยท 3 min read
A common problem for those new to programming is how to transition from learning syntax, to creating real, usable programs. The best way to get started is to think of a project - not too hard, but with some unknowns, and then figure out what steps are required to complete it. Here are five great ideas for your first project.
This is an excellent first project with lots of opportunities for extension. To start with, you'll need to think about storing the grid state, reading user input from the console and how to detect when a player has won. A fun extension for the project could be an AI opponent, this can be as simple as picking a random empty square, or more complex if desired.
For this project you'll need to generate questions, basic arithmetic questions are a good starting point: addition, subtraction, multiplication and division. The Python random library will come in useful for this, as you'll need to choose a random operation and operands. If you are feeling ambitious, you can extend the quiz to save user high-scores to a file.
This is an ambitious project for a beginner, but the challenge will help you learn faster. For inspiration pick your favourite big tech company or unicorn e.g Facebook, LinkedIn, Twitter, AirBnb and create a simple clone. To get started you will need a web framework, Flask is perfect for this, it's lightweight and lets you focus on learning core principles.