Andreas Grabner About the Author

Andreas Grabner has been helping companies improve their application performance for 15+ years. He is a regular contributor within Web Performance and DevOps communities and a prolific speaker at user groups and conferences around the world. Reach him at @grabnerandi

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.

Comments

  1. – Overall a better runtime allows shifting more work to the browser leveraging the computational power that is available on end-user machines.

    Every time I read assertions along this line, I’m struck by the ignorance. This advocates for the Exact Same Paradigm as COBOL/VSAM/3270 of 1970: client bound, block mode interface, to passive data. Dr. Codd showed you a better way. The wire is longer, but that doesn’t mean you should cede data integrity to the client; your grandfather coded that way. Send the minimal data to the client, get it back, but don’t trust data integrity to client code. That’s the database’s job. If you want, you can replicate some edits on the client from the catalog constraints. Just don’t trust the client. Remember: the purpose of the relational database is a datastore which is both ignorant of, and agnostic to, any particular application; the datastore accepts requests from ANY application interested in its data. Those that advocate “application databases” are just wrong.

    The final nail in this coffin is the growth of slower (at the core/thread level) multi-core processors, which will make the client code slower, not faster. Client application code is inherently linear (won’t benefit from multi-cores; see Amdahl’s Law http://en.wikipedia.org/wiki/Amdahl%27s_law ), while relational database engines are inherently parallel.

Trackbacks

  1. Création site internet bretagne…

    Merci pour cet article intéressant. Bien à vous…….

Comments

*


1 + one =