XERO SPECS. The key to rapid design and development.

Sticky notes

When I first started working on Xero, I used sticky notes to help me get a sense of what it would take for us to build an online accounting system. After working on those sticky notes for about two weeks, we felt comfortable that we had a good foundation for the product architecture. Two weeks might seem like a long time to spend scribbling on sticky notes. But it was worth it. Those sticky notes are still a point of reference for us to this day – they still reflect the overall product structure and the product roadmap.

From our earliest plans we mapped out two major milestones: having a beta ready by November 2006 and having the product released by April 2007. We had a vague feeling that those two targets were theoretically do-able under ideal circumstances, but we all knew from our past experiences that theory and reality never align, and ideal circumstances only happen in theory.

That’s why I am so amazed that we pulled it off – hitting both targets to the day! Besides working with an amazing team of talented people, with all the hard work and some good luck, I think one of the most important factors that enabled us to make those targets has been our commitment to an agile design and development process.

If we would have done “proper” software specs for Xero we’d still be bogged down writing and arguing over use cases and flow diagrams to this day. Nothing would have even gotten designed or built yet. Instead, our specs process generally involves an hour at the whiteboard identifying the core requirements for an entire piece of functionality. From there, I go straight into prototyping.

Whiteboard

My method for prototyping is doing rough screenflows. These are intentionally rough so that we don’t burn our time on low-level visual details, when we just need to sort out the high-level functional concepts. I quickly mock up screen layouts for each transaction in a typical user scenario, from the start of a task to the end, hitting every transaction along the way. It’s like storyboards for movies, scene by scene you see the plot unfold. I can build these prototypes very quickly, generating lots of ideas as I iterate through dozens of different designs in a few hours.

Screenflow sample

View an example screenflow prototype from Xero
To step through the screens first click on the Flash document, then use the left and right arrows

The screenflow prototypes are done as black-and-white outlines, similar to traditional wireframes. Except you move through it like a slideshow, seeing how one thing leads to the next, getting a feel for how it all flows. Traditional wireframes and written specs take a lot more time to create, plus they force you to intellectually resolve how it all works together in your head, instead of seeing how it flows on screen. Having to work it out in your head, instead of seeing it in action, leaves too many things open to misinterpretation, causing major confusion and delays.

With the screenflow prototypes we quickly evaluate what’s right and wrong about a design, what’s missing and what needs to be ripped out. We put the prototypes in front of users to get their feedback, which quickly gives us a good indication if we’re on the right track or not, and it provides us with some insights on how to make it better. Then we do more iterations.

This passage from an article written by the head of IDEO Tim Brown describes what I’m talking about really well:

People need to have a visceral understanding — an image in their minds — of why you’ve chosen a certain strategy and what you’re attempting to create with it.

Because it’s pictorial, design describes the world in a way that’s not open to many interpretations. Designers, by making a film, scenario, or prototype, can help people experience the thing that the strategy seeks to describe.

Build to Think

Design thinking is inherently a prototyping process. Once you spot a promising idea, you build it. The prototype is typically a drawing, model, or film that describes a product, system, or service. We build these models very quickly; they’re rough, ready, and not at all elegant, but they work. The goal isn’t to create a close approximation of the finished product or process; the goal is to elicit feedback that helps us work through the problem we’re trying to solve. In a sense, we build to think.

When you rapidly prototype, you’re actually beginning to build the strategy itself. And you’re doing so very early in the innovation cycle. This enables you to unlock one of your organization’s most valuable assets: people’s intuitions. When you sit down with your senior team and show them prototypes of the products and services you want to put out in two years’ time, you get their intuitive feel for whether you’re headed in the right direction. It’s a process of enlightened trial and error: Observe the world, identify patterns of behavior, generate ideas, get feedback, repeat the process, and keep refining until you’re ready to bring the thing to market.

The Prototype Tells a Story

Prototyping is simultaneously an evaluative process — it generates feedback and enables you to make midflight corrections — and a storytelling process. It’s a way of visually and viscerally describing your strategy.

XERO HESITATION. But why accounting?

Xero Pimp

