DEV Community

Cover image for My love-hate relationship with side-projects

My love-hate relationship with side-projects

Filip Defar on August 10, 2019

I've got a folder on my laptop that's quite a sad sight. You can find a bit of everything in it: an unfinished Haxe game, few browser plugins, a bi...
Collapse
 
chrisrhymes profile image
C.S. Rhymes

This all sounds very familiar. In the end I decided to only work on open source projects instead of trying to make money from side projects. This may not be profitable but gives you a sense of accomplishment you are helping other developers.

With your business, if you don’t want to run it anymore, maybe try asking a friend to take on the day to day running so you can focus on the development, or even try selling the business on.

Collapse
 
dabrorius profile image
Filip Defar

It's good to hear I'm not the only one with these struggles. :)

What kind of open source projects do you work on now? Are you focusing on a single one or just jump in and resolve an issue occasionally?

Collapse
 
mxoliver profile image
Oliver

I also have a huge folder of unfinished side projects, but my one qualm about not doing them is that as a junior developer there is this big emphasis on having a portfolio. My main drive in building side projects is to be able to showcase skills, I contribute to some awesome open source projects but is that something I can showcase on my portfolio or just my resume, and if I do how do I explain which parts I am actually responsible for? I also can't show anything I build at my current dev job for privacy reasons

Collapse
 
dabrorius profile image
Filip Defar • Edited

I would argue that having commits in an open source project is even better for your CV. First, it proves that you are able to solve real problems on a big project. Just linking to the list of your commits on a specific project should explain pretty well what part you are responsible for. For example Here's my small list of contributions to dev.to. If that's not enough, you can easily add a list of points describing what exactly you did.

The problem with adding side-project to your CV is that they get stale. You learn new things and you are not so proud of the way you solved something in there. Libraries get outdated, you might have built a great app with Rails 3 few years ago but now that version 5 is out is it really relevant to show it any more? You also need to host them somewhere.

Great thing about OS projects is that you can jump in when you have time available and then not work on them for years, but your contributions are recorded and will be valuable on your CV for a very long time.

Collapse
 
mxoliver profile image
Oliver

This is super helpful advice thank you

Collapse
 
gklijs profile image
Gerard Klijs

You might try to sell the profitable side project? Might need to spend some time on making the code better documented?
I also have more and more side projects, while also doing some open source contributions recently. As I just 'finished' one, I have a hard time deciding between finishing another one, fixing some problems in an open source library I used for the finished one, or start a new sure project learning squeak.

Collapse
 
dariusx profile image
Darius

What's the profitable side-project? Any links?

I appreciate your points, but I think side-projects can still be useful learning tools. My usual process is...

  • Initial thought: "...there ought to be a library that handles this.".
  • Re-framed thought: "... Open Source library XYZ should be extended to handle this".
  • High ramp-up: Then, as you indicate, attempting to code something in the context of that Open Source library project means more ramp-up, and is often not as interesting as just focusing on the core problem I want to solve.
  • Minimal Viable Product: So, instead, I start something stand-alone, even though -- back of my mind -- I'm thinking this should be something that can go into Open Source project XYZ...long term
  • Learning: Doing something from scratch often means I have to ask some questions that I would not if I were fitting into an existing project. Questions --> decisions --> insight into why that other project might have done things some way.
  • Outcomes: varied... For me,... mostly, the end result is to incorporate some aspects into specific project being done for a specific client ... adding it to an Open Source library becomes more effort

No doubt some such projects can be a waste... looking back... in the sense that the learning and the material end-product were not enough to justify the time. But, since it was fun doing it... I get value... if I ignore opportunity-cost :) .

Collapse
 
dabrorius profile image
Filip Defar

It can definitely be a great learning tool and if you're having fun while doing it just go for it. :)

On a side note, having a side-project is especially useful for people still studying because you get something similar to real work experience.