I took the time yesterday evening to catch up with my reading, and came across some great posts about Application Platforms. Forrester’s Mike Gualtieri was inspired by Michael Jackson’s “Man in the mirror” and posted “Do Application Developers Need To Change Their Ways?”. He makes four recommendations to application developers – “Understand the business in your bones”, “Be a developer not a coder”, “Use new technologies, but only when they make a difference”, and “Become Architects again”. As someone who evangelizes the abstraction of technological issues as a way to facilitate quality application development with a focus on the business solution, I am fully in agreement with Mike’s post. My recent post about A broader perspective on Google’s CHROME OS is very much along the same lines.
Another entry that I found highly relevant is John Rymer’s “Developers Want Unrestricted Downloads” (also on the Forrester blog). John relates to the recent work he did with Mike on CEP platforms, and forwards the argument that Platform vendors should offer unrestricted downloads for developers, in order to encourage them to adopt the platform and use it in production projects. And as far as survival goes, those vendors would collect revenue “as serious shops come back for deployment support including paid licenses”. We have the same passionate discussion time and again at Magic Software, in each licensing and pricing policy meeting. It is much easier said than done, in particular when your core product is the Platform. Megavendors such as Microsoft or IBM can and do promote much of their development technologies as lost leaders, compensating the freebies via (sometimes hefty) licenses on other parts of their technology that are required to complement the application environment. Most pure play vendors cannot afford that luxury, and in order to continue and innovate and support their operations they need to get revenue from almost any value added activity they perform. And when it comes to Open Source, the harsh reality is that there are very few vendors in this space who manage to survive independently for an extended period – most flare and then are either acquired or just fade away.
Let’s take both posts together – after all, it’s all about application development and John and Mike jointly report about it. Paraphrasing on Jackson’s song, Mike asks “What if application development professionals look in the mirror? What changes would you make to develop better applications?”. They also report that “Developers consistently tell us they want unrestricted platform downloads — no time bombs, no forced contacts with the vendor’s sales staff, no limited-function versions”. Let me take this reasoning boldly further. In other words, those developers who want unrestricted free platform downloads should be willing to do their own development work for free – hoping that their employer would find their work useful enough to pay them for subsequent support! Or maybe they should look in the mirror, and apply the same criteria they’d like for themselves to their fellow developers who develop platforms.
There’s also something to be learned from the banana merchants and the Max Havelaar foundation (incidently, the original story is related to Java – the island…). The foundation promotes fair trade and pay, and certifies that a minimal fair portion of the revenue from agricultural products from developing countries reaches the farmers who produced it. In the supermarket, Max Havelaar branded bananas are a bit more expensive than the non certified ones, yet they are very popular and sell well.
Would you rather buy Max Havelaar bananas? How about seriously evaluating a non-production version of an application platform that supports Mike’s recommendations?
Posted in Mindshare, Opinions & Comments, Questions
Tagged Application Development, Application Platforms, Chrome OS, Forrester, IBM, John Rymer, Magic Software, Max Havelaar, Michael Jackson, Microsoft, Mike Gualtieri, uniPaaS
Mike Gualtieri recently posted “Cloudmania: Developers Need A Personal Cloud”, which I find very pertinent and descriptive of developer’s views. I must say that I do not know professional developers who entertain the idea of their development baby being hooked with an umbilical cord to another mother (such as a hosted PaaS). But they certainly want the ability to test it whenever they want in the target environment.
One thing that probably contributes to the confusion is the almost non-existent distinction between situational applications and core applications. Mike evoked in the past the emergence of “enlightened developers”, who produce situational apps with highly abstracting Platform as a Service environments. But what he is discussing here are not those type of apps and developers but the more professional breed, that develops Enterprise Applications.
I am still perplex at the reasons that made the Application Development community regress from the productive 4GL platforms that emerged in the early 90’s back to 3GL environments such as C and Java. The increasing technical complexity of the Cloud finally halted this and is a fertile ground for the revival and emergence of Metadata Driven Application Platforms, which abstract the technical constraints by pre-programming optimized engines, which feed on Metadata based business logic. And we have to distinguish here very clearly between platforms designed for situational applications, with coarse grained widgets and services, and platforms designed for enterprise applications, that offer the entire granularity spectrum from application and process templates down to embedding code snippets.
Salesforce.com showed the way with Force.com, but it is still Cloud only and pretty much tied to the basic CRM environment. uniPaaS from Magic Software is leveraging its past 4GL experience to provide probably the first Application Platform that corresponds to what you describe as “a Personal Cloud that would allow them to configure their local environment in multiple way and take it with them wherever they go”. My recent interactions at industry events such as RIA World and with many enterprises and ISV’s confirm the growing interest and adoption of these platforms. That’s good news for us all.
Posted in Opinions & Comments, Questions
Tagged Application Development, Application Platforms, Cloud, Force.com, Magic Software, Mike Gualtieri, PaaS, Personal Cloud, Situational Applications, uniPaaS
Add to Technorati Favorites
ebizQ is running a great complement of industry forums (www.ebizq.net/blogs/ebizq_forum/2009/05), which provide me with posting stimulus. I just posted a comment in the SOA forum, which I want to share here. The topic is “Do You Believe SOA Related Projects Will Increase or Decrease in the Future?”. It reminded me of the initial pitch we developed to explain SOA, and with the continuing noise around “is SOA dead” I think that it is a good occasion to bring it up again.
I want to give credit to my past colleague Avishai Shafir (presently Director of Product Marketing at BluePhoenix), who came up with the idea of the analogy: Imagine a world in which we have to supply all our needs on our own… – that would set us deeply back in time, won’t you agree? If you think about it, modern society is based almost exclusively on services: Trade, Health, Transportation, Finance, … and these services are founded upon Specialization, Standardization, Regulation and Scalability, among others. Come to think of it, we live in a SOA! Yet in the IT world, we’re still very much in the primitive autarchic era in which every solution/application has to supply all its needs on its own. Now, imagine how far could Business Technology (that’s the next thing beyond IT) evolve with SOA and ubiquitous services – may be as far or even beyond what modern human society achieved by building on a SOA.
So let me supplement this with a question of mine – Do you agree to the statement that we are living in SOA?
I think that there is not sufficient distinction in the industry between Situational Applications and more persistent solutions (how would you call that type of apps? Systematic? Core? Persistent?).
I have witnessed the deep frustrations of IT managers who adopted a Situational Apps tool thinking it could be used for any type of solution, and running into walls late in projects, ending up with unsatisfactory solutions both from functional and technical aspects.
That does not mean that Situational is not good – just that one should use it for what it is meant for.
The story (rather history) of Magic Software is quite enlightening in this respect. When we first launched Magic II in the mid-80’s, we were in the midst of the first wave of the situational buzz with data oriented application tools such as Framework, dBase, etc… Magic II innovated by offering a metadata driven environment, which was much easier to master for business professionals than code driven tools. So we happily promoted it to ISV’s and Enterprises, with a silver bullet message and doing away with waterfall or other development models. It worked great for a while, but as applications reached the production stage their design flaws became apparent. I recall being summoned to a large pharma enterprise by the head of their clinical tests department, because the application he proudly developed was gradually slowing down to a halt. It did not take long to discover that the data structure was so convoluted, that some lookups ended up sequentially scanning tens of thousands of records.
The majority of the PaaS offerings today are for Situational Applications. That is quite understandable, since it take a significant effort and time to develop PaaS with highly granular widgets that enable the same power of implementation as coded environments. The danger though, is that the hype and buzz are so high and blinding that many prospects to not perceive the limitations (ending up as I described above).
So my call to action is to offer more down to earth information and transparency about what a technology is good for, so that those in need for situational tools are not overwhelmed with complexity and those looking for persistent and core solutions do not try to implement them on straws.