This Is All Your App Is: a Collection of Tiny Details

May 7, 2012

Fair warning: this is a blog post about automated cat feeders. Sort of. But bear with me, because I'm also trying to make a point about software. If you have a sudden urge to click the back button on your browser now, I don't blame you. I don't often talk about cats, but when I do, I make it count.

We've used automated cat feeders since 2007 with great success. (My apologies for the picture quality, but it was 2007, and camera phones were awful.)

Old-petmate-feeders

Feeding your pets using robots might sound impersonal and uncaring. Perhaps it is. But I can't emphasize enough how much of a daily lifestyle improvement it really is to have your pets stop associating you with ritualized, timed feedings. As my wife so aptly explained:

I do not miss the days when the cats would come and sit on our heads at 5 AM, wanting their breakfast.

Me neither. I haven't stopped loving our fuzzy buddies, but this was also before we had onetwothree children. We don't have a lot of time for random cat hijinks these days. Anyway, once we set up the automated feeders in 2007, it was a huge relief to outsource pet food obsessions to machines. They reliably delivered a timed feeding at 8am and 8pm like clockwork for the last five years. No issues whatsoever, other than changing the three D batteries about once a year, filling the hopper with kibble about once a month, and an occasional cleaning.

Although they worked, there were still many details of the automated feeders' design that were downright terrible. I put up with these problems because I was so happy to have automatic feeders that worked at all. So when I noticed that the 2012 version of these feeders appeared to be considerably updated, I went ahead and upgraded immediately on faith alone. After all, it had been nearly five years! Surely the company had improved their product a bit since then … right? Well, a man can dream, can't he?

New-petmate-feeders

When I ordered the new feeders, I assumed they would be a little better than what I had before.

Petmate-lebistro-old-and-new

The two feeders don't look so radically different, do they? But pay attention to the details.

  • The food bowl is removable. It drove me crazy that the food bowl in the old version was permanently attached, and tough to clean as a result.
  • The food bowl has rounded interior edges. As if cleaning the non-removable bowl of our old version wasn't annoying enough, it also had sharp interior edges, which tended to accrete a bunch of powdered food gunk in there over time. Very difficult to clean properly.
  • The programming buttons are large and easy to press. In the old version, the buttons were small watch-style soft rubber buttons that protruded from the surface. The tactile feedback was terrible, and they were easy to mis-press because of their size and mushiness.
  • The programming buttons are directly accessible on the face of the device. For no discernable reason whatsoever, the programming buttons in the old version were under a little plastic clear protective "sneeze guard" flap, which you had to pinch up and unlock with your thumb before you could do any programming at all. I guess the theory was that a pet could somehow accidentally brush against the buttons and do … something … but that seems incredibly unlikely. But most of all, unnecessary.
  • The programming is easier. We never changed the actual feed schedule, but just changing the time for daylight savings was so incredibly awkward and contorted we had to summarize the steps from the manual on a separate piece of paper as a "cheat sheet". The new version, in contrast, makes changing the time almost as simple as it should be. Almost.
  • There is an outflow cover flap. By far the number one physical flaw of the old feeder: the feed slot invites curious paws, and makes it all too easy to fish out kibble on demand. You can see in my original photo that we had to mod the feed slot to tape (and eventually bolt) a wire soap dish cover over it so the cats wouldn't be able to manual feed. The new feeder has a perfectly aligned outflow flap that I couldn't even dislodge with my finger. And it works; even our curious-est cat wasn't able to get past it.
  • The top cover rotates to lock. On the old feeder, the top cover to the clear kibble storage was a simple friction fit; dislodging it wasn't difficult, and the cats did manage to do this early on with some experimentation. On the new feeder, the cover is slotted, and rotates to lock against the kibble storage securely. This is the same way the kibble feeder body locks on the base (on both old and new feeders), so it's logical to use this same "rotate to lock into or out of position" design in both places.
  • The feed hopper is funnel shaped. The old feed hopper was a simple cylinder, and holds less in the same space as a result. When I transferred the feed over from the old full models (we had literally just filled them the day before) to the updated ones, I was able to add about 15-20 percent more kibble despite the device being roughly the same size in terms of floor space.
  • The base is flared. Stability is critical; depending how adventurous your cats are, they may physically attack the feeders and try to push them over, or hit them hard enough to trigger a trickle of food dispensing. A flared base isn't the final solution, but it's a big step in the right direction. It's a heck of a lot tougher to knock over a feeder with a bigger "foot" on the ground.
  • It's off-white. The old feeder, like the Ford Model T, was available in any color customers wanted, so long as it was black. Which meant it did a great job of not blending in with almost any decor, and also showed off its dust collection like a champ. Thank goodness the new model comes in "linen".

