Jim Coudal talks about the history of Coudal, where they’ve been, where they’re going now, how they got there, and how to parlay one business into another business. Jim is a great teacher and we’re so lucky to have him and his crew in Chicago.
I’ve long argued that UI design, programming, and product strategy should be learned apprentice-style with your hands and through experience, not through school and pedagogy. That can sound anti-academic, but it’s not. I recently got around to reading The Design of Everyday Things, the classic by Donald Norman (himself an academic) and he has this to say:
People function through their use of two kinds of knowledge: knowledge of and knowledge how.
...
Knowledge how [is] what psychologists call procedural knowledge.
...
Procedural knowledge is difficult or impossible to write down and difficult to teach. It is best taught by demonstration and best learned through practice. Even the best teachers cannot usually describe what they are doing. Procedural knowledge is largely subconscious.
I couldn’t have asked for a better statement of the problem. It’s really darn hard to take all the physical and mental processes going on when you do something like design an interface and boil them down to declarative statements like “do this or that.”
When I learned design, I was partly self-taught and partly mentored by Jason. When I learned programming—as much as I’ve learned—I didn’t make progress until I got personal explanations from David and Marcel.
When I go to conferences about design I see a lot of declarative knowledge. Knowledge of. The latest CSS rules. The new JavaScript syntax. Ten ways to make users happy (supposedly) or whatever else. What I don’t see are procedures—somebody standing up there with a pen or a text editor and making things happen and showing how it’s done. That’s what I want to see and that’s what I think our industry needs more of.
––
Addendum: Some examples of showing ‘how’:
- A Tour of the Design Process at 37signals, my presentation from FOWA London 2010, demos the mechanics at each stage of a design: modeling, sketching, coding, Photoshopping and implementing in Rails.
- Tom Preston-Werner sits down with a laptop and teaches the fundamentals of Git by actually typing commands in Mastering Git Basics.
- Kent Beck’s screencasts on TDD show how test-driven development is done by a master with real code.
Forbes is reporting that Facebook’s Zuckerberg is now richer than the Google’s Sergey and Larry. How did that happen? By using the most naive form of financial extrapolation and calling it fact.
Here’s how the financial alchemy works: GSV Capital spent $6.5 million to buy 225,000 shares at ~$30/share. That amounts to buying about 0.01% of Facebook. They purchased these shares at a 40% premium over the last big valuation that put Facebook to be worth $50 billion.
So if you extrapolate that the premium paid for 0.01% of the company is the same premium someone else would pay for 100% of the company, you get that Facebook is now worth $70 billion. So the relatively modest investment of $6.5M snowballs into a $20 billion creation of “wealth”. That’s a 3076 wealth leverage! Put one dollar in, get $3,076 out.
Now anyone with an iota of critical thinking would perhaps question whether a stock purchase of 0.01% is representative for the worth of the company at large, but not Forbes. They simply accept this fantasy 1:3000 transformation as fact and serves it up as the foundation of an article that then goes on to place Zuckerberg as the 3rd riches techie in the world.
That is grossly irresponsible financial reporting. But hey, Forbes is on a roll these days.
Unfortunately, it’s not exactly an isolated case either. Remember the cover of BusinessWeek from 2006? It had a happy Kevin Rose on the cover with the headline: “How This Kid Made $60 Million In 18 Months”. Anyone wants to ask Kevin how much of that paper money he got to keep as Digg tanked? I’ll bet you a buck that it wasn’t $60 million — or anything close to that.
We used the same math to value 37signals at $100 billion in 2009. It was meant as a joke, but I guess Forbes thought of it as a blueprint.
Batist Leman knew exactly what he wanted from a notebook:
- No lines: I get distracted by all those lines in most notebooks. I literally can’t read words on them. Or rather: there is no instant focus on the important stuff
- Pages should be fixed: For a while I used map full of regular printing paper, I liked it, but after a while it gets messy, the pages get scrambled up, etc.
- Every page must be the front page for a certain time. When I take the notebook out of my bag I don’t want to search for the page I’m focused on, it needs to be just there.
- Often I put my notebook in front of my laptop, the notebook needs to fit between the laptop and my belly. A horizontal A4 fits.
- A notebook should not be tiny. I need to make sketches, note miniature drawings. An A4 fits.
He couldn’t find anything on the market that fit the bill, so he decided to make his own at the local copy center. Here’s what he did:
- Buy a pack of paper, and take 50-60 pages from it (Max €/$ 1)
- Go to the local copy center
- Ask for 2 transparent covers. (Always use protection!) (Max €/$ 1)
- Ask to ring the bundle (Max €/$ 1)
A great idea. Check out his post for more details.

I gave a talk at Refresh Chicago last week and afterwards a fellow came up to me with a question. He does UI on a team of mostly engineers, and the engineers are big fans of the “Minimum Viable Product” concept. MVP, if you aren’t familiar, is an idea from the Lean Startup scene. In a nutshell, it means to do as little as possible so you can learn if you did the right thing or not. The fellow who approached me after the talk was having a problem with MVP. It seemed like their product suffered from bad experience holes. Their team was trying to do the minimum possible to ship, but their definition of minimum didn’t include things like a smooth way to reset your password. Things like password-reset were “never important enough”, so they languished as swamps of bad experience among the dry hills of minimally viable features.
Does the minimum-viable approach lead to gaps in the user experience? It doesn’t have to. There’s a distinction to make: The set of features you choose to build is one thing. The level you choose to execute at is another. You can decide whether or not to include a feature like ‘reset password’. But if you decide to do it, you should live up to a basic standard of execution on the experience side.
Features can be different sizes with more or less complexity, but quality of experience should be constant across all features. That constant quality of experience is what gives your customers trust. It demonstrates to them that whatever you build, you build well.
I like to visualize software. Here’s an intuition that works for me. Feature complexity is like surface area and quality of execution is like height.

I want a base level of quality execution across all features. Whenever I commit to building or expanding a feature, I’m committing to a baseline of effort on the user experience. That way feature complexity — scope — is always the cost multiplier, not user experience. There aren’t debates about experience or how far to take it. The user experience simply has to be up to base standard in order to ship, no matter how trimmed down the feature is.
Minimum viable products are about learning what you need to build. They are matters of surface area. Whatever minimal feature set you decide to build, you can decide to build it properly. That commitment to quality at every step is the way to keep customers with you as you work upward from minimally viable to featureful and beyond.