Friday, February 19, 2016

Innovation - What does it really mean to innovate software and how do we do it?


I read a great book last week that really peaked my interest in examining how we think about and  perceive innovation, and how we might actually bring innovation to software products.

The book is called "Hooked - How to Build Habit-Forming Products" by Nir Eyal:


One of the most intriguing parts of the book for me is Eyal's discussion of innovation and what innovation really looks like in the world of software development.  The author references a book that heavily influenced his own view of innovation, "Something Really New: Three Simple Steps to Creating Truly Innovative Products" by Denis J. Hauptly:

The author deconstructs the innovation process into three steps:

  1.  Understand the reason people use a product or service
  2.  Lay out the steps the customer must take to get the job done
  3.  Remove steps until you reach the simplest possible process

Eyal  surmises that "any technology or product that significantly reduces the steps to complete a task will enjoy high adoption rates by the people it assists."
He provides a great example of this innovation process, describing the dramatic rise in blogging in the 1990s:  

"Before this era, amateur writers had to purchase their own domain, fiddle with DNS settings, find a web host, and set up a content management system to present their writing.  Suddenly, new companies such as Blogger eliminated most of these steps by allowing users to simply register an account and start posting."

This blog, The Feeder Whispere, itself is an example of this innovation. It would not exist if it were not for Blogger!

After reading this section of the book, my thoughts immediately turned to IBM Design Thinking, and it's advocacy for the utilization of "As-Is Scenario Modeling".  In scenario modeling, designers examine the steps it currently takes to complete a certain task or objective and captures what users are
doing, thinking and feeling during each step:


Opportunities for innovation then practically jump out of the model when the "doing and thinking" items are examined.  The "feeling" section helps with prioritization, as the more identify steps with  frustration or anger, the sooner we should work to eliminate those steps!

 

I think the best part of approaching innovation this way is that it is practical and logical, which fits in nicely with IBM's culture.  Software developers, and engineers are typically logical to a fault, and have trouble "dreaming" up innovative ideas.  In fact, I would advocate that "dreaming" of innovations is more often than not, a fruitless activity.  We should instead spend our time examining existing processes at both a micro and macro level, and look for opportunities to remove steps!

One example of an opportunity for innovation in TM1 can be seen in the process of writing rules and feeders.  At a very high level, the process a TM1 user goes through for rule writing could be described as:


The entire TM1 community would rejoice if we were to simply remove one step from this process:


Imagine a TM1 database without the need to write feeder statements!  I think if we were to do this, at our next TM1 conference we would have an hour long session that simply announces this innovation in the first minute, which would immediately be followed by tears of joy, cries of laughter, and uncontrollable dancing among attendees for the remaining 59 minutes of the session.


An opportunity to innovate TM1 can be seen when examining the existing process for dimension editing.  The current process can be described in 10 simple steps:


All of these are important, but quite a few are redundant, in particular the opening of different editors and the saving their contents.  What would it take to remove or reduce these steps?  A clear opportunity presents itself, in this example, the opportunity to combine these actions in a single editor and reduce the steps required from 10 to 6:
You may be thinking that this is not awe-inspiring, awesome, exciting, or even impressive.  I'd say you're correct, its none of those things.  It is instead, quite simply, innovative.