Ali The Expert

Logo

Why every developer should do side projects?

1. The best way of learning.

I am all time promoter of learning by doing. Tutorials are good to get introduced to something but they are limited when it comes to practical implementation. When you work on your side project, you implement something from scratch and every iteration of this implementation will make you learn something new.
Working on something gives you a deep understanding of its concepts which are most likely missed otherwise. That’s why I am claiming it to be “the best” way of learning new things.

2. Proof of work.

With every new side project you create, you are creating proof of work for your skills. Most of the time, the work you do for your organization (where you are working full-time) is private and there is no way you can show the world how awesome developer you are. In such cases, your side projects will be your advocates. You claiming to know certain technology and you showing off a project built in that technology all by yourself, which one you will prefer?
It’s obvious that these projects are the best way to promote your skills and will help you get your next job or the new freelance gig.

3. End to end understanding of working on an idea

Most often, we work on a product in a team or we only know a part of that product. This makes us unaware of so many sides of developing a product. When you create your project from scratch, you are responsible for each and every part of that project. Starting from designing, to deciding features, to testing the edge cases, to deploying it to prod, you are the one looking after everything.
This complete product development life-cycle will make you more aware of all the side effects of small decisions we take and will improve your workflows.

If you are still reading, I am pretty sure you are convinced with the thought of doing a side-project. But one small and most powerful tip, Don’t shy away from sharing your side projects with as many people as you can! You will get the correct exposure and suggestions about your project only when you share it with people. Share your project with your friends, colleagues, share it on Twitter, or make it openly available on Github. The more you share and promote it, the more improvements you will make. You will get noticed for your work, you will understand the mistakes you might have done or you will get to know other approaches people are choosing.

All this is good and you are convinced, but how to choose a side project? 🤔

A side project can be anything, as small as a small animating card component or as big as a SaaS product. You have to keep your eyes and interest open, and you will see so many ideas floating around you. Whatever interests you most, pick that up and start building.
I have listed some ideas for myself, sharing those with you which might help you think about one –
  • A chrome extension for Pomodoro timer.
  • An expense tracker for yourself.
  • A habit tracker.
  • App to collect user feedback.
  • Different component libraries, and the options are limitless.

Understanding the importance of side projects, a few months ago, we started working on one. The thought was simple, a platform to create a single work profile for every individual and we built Peerlist. While working on it, we also started sharing our journey on Twitter. The responses were amazing and the idea evolved so wonderfully that the side project is now our full-time job! So, that’s why I am here, promoting the importance of doing side projects because who knows, you might end up monetizing your one 🤑

Final thought, building a side project will definitely make you jack of all and master of some. So what are you waiting for? Let’s git init😉

That’s it from this article! If you are working on something or you have some ideas, do share them in the comments. I would love to check them out.

You can also connect with me on Twitter or buy me a coffee if you like my articles. I publish an article every tuesday about web development, frontend, my learnings, and some random fun thoughts.