Advice from Microsoft on designing useful and uncomplicated software? Now, there's a novel idea.
Turns out, though, Microsoft Research principal researcher Bill Buxton - a trained musician with extensive experience outside of Microsoft who joined relatively recently - might be on to something, and Microsoft might be listening.
First piece of advice: break fee of the hamster wheel-like upgrade cycle of adding more features to old products - it makes software expensive and complicated, while most users stopped upgrading several versions back as what they've got is already "good enough."
"You can't milk that cow for ever," Buxton told The Register. So there you go.
Next, try to come up with something genuinely new that makes the world a simpler place. Finally, when it comes to building new software, involve the entire company - not just marketing or the R&D department - in the design process.
Oh, and those mashups you keep hearing so much about this year: they ain't God's gift to software development.
With that in mind, one is left wondering why on Earth Buxton's employer has been trying to milk the Windows PC franchise for so long. Then you realize the latest installment this epic, Windows Vista, isn't selling so well and that maybe he's got a point. Maybe Windows Vista really is a PC operating system too far and that it's symptomatic of the mid-life malaise that comes to all software.
Also, there's Office 2007, which was notable for the fact Microsoft chose to make existing Office features easier to find, and restrained itself from stuffing yet more useless capabilities into the already bloated Office drop-down menus.
Next, the mind wanders to California and BEA Systems, which is pushing version 10.3 of its application server while many customers I've met are on version 8.0. Oracle, meanwhile, is ramping up for the 11g release of its tools, middleware and application server. Will this madness never stop?
Buxton, who'll be speaking at next week's Business of Software conference in San Jose, joined Microsoft in 2005 having spent most of his adult life in music, international academia and design. Buxton, a Xerox Parc consulting research scientist, former chief Scientist of SGI and Alias|Wavefront, and - apparently - one of the 10 most influential innovators in the North American film industry according to The Hollywood Reporter, this year went analogue and put his thinking down in the form of a book titled Sketching User Experiences. The book tackles the sketching and design of products and - in doing so - manages to encompas Apple, Adobe Systems, avalanche shovels and Lance Armstrong.
Buxton has been an exponent of improving the way we interact with technology since first using a mouse in 1971 with a mini computer. That was more than 20 years before the mouse revolutionized the way we interact with software, and made the PC usable for consumers and office workers.
Buxton said his job at Microsoft Research, under senior vice president of research Rick Rashid, is to change Microsoft's culture by making design an equal partner to technology. In the past, technology has dominated thinking. Hence, more updates and more complexity, according to Buxton's view of the world.
Among the first works to experience Buxton's input: the multi-touch Surface, unveiled this summer, which he claims owes much to his work at the University of Toronto on multi touch input during the 1980s, making percussion musical instruments responsive in real-time. Surface - like the mouse (and, for the record, Bill Gate's struggling Tablet, Buxton reckons) - might take time to find its feet commercially, but it's got the potential to simplify the way we interact with computers.
Which is important. "Any new technology that doesn't make the world simpler has questionable design and questionable value. We often see people who add features to a product or add new products to an existing line. But ultimately they are adding to the noise," Buxton (pictured) said.
This approach stems from poor planning before the coding even starts: "Virtually no software company that brings product to the market does so where there's a business blueprint, technology blueprint and creative blueprint in place before you get going.
"Most people are three to four generations behind [the latest versions of Word and Photoshop] because it's good enough for their needs. So the number of people who care gets smaller and costs [for vendors] go up. New product is needed and that's where we are bad as an industry - we don't have any design up front."
Good design comes from teamwork across the entire company, and Buxton points to Apple's iPod as an idea that worked by involving everyone from the lawyers battling music companies to sales people haggling part prices to the software engineers.
"The renaissance is over - the problems are far too difficult for any one individual to have sufficient knowledge to advance them," Buxton said. "On the other hand, the renaissance team is possible and our only hope is the collective - the cross disciplinary team. Engineering and computer science, interaction design, ethnography, marketing and sales."
That leads us onto mashups. Go to any tech event this summer, from a flash in the pan web show to SAP's TechEd, and you couldn't escape AJAX frameworks and mashups. Zealots and marketing types evangelized developers on how all they need do is slap an AJAX front end on their application or how mashing up feeds and APIs will bring the "consumer web" to their dusty old business software.
In reality things are more complicated. Again, it comes down to designing a piece of software that makes the world simpler from the perspective of both the user's experience and of the task they are trying to achieve, not just hacking things together.
Buxton supports mashups as a means to simplifying development, because they produce re-usable components that cut down on the need to code from scratch each time the component pieces used to build programs. "Who can argue with that?"
He warns, though, against mashups for all your software development needs. While they are good for environments with commonly occurring - even generic - pre-existing components, mashups are unsuited to "deep architecture" that requires specialized elements such as real-time scheduling or highly parallel computing.
"I have a rule of thumb that stands me in good stead on mice, tackballs and mashups: everything is best for something and worse for something else. Anyone who says it's best for everything is wrong," Buxton said.®