There's been lots of talk recently about desktop/web platforms. Last week we mentioned more News Reader desktop apps powered by Microsoft's WPF platform, and of course this week Adobe has featured twice on R/WW due to its unveiling of Apollo. We've also profiled smaller companies in the past - e.g. Laszlo and Morfik. The latter company, Morfik, has mostly been flying under the radar for the past year, but their 100% Ajax platform is getting set for its 1.0 release at the end of March. I caught up with the team recently to see what they've got under the hood....

The last time I profiled Morfik, in April 2006, I noted that their goal is to push the edges of what can run on current browsers. They're doing this by creating a platform on which developers can develop complex and highly functional Ajax applications. Morfik then, is designed to take advantage of the browser rendering engine to its fullest potential.

Ajax-ifying Salesforce.com

One of Morfik's more intriguing lab experiments currently is the transformation of the Salesforce.com interface into a purely Ajax one. AjaxSalesforce was described to me as a demonstration of "what a Salesforce.com experience could truly be like, if state-of-the-art Ajax technology is used". Created with Morfik AppsBuilder, the app aims to create a UI that mimics the functionality of a desktop CRM system - but using 100% Ajax.

What is Morfik exactly?

In a nutshell, Morfik allows developers to use high-level programming languages (which give the developer more power - e.g. BASIC, C#, Pascal) to create web apps. It does this by converting apps from high level language INTO Ajax code. For example, says Morfik, all the rich internet apps in their labs were written in a high level language, then translated into Javascript. So essentially you can develop web apps not needing to know Javascript, or even what Ajax is.

You can also create web services using Morfik. In our discussion, I noticed that Adobe's Flex was being mentioned a lot as a point of comparison. In the case of web services, the Morfik developers told me their platform offers "everything in one box" - that developers can use external things, unlike with Flex.

Another feature of Morfik is that it can create "unplugged" web apps, meaning offline functionality. They've built real world examples (some which can't be mentioned publicly yet) that can run unplugged, with access to a central or local database - all via the web browser! Yes, offline web browsing and well before Firefox 3 has delivered similar functionality.

One real world example I can quote is a French investment house, which is using Morfik technology to allow their salesforce to go out into the field and collect data on their laptops, in the browser but offline - then when they come back to the office, everything is synced up automatically.

Another prototype is a desktop version of Gmail, which has the ability to check email offline:

Morfik's platform is still in development, but their 1.0 version is due for release sometime in March - it's currently in the last beta process. For developers reading this, I encourage you to go test it out, because this is a leading edge web development toolset. The pricing: an express license is free for non-commercial apps, and they also offer a "professional license" which has no deployment or ongoing cost and can run anywhere/everywhere in a business.

Competition

So how does Morfik stack up to its competition? This can get complicated for non-developers like me, but the crux of it is that Morfik uses 100% Ajax and renders in the native browser. Whereas all the other platforms use non-native browser plug-ins (like Flash) or render outside the browser. Adobe's Apollo and Laszlo both largely output in Flash (a browser plug-in) and Microsoft's WPF renders outside the browser.

So Morfik thinks there's nothing on the market comparable to their platform. Possibly their main threat though is whatever Google might be cooking up. The Google Web Toolkit is a similar tool to Morfik, in that it enables developers to create sophisticated Ajax applications using Java. There was even a rumor swirling around in May last year that Google partnered with Morfik, or licensed technology from it. Morfik is tight-lipped about GWT, as they are apparently still under NDA obligations. However, they told me that "despite Google's technology claims, Google does not use GWT for any of its on-line services". 

It's unclear to me what the relationship is between Google and Morfik, but we can speculate on the reasons why Google doesn't use GWT internally on its own apps. There could be some legal issue constraining GWT usage, making it risky for high stake services such as GMail or Google Maps. Or it may be that GWT is not as good as Google says it is. Certainly Morfik is adament that their technology is far more sophisticated and complete than GWT. I'm not qualified to comment on that, but it is true that Morfik has been working on their platform for a long time - since 1999 - and so they may well have an advantage over Google in this domain.

Future of Ajax

Now I'm no developer, so I'm expecting the programmers in R/WW's readership to jump into the comments and give us their views (which in my experience, are usually forthright and sans mincing of words!). Morfik itself claims its platform is the future of how you develop Ajax apps. According to them, the Morfik platform gives you a framework for building controls - and not just fancy visual effects. They say it allows you to create the "best effects possible in the browser" and that there's "no limitation on what you can do with ajax, but there hadn't been a system to take advantage of that before."

Let us know what you think in the comments.