Information Technology (IT) in a Complex Mess ?
Is There A Way Out to simplify IT ?
Greg Papadopoulos, Chief Technologist at SUN MICROSYSTEMS in The October 30th 2004 Issue of The Economist Magazine.
" Information Technology (IT) today is in a state that we should be ashamed of; it's embarrassing....
The way we get rid of IT complexity is by creating new layers of abstraction and sedimenting what is below."
Information Technology (IT) and Software is complex to understand, design and deploy.
Software has to be disappear as a separate function from the non-technical user's perspective.
Understanding of software's different technical areas has to be simplified.
For it's pervasive and invisible depolyment as oxygen or electricity.
IT is not what it shows, but what it does.
That is the only way to ensure that Software acceptance and diffusion amongst the End-User Community follows the equivalent path of Moore's law in Hardware.
Simplifying IT from both an end-user's and developer's perspectives is not going to be easy as has been discovered by many who have tried earlier.
It is however do-able.
Inspite of ERP packages like SAP being complex, can we not simplify our understanding of what problems they solve in the Real World ?
The Millions of Lines of Code in a complex ERP Software Application like SAP work with information about the different M's.
The Men, Materials, Markets, Money, Methods, Mortar Brick, Messages, Machines and More..... in the Real World.
We need a common simplistic business and technical understanding to express what those Millions of Lines of Software program Code are doing with the M's.
A standard uniform way.
Both at a level of a lay person's understanding and in the mind of the deeply technical software developers.
Computer Science Experts tell us about standard software algorithms and generic patterns.
So maybe, a common simplified understanding of the Millions of Lines of Code could happen amongst software engineers.
Too huge a task ?
With a huge number of software engineers in China, Europe, India, US (in alphabetical Order) connected globally via the Internet, perhaps not so a huge task.
When my IT car breaks down, I go to a mechanic.
If one mechanic speaks only SAP, the other mechanic speaks perhaps only Java or C++, it is the garage shop owner's problem to make sure that the two mechanics talk to each other.
(Sorry for the above example if it hurts some of us IT folks being called mechanics).
As a non technical driver of the IT car, I just need to make sure that I have a set of Ignition Keys and sufficient cash to pay for the gas. The rest is all not my headache.
Ditto for the IT industry. We are not there yet in terms of the simplicity of software process understanding to our users.
But either as mechanics or garage owners, we really have no alternative but to make sure that the understanding of the software design, creation and deployment process is uniformly simple and transparent across the different software layers.
Perhaps, Microsoft is in a good postion to do it as seen from their 3-4-5 Strategy.
Or maybe even a small Open Source Community developer anywhere on the planet.
Till the web enabled Open Source technologies came on the scene, no one could think that one could create an Operating System like Linux and other open source software (which threatens market leaders) till Linus Torvalds proved otherwise.
Even though merging disparate technologies, databases, and operating systems is a nightmare, if thousands of developers around the globe can work to deliver an OS like Linux whose variants run on multiple platforms from devices to mainframes, maybe creating a uniformly simple abstraction based understanding of software be done.
Also, the Enterprise Application Integration Points are the least of the complexity.
There are many more fundamentally difficult software issues than beyond the above.
Since the IT software industry has not even completed 50 years, it is early days yet.
A lot of hard work in making things simple still lies ahead.
But it will be worth the effort as the lag in IT is not in the development but in it's utilization.
Related - Our Vision For Un-Rigid Changeable Software & Information Systems.