Building Gracious Software

What I love about software is summed up in this one line:

“If you can think it, you can code it”

My love for software started in 1998 (at UNC) - first designing websites and then progressed into web development. When I came back to India in 2005 I started a SaaS company to show the world that India is not just an outsourcing destination and can come up with global products. I saw my work as a natural progression, and when I look back I can connect the dots. Although, over the last few years I have stopped coding (I felt marketing was much important than coding if you are leading a startup/team). Today, software is not just for the techies. It is for everyone and is going to become ubiquitous. Mark Andreeseen fantastically pointed this out in one of my favorite articles: “Why Software is Eating the World”.

Gracious Software

As software becomes “everywhere” there is a certain responsibility that we have when designing and developing software. Here, is my list of points or checklist to make sure we always come up with superior, well designed software to seamlessly integrate technology into people’s lives.

  1. Pleasant

    Gracious software is zen-like and should make you feel at ease, calm and good when using it. Spending time with Gracious software should be like taking a quiet walk in the garden.

  2. Kind 

    Gracious software exhibits kindness. Messages (error, alerts) should be friendly, polite and NEVER overwhelming or threatening.

  3. Easy to Use 

    Gracious software is “grandma-proof”. If your grandma can’t navigate between pages then you need to go back to the drawing board.

  4. Friendly 

    Gracious software should show me the way and guide me to places I have never been before (only when I am ready for them).

  5. Not Intimidating 

    A blank page with no data and a page with a lot of data are intimidating. Gracious software should make me feel right at home by designing pages that have just the right information for me to take the next step.

  6. Fast, Smooth and Swift 

    Gracious software is not sluggish. It is swift. It respects your time and is fast.

  7. Smart 

    Gracious software doesn’t make you think. It can calculate stuff. It will tell you when you are late or going to be late. It should be able to predict and foresee problems.

  8. Good Looking 

    Gracious software looks clean, uncluttered and well designed. It is a pleasure to use gracious software every day.