Gartner Blog Network


Server-side Template Engines Aren’t Going Away … Yet

by Danny Brian  |  April 19, 2012  |  Comments Off on Server-side Template Engines Aren’t Going Away … Yet

My document “Application Frameworks for the New Web” is now available to subscribers of the Gartner for Technical Professionals content. The analysis defines four very broad categories of Web application frameworks:

The event-driven framework is the newest breed, and Node.js is the most popular in this category. You can use these frameworks to build traditional style Web applications, but the frameworks really excel with the single-page genre of Web applications. That is, Web applications which load a complete Web page once, and thereafter load data dynamically and manipulate the loaded page in memory, rather than making full-page round trips to the server for new pages. There are many well-known examples of this style, but Facebook is the most popular. The genre is fueled by an increase in Web browser capabilities, a more advanced JavaScript frameworks, and evolving user expectations. And by the way, it was and still is entirely possible to build such single-page apps without any HTML5 features, but people increasingly refer to this style of application as “HTML5”. Go figure.

Event-driven frameworks are quickly gaining popularity, especially for development cases that require constant streaming of many small pieces of data. In such cases, no server-side template engine is necessary, with all rendering being left to the browser via JavaScript DOM manipulation. In this model, it is still possible to build traditional round-trip Web applications; generating the HTML can be deferred until a browser has loaded all JavaScript and data, with each click of a link repeating the full page request. But that begs other questions, namely, why not load only the bits of data necessary, and save the network overhead?

The event-driven framework has been repeatedly heralded as the death of server-side template engines, but this is premature. (Remember client-side XSLT? Anybody?) As far as browser JavaScript has come, we still lack a solid understanding of best practices for it being used as a full-blown application framework. And no, for all its awesomeness, jQuery has not given us such a framework. That’s not to say we don’t have a good idea of where the platform is going. Companies like Sencha are starting to fill many of the gaps that have, until now, prevented the enterprise from going full bore with single-page Web applications: IDE integration, deployment practices, WYSIWYG tools, clean object orientation, strong data typing, data binding, and so on. But today, the most popular single-page apps are still getting developed with a large and costly combination of multiple frameworks that include some from all categories. Even where older browsers do not need to be supported, many challenges still exist to building high-quality, “thick client” Web apps. In other words, we’re a long ways from the enterprise being able to easily roll their own custom-designed, fully featured, single-page Web applications.

Is the popularity of single-page applications a positive development? That is still open for debate. Pushing processing client-side helps with scalability and makes apps easier to build and maintain on the server/cloud, but the tools and clear practices for browser-heavy JavaScript development are still in their infancy. Meanwhile, concerns surface about consistently well-designed (and accessible) URLs, preservation of the Back and Reload button behaviors, and RESTful principles being applied properly to Ajax interactions. The more important question is whether users’ mental models of usability will increasingly expect the rich interactions. For many users, the difference between single-page Web apps and traditional Web apps could be as simple as whether a “please wait” spinner exists inline to the Web app, or at the top of the browser UI itself. Several of my recent research engagements suggest that users look for the inline spinner and, not finding it, often think something has gone wrong. The trend towards these rich, responsive interactions seems clear, and the logical conclusion of the trend is the single-page app.

I’ll be hosting an analyst user roundtable at this year’s Catalyst Conference to discuss the merits and drawbacks of the single-page web application paradigm, and will be curious to hear the opinions of conference attendees.

Additional Resources

View Free, Relevant Gartner Research

Gartner's research helps you cut through the complexity and deliver the knowledge you need to make the right decisions quickly, and with confidence.

Read Free Gartner Research

Category: application-development  

Danny Brian
Research VP
4 years at Gartner
21 years IT industry

Danny Brian covers presentation layer technologies, tools and techniques - the stuff people interact with on endpoint devices, and the ways to make it great. Read Full Bio.




Comments are closed

Comments or opinions expressed on this blog are those of the individual contributors only, and do not necessarily represent the views of Gartner, Inc. or its management. Readers may copy and redistribute blog postings on other blogs, or otherwise for private, non-commercial or journalistic purposes, with attribution to Gartner. This content may not be used for any other purposes in any other formats or media. The content on this blog is provided on an "as-is" basis. Gartner shall not be liable for any damages whatsoever arising out of the content or use of this blog.