Tuesday, October 28, 2008

AjaxWorld 2008 impressions III


Trying to catch up with recent events from last week. Above a shot of the comfortable room at the Sainte Claire picturing the authors own small and portable Acer 9920 and a jug of local adult beverage.

One of the talks that I had anticipated most was Chris Keene's WaveMaker presentation where WaveMaker's cloud strategy would be unveiled. Chris made away with a very thorough and Monty Python themed presentation of the state of the cloud space today, with pros and cons of diferent solutions and wit a special focus on Amazon's EC2/S3 offerings.

The reason for the Amazon focus is of cours that WaveMaker is building its own service on top of it. The presentation was unfortunately not so focussed on what WaveMaker's service would look like or work, but on clouds in more general terms. I do hope that they follow some of my suggestions and make the service more of a 'live' development environment than an IDE that happens to be on the web. Time will tell. Sometime in November the site will go live.

WaveMaker is superficially like Smartclient, TIBCO GI and Bungee labs connect (and MS popfly, et.c.)
What separates Wa veMaker from Smartclient, for example, is that Smartclient is entirely neutral towards the kind of backend being used, whereas WaveMaker projects are exportable as stand-alone WAR arhives, to be dropped in any Java-based app-server of your choice. If you have a more mixed environment, Smartclient might be a better choice, but if you run a Java-only shop WaveMaker will mean much quicker deployment.

This is also what separates WaveMaker from Bungee labs (and likes), which push PaaS (Platform As A Service) where they host and manage they produced apps in pretty much the same way Google App Engine does (Except it doesn't come with any IDE). What WaveMaker brings to the table is the possibility of choice (something Chris did emphasize very well) where you can begin hosting your own application, then move it onto (say) an EC2 virtual machine, only to take it back in-house again when the corporate infrastructure or security requirements have changed. It seems that this will only be made simpler with the coming cloud service. We'll wait and see.

8 comments:

ckendrick said...

Hey Unclescript, sorry to keep jumping in with corrections, but actually SmartClient is both platform agnostic and provides an optional Java connector.

Out of the box, the SmartClient SDK is a .war file, and provides visual tools for connecting to databases and to ORM layers like Hibernate. It's actually one step less than WaveMaker in terms of deployment, since there is no "generate a .war" step.

But the true test of any of these platforms when it comes to enterprise applications is how extensible and flexible the system is when you need to move your application beyond the capabilities of a visual tool like either Visual Builder or WaveMaker, as will inevitably happen, even if it's on the third+ iteration of the application.

In that situation you want to find out the tool has generated clean, clear code that calls well-documented, extensible APIs that have been designed for direct use from code.

It takes a deep evaluation to figure this out, which is why we always encourage evaluators to tackle their most sophisticated use cases with SmartClient during evaluation. There's no substitute for doing that.

Peter Svensson said...

@ckendrick. Thank you so much for giving a clarification here.

Also, I really think that you should try to provide a 'lesser' version of the full IDE just as WaveMaker does. People tend to get nervous about limits since they know they might forget about it and be busy with other things, and then have to manage time for evaluating. That results in not trying it out. It's a great product which will benefit everybody (both potential customers and the further evolution of peer companies) with a greater exposure.

ckendrick said...

Hi Peter,

What did you have in mind for a "lesser" version? There's a free 60 day evaluation of Visual Builder, just register and download. At AjaxWorld I gave a technical session encouraging people to take advantage of the free eval period to use Visual Builder to learn SmartClient, and showed the exact steps necessary to take an application built in Visual Builder and make it run on SmartClient LGPL, so it would be free for use in even in commercial, closed-source applications.

I'm not sure what WaveMaker version you mean - there's a GPL version, but that's not relevant for 99% of commercial or even hobbiest use - our free evaluation is more meaningful.

Peter Svensson said...

@ckendrick: Well, I can only tell you how to gauge things from my perspective (which I admit might not be universal); When I see a product being available as time-limited, it becomes less attractive to try it out. The reason for that (which is sort of crazy, but here goes) is that I no longer have control over when I'm supposed to be done with checking it out.

I might get an assignment, get drafted, go on vacation, et.c.

Anyway, my point is that by providing a version of any software as-is, even if somewhat limited, gives the timeframe prerogative back in the hands of the user.

Actually I think this would be the case even if the evaluation period was in years rather than days. It is not a logical issue.

These are just my views, but if they are more general than myself that would mean that you would gain a wider audience by having any kind of version that was not time-limited.

And yes, the core system is indeed always LGPL (which I agree is a more widely known and to-the-point license), but your show-stopper is the IDE.

One idea could be to continually provide the last version (last years) as free download, but including a menu which shows shots and screencasts of the newer version. That way you could provide a community service while at the same time get PR both by the obvious functionality of the provided version and using that as a platform to sell the latest.

Of course another stratification could be to exclude a logically more high-end feature and instead include that or those in the paid version.

And concerning the WaveMaker licensing, I think (I'm not 100% positive though) that the GPL license only applies to the platform itself, making it easy to include as an 'editor' to customers who buy the products created with it, whereas the products created with WaveMaker themselves are subject to any license you want, since they are cerated by you.

Cheers,
PS

ckendrick said...

Thanks for responding.

Re: WaveMaker, unfortunately you are one of many people confused by the way WaveMaker presents themselves. WaveMaker generates .wars that contain about 24,000 lines of AGPL (WORSE than GPL) JavaScript, and what is probably a larger amount of AGPL server code.

Re: Visual Builder evaluation: certainly a time-limited evaluation scares off certain evaluators. It's a generous time limit, we extend it freely when asked, and there is a parallel completely free version (SmartClient LGPL). We may yet find a way to provide a free version to people who are allergic to conditions of any kind :) but for the moment, commercial versions of SmartClient are what allow us to invest heavily in the free version and hit the extremely high quality levels that we do.

PS. if you get drafted in the middle of your evaluation I think the expired trial is the least of your concerns :)

David Robbins said...

Hi Peter,

We were definitely interested to read your impressions of the conference. Thought you'd be interested in seeing some fun videos Appcelerator took of conference attendees.
http://www.youtube.com/Appcelerator

David

Peter Svensson said...

@ckendrick: :-)= (I have a beard) I fully understand. I'll bring the licensing issues to WaveMaker so that they can choose to act upon it if there has been some kind of hiccup.

