Wednesday, July 30, 2008

Planning Madness.

The idea of Information Architecture sounds pompous. Or daunting. Or impressive. Or stupid. Or something.

The truth is that the name doesn't matter, but the concepts do. Or maybe not so much the concepts but their application. So can we apply concepts without knowing about them? Sure. Performance counts. Ideas come from life and not the other way around.

Better to do something right without knowing exactly why, or even exactly what you're doing than to know all sorts of things and never do anything. Concepts always come after expertise, after people have tried things various ways, after finding that some things work and others don't. Eventually someone stops, takes a breath or two, and begins to sort things out. That's where concepts come from.

So you can go at it hammer and tongs and bang around, and get something or other done. Maybe even something that works. You have to actually do things to get work done, and doing it does it. But on the other hand you can do much better if you know the theory and apply it well.

So knowing about information architecture can help.

The term comes from Richard Saul Wurman, an architect and graphic designer concerned with presenting information, especially information about urban environments and what goes on in them.
These days the term describes ways to organize information in general. How to define it, store it, retrieve it, and then use it efficiently. Information Architecture is the idea underlying good web sites.

The number one reason a web site fails to meet its mission is because that mission is never defined. Information Architecture can help. Think first, then do. That's the idea.

Sounds pretty simple but too many people prefer to fly blind. What usually happens is more like "I like this picture. Let's try building around it and see what happens." Then, later "Let's try something a little more blue." Then, later, more of the same. Meanwhile, back at the ranch, the herd gets restless.

This can go on for years. I've seen it.

When computing was done on the backs of whales, in rooms the size of football fields, and cables lay on the floor like dead pythons, programming was slow and painful. Expensive. One small mistake brought everything to a halt and those warehouses full of hot vacuum tubes sat burning away millions. People learned the hard way. They developed ways to think. Ways to plan. Plans showed how to get from Start to Finish before people actually had to hit the road. They could think first, then act decisively. But there was still much flailing.

Free as birds. When desktop computers came along people figured they could wing it. No thinking needed. Just act. Try one thing and then another, unlike those old creepy guys in white shirts and ties in the glass room. Computer time was cheap.

But programmer time became expensive. And a lot of things never got finished. Because people didn't know where they were or what the destination looked like. More mess. More waste. Time and money. Gone.

Then the web. You didn't need programmers any more. Yay! Just try stuff. Anyone. Everyone. Build a web page and see how it looks. Try another. Tweak it a little until you get it right. Add fonts. More blue. More blinky stuff, maybe. You'll get it right eventually if you try enough times. For sure, dude.

I've worked on projects that ran blindly for years before being thrown away. Cost? Only a few hundred thousand, maybe a million wasted. I've known others who were on bigger projects. Thirty, forty, ninety million down the hole.

Mainframe or web site doesn't matter. Standalone desktop system deployed to several thousand users. Client server app. Web site. All the same.

Think first, then act. Define your purpose, define your goal, then proceed with caution. If you are smart and good and careful you can get the job done. If not you won't. The project will collapse, and if your business is based on success of the project, well bye-bye.

Information Architecture helps. And it isn't even special. No secret sauce. No insider information. No special handshake needed. It is nothing new.

Way back in the old days, long ago, back in the dim 1950s and 1960s people were coming up with ways to plan. A few decided that there must be a right way to do things. People like Grady Booch, Ivar Jacobson, Bertrand Meyer and others. Booch and Jacobson merged their methods into the Rational Unified Process, and Meyer is a fundamental thinker in object orientation who invented design by contract.

Information Architecture is the term that web designers use but it isn't unique. Maybe the web is a bit more like magazine publishing or motion picture producing than traditional software development. A bit more varied in the elements needed. But the basics are the same. Think first, then act. Get things done. Well. Completely. The first time.

From the table of contents of "Getting Real", 37Signals' book on the approach they use, their priorities are:

  1. What's the big idea?: Explicitly define the one-point vision for your app.
  2. Ignore Details Early On: Work from large to small.
  3. It's a Problem When It's a Problem: Don't waste time on problems you don't have yet.
  4. Hire the Right Customers: Find the core market for your application and focus solely on them.
  5. Scale Later: You don't have a scaling problem yet.
  6. Make Opinionated Software: Your app should take sides.

At first glance this looks like a seat of the pants approach but it's not. The idea, the main idea, the big idea, is to decide what you want to do and then do it. After deciding what to do you decide how, and then you do it, and when you are done you stop. And then decide if you've done it well enough.

But nowhere in their process is there any notion of "we'll just try this and see if maybe it works out somehow". The point is to have a destination, produce a map, then follow the map.

One project I was on had to take over a paper form and bring it alive in software. A committee had met for two years. To determine what questions were needed on that form. Finally, knowing that the development team was ready to go, the committee wrapped up work. "Good enough," they decided.

Then they started meeting again. They had no idea what they were up to. Didn't know where they were going or when they were done. Otherwise they could have finished the job in two weeks.

So web people call it Information Architecture. Other people use different words. But the important thing is not to waste time or money or opportunity messing around when what you really need is a plan.

Define your goal. Survey your resources. Pick your team. Build the simplest possible solution. Test it. Review it. Deploy it. Repeat as often as needed. Keep the goal and the plan and the system synchronized. Don't wander around with your mouth open.

You'll come out ahead.

I've chosen to call myself an Information Architect. I mean architect as in the creating of systemic, structural, and orderly principles to make something that informs because it is clear. I use the word information in its truest sense. I call things information only if they inform me, not if they are just collections of data, of stuff. -- Richard Saul Wurman

Getting Real: The Book by 37signals
Richard Saul Wurman
Ivar Jacobson
Ivar Jacobson
Grady Booch
Bertrand Meyer


Post a Comment