Everyone knows that having a hobby is beneficial but finding the time to devote to it continously can be very difficult without some level of planning. Everyone knows someone who dived deep into a hobby at first and now has a garage full of unused equipment and half finished projects (you may even be guilty of it yourself).
Completing a project (no matter how small) gives you a great sense of accomplishment and encourages you to do the next one, on the flip side failing to complete things in a reasonable amount of time discourages you and makes it harder to keep going when there are so many other demands on your life.
So how do you achieve a balance - making sure you devote enough time to make some progress without turning your hobby (which is meant to be fun after all) into a second job complete with gantt charts, progress reports and unrealistic deadlines?
How Things Slip Away
Despite all best intentions self imposed deadlines and goals can easily slip by the wayside if you are not careful. There are plenty of reasons for this, some valid and some not - family and work commitments or emergencies obviously trump a number of tasks, illness is another factor that cannot be easily ignored and sometimes you just get bored of a particular project and need to work on something else for a while.
The two biggest problems to getting things finished are procrastination and distraction and procrastination is by far the worse.
You often put off working on a project because you don't believe you have enough time to make any significant progress or you've hit a point in the project that is less than enjoyable (after a long day of dealing with problems at work the last thing you want to do is emerse yourself in yet another one).
At other times you are limited to what you can do when you have time available by environmental constraints. My electronics workbench is in my garage which is not that comfortable to work in during the evening so I tend to do most of my design work during the evening after work and do the actual construction and testing of the projects on the weekends during the day. I live in an apartment block so if power tools are required for any work I have to be considerate to the neighbours and limit their use to times of the day when they are least likely to be annoying.
If I hit a stage of a project that requires either of these during the week I'm not going to do anything about it until the weekend. Unless I have something else to move on with that's it for that project until the weekend and if something else delays it then it's the following weekend (and so on, and so on).
Procrastination lends itself to a positive feedback loop (and positive in this sense doesn't mean good), the more you procrastinate the more likely you are to procrastinate in future as the situation is less likely to improve by itself. Eventually you have another incomplete project sitting there that you have lost all interest in.
The trick is to always have something you can do whether it be for the current project or for a future one (caveats apply, see the next section). Take the time to review your design or clean up your design files (blueprints, code, circuit diagrams, etc). Do a google search to find cheaper sources of extra parts you need or find similar projects and compare them to your own. You might even want to start a blog describing your projects and how you built them :)
The point is to always be able to make progress no matter how much (or how little) time you have available to you.
There are many forms of distraction and you are far more susceptible to them if you are already begining to procrastinate. In a work environment distraction comes in the form of poor environment, annoying co-workers and badly performing equipment. For hobbiest projects distraction comes from your family or flatmates (Pro Tip: never tell your significant other they are a 'distraction'), TV and the internet.
When it comes to family (who may, quite reasonably, get upset if you ignore them for long periods of time) the best solution would be to include them in your projects. You can either arrange to spend time together on separate, individual projects at the same time or come up with projects you can work on together. If you have kids involving them in your projects is a great idea, not only do you get to spend more time with them it gives them opportunities to explore their creative side, apply the things they are learning and expand their experiences.
The other form of distraction is being diverted by the next 'shiny thing' that comes up before you finish what you originally started to do. This is one of my biggest problems (and it's certainly not unique to me).
As I mentioned before the service I used to display my interesting links broke so I was looking around for an alternative. Eventually I decided to write my own which is what I have spent the last week or so doing. Unfortunately I shot past the requirements needed for the original purpose after the second day and now have a few hundred lines of Python code that can generate entire websites dynamically from a set of RSS or Atom feeds. Feature creep at it's finest.
As a result the hardware projects I'd started preparing for this site are well behind schedule, the new feed processing tool is more complex than intended and will take some time to integrate into the site and I'm left writing this post to meet (or at least not totally ignore) my three posts a week goal.
I really don't know what the overall solution to this type of distraction is. It provides a good alternative to procastination by giving you something to do that progresses your projects but at the same time it's a symptom of procrastination (last weekend I didn't breadboard up the project I had intended to post this week because I was so close to finishing the software I was working on). Ideally I should have put the software on hold, finished the breadboarding and posted up the project and continued on it during the week when I prefer not to do breadboarding.
Making Realistic Timelines
It is simply good sense to develop timelines for yourself with a sequence of measurable goals you'd like to hit. Deciding how long it will take to do things is very difficult though - it's hard enough in a structured environment like a workplace where you have a known amount of time to spread across the tasks you want to do, it is far more difficult when you don't know exactly how much time you have to devote to the task to start with.
Everybody tends to overestimate their abilities and underestimate the amount of work actually required. We (humans) are also very bad at managing risk and setbacks. It's not unusual to make an accurate estimation of the amount of time to complete a task only to find that critical resources are not available (or are in short supply) meaning that the task cannot be finished after all.
My general approach to this is to double the amount of time I initially estimate, if I think I can do something in a weekend I allow two weekends to do it. If I then find I have missed something in my first estimate (I need to buy more bolts, the weather turns bad and paint takes longer to dry than expected or a myriad of other things) and my estimate turns out to be wrong my overall timeline is not completely thrown out of kilter.
Meeting Your Goals
I've never been a big fan of the GTD methodology and it's related tools (although many people swear by it). Even in a work environment it seems very restrictive so applying it to a hobby, to the things I do for fun, seems like a good way of turning your entire life into one endless workday. It seems I need to do something to keep myself in line though, there is no point setting goals and deadlines if I can completely ignore them without consequence.
My solution is to separate tasks into four separate categories - immediate for things that will take an hour or two to complete, medium for things that will take a week or two, projects for things that take a month or more and ideas for things with an uncertain timeline. I keep these separate through a mix of older (such as 3" x 5" index cards) and newer (such as Delicious, and Springpad) technology.
I aim to complete an immediate task whenever I have spare time, at least two medium tasks per week, and at least one project task every two months. The ideas tasks I process like immediate tasks - they tend to generate more tasks of the other categories once I delve into them. In fact any task I start can turn out not to be completable in the time I initially estimated and either be escalated or split into a number of sub-tasks of different categories. At any given time I can consult my magic box of tasks and find something to do that will move me forward regardless of the amount of time I have available to me.
Anything I don't complete goes back in the queue to look at later (preferably ahead of any other task with the same time estimate). Bigger tasks will get broken down into smaller ones.
I find that this helps me because during any given week I can put a red mark on a number of different cards and put them in my completed pile. This gives me a very visual indication of progress which is my reward for doing things. To balance the reward of course you need a punishment, for many people simply not getting a reward is punishment enough, for me - I need something more and this website provides it.
Making public declarations of your intent is a good incentive to complete things, failing to meet your declarations essentially serves as a public shaming and is something you want to avoid. There are only two ways to avoid this - give up completely or meet your commitments. Hopefully the second option wins out.
I've given you an overview of how I manage all the things I want to do outside of work and hopefully you can use some of these techniques yourself. The main point is to keep moving forward - to make sure that every week you have something more completed than you did the week before. If you keep doing this week after week you won't wind up with a collection of unused tools and incomplete projects, you may not use the tools very often and projects may take a long time to complete but your efforts will not be wasted.
So how does everyone else ensure they have enough time to devote to their hobbies? Any tips and tricks you can pass on?