DEV Community

Cover image for On Prioritizing Side Projects
Mohammad Alahmadi
Mohammad Alahmadi

Posted on • Updated on • Originally published at alahmadiq8.github.io

On Prioritizing Side Projects

There are many things I want to do in my free time. These can be anything from programming projects, exploring new hobbies, or just reading a book. However, whenever I attempt to get my hands dirty on a project, I often end up not completing it. I struggle with wasting too much time on TV, social media, or just hanging out.

As a front end web developer, I’ve been wanting to build a portfolio of my work to post on my personal website for a while. I thought I had enough existing projects to display, but it turns out most of them are half-baked abandoned projects. Realizing this left me feeling disappointed in myself, but it also forced me to examine my habits and try to understand why I never complete side projects. I decided to take a closer look at my task management outside of work, and I have been experimenting with different strategies to balance having fun and working on side projects.

In this post, I’ll focus on what I’ve learned about how to prioritize which projects to work on. I believe that choosing and prioritizing projects is an essential part of task management. Here are three questions I ask myself when deciding what to work on:

1. Does it contribute to my professional & personal growth?

I want to dedicate more time to side projects that help me learn a new skill. For example, I want to learn more about web animations, state management, WebSockets, and so forth. This could come in the form of learning a new skill, taking an online course, or building an application that I’d want to use.

2. Does it solve a specific problem?

I want to get more practice in building single page applications. I find myself motivated best when I am working on something that solves an actual, specific problem, rather than just “practicing” on something theoretical. It helps me stay focused and allows me to learn something new along the way.

3. How passionate am I about it?

Committing to a project has been one of my biggest problems. It’s hard to commit to a side project when it doesn’t pay. But I’d be more productive and invest more of my time and energy working on something I’m passionate about. So when I prioritize what projects to work on, I like to assign each of them an enthusiasm rating. I was inspired to do that based on the Hatch Notebook.

The Results

Using the questions above, here are some things I picked to work on after work:

  • Revamp and polish my personal website. I wanted to increase my marketability by having a stronger online presence to display my work; I wasn’t satisfied with my current website so I chose to rebuild my site from scratch with Gohugo.
  • Create a Connect-4 Game. At my current job, we use Redux for application state management. Redux can have a steep learning curve, so I picked a random game to build. You can check out the final project at this link.
  • Build a new feature for Wunderlist. As an example of something that solves a specific problem, I built a simple API consumer for the Wunderlist to-do app that adds todo tasks in bulk from a line separated list of tasks. This was a missing feature I needed. You can check the end result at this link. I had so much joy working on this since it helped me solve a problem that I was having with the app.

It was easy to stay focused and dedicate time to these projects after work because they either contributed to my personal and professional growth, they solved a specific problem, or I was passionate about them.

I’m still trying to figure out how to balance work, side projects, and having fun. It seems that this will always be an ongoing process. For now I think I’m on the right path.

Resources

Top comments (9)

Collapse
 
coolgoose profile image
Alexandru Bucur

Ideally I would say is that if you have limited time, try getting outside your 'shell' and try new things that you usually wouldn't do at work.

You might discover you like other technologies, or find out some development ideas that you can implement in your daily work.

Collapse
 
ben profile image
Ben Halpern

Awesome. So much of my getting over some humps in this regard have been about becoming deliberate about my time and commitment to projects, as opposed to being scattered.

I wrote about some of my own learnings here:

Collapse
 
alahmadiq8 profile image
Mohammad Alahmadi

Thank you so much sharing! I look forward to read it tonight :)

Collapse
 
mortoray profile image
edA‑qa mort‑ora‑y

Pick the one that you find personally rewarding and recharges you. If it feels like work you'll burn out quickly.

Collapse
 
alahmadiq8 profile image
Mohammad Alahmadi

Absolutely! I've been trying to explore technologies that are completely irrelevant to work since I need a mental break from work related stuff.

Collapse
 
threedeeprinter profile image
Dan Benge

...use a project from work. I rarely get to do any of the more interesting projects at work. So I bring a user story home and do the project on my own time. In that way, I'm always solving real-world problems. It has also taught me how to use mock libraries for to get data from systems (SAP, for example) that I don't have at home.

Collapse
 
alahmadiq8 profile image
Mohammad Alahmadi

That's brilliant idea actually. Thank you for sharing. It's absolutely more rewarding working on real world problems.

Collapse
 
oj_blazes profile image
✨ Enoch Ojonimi Daniels ♛✮

This is really amazing work out, I personally fall a victim of these problems too 😀 probably I will adopt your action plans to achieve great results

Collapse
 
lukebearl profile image
Luke Bearl

I think this really speaks true to everyone who tries to do side projects in their spare time.