Web as the Platform – Day 1 at the Ajax Experience

Ajax, JavaScript, ECMAScript5, jQuery, DoJo, Google, Chrome, IE, Web Workers, Canvas – lots of technologies that were discussed today at the opening day of The Ajax Experience in Boston.

The next Web Revolution is on its way

Ben Galbraith gave the keynote speech this morning to open a conference that discusses different topics around Ajax and what is believed to be the next revolution in the web. ECMAScript5 brings several big changes and opens up new opportunities. Besides ECMAScript5 there are many existing technologies that already open several doors for the next Application Revolution:

  • Canvas: Enables a richer user experience in the browser bringing web applications closer to native applications. Check out some of the stuff at http://ajax.org (click on 3D charts)
  • Fast JavaScript: Every browser has or is going to update its JavaScript Engine to achieve higher performance. “If you speed up something by 10x you actually created something new” was one quote that really highlights the potential of faster JavaScript engines. Besides speed, memory management (introducing generational garbage collection) has been improved. Overall a better runtime allows shifting more work to the browser leveraging the computational power that is available on end-user machines.
  • Web Workers: In case you miss background threads – Web Workers bring back the ability to process work in the background – decoupled from the main UI thread. Having the ability to outsource work to a different thread will avoid unresponsive web pages and improves the overall end user satisfaction. Over are the times where web applications stuck – users hitting the refresh button or restarted the browser in the hope of solving an unresponsive application.
  • Desktop Integrations: Appcelerator provides the ability to take web technology to the desktop or to your mobile device. Write once – run everywhere – a promise that we have heard many times. There are other technologies out there that enable Web to be the next Platform technology. Besides Appcelarator we find Fluid, Mozilla Prism, Adobe AIR, Google Gears or PhoneGap that bring web technology on any device – running it like a native application.

Higher expectations on web performance

All these new technologies bring more power to the browser allowing richer applications and better end user experience. With that the end users expectation on modern web application rises as well. Applications need to be very responsive and they have to be fast. Performance therefore is a big topic at the Ajax Experience this year – ranging from faster JavaScript engines – to faster Frameworks to ways to analyze performance problems in custom built Ajax Applications.

Steve Souders gave a nice presentation on Faster Web Pages. Working on YSlow in the past and now with PageSpeed he showed several different techniques to attack the Low Hanging Fruits as well as how to speed up some not so trivial performance issues. The two mentioned tools are mainly focusing on network traffic analysis. A missing piece is all the rest that happens while a page is rendered or processed by the browser. The Free Dynatrace AJAX Edition takes up the new challenges that come with faster JavaScript engines and more asynchronous data exchange by providing a complete performance analysis picture of web applications by analyzing all activity in the browser starting with network requests, JavaScript executions, AJAX requests and rendering times.

How do you address the next web revolution?

Some believe the next revolution is already here – some believe that the next HTML standard will bring it. What is your take on it? Are you playing with new technologies? What are the good and the bad things you have seen?

My recent feedback with our customers showed that similar problems that we address on serverside application performance issues also apply to the new browser world. Frameworks that are not used correctly lead to performance problems. Too many network roundtrips to the server, blocked UI threads or too many unnecessary object allocations lead to bad end user experience. Moving back to the client (browser) might not be a bad thing – but – assuming that we get better overall performance by leveraging the client resources is just an assumption. It has to be done right in order to revolutionize the web again.

Andreas Grabner has 20+ years of experience as a software developer, tester and architect and is an advocate for high-performing cloud scale applications. He is a regular contributor to the DevOps community, a frequent speaker at technology conferences and regularly publishes articles on blog.dynatrace.com. You can follow him on Twitter: @grabnerandi