Effective Problem Solving Through Showering

Showering is an important part of everyone’s daily routine, even if it is one that programmers avoid too often. At Urbansquall, the daily showering ritual has taken on a whole different meaning. It is during this time that many of our most difficult problems are solved, or our most creative ideas born. Let’s delve a little deeper into “Shower Moments” and the critical role they play in effective game development.
Shower Moments Defined
A Shower Moment is an epiphany, a moment of focused clarity that changes your perspective on a particular design choice or implementation challenge. A Shower Moment doesn’t have to necessarily occur in a shower. It can happen while you’re on the toilet. Or while you’re eating a cheeseburger. Or while you are out walking your dog.
The Importance of Shower Moments
At the start of this year we had an impossibly short deadline to deliver a fairly complex game for one of our favorite clients. I was not sure if we would deliver the game on time, but I did my best to remove any production obstacles by trying to design the entire game up front before a single line of code was written. This worked as hoped for the most part, at least until a few days before the game was supposed to be ready to ship.
The controls were designed in a vacuum, and, in practice, they were far too complex. Everyone was too busy hammering to get the game done in time to notice, until I had one of these “Shower Moments” when my subconscious basically slapped me in the face and said “The game sucks and it is because of the controls!” Fortunately, we had just enough time left in the schedule to redo the control scheme. This didn’t instantly make the game great, but it saved it from being a total catastrophe. I became peripherally aware that shorter game development schedules were risky not only because there was less time to polish, but also because of something else. I just couldn’t put my finger on it.
The Shower Moment of Shower Moments
I only became acutely aware of the concept of the “Shower Moment” this year while attending a panel at the GDC. A developer from Capcom was complaining how difficult it was dropping from a traditional 2+ year development cycle to a 6+ month development cycle for console downloadable titles. The thing he lamented the most was not that it required smaller teams, or smaller scopes, but simply that there is a lot less idle time during a 6 month project than there is in a 2 year project. And no, the implication was not that 2 year development cycles have more downtime during production (they might), but rather that there was just less time with the project in general.
This is something I alluded to in my article about Maximizing Efficiency By Taking Breaks, so I was peripherally aware of the importance of this idle “production” time but I just didn’t fully grasp it until that panel.
Why Shower Moments Are Important
It’s possible to do a lot of proactive design and problem solving before production, but it is so rare that a game ends up being made exactly as it was penciled on paper. Throughout the course of a game’s development there are hundreds, if not thousands of little unplanned decisions that ultimately combine to create the final package. It’s fairly tempting to brute force all these decisions as they come up and often we have to do this. Many times these gut shot decisions are correct and life carries on, but frequently we’ll make a mistake, or base a decision on a false belief.
Shower Moments are vital to a game’s development because they help fix the problems that can’t simply be fixed with a hammer and a nail. Shower Moments are there to give you that solution that is out of the box, to fix the problem that is so pervasive you may not even notice it.
Why Shower Moments Work
I’m sure there are a lot of reasons why Shower Moments work. I believe it has a lot to do with our subconscious’s propensity to solve problems differently from our conscious. It could just be that sensory deprivation (specifically in the case of a shower where everything is white and the sound of water drowns everything out), activates a different problem solving part of our brain. I believe we have all experienced these moments, even if we didn’t recognize what they were, so I believe it is just self evident.
Employing Shower Moments for Success
The biggest problem with Shower Moments is they can’t really be forced, and they are often the most important when you are least likely to have the ability to rely on them. My goal now is to give each important project enough time to have all the Shower Moments it needs in order to achieve its full potential.
It is a luxury, one that is not always afforded, but with the knowledge that this critical element of game development exists, I can at least start each project hoping to give it enough breathing room to let these important insights bubble to the surface.



bas
You’re so right! In fact, I’m actively using this phenomenon.
In the morning before going to my day-job I NEED a shower or else I know feel shaggy all day. But the days I work at home I usually go straight to work after getting up ( my mind is still fresh at 7.30 ) and then after about two or three hours ( or whenever I get stuck ) I hit the shower for some badly needed inspiration.
Funny how in the end we’re all instances of the same Human class
May 9th, 2009 at 8:30 amEnzoGames
I usually have those kind of moments when I’m walking, and occasionally when I twirl in my chair. It’s amazing how you can clear all the clutter away with a little distraction from your regular surroundings and focusing in on the problem.
An example would be your post on copy pixels and bitmap rendering, I had always wanted to use dirty rects, so copy pixels really called to me, yet Bitmap was the answer to the performance problem I was having. I went for a walk and came back almost finished adding copy pixel when I realized you were offering two solution and I hadn’t tried the other yet. The speed boost was increadible and made copy pixel look unnessasary.
May 10th, 2009 at 1:49 pm