It is with our passions, as it is with fire and water, they are good servants but bad masters.
, Aesop
620 BC - 560 BC
Greek slave & fable author.
The single largest problem in developing an Information System application is: figuring out what the real problem is.
If you do not solve the real problem, the system will NOT be successful, regardless of what the customer has asked for,
or how well your code works, or what level of performance the system can supply. I always try to remember these last
lines from a filk that I first saw in the 1980's, usually called
"Twas the Night
Before Implementation"
The last lines are:
And the user exclaimed with a snarl and a taunt,
"Its just what I asked for, BUT IT'S NOT WHAT I WANT!"
About 50% of my career has been doing custom development for companies that are very highly "operations" driven,
such as Transportation, and Warehousing & Logistics. These companies are typically owned and operated by people who
are intelligent, and very quick at problem solving. But they also usually only solve the problem that is staring them in
the face RIGHT NOW. So, very often, I am presented with a SOLUTION to implement, before anyone has verified:
- it solves the real problem, and
- the solution won't create even worse problems
One of my most favorite quotes that relates to this is from Albert Einstein:
"We can't solve problems by using the same kind of thinking we used when we created them."
Usually the problem we are staring at right now, is the result of a solution crafted for another problem that we were staring
at last week - or last month - or last year. So it's important to "look at things from a higher level" so we can solve the
real problem. What I seem to be particularly adept at, and one of the primary benefits I offer my customers, is an ability
to view problems from a higher level enabling me to see the deeper, more underlying problems that must be solved.
My goal is to help my customers craft a REAL solution, based on visualizing the problem from a higher level.