The Artima Developer Community
Sponsored Link

John Developer
Why Software Sucks
by John D. Mitchell
September 21, 2005
Why does software suck? Is it just because most of anything sucks or is there something particular about software that enhances the suckage factor?


Scott Berkun's essay explores a perennial question: Why software sucks (And what to do about it). He brings up some interesting points so go read it.

Now that you've read Scott's essay, why do you think software sucks? Is software doomed to mostly suck just like everything else? Is it an inherent problem (ala the Anatomy of Insanity)? Is it because we just don't care enough as consumers, users, managers, developers, testers, etc.? Is it because we don't actually know how to build great software? Is it because we're building software using crappy methodologies, tools, languages, etc.? Is it because our notions of how things work are just plain off? Are we distracted by the shiny bits and miss the crustiness? Are we focused on the right problems to solve? Have we become addicted to mediocrity? Or what?

Where do we draw the line between "sucks" and "good enough"?

How do various asymmetries play out? For example, are we buying based on hope and then crying about reality (or whining about reality not living up to our expectations)? How does our warped sense of time come into play (e.g., where we grossly overestimate what we can do in the short term while horribly underestimating what we can do in the long term)? What about our hyperfocus on short-term returns while missing long term costs? Or the fact that we tend to only notice one or two direct consequences while missing/ignoring not only the unintended consequences but also all of the indirect implications?

Talk Back!

Have an opinion? Readers have already posted 67 comments about this weblog entry. Why not add yours?

RSS Feed

If you'd like to be notified whenever John D. Mitchell adds a new entry to his weblog, subscribe to his RSS feed.

About the Blogger

John D. Mitchell is the Chief Architect of Krugle -- a search engine for developers. Along with developing and rescuing distributed enterprise systems, John advises investors and executives on technology and high-tech companies. Over the past 15 years, he has been the CTO of ElasticMedia,, jGuru and the MageLang Institute. John co-authored "Making Sense of Java: A Guide for Managers and the Rest of Us." He was the founder and contributing editor of the "Tips & Tricks" column at JavaWorld. John writes extensively on complex systems, development processes, computer languages and protocols, parsing and translating, and technological business risk management.

This weblog entry is Copyright © 2005 John D. Mitchell. All rights reserved.

Sponsored Links


Copyright © 1996-2018 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use