One of my intellectual heroes, Ronald Langacker, recently released a new book which summarizes his 30-year-old program of Cognitive Grammar, a radical and insightful approach to understanding language. In the very beginning of the book, Langacker outlines three principles which guide his work.
Integration means his explanations about language shouldn’t stand alone from our understanding of how the brain works or how psychology works. He wants his analyses to fit with neighboring disciplines instead of standing in their own tower.
Naturalness is his second principle. It means that a really good explanation should be reasonable and understandable. If an explanation is arcane, artificial, or exotic, it’s probably wrong.
Patience is an unexpected final principle. Being sure not to put the cart before the horse, it means withholding judgment on questions that are premature. As software designers, this means developing a “wait and see” approach that doesn’t indulge in too much speculation. Most feature ideas are speculative. “Wouldn’t it be cool if (x)” is very different from saying “for the last two weeks I’ve been frustrated by (y).” Having patience means putting speculative ideas on a shelf until actual life experience proves they have benefit. Launching a product with “too few” features is a kind of patience. Keeping your team small is a kind of patience.
At 37signals, we focus on lean features, short iterations, quick wins, small improvements, and the satisfaction of “build and release.” Paradoxically, all this quick movement and quick satisfaction rests on a foundation of patience. Most of our ideas are never implemented. Our products are never finished. Doing what’s in front of your nose, doing smart work that makes an impact today and leaves space for changes tomorrow takes patience. I’m glad Langacker’s book pointed this out.
Sean Iams
on 14 Jun 08The integration and naturalness principles seem very Kathy Sierra-esque.
Where has she been anyway? I thought she’d be back by now. We need to get her back onto the internet! Anyone with me? She was such a breath of fresh, thoughtful, and pragmatic air. I miss her!
Grant
on 14 Jun 08This is so true – and, unfortunately, some I find hard to communicate to clients. They’re often looking for the full list of features on launch, when i think they’d be happier with an earlier launch with the short-list perfected and on-going work – especially since involving their customers earlier often helps shape the final outcome of a site/app/whatever.
Marcus Nelson
on 14 Jun 08It me heart, I feel this is so true. In my head, it’s a constant battle – being patient and waiting until the time is right.
The product we’re developing has taken this design principal to heart, going slow and building on iterations that are small wins rather than huge roll-outs that users may not even care to use. We’re using our own feedback tool to discover what users want, and then building to meet those desires.
It’s a slow, methodical and smart process – but tedious too. I’m constantly wanting to deliver more, faster – but it takes disciplined resolve to wait & see.
What to do to get more patience?
Alix
on 15 Jun 08I was on one project where the client flat refused a short-list roll out, and demanded a huge detailed specs document which detailed every aspect of the app. So the client lined up 500 or so beta testers, and we did the massive rollout with much to-do. We heard about five minutes of distant crickets and then from the beta testers, a resounding… “meh.” Only four beta testers even signed into the app a second time. Back to the drawing board.
Shreemani
on 15 Jun 08Found you on del.icio.us, but I think this is a rather an “inside company” blog than something for the world wide audience.
:)
Tim Walker
on 17 Jun 08I love this, because I think we spend way too much time speculating about what could/might/”should” be instead of simply implementing what we can, when we can.
Keep preaching this message!
Hortensia
on 18 Jun 08The ideas behind this post are very true.
But to sell it to a client you have to totally understand and believe in it yourself.
And the customer IS always right. Even if what they are telling you seems totally wrong, search for the need or concern they are trying to communicate. It will need to be addressed eventually. (That is if you want a long term relationship with the client.)
alan
on 19 Jun 08I don’t believe the customer is always right. He might be of the opinion that he is right, but that’s quite far removed from being ‘right’ – which obviously means different things to different people.
Instead of assuming that the customer is right, I’d rather educate him what other points-of-view may be at work in a given situation – the reason they believe they are right might just because they are in fact ignorant about certain things.
I’ve been doing a bit of reading on Buddhism lately. In for instance a conflict situation where another party is acting aggressively towards you, the response you should project inward is one of ‘thank you teacher’ (for putting me in this situation). The other party might be acting that way towards you as they are ignorant of certain ideas or notions. It takes courage to educate them rather than entertain them.
2 cents.
This discussion is closed.