So how did I get roped into designing an accounting system? I’ve wanted to develop a web product ever since I started Turntable. I came up with various concepts and prototypes over the years, but for a host of reasons I was never quite ready to make it happen. With web 2.0 fever in the air, I once again got the strong itch to build a product. After brewing up some ideas, I approached Rod Drury with some of my ideas, just to see if I had anything worth pursuing. I only knew of Rod from reading his blog, but everything he wrote resonated with me. We met for coffee and we hit it off immediately. The next time we met, Rod blindsided me with an offer to join his new venture as one of the founding team.

When Rod pitched his idea to me, a “web 2.0 accounting system”, I didn’t have to think twice about it. I hate accounting. Obviously, accounting is a major factor in determining whether or not a venture will be successful. Yet, it’s such an excruciating process. I know that first hand from running my own business. So it was immediately clear to me that this was a perfect opportunity to design an accounting system that I could love rather than hate, while at the same time learning the ropes about building and running a software product from the best mentor in the business.

It also appealed to me because it’s a major business problem that’s begging to be solved. Accounting is something that every business must do. Literally, every business is required by law to do it! There’s no need to convince or educate anybody. Plus, most businesses hate the options that are on the market now. Meanwhile, nothing on the market is taking full advantage of network effects.

Finally, I was on board because Rod had the resources (aka cash) to do it right, to hire the best of the best designers and developers so we can build a great product and build up a strong brand very quickly.

So that sums up why I got involved. Next, I’ll write about how we got things off the ground.

XERO FUN

Xero

Since July 2006 I’ve been working on Xero, an online accounting system. I can hear your internal dialog now, “A business accounting system? Gee, that sounds real fun.”

Believe it or not, it actually has been lots of fun. Seriously. I rate it as one of the best, if not the best, professional experiences of my life. That’s saying something, considering some of the projects and clients I’ve been lucky enough to work with over the years.

How could it be so fun? For one, the people involved are a true joy to work with. And, two, as Todd Dominey stated so eloquently, “Client / service work has its advantages, but there’s something to be said for pouring all your heart and mind into a product people use and enjoy. It’s the most satisfying work I’ve ever done.”

Last week, we officially launched, moving out of private beta into public release. I have to say that I’m extremely proud of the work we’ve done. Doing an accounting system certainly is a major challenge, so it’s a big thrill to get the get the response we’re getting.

Over the next few days I’ll post some details of how and why I got roped into designing an accounting system, how it got off the ground, and some of the techniques we’ve used to get it done.

DIY TVC

Well, what do you know? Another of my predictions for 2007 is just now coming to the surface

Internet advertising works best when anyone can produce a simple ad. This was first shown with Doubleclick ceding ad prominence to Google and now it will be shown in internet video with blip.tv’s new DIY ad program.

It doesn’t appear to be as advanced as what I proposed – bidding for ad placement, different ads served to different users, with green screened product placement ala in-game ads. However, that will emerge. Count on it.

DRM = Dumb Retail Mentality

Jobs iTunes

Steve “iTunes Lock In” Jobs is pushing to abolish DRM. Looks like another one of my predictions is moving ahead nicely.

Not that I’m keeping tabs.

Google On Holiday

Google Beach

The What’s UP 2007 event was good fun. I met some really nice, well clued-up people. Here are the slides from my predictions (use the < > keys to navigate). The day after UP, I headed out on our family summer holiday.

As I write, I’m in the exquisite Northland region of NZ (in Oakura Bay to be precise). It’s been ideal in every way. Swimming, kayaking, bbq-ing, reading and sleeping. It’s warm here day and night, and there’s no wind. It’s really been making us question why people (us included) live in Wellington.

At the holiday house I perused the book shelf and noticed The Google Story. I tend to have a strong aversion to business books. However, I’ve really been enjoying it. It’s a good piece of storytelling. The thing that’s sticking out for me is how Larry and Sergey have always had the tenacity to do things their way, along with the perseverance to execute first and foremost. Ultimately, it’s really about having the conviction to relentlessly pursue what you believe is best and have fun doing it.

At the UP event, I noted that several of my predicted future platforms could easily be generated out of NZ. Foo Camp is coming up this weekend and I’m really hoping to see strong evidence of that same type of tenacity, conviction, guts, plus the ambition to build something big and important and useful from this beautiful country, something that the world needs and NZ can deliver. Peter Jackson did that for the film industry. Who will do it for ICT?