These are, to be sure, a bunch of dumb, nitpicky details. Did the old version feed our cats reliably? Yes, it did. But it was also a pain to clean and maintain, a sort of pain that I endured weekly, for reasons that made no sense to me other than arbitrarily poor design choices. But when I bought the new version of the automated feeder, I was shocked to discover that nearly every single problem I had with the previous generation was addressed. I felt as if the Petmate Corporation™ was actually listening to all the feedback from the people who used their product, and actively refined the product to address our complaints and suggestions.

My point, and I do have one, is that details matter. Details matter, in fact, a hell of a lot. Whether in automatic cat feeders, or software. As my friend Wil Shipley once said:

This is all your app is: a collection of tiny details.

This is still one of my favorite quotes about software. It's something we internalized heavily when building Stack Overflow. Getting the details right is the difference between something that delights, and something customers tolerate.

Your software, your product, is nothing more than a collection of tiny details. If you don't obsess over all those details, if you think it's OK to concentrate on the "important" parts and continue to ignore the other umpteen dozen tiny little ways your product annoys the people who use it on a daily basis – you're not creating great software. Someone else is. I hope for your sake they aren't your competitor.

The details are hard. Everyone screws up the details at first, just like Petmate did with the first version of this automatic feeder. And it's OK to screw up the details initially, provided …

  • you're getting the primary function more or less right.
  • you're listening to feedback from the people who use your product, and actively refining the details of your product based on their feedback every day.

We were maniacal about listening to feedback from avid Stack Overflow users from the earliest days of Stack Overflow in August 2008. Did you know that we didn't even have comments in the first version of Stack Overflow? But it was obvious, based on user feedback and observed usage, that we desperately needed them. There are now, at the time I am writing this, 1,569 completed feature requests; that's more than one per day on average.

Imagine that. Someone who cares about the details just as much as you do.

[advertisement] Stack Overflow Careers matches the best developers (you!) with the best employers. You can search our job listings or create a profile and even let employers find you.

Posted by Jeff Atwood
41 Comments

I have to ask: why do your cats observe DST?

The Configurator . on May 7, 2012 2:42 AM

The DST is bugging me as well. I understand this makes sense when you are feeding your pet manually, but what difference does it make if a dispenser does it for you? Apart from producing very annoyed cats, twice a year, of course.

Leszek Ciesielski on May 7, 2012 2:51 AM

First photo: duct tape WIN!

Slavo on May 7, 2012 3:42 AM

Having just finished Alan Cooper's "The Inmates are Running the Asylum", it's not JUST the details, but getting the right details correct. This sounds like a great example of design from the user's perspective and I'd have loved to be inside that company when they were planning Cat Feeder - CF2.

Doug Johnson on May 7, 2012 4:09 AM

I couldn't agree more!

This is exactly why I started http://littlebigdetails.com

Floris Dekker on May 7, 2012 4:15 AM

I am surprised the bowls are side by side. I don't know much about cats but I'd have thought that a dominant cat would scare off the other and eat both rations. I've seen this happen with dogs

jack on May 7, 2012 4:39 AM

On this I can finally agree, Jeff. It's a very good post too.

Jeff also brings up a good point that in a way you left out. Identifying the right details to be dealt with in our software is of primary importance.

Mario Figueiredo on May 7, 2012 4:55 AM

Above I mean "Doug also brings up a good point". Sorry for the typo.

Mario Figueiredo on May 7, 2012 4:56 AM

The sad thing is that in most cases you're going to be completely unaware of the little details that annoy your users.

It's only in the cases like StackOverflow in which you're reaching a huge audience that you'll actually receive sufficient feedback. So it helps to have UX experts on your team. I haven't done this yet, but it should also help to conduct some usability testing as Steve Krug demonstrates here...

http://www.youtube.com/watch?v=QckIzHC99Xc&feature=player_embedded

Steve Wortham on May 7, 2012 7:38 AM

My roommate sees your automated cat feeder and raises you a self-cleaning litter box. (I'm not positive it's this one - http://www.catgenie.com/ - but it looks close).

At this point the cat isn't really a pet, so much as a roommate who doesn't pay her share of the rent. :)

AnyGould on May 7, 2012 7:59 AM

Good read.

On living with cats: take a look at a 'pet fountain' such as: http://www.amazon.com/Drinkwell-FCB-RE-Original-Pet-Fountain/dp/B00063446M

Your cats will love you for it.

Nicholas Lindsey on May 7, 2012 10:36 AM

