loading...
Cover image for Thoughts on doing side-projects while short on time

Thoughts on doing side-projects while short on time

niorad profile image Antonio Radovcic ・3 min read

As my personal free time shrinks to a minimum, I'm thinking about how I can keep doing some fun projects and learning on the side. Currently I can do around half an hour on evenings, and 1-2 hours on weekends. So there's no time to waste! My goal is to work on fun and useful stuff, and to find out early when something isn't worth continuing.

In General:

The more precise the goal, the better.
Learning programming-languages and frameworks worked best for me when I had a clear use-case or goal for them. Learning a language for its own sake is a great experience, too, but I gets hard to keep the momentum going, esp. once I get to the harder parts.

Only one new thing at a time.
If I have an idea for an app or game etc., the worst thing to do would be to also learn a new language or engine at the same time. After inspiration hits, pragmatism is key. I'm using what I know, not what I want to know.

The less mental load, the better.
If I need 15 Minutes to remember where I left off the day before, and to get in the zone, the project won't last very long.

The more simple and stable the dev-environment, the better.
Fewer external libraries means less time spent setting up and upgrading. Do I really need Webpack from the start? I don't want to spend five sessions in a row with fixing an esoteric bug caused by a library.

The quicker the results, the better.
The momentum is easier to keep if there is regular positive feedback in the form of results on screen and/or from other people. That's why I like Construct2 and GameMaker.

For Online-courses:

The shorter the lessons, the better. The smaller the example-projects, the better.
The Android-course on Udacity hits the nail on the head. The videos are a couple of minutes long, and every new video has the current code as downloadable project-file. It's quick to download the latest code, open it in Android-Studio, and start coding.

Overcome the sunk-cost-fallacy.
I paid 50$ for a course, just to find out that the pace is not right; the instructor is unsympathetic; the subject-matter isn't that interesting. Do I continue just because I already invested time and money? Just like with bad books: No!

Negative* examples

  • I had a vague idea for a game which was "Papers, please" but at a space-hangar for arriving ships. Plus I wanted to learn Unity and Playmaker. Have you seen the game on Steam?
    Me neither.
    I picked up the idea at a later time, prototyping with React and Redux, where I was more at home and was able to reach the "point of no idea" much quicker.

  • I started doing interpreterbook.com which is super-interesting, but it's something you need to spend some hours at a time on.

  • Started learning Kotlin, Erlang, Haskell, Lisp, Rust, Qt, JavaFX, Swift, Express, Unity etc. I learned a lot from this, and it improved my daily work as frontend-developer too, but without a use-case the motivation and momentum stopped eventually.

*(Don't get me wrong. Almost all those were fun and I learned a lot. They just didn't go anywhere.)

Positive examples

  • https://DevLids.com was built pretty quickly with software I know well (Kirby CMS, plain CSS, no JS, shared host & FTP). I started right away after having the idea and rough design. It went live after a week or so. It's also pretty easy to maintain. It takes ~3 minutes for adding a new entry, including getting in touch and editing in Photoshop.

  • The game I did for our wedding. I didn't code it from scratch but used Construct2, which is a HTML5-Game-Maker. I had some experience with it from smaller trials and got a working prototype pretty quickly. It was perfect for the scope and level of polish I went for (http://10-5.de/game/).

Posted on by:

Discussion

pic
Editor guide
 

My suggestion: Raspberry Pi home automation projects.

 

But yes the Raspi is awesome, I made a little retro-console with RetroPi and an Xbox-Controller out of it.

What would be an example for a home-automation-project? My home is pretty low-tech.

 

HVAC controlling, door sensors, appliance control, security cameras, water consumption, grocery inventory, etc.

 

I have limited time as well to work on side projects. I often find myself daydreaming about blog posts I should write or pull requests (or hell, whole products) that I need to finish. I've definitely found that having an immediate application helps with the learning. Thanks for the insight!

 

Glad that you find it useful!

 

As David stated, Raspberry Pi is an awesome experience. I dont code for work at the moment but kept up with the times by way of RPi. For example, im a big beliver in microservices a single board computer aligns with my belief system. Plus you get quick wins with a RPi.

 

I have the exact same issue too. Too little time, too many "next best thing" ideas!

I decided to try and get back to blogging but this time around rather than writing huge posts I keep it very simple and write very short posts. Some of these could be considered "tweet" sized. It's mostly as a sort of 'bookmark for myself' kind of thing.

As time is short at home, I tend to write my posts over lunch at work during the week. I'm hoping to expand on this and find time to write a little app over the next few months.