W3 Why Software Sucks


8:00 am - 9:15 am

Level: Intermediate

Prerequisite: None

David Platt

David S. Platt

David S. Platt teaches Programming .NET at Harvard University Extension School and at companies all over the world. His magnum opus, Why Software Sucks (Addison-Wesley, 2007, www.whysoftwaresucks.com), points out ways in which software MUST improve if it’s to accompany humanity into the twenty-first century. He is famous for his engaging presentation style. "He's the only guy I know that can actually make a talk on COM's apartment threading model funny," said one student. Microsoft named him a Software Legend in 2002. He is the author of eleven programming books. His Introducing Microsoft .NET from Microsoft Press introduced thousands of programmers to that environment. Even today, 4 years after its most recent release, it is outselling Tom Clancy's Every Man a Tiger on Amazon.com, which tells you what kind of geeks buy their books there. Dave holds the Master of Engineering degree from Dartmouth College. He did his undergraduate work at Colgate University. When he finishes working, he spends his free time working some more. He wonders whether he should tape down two of his daughter's fingers so she learns how to count in octal. He lives in Ipswich, MA.

Users think that today's software sucks. It's unsafe, unreliable and hard to use. These problems are not technical. We've been able to solve them for many years, but instead we've gotten a paper clip with eyebrows. Why? Software sucks because developers forget (or never knew) THE bedrock principle of software development: KNOW THY USER, FOR HE IS NOT THEE. For example, what do your customers come to you for? Hint: it's not software. For another example, do you think your users care about your application? They don't. Never have, never will. They care about accomplishing the task that it does. They don't want to think about you or your application at all. It's your job to care about them anyway. The talk will show good and bad examples from commercial software and web sites, those that understand and help their users, and those that treat users with contempt. For example, consider the ads for Microsoft Office that show non-upgrading users wearing plastic dinosaur heads. Developers fear looking like dinosaurs by not having the latest technology, but ordinary users fear breaking an installation that currently works, or having useless junk like dancing paper clips slow down their computers so they need to buy new ones. Your user is not you. We put this nation on wheels not by training the entire population as mechanics, but by improving cars so they didn't often need mechanics. The same transition needs to happen to the software industry. This talk provides sound design principles so that your software won't suck.

You will learn:

  • How badly much of today’s software fails to meet the needs of its users
  • THE fundamental principle of all software development
  • See good and bad examples, software that sucks and software that doesn’t, attempting to solve the same problem
  • How blindness will improve your vision