Adam Elmore, aka “adamdotdev” recently posted a YouTube Short about “developers and side projects” and as someone who always has no less than two side projects at any time, this resonated with me.
In his video, Adam asked an interesting question - why are we the “only” professionals that do side projects? You don’t hear your friends in Marketing, Finance, IT, or often even the trades talking about side projects. This got me thinking - why do we do side projects?
So, why do developers do side projects?
Reasons may vary from person to person, but these are some of mine:
-
Honing skills: I am someone who is always trying to improve, and coding is no exception. Yes, you can hone your skills “on the job,” but I also think side projects are a great way to further enhance them. (Note: I am NOT saying you have to do side projects).
-
Learn something new: As we all know, there are a thousand different frameworks out there, and it’s unlikely that you’ll be able to use them all at your day job. I use my side projects as a way to try something new, whether it be a new language or just a new way of doing something with my existing language set.
-
Solving a ‘personal problem’: At work, we are usually solving other peoples’ problems. I think that it is equally, or more rewarding to use your skills to solve your problems. Want to keep track of some activity you do? Make a simple app to track it, and learn something new along the way! It’s a win-win (in my opinion).
-
I like to build: Simply put, I just like to build stuff; whether it’s in code, model trains, or some sort of house project. I find it rewarding to write code and watch your ideas come to life. I also get super excited about the things I’m working on and love to share with others.
-
Good experience: Doing side projects is a good way to gain some experience, and can even be used on a resume. While I don’t believe hiring managers should base a candidate’s qualification for a role on whether or not they have side projects, they can often lead to great discussions in an interview.
But do I have to?
Definitely not! Just because you don’t do side projects, doesn’t make you a “bad developer.” At the same time, doing side projects doesn’t make you a “10x developer” either. You should do side projects only because you want to. With family and life obligations, sometimes it’s just not feasible to do side projects on top of your day job.
Tips for side projects
-
Start small: If you’re just getting started on a side project, you probably shouldn’t write a whole Content Management System, because that’s a lot of work. Start with some small utility or CRUD-type app that you can get to a usable state relatively quickly.
-
Try something new: I think it’s important to try new things when working on, or starting a new, side project. Even if it’s a different way to write code in the same language, use it as a learning opportunity.
-
Have a few projects going: While I wouldn’t encourage you to have as many side projects going as usually I do, I think having a few at a time is a good thing. It gives you the chance to change things up and learn more stuff if you want to. If you aren’t interested in one project for a period of time, you have another you can switch to.
-
Don’t force it: If you’re not feeling up to writing code one night, don’t force it. It should be fun, and forcing yourself to do it isn’t going to end well.
-
Don’t burn out: I know a lot of people, myself included, have gotten burned out by coding 40+ hours a week at your job and then writing code at home. Make sure you take breaks and do other activities. Spend time with your family or kids, go outside, workout, play a game; don’t code 24/7.
-
Share it: Share what you’re working on with others. It’s a great way to showcase your experience, get others interested in your project, and even gather feedback on them. Put it on GitHub, share it on Mastodon or LinkedIn, or just tell your friends about it. Don’t be shy.
While they aren’t for everyone, I think side projects have a lot of value. What do you think about side projects? Do you think they’re important? Do you have any in progress? Reach out on Mastodon to share your thoughts.