Be the Shepherd, not a Sheep!
You dine at a trendy Michelin starred Restaurant. You dine at a simple Fast food Joint. You end up with the same shit, irrespective of money you guzzled up. If you agree with this, skip reading the remaining stuff (It is useless anyway 🙃!). Else, I request you to go through the ordeal of reading the Verbal Diarrhea below and save your trendy Organization with alternate views.
Use case 1: Digging Deeper in Digital La La Land
I visited a Telecom Store for a new connection, carrying copies of all Documents. The Representative proudly informed we don’t need all the paper garbage and she could do with a simple mobile scan. That was nice digital moment for me, in our part of the world! After an Hour of various stages of data entry on that tiny Mobile, leaving the desktop -keyboard to dust, the request got rejected as the Proofs scanned were not proper. The enrollment circus started again with the previous paper garbage.
The WTF moment, could have been transformed to What-a-Fone moment, if the Organization focused on amping up the User Experience throwing few pleasant surprises: enabling Self-service digital enrollments at Users PDA, Simpler tariff Plans with Digital assistants to help choose the right one, gleaning the Scanned documents for auto-filling forms, Voice activated- 'ChuChu, get me a Sim!'
Use Case 2: Collaborating on Cloud Wonderland
Cloud provides a collaborative platform and is the ongoing fad. Truly, it brings a lot of benefits to IT department. The major advantage being, all the escalations will be pointing fingers at cloud providers, and allowing the Developers to rest in peace (meant sleep here). We have moved on from SOA age to SYA age, ‘Save your A$$’ by deviating failure.An example of how the collaborative cloud platform lead to destruction of reputation of a government is on this link. A person made a small mischief by changing the content to be conveyed in their Cloud platform. All the Members who sourced the content for their communication had egg on their face due to wrong content.
There is a story of how a company, Knight Capital with nearly $400 million in assets went bankrupt in 45-minutes because of a failed deployment.
Use Case 3: Cost-Cutting, cutting the arms instead of rewiring the head.
A Multinational MNC opted for Cost Cutting to sail through tough times. The Company invested millions on Enterprise software, which was not leveraged in an optimized way, by the Developers resulting in a non-scalable, easily crashing solution. The Company invested further on expensive agile software to enable an agile environment to solve issues. Again, the agile software got abused or avoided due to the increased amount of data-entry in exchange of minuscule benefits. Now, the company’s cost cutting strategy resorted to layoffs, rather treating the root cause of the rot.
If we analyze the above Use cases, the issues are due to Human error and lack of judgement. It has nothing to do with technology, old or new!
Change is the only Constant… Really?
If we observe the IT evolution for the last 20 years. Initially, small Business started with tiny relational databases, which evolved to mammoth Databases at the enterprise level coined as ERP. ERP solved the issues within the Enterprise. Beyond ERP technologies like SOA, Middleware and Apps came into play to address Beyond-Enterprise-collaboration issues.
SOA / Beyond ERP software adoption remains a mixed bag across enterprises, whose actual benefits are much smaller than the investment and efforts.
Time traveling from Apps to Website to Apps
Prior Internet era we had Apps to accomplish specific functionality. Internet brought in connectivity, with the functionality to inter-operate on the Web HTTP layer. Then, we got into Digital Mobility wave and now the websites are getting ported to Smartphone Apps. The complexity of accomplishing a functionality has grown exponentially from a Simple App -> Web sites supporting handful of Browsers, Versions and OS -> Multiple Apps catering to Multiple Devices and OS versions.
Meanwhile, Enterprises bleed money on these expensive porting exercises across the above transitions.
Can we make the time-travel simple and efficient?
An easier Option could have been investing on a Uniform standard for Data entry like XForms specification. XForms defines Data entry standards across Browsers, Devices and OS, much like Java’s promise of write once run anywhere. Even if we had an Enterprise wide in-house simple standard similar to XForms, it could have reduced a lot of porting complexities, thus reducing costs for the Organization.
We do not need any new technology to accomplish the above! XForms has been there for last 15 years but could not take-off, due to Product Vendor differences who have their own balance sheet to cry about. Add to it the IT community divided on various fronts, like JSON Vs XML bitter-nothings.
Similarly, an Enterprise Audit framework just need to expose SOAP / Rest / JMS interface so that all information flows to it across Enterprise. And these technologies are not new. They are as old as my IT experience!
Now, the Business Analyst does not have to ping the App Developer or System Admin, to understand where the Order is stuck at. He/ She can login to a Dashboard for the view of entire Audits and life cycle of Order. Portability issues does not arise since we have well defined Interfaces. We just need to add a new Interface / Plugin for every new technology / protocol coming in.
Jeff Bezos being a fearless Visionary, came up with 'Bezos Mandate', which single-handedly resulted on the success of Amazon Web Services
His Mandate below:
- All teams will henceforth expose their data and functionality through service interfaces.
- Teams must communicate with each other through these interfaces.
- There will be no other form of interprocess communication allowed: no direct linking, no direct reads of another team’s data store, no shared-memory model, no back-doors whatsoever. The only communication allowed is via service interface calls over the network.
- It doesn’t matter what technology they use. HTTP, Corba, Pubsub, custom protocols – doesn’t matter. Bezos doesn’t care.
- All service interfaces, without exception, must be designed from the ground up to be externalizable. That is to say, the team must plan and design to be able to expose the interface to developers in the outside world. No exceptions.
- Anyone who doesn’t do this will be fired.
Modern problems need Modern Solutions…Really?
I would leave it to your Judgement, to evaluate if the above mandate is a brand new rationale or so difficult to be adopted for any Enterprise or it is a basic thing expected of any IT solutions, to inter-operate? Bezos is not betting on Mars Mission here. Its just plain foundational Platform enabling interoperability, where Apps talk to each other efficiently, if not Humans!
AWS is not a revolutionary leap. It is just an organic growth of enforcing basic standards, across Organization. Due to our inability of enforcing the standard in our Organization, now we are paying subscription fees to Bezos and proudly endorsing Cloud as a Trend to vouch for!
Are we going to eliminate all the portability efforts of the Apps, plaguing us earlier, by moving towards Cloud? In fact, we will be doing additional Cloud specific migration efforts along with Device specific efforts.
AWS or any Cloud vendor also have various limitations like security, Platform constraints and multi-tenancy customizations. It does not address switching issues to On-premise or any other Cloud vendor, if decided later, for reasons already known to us!
Hence, unless we achieve on a rock-solid foundation, built with Legacy or latest expensive software or solid development from scratch, investing on future trends will remain a blunder. And if there are issues with any IT solution, be it Legacy or trendy glossy software, the problem of accountability lies with the Enterprise IT Team rather Third-party Product or Technology. After all, Software just accomplishes a simple functionality, much like counting 1+1 for 2 with your fingers or use Calculator or Apple MacBook or Supercomputer. Trends or medium of computation does not matter to functionality.
Any down to bottom analysis will help us understand that Trends are incremental adoptions sold on epic scale as Magic Sugar pill, curing all our ills, while their only confirmed outcome is lightening our purse...
A problem which could not be solved by Service Oriented Architecture, could be solved by leveraging Micro-services architecture? Well for Sales Team, Yes! But, for Development Team these technologies just complement each other. By adding more Boundaries at Container level, we are just nurturing individual egos, rather adopting to enterprise wide collaboration.
Unfortunately, it depicts a perspective where IT Product industry is just covering up failures by making you focus on the dangling-next-trend-carrots to generate revenues and improve on their bottom lines, just like Magic shows which rely on Audience distraction towards beautiful show Hosts, to hide their simple deception.
IT innovations are like Flight Journeys, enabling us reaching the desired destination. Irrespective of travelling by Business or Economy class, the probability of reaching the destination remains the same. All we need is a solid Aircraft and expert Pilots to improve our probability of success. On similar lines, in IT all we need is, standardized foundational framework combined with skilled Team
Always, the next IT success goes to the next Trend-Setter and not Trend-adopter! So, be the Shepherd not a Sheep!