Saturday, January 21, 2012

Why Project Garbanzo will Fail Part III of III


Last part of my rant on Project Garbanzo.

Technology Mistakes

Other things can be fixed or improved, but technology mistakes are permanent.

Awful technology for business services layer

A complex, convoluted proprietary technology is used to build business services. That, combined with steep learning curve and lack of an echo system or community resulted in a shortage of engineers with expertise.

The tragedy is that, Windsail Company had other great in-house technologies that could be used to build business services. These are immensely popular in the industry with strong user base. They are based on JPA, JAX-RS or JAX-WS which have been successful.

JavaServer Faces for the UI layer

See my earlier post on: JSF: Dead on Arrival

There are many criticisms of JavaServer Faces. In my opinion the biggest ones are lack of client-side scripting and use of server side UI rendering.

One premise of JSF was that, you write your UI once, and it can be ported on different UI platforms just by writing renderers for that platform. What a BS. Just not possible, unless we are talking about some simplistic app here.

Windsail had its own JSF component implementation, which could do few things well, other things in a convoluted way, and still other things not at all. They went on a completely separate track and could not take full advantage of CSS 3, AJAX and HTML5.

VP Tyrone Ketterman once commented "you don't have a f'ing HTML5 strategy".

Portlets

Here is the best example of VPs making decision about technology without being technical. So portlets were to be the technology for remote UI. Even the people in portlet technology development team were scared: portlets could be used for simple displays, not for complex business processes.

General perception was that frames are bad. The VPs didn't have the knowledge that something called iframes have been invented, which are better than frames. JSF portlets are displayed within iframes as well because JSF and portlets didn't gel. Still the perception was portlets are okay, but not explicit iframes.

So, many bad things happened: portlets within portlets, recursive portlets within portlets, popups within portlet, large portlet in small window, scrollbars gone wild, so on.

XML-based metadata

This was a weak attempt on what could be called an attempt to build a platform. A platform requires wide range of meta-data about the system that enables managing and extending the applications. In XML-based metadata, there was no rigid structure, in particular, there is no relational structure.

One example: This XML metadata-based system is used for extensibility of the UI and certain processes. Now sometimes something would go wrong, and the data will get corrupt and lose its semantics. They had to get rid of the entire metadata and start from scratch.

Amazingly very few people understood that the entire architecture is wrong. Or may be they understood, but they were too busy firefighting.

Conclusion

General availability of Project Garbanzo is announced but I have strong feeling that customers cannot use it. Particularly in the area of CRM I am not sure if any customer is actively using.

The latest was that most customers are going SaaS model, which means Windsail will configure and manage the deployments. Thats good, nobody other than Windsail's engineers will have any clue on how to run these systems, and they will need handholding by the developers of Garbanzo applications.

This will also cut profit margins as Windsail will have to put more resources to manage the systems. Waiting to see how it all ends.

2 comments:

  1. Interesting...don't suppose you work for Oracle by chance?

    ReplyDelete
  2. I work at Opera Software. Disclaimer: this is a personal blog, Opera is not responsible for its contents.

    ReplyDelete