Better Programming

Advice for programmers.

Follow publication

Member-only story

7 Advanced Projects to Improve Your Programming Skills

Nicholas Obert
Better Programming
Published in
7 min readNov 12, 2021
Photo by Tim Mossholder on Unsplash

The software development world has changed significantly through the years. It started out as an engineer-only field, but nowadays everyone can get into programming with relative ease. This is all thanks to the huge stack of abstractions that let people focus on the task they have to accomplish, rather than engineering a way to do it from scratch.

Abstractions are a life-saver when it comes to speeding up development times but come with a series of downsides for learners. From my experience, the best method to really understand how a complex technology works are to rebuild it myself.

This approach greatly improves your base knowledge and leads to better usage of the tools you use; you get to know them more thoroughly, including their strengths and weaknesses.

Beware that some of these projects might take a long time to complete. That’s normal, as they may require some research to be done on the topic. They are in no particular order.

Program a Calculator

It may seem like an easy task — just evaluate the given expression — but there’s much more than that involved. How would you solve an expression with multiple operators or nested functions? A calculator software is actually very similar to an interpreter or a compiler, as it’s really a mathematical interpreter. This project will bring through a journey that includes:

  • Learning about tokenization, also known as lexical analysis. This is also one of the main phases of compilation, so learning it could provide you with a starting base for more complex projects such as a compiler.
  • Token evaluation is another key aspect of calculating an expression’s result you’ll be learning about. It’s the process of executing chains of operations in the right order and passing the result of one operation to the next.

If you would like to pursue this project, I suggest you read my guide on programming a calculator software step-by-step.

Create an account to read the full story.

The author made this story available to Medium members only.
If you’re new to Medium, create a new account to read this story on us.

Or, continue in mobile web

Already have an account? Sign in

No responses yet

Write a response