Doing Things Better

What does “doing things better” mean? Its a question you might ask. It means that just because something works, doesn’t mean its right. It means that you should be open to change. It means that, in the end, we are never perfect and can always improve.

Presentation Is Everything

PRESENTATION IS EVERYTHING

There is something that learned over the past couple of years, presentation is everything. It is quite possibly the most important element in all we do.

Presentation from the aspect of leadership can mean the difference between shared vision and unengaged worker bee. Presentation from the aspect of a product ( in my case software product) means the difference between phenomenal success and utter failure of a product.

In short, no matter how good or revolutionary your product is, if it looks bad, it will fail. To have a physical product example, look no further than the current mobile phone market. Look at two products: one you like and one you hate. What are the specs of each one? Are they comparable or does one have an advantage over the other. Now, for arguments sake, lets say the more “cool” one has a better physical appearance and a more flashy user interface but the one that is less “cool” looking and has a plain user interface has better specs and capabilities, which one would you buy? I’m betting (and society proves) that the “cooler” one with the more flashy interface wins out more than the other device. I’ve got no facts in front of me to prove this directly, only experience and my own beliefs.

FIXING OUR SOFTWARE

So how do we fix our software? Well here are some design concepts to keep in mind.

  1. The API and/or the user interface for software must be intuitive.
  2. The software features must be discoverable. This means that users can learn to use the software by using the software. There is not a need for an involved manual to pick up the software and begin using it.
  3. The software must be easy to use. This is an ambiguous and loaded statement I know, but never-the-less it must be true. Just think about the software you are writing from the user’s perspective.

These are some of my most important concerns for a software product because if a user cannot easily pick up your software and start using it immediately, then you will have problems with adoption within your targeted user base. As with the mobile phone example above; if you have two pieces of software equivalent in terms of capabilities and specs, but one is presented a lot better and is more user friendly, which would you choose?

Going Forward

What we’ve learned here can be summed up in the two following statements. Software must be intuitive, discoverable, and easy to use. Also, presentation and appearance are quite possibly the most important part of software.

Posted by Chad Dotson in Doing Things Better, Featured, Key Concepts, Software Engineering, 0 comments

Good Videos From TEDxHuntsville 2011

These are from TEDxHuntsville 2011.  Thought I’d posted about these already, but I guess I forgot to.

Travis Taylor – Stay With It: You Have the Power to Change Your World

Tim Pickens – Explore, Have Fun and Live to Tell About It

Daniel Crosby – You’re Not That Great: A Motivational Speech

Posted by Chad Dotson in Doing Things Better, Inspirations, Technology, 0 comments

Programming Progress

“Measuring programming progress by lines of code is like measuring aircraft building progress by weight.” – Bill Gates

I have that quote on my instant messenger. I found out Friday that someone had saw and used it. Its good that someone found it useful. It’s a very valid point to make that lines of code isn’t an accurate measure of programming progress nor complexity. As a place to start, people looking for better methods might like Feature-driven development with a meaningful estimating system like PERT, CPM, or other system.

Posted by Chad Dotson in Doing Things Better, Programming, 0 comments

Excellent and Accurate XKCD

If anything belongs in my “Doing Things Better” section, this does.  I also think the timing of this comic to the creation of this section of my blog funny.  I found this comic on XKCD today and it speaks volumes and is so true.  The example problem is probably not a great one but nevertheless, doing the right thing and creating robust code is more cost efficient in the long run and will save you so many headaches over time.

Credit: XKCD November 11, 2011 – http://xkcd.com/974/

Posted by Chad Dotson in Doing Things Better, 0 comments