Actually, I heard the first live gunshots since my military service here in Sweden for exactly 20 years ago, when I tried to snuck in at my hotel in downtown San José the 19th. It was followed by a long pause, then a womans voice "oh my god. +repeated+" then a pause again, then a large male roar (I have no idea), and then silence. No sirens for the next 30 minutes. Made it kind of interesting to walk to the conference the next morning, I kid you not.

Ahem.

I fully understand that you have a current business model that can't be danced about any either way just like that, and I also understand that it works quite fine as it is, obviously.

However, I think that you would reach a broader audience if you could find a way to just let people download the magnum opus - or parts of it - as it is.

The problem with making great stuff is that it's obvious to you when you're near it, but the nearer we get to the inflection point, the more technological skew we get, so we can't rely on people understanding the basic business offer anymore.

The streets get more and more crowded and the crowds have less and less time and resources to keep up. However, the world keeps getting larger, like an inflatable balloon, so who knows which forces at a current time is dominant?

Cheers,
PS

Peter Svensson said...

@david robbins: Thanks! I for one must say that developers love PHP.

Appcelerator videos

I had a 30 minutes rant in the office today about how supported I feel by the tooling that surround Java;

I only have to figure out all the jars for the project, then understand the seriously disturbed idea the last developer had with mounting virtual file systems inside eclipse, and then do it all over again for the undocumented ant script using x variables, etc. etc.

The I get home to a fairly complex project using a non-legacy language and it -- just works--

Reason: No build phase. No deploy phase. No cybernetic/Alien 4 dependency to be able to code in the language at all. Just text files. In a normal file system. Bam!

(I realize that I've went overboard for the last minute or so, desperately diving deeper in search of the hatch to Nemo's vehicle)

And since this have nothing to do with the conference I feel I must stop here. However, I liked the presentations you did, and also that you're moving towards a more ''""correct""'' HTML markup. It worked well as it was, but I think your new style (being very much alike Dojo's :) is simpler to grasp.

Sorry for rickrolling you and thanks for a great talk.

Cheers,
PS