THE RKGBLOG

In Software, The Interface Is The Product

37signals had an interesting post last month describing their development process, “interface-first design.”

From their book Getting Real (emphasis mine)

Too many apps start with a program-first mentality. That’s a bad idea. Programming is the heaviest component of building an app, meaning it’s the most expensive and hardest to change. Instead, start by designing first.

Design is relatively light. A paper sketch is cheap and easy to change. html designs are still relatively simple to modify (or throw out). That’s not true of programming. Designing first keeps you flexible. Programming first fences you in and sets you up for additional costs.

Another reason to design first is that the interface is your product. What people see is what you’re selling. If you just slap an interface on at the end, the gaps will show.

37Signals

A breath of fresh air!

Too many online retailers lack agility in their IT, despite having great smart committed developers.

Why is that?

How much blame should be placed on their development methodology?


waterfall development

Technorati Tags: , , , ,

  • Alan Rimm-Kaufman
    Alan Rimm-Kaufman founded the Rimm-Kaufman Group...
  • Comments
    8 Responses to “In Software, The Interface Is The Product”
    1. Jason Long says:

      I’m also a diehard believer in the interface-first philosophy. There are many very talented developers out there with various development models, but IMO it’s all irrelevant if you don’t start with a solid foundation. And by that I mean a well thought out user experience and interface as opposed to the object model and database schema. If the end user doesn’t understand and enjoy using the product, it doesn’t matter how elegant the agile methodology/testing framework/code coverage/etc. is.

      37Signals does a good job showing that a design-first approach can work wonderfully with agile/test-driven development.

    2. Nicolas Cary says:

      The synergy between the UI and the system architecture is crucial. Developers interact with software very differently than typical users. A great example of a well-designed and simple online application is http://www.PipelineDeals.com They take the user experience extremely seriously.

      Their application is polished, powerful, and elegant. It’s important to understand the level of experience the majority of users have in order to create an approachable platform.

      Sincerely,
      -nic

    3. Spam Alerter says:

      @Nicolas – you make it sound like you aren’t associated with pipelinedeals.com, but it looks like you’ve been busy advertising every chance you get:

      http://tinyurl.com/39jczx

    4. Serge says:

      Hello, of course user interface development is one of the most important steps in software development either for internet or desktop computers. It is going around of usability and ergonomics. And i don’t have any ideas why a lot of companies even don’t have user interface developers in their staff. Our company is working under the lage social networking website and i saw backend and fronend interface…and what can i say… our developers should work hard and hard.. So, anyway thanks for interesting post.

    Trackbacks
    Check out what others are saying...
    1. [...] methodology in software development. Too much paperwork and too little development. However, as Alan Rimm-Kaufman points out, good development isn’t just about writing [...]

    2. [...] justaddwater.dk | Instant Usability & Web Standards wrote an interesting post today on In Software, The Interface Is The ProductHere’s a quick excerpt 37signals had an interesting post last month describing their development process, “interface-first design.” From their book Getting Real (emphasis mine) Too many apps start with a program-first mentality. That’s a bad idea. Programming is the heaviest component of building an app, meaning it’s the most expensive and hardest to change. Instead, start by designing first. Design is relatively light. A paper sketch is cheap and easy to change. html designs are still relatively simple to modify [...]

    3. [...] server-side frameworks built following the said API… that would rock. Because you know, the interface is the [...]