When do we do our best work? When we’re excited about something. Excitement morphs into motivation. We do our best work when we’re motivated. A great way to stay motivated is to work on something new. No one likes being stuck on a project that never seems to end.
The typical project
The typical project starts out great but then our motivation and interest wanes as time goes on. It’s natural. Staying interested in a project over a long period of time is a challenge for anyone. The longer the project the thinner the tail. You’re not going to do your best work in the tail.
The ideal project
When you break a big project into smaller chunks — into tiny projects — you stand a better chance at maintaining motivation and rekindling interest. When you have a pile of tiny projects you get the chance to work on something new more often. We do our best work when we’re excited about starting something new.
Break problems down to their atomic level
The best way to optimize for new is to break features and projects down to their atomic level. Keep breaking them down until you all you have left are a lot of small project elements instead of a few big project molecules.
For example, we just introduced bulk delete in Highrise. The UI and underpinnings we built for this will eventually (probably) be used for bulk tagging and other bulk actions. But instead of trying to shove all the other potential bulk actions into this release — ultimately turning a one week project into a 4 week project — we decided to just tackle bulk delete first. It took a few days from inception to public launch. Now we can get excited about the next phase since it’s a new tiny project again.
Bottom line: Shatter big projects into little pieces. Finish and launch one piece at a time. Introduce value now. Over time you can recombine these pieces into the one big feature you had planned. Working on, finishing, and launching one little piece at a time will help you stay motivated because you’re always working on something new. Your best work is in the bursts, not in the tails.
[Credit for the waveform concept goes to Jim Coudal]
Brenton
on 12 Mar 08I’m currently in the process of starting my own business (something I’ve been working toward in one way or another for about two years).
What you say about motivation is entirely true. I ebb-and-flow between being super-motivated and burnt-out/overwhelmed. It’s easy to get pessimistic (‘no one would ever subscribe to my service’), but at the end of the day, listening to the excitement of your future customers, taking a deep breath, and diving back into it piece-by-piece is a great way to keep moving forward.
nick
on 12 Mar 08Surely you mean ‘excited’:
We do our best work when we’re exciting about starting something new.
Alejandro Moreno
on 12 Mar 08Jason must be so excited with what’s on his plate that he mistyped excited :)
Jason Marsh - Website Designer
on 12 Mar 08He he Brilliant advice… But We tend to have these what appears to be “small projects” Just a normal 8 pager, but cos we actually deal with clients they tend to drag these small projects out far past there expiry date.. you end up dreading the experiance anyways.. But yeah brilliant theory, when it comes to practice.. results may vary!
Pius Uzamere
on 12 Mar 08Great advice. At our shop, we’ve found success by breaking features down as plugins, gems, or mini-apps where possible. That way, the developer working on the features not only ends up with something reusable, but something truly atomic that feels like an honest-to-goodness milestone by itself.
Noah Everett
on 12 Mar 08Being hyped up on coffee also during the start of a new project breeds the best work =).
Great post.
http://heartlandish.com
Daniel Tenner
on 12 Mar 08Good advice, although I think “project” is a misnomer.
What you’re doing is splitting your project (“a collection of inter-dependent tasks that drive towards a specific objective” – in this case) into user stories, as per the typical agile approach. This is one of the wins of the agile methodologies – keep each “task” shorter than one iteration (with Rails, likely to be shorter than a week), and focus only on the next set of user-focused tasks.
Still, good advice :-)
Daniel
Matt Radel
on 12 Mar 08Really interesting visual representation with the waveform – it communicates very well. :)
I’d agree that bigger projects can very easily drag on, but you have to be careful of the opposite – a bunch of tiny projects can feel overwhelming, and you’re stuck with the feeling that you don’t have the opportunity to innovate. Some times you need that bigger project to cool down and catch your breath.
I’d still rather be busy than chained to a single long winded project though. Great post.
Rob H
on 12 Mar 08This is what I do for any big project that I maybe managing, is break down a big project into a bunch of mini projects. 1) Its more manageable this way and 2) Its a easy way to track progress on a big project and keep people focused and motivated.
Great Post! Loved the visuals.
-R
Jennifer Jeffrey
on 12 Mar 08As a writer, the projects I tend to like best are the ones that are larger in scope that allow me to sink in and think through the whole arc of an idea and refine it over time to make it better. Too many small projects make me feel like a copy machine – quick! write this ad, write this label, etc. – but a mix of both is nice.
And on a similar yet totally different topic: I wonder if this boredom with big projects is why it is so hard to maintain intimate relationships over a long period of time? This sense of sameness, of “dragging on….” Hmm.
Don Schenck
on 12 Mar 08How many times do you see a project starting, and someone says “We should do such-and-such so that, in the future…”.
Those type of well-meaning decisions and actions result in project delays. Those delays eventually kill the project before the time to implement “such-and-such” ever comes.
Keep it simple, do what’s in front of you, and don’t focus so much on the unknown, unseen and - probably - unwanted.
Rajiv
on 12 Mar 08Wonderfully illustrated. Show how important is the open source motto of “release early, release fast”.
I have been experiencing this myself now. I released an application, the interest peaked around two weeks earlier and since then it has been on the decline. So i need to release a big feature soon and make some noise about it. Otherwise i’m done. :)
Issac Kelly
on 12 Mar 08I like the Audition Illustrations, resonance is a cool idea to parallel motivation.
Lukas
on 12 Mar 08Great post! I want to fortify the statemet not to use the word project but “a collection of inter-dependent tasks that drive towards a specific objective”! I’m involved in different “projects” (at work, spare-time, honorary) which are from very small to very big. I like to think in activity packages of 1 to 4 weeks max. If I do it like this, I experience the effect you describe in this post. Moreover if I work together in a small team where I get feedback/inputs – it makes just fun to work. Therefore I started an experiment with a collaboration tool which is design to handle/manage “a collection of inter-dependent task” – “small projects” – within one single tool. You can try it out yourself here: www.netnode.ch/activities
NewWorldOrder
on 12 Mar 08@Brenton, check this out: http://how2livelife.blogspot.com/2008/03/what-they-dont-tell-you-about-being.html
It’s includes comments from the founder of mint.com & Marc Andreessen on the truth about starting a startup. Hope this helps as well.
Chris Jones
on 12 Mar 08This is a great post, I was wondering the other day how 37s would deal with developer happiness over long periods of time. It would seem that working on the same projects for years would get tedious but this appears to be the answer!
JF
on 12 Mar 08This is a great post, I was wondering the other day how 37s would deal with developer happiness over long periods of time. It would seem that working on the same projects for years would get tedious but this appears to be the answer!
We also tend to move people between products. Jeff might be on Backpack for a while and then over to Highrise. Jeremy might move from Highrise to Basecamp. Etc.
Dustin Senos
on 12 Mar 08I came to this conclusion on my own about 6 months ago with personal projects. This post would have speed that up.
I would get so excited: “it will have tags! and rss! and groups! ajax search! theme-able! api!....”
What would I end up with? Not much. Now I focus on one simple feature, tackle it and release it. It keeps the product fresh, lets you hear feedback from your users and you find out if the product is even viable.
After all an idea is useless without execution.
Steve Walker
on 12 Mar 08Sounds like the classic divide and conquer strategy. It definitely works well on any long term development projects as it keeps your focus in tight enough to get each piece done without distraction.
Jeff Ward
on 12 Mar 08I’ve heard you guys talk about this before. But having a sound/music background, I found the illustration you chose really helped this fundamental idea sink-in. Thanks.
Justin French
on 13 Mar 08We picked up some kind of agile in the RedBubble.com team about a year back, and the one key change we made over everything else was exactly this. Break down this massive project into small user stories that deliver some kind of value to the users or the business, and celebrate every single one of them as an achievement.
“A user can select a default color for her t-shirt design to be printed on”. Done, hooray, what’s next?
The second most valuable thing we picked up is the weekly iterations. Take a bunch of stories that logically fit together well, and plan to do them this week. At the end of the week, we celebrate our achievements, release the code, and start over. It’s a fresh perspective and a clean start every week, which keeps our interest level really high.
I’, not particularly passionate about the rest of agile, but smaller chunks, based on features, time, or both is an absolute winner.
Brenton
on 13 Mar 08@NWO
Thanks for the link.
I’ve been on a strong ebb these last few weeks. I think I can ride the wave to shore and launch very soon! =)
John S. Kim
on 13 Mar 08Great read. Interesting way to use signal image to explain an idea.
Some of your recent posts motivated me to write a post on keeping ideas fresh: http://blog.paprikalab.com/?p=39
Hope I can receive some feedbacks as well.
Kristian
on 13 Mar 08Interesting that the ideal projects looks like a break in house music with just the bassdrum going whomp-whomp-whomp-whomp.
(that would be my idea of less-than-ideal-music)
Anthony Barone
on 14 Mar 08Glad you posted this concept. I originally enjoyed learning about it at SEED… even better with the dialog at SVN. Does this mean new material at the next SEED conference?
On another note, I think Jennifer Jeffrey is onto something with relationships. The post and illustrations made me consider managing my relationships (especially the long term ones) in smaller chunks. Just for fun, change each instance of the word project to relationship in the post. When you really think about it, it’s a much more exciting way to approach a long term relationship.
I’ve been with my wife since 1992. We have experienced everything together from College out in Arizona, her career in architecture, mine as an entrepreneur, sports, art, music, kids, etc. There is alot of fun and interesting aspects to our relationship. There is no doubt that it can feel boring from time to time. The reason is because the relationship is understood to be this long term deal and everything kind of morphs into this big blob (similar to the long drawn out projects).
I’m going to focus on some new, small but exciting aspects of our relationship to rekindle the flame. Maybe this is an opportunity for a rails application… hmm.
By the way, if Coudal will let you link the video he presented about the bird watcher at SEED, that was hilarious.
Keep up the good work.
Coudal
on 14 Mar 08Here you go Anthony…
http://www.coudal.com/regrets.php
Kathy Sierra
on 15 Mar 08I love this! (The advice and the audio metaphor) As a way to keep yourself motivated, this is extremely helpful (and the reason I’m having trouble getting myself to commit to writing any more 500+ page programming books), but it’s also a great reminder of what our users want. So I’ll be thinking about that—how can we help our users experience their work with our products and services as a series of small projects.
I like to think about game design as a useful model for tackling new things—how quickly does the user get to ‘reach the next level’? If “learning the software” (or “learning the thing you use the software to do”) feels like a huge monolithic task, it’s intimidating. But if I can be successful at accomplishing interesting task A, and then accomplishing motivating task B, etc. then it’s a lot more compelling.
I’ve always loved Electric Rain’s approach to their software: “User must do something cool within 30 minutes”, and this mantra (for them) carries into everything from the user manual (one of the best) to their tech support, marketing materials, etc.
Devan
on 17 Mar 08Hey!! Kathy’s back!! :)
Salim J Kanji
on 17 Mar 08It is fine to talk about breaking down things into smaller projects. My problem is that when we get bogged down into small stuff than we soon forget the Big Picture!
The focus changes and the outcome is different from the picture you drew at the begining.
SalimJ Kanji President realcashcanada.com
Cory Sessions
on 17 Mar 08This is so true! I’ve had some of those long projects that just make you want to gouge your eyes out.
Personally, when I am working on a personal project I always break it into micro-projects. It gives you a feeling of accomplishment when you get something DONE.
This discussion is closed.