If you're going to go down the automatic litterbox route (which you should, unless the cats can go outdoors for that) there is really only one choice: The Litter Robot. I did the CatGenie, the Littermaid, and the ScoopFree and they all pretty much suck. Various problems with each. The CatGenie is probably the worst because it stays on for like 20 minutes every time the clean cycle starts. Massive energy hog. The others are super noisy and need to be cleaned a lot.

I've had the Litter Robot for about a year now and haven't even cleaned it once. It's the best.

Mikeindustries on May 7, 2012 10:58 AM

^^^ Also, note that when I built my house, I had put a cat closet in there specially plumbed for the CatGenie, so I REALLY wanted it to work. Massive disappointment.

Mikeindustries on May 7, 2012 10:59 AM

I'm still waiting on the Stackover feature that allows me to add questions to my queue/favorites so I can find them later.

Sometimes there are good posts that I'd like to bookmark.

Sucks

www.google.com/accounts/o8/id?id=AItOawkPkzP5rAOJujciRpBb4be6d7nfHFvPmAo on May 7, 2012 12:54 PM

StackOverflow already has favorites. Just click the little star next to a question.

Steve Wortham on May 7, 2012 1:56 PM

I kid you not, I was reading this in the trusty Google Reader, and the VERY next item in my reader was the following Dilbert cartoon:

http://dilbert.com/dyn/str_strip/000000000/00000000/0000000/100000/50000/9000/500/159525/159525.strip.print.gif

Mark Henderson on May 7, 2012 2:55 PM

Jeff, please rephrase "the final solution" in this post.
It's still not appropriate outside WW2 history contexts, in my opinion.

Eli Boyarski on May 7, 2012 3:23 PM

Hi Jeff, thank you for an informative post.

It's important to note that positive examples can be a lot more powerful in conveying the message than a negative ones.

case in point.

Peter on May 7, 2012 4:26 PM

I wonder if Jeff has the same effect as Stephen. Will the PetMate Le Bistro get the "Atwood Bump"?

Bradley Handziuk on May 7, 2012 4:54 PM

Curious: Why do you think you waited five years to replace a device that you felt had so many "downright terrible" design details?

Jonathanstark on May 7, 2012 9:15 PM

ok... jeff, i have to know. i have the same goddamned feeder, and my big pet peeve is that the minimum feed serving was still too big for my really fat cat. did they make a smaller portion size this time around?

d

Dwhly on May 7, 2012 10:02 PM

I stumbled into actually reading your blog a few weeks ago and have been browsing. Nice work.

I laughed at "... continue to ignore the other umpteen dozen tiny little ways your product annoys the people who use it on a daily basis ...". You need a special section for QuickBooks, the worst commercial software in the universes.

Anyway, back in the day, 1972 to be exact, my professor of computing science taught me that the only part of software creation that was not clerical was design of the human interface. I think that's roughly equivalent or perhaps complementary,to what you say in this article and it has stuck with me through 10 years of programming, a 20 year side trip as a lawyer, and now back to coding, just for fun.

Just now I wandered through your post on the 2 classes of programmers. Some days I'm in the 80% some days in the 20%, but I'll tell you one reason why the 80 percenters often ignore the 20 percenters, and sometimes loathe them - they do not pay attention to the interface.

When an 20 percenter wants me to try code which is written to his personal standards, complete with weird stuff assigned to function keys and the right mouse button, input controls in non-standard areas, or god help me, 'command line options', I say no thank you please, call me when some other sucker has spent 2000 hours sorting this out.

And I still press f2 in QuickBooks when I want to edit something, and get some wanky QuickBooks thingy, and curse.

Observito on May 8, 2012 2:34 PM

Jeff, you can't be serious - StackOverflow still does not have e-mail notification system in place.
This is a feeder only a very desperate cat would ever use…

Dmitry Streblechenko on May 8, 2012 2:52 PM

I had always thought that it were dogs the ones that can't control their appetite. At least in Spain, we just refill the cat's bowl when it's almost empty.

kAlvaro on May 9, 2012 8:32 AM

"my professor of computing science taught me that the only part of software creation that was not clerical was design of the human interface"

Ah, to be a developer in the days before multithreading and the joys of concurrency issues! :)

Jake Robb on May 9, 2012 1:09 PM

"..We never changed the actual feed schedule, but just changing the time for daylight savings was so incredibly awkward.."

Imposing daylight savings on your pets!? Does it not amount to pet abuse? Lol!

I still wonder why you'd want to change the times for daylight savings. Cats are pretty versatile creatures. Just because we change our clocks, they don't wake you up one hour early for their breakfast, and they certainly don't feel hungry earlier or later. :)

Did you just start changing the schedule like you change the time on other clocks, or did you give this some thought? :P

Msterex on May 9, 2012 7:31 PM

