SlipstreamUSA, next Wednesday, April 2 is almost with us.
Rob and I are looking forward to meeting everyone who has already signed up. We have an excellent programme for you with an interesting blend of topics from a exceptionally well qualified range of speakers, and possibly a couple of surprises - Rob's hooter might be one of them ;)
My previous blog entry gives you my take on the lineup.
If you haven't signed-up yet, there are just a few places left. Please register here as soon as possible if you plan to attend.
We look forward to seeing you all next week.
Just three weeks to go until our SlipstreamUSA seminar in Orlando. If you haven't already signed up, there is still time, but places are strictly limited so don't delay.
We've got a really good lineup for you. Starting off with David Rapperport talking about the benefits that Quest Diagnostics have reaped from using Ajax as a core component of their Care360 Lab Orders system. This is followed by me talking about what to do with all that data out there on the Internet and discussing the emerging technologies for working with it. Rob Tweed then provides a more in-depth look at two of the these technologies, the S3 and EC2 services from Amazon.
After the BYOB networking break we've got John Bertoglio, a very well known and respected consultant, discussing the importance of UI design in web-based applications. We'll learn how to keep the designer in control and not end up with our applications being at the mercy of the script kiddies ;)
Next up we have Larry Williams from Partners HealthCare telling us about their experiences during the migration of their three-tier application architecture from Windows to Unix. This kind of exercise always brings out some important lessons, and when you operate on the massive scale that Partners do, I'm sure Larry will have lots of interesting stories to tell.
We will wrap up the afternoon with a presentation from Chris Munt whom I'm sure many of you will know is responsible for the fundamental moving parts of both WebLink and CSP. He'll be talking about configuring large scale web-server infrastructures and providing some valuable insights into the inner workings of the various components that make up a web-server farm.
So we've got a nicely rounded and complementary set of presentations for you. They'll give you valuable guidance on how you should be building applications now and in the future. And with perspectives from both subject matter experts and from organisations that have been getting real results in the field, we hope you'll get a well informed and balanced view of what's really possible.
And if all that is not enough, we'll be convening to a restaurant for the evening followed by a designated bar where you'll be able discuss the implications of everything you've learnt late late into the night.
If you're attending InterSystems' Devcon in a few weeks time (http://www.intersystems.com/devcon2008/), make sure you visit the M/Gateway Developments (http://www.mgateway.com) booth at the Partners Pavilion. If you weren't considering attending, then maybe you should reconsider!
What we'll be announcing and demonstrating is nothing short of the new face of the web application, a set of technologies and capabilities that will fundamentally challenge opinions and preconceptions of the limitations of browser-based application. What's more, we'll demonstrate that EWD makes such a quantum shift unbelievably simple to implement.
The unique and hugely powerful EWD paradigm is now set to seriously challenge the conventional approach to web application development. Come and see the future of web applications, and discover how quickly and simply your applications could become a part of that future.
On the face of it, the recent Dojo extensions to EWD may just appear as a way of grafting on a cool set of industry-standard UI components, but if that was all the story, it would imply that if you need fancy widgets when you use EWD, then you have to use the Dojo ones. In fact that's not the case at all. There's a lot more to the exercise than immediately meets the eye.
One of the primary motivations behind the exercise was to create a working demonstration of how to build a set of EWD Custom Tags that would automate and simplify the use of a third-party set of widgets. So let's look a bit more behind the scenes, because, with some outside participation by you, the readers, EWD could become exceptionally powerful: even more so than it is already.
- Dojo (http://dojotoolkit.org/), of course. The "grand-daddy" of them all, but notoriously complex to use, often buggy or highly sensitive to being used "just right", and historically at least, extremely badly documented.
- script.aculo.us (http://script.aculo.us/). A very popular widget set, if you can sift through the (IMHO) apallingly laid out web site and find something you'd like.
- Interface Elements for JQuery (http://interface.eyecon.ro). Not so well known, but wow! Their widgets are beautiful!
- Backbase (http://www.backbase.com). An up-and-coming force in the Ajax world, again with some extremely sexy widgets, and a very interesting XML-based underlying methodology.
There's several problems with manually hand-crafting third-party widgets into your EWD applications:
- secondly, how do you decide which library to use? To do a thorough comparison would take way too long for it to be commercially viable. Can you cherry pick and use one widget from Dojo and another from Backbase? No, it's usually an all or nothing commitment to one, you invest time and effort understanding it and then you're tied to it for better or worse.
So where's this leading? Well EWD has a secret weapon up its sleeve: EWD pages are actually an abstraction of the pages you'll really run within the environment of your choice. They have to be compiled down into the run-time version that will run on PHP, CSP, JSP or whatever. This is how EWD allows you to have the best of all worlds and describe your pages in terms of what they do: the compiled pages that EWD's compiler generates are all about HOW they actually work, chock full of all kinds of nasty run-time-specific stuff that you'd otherwise have to hand-craft yourself. EWD's XML DOM-based compiler performs the transformations from your high-level tag-based description in your EWD pages into the nasty run-time stuff in, say, your PHP pages. You never really need to look at all that PHP (or CSP, JSP etc) code. If you need to modify or maintain a page, you just modify the high-level EWD page and recompile.
The other secret weapon within EWD is its Custom Tag architecture. All of EWD's own built-in custom tags were implemented using this, and, from the start, the architecture has been exposed and available to the end user to craft his/her own Custom Tags. At the heart of an EWD custom tag is its "tag processor": a method you design to transform an instance of your XML-based custom tag into whatever it needs to be expanded into in the run-time page. You describe that transformation as a set of XML DOM manipulations on your EWD page. This is exceptionally powerful stuff. There really is no limit to the complexity of the transformations you can carry out. And to make matters even better, your transformation can make use of EWD's own custom tag primitives, leaving them to look after the technology-specific aspects, so your Custom Tag will automatically work in PHP, JSP, CSP or whatever!
As a result, anyone can now use the Dojo tags without really having to spend any time ploughing through the reams of Dojo's documentation and examples. That steep learning curve has been removed and you can quickly give Dojo a go. And of course a year from now, anyone can pick up that page and see that you used a Dojo slider at that point in the page and tweak its behaviour as required.
The rewards to the community will be immense. What we'll then have, within the Cache/GT.M community is, without any argument at all, THE most powerful and flexible Ajax/Web 2.0 development environment on the planet. Anyone will be able to use whatever widgets they like without any of the steep learning curve and maintenance nightmares. Users of EWD will be able to focus their efforts where they really should be focusing their efforts: on their application's functionality, concentrating their efforts on WHAT their applications do, rather than fiddling around wasting time and effort on HOW their applications need to do it! EWD + Cache or GT.M will be demonstrably THE most productive web/Ajax development environment, bar none.
Volunteers please? Contact me at firstname.lastname@example.org if you want to help in what I believe will be one of *THE* most influential projects for our community.