I agree with all this, but as you said, Stack Overflow started simple, without even the ability to add comments. You can't manage and incorporate all the fine details from day one. You have to start simple and get feedback from your users and then improve as you go along. A lot of developers and development companies, try to wedge all the details in from day one, without feedback from their users. They think they can figure it all out themselves.

Craig Bowes on May 10, 2012 6:49 AM

@Teamsiems: I came to post that link, so I was happy to see someone got there ahead of me.

@Jeff: "When I ordered the new feeders, I assumed they would be a little better than what I had before."

I thought for sure the next sentence was going to be "But they weren't. In fact they were worse." or something like that. I was happy to see that there were a bunch of improvements!

@Msterex and others: "I still wonder why you'd want to change the times for daylight savings."

My reading of that was that he updated the displayed time just for sanity's purposes (so you don't have that one clock that's an hour off...) but kept the "real time" feedings the same.

I could, of course, be wrong.

Evan Driscoll on May 10, 2012 3:44 PM

You really missed something with the original design...

One of the problems with our pets is that they get board and fat. There's very little reason to do any exertion in your life when your food magically appears in a bowl and your sexual needs ...has... ...uh... ...been "taken care of" on a more or less permanent basis.

Your cats figured out that they could kibble themselves with a little pawing and stretching in the old feeders. Imagine if you didn't program the feeder at all. Instead, if your cats wanted food, they would have to "hunt" it down themselves by pawing at it through the feeder. They'll get exercise and their life will be that much more exciting.

Not entirely tongue-in-cheek. When Gus, the polar bear at the Central Park Zoo was diagnosed with depression, one of the things the zoo keepers did was freeze his food in blocks of ice. Now, in order to get the food, Gus had to break through the ice by biting on it and tossing it around. The bear's mood picked up and he was no longer depressed. http://bit.ly/J2zO1k

Qazwart on May 13, 2012 9:35 AM

Maybe he adjusts feeder to daylight saving time because he or sombody else wants to play on normal time with happy, feeded cats?

Pol84_ on May 13, 2012 1:59 PM

Qazwart, one of my cats would benefit from your idea. He gets bored with his food BUT if you throw the pieces of kibble for him to chase, he adores it and will eat as many as you throw. He enjoys 'the chase' and I presume part of the reason is he's really intelligent for a cat. He learns tricks (like a dog!) really quickly and needs a bit of mental stimulation to keep him happy.

Love this post and I need to buy a pet feeder now! ;)

Usabilitygal on May 13, 2012 2:03 PM

During the cat feeder development cycle, the little details didn't matter until v2.0 though. They had a complete release that sold pretty well, even though it still had a lot of bugs to fix.

Get something that works before you get something that's pretty!

Mike Senn on May 14, 2012 11:29 AM

Just to thank you for this wonderful site! I could not ask for more!
Good continuations ..

tirage tarot gratuitement

Soundoussa Mizouti on July 7, 2012 1:51 AM

The CatGenie is probably the worst because it stays on for like 20 minutes every time the clean cycle starts. Massive energy hog. The others are super noisy and need to be cleaned a lotthe addres is: https://plus.google.com/116784967468312738880/about?hl=en

Sunil Kumar on July 10, 2012 3:18 AM

The bowl was looking so nice.Ireally like this postThis article is very good & informative.I have gain so much information from this blog.I like your blog.Thanks for the post.I am waiting for your new post.This post is likeable, and your blog is very interesting. If possible gives a last there on my site, it is about the Spring Electrician, I hope you enjoy. The address is http://www.springelectricians.net/


Ryan Ace on July 13, 2012 2:39 AM

The feed hopper is funnel shaped. The old feed hopper was a simple cylinder, and holds less in the same space as a result.

Unless the new one was more than 3 times as tall as the old one ... I wonder how that is ... http://www.analyzemath.com/Geometry_calculators/cone_1.gif

Sanjay George on August 21, 2012 2:34 AM

Some one has rightly said , its small details which matters - Java

java67 on October 4, 2012 11:18 PM

From a Jason Fried interview, when he tells how people describe Basecamp:

“All those things that are built into the product. Basecamp does a really good job of handling those things for [the clients], but they never said Basecamp allows us to manage our projects better or anything like that. It wasn’t about that so much for [the clients], it was about all the little small things that add up to make Basecamp a tool that they depend on.”

http://jobstobedone.org/radio/jason-fried-on-jobs-to-be-done-radio/

Dieulot on October 30, 2012 11:57 AM

a few hundred items. But once you have thousands of items to paginate, who the heck is visiting page 964 of 3810? What's the point of paginating so much information when there's a hard practical limit on how many items a human being can view and process in any reasonable amount of time chino hills plumber

Tom Watson on February 6, 2013 1:41 AM

The comments to this entry are closed.