Reaction to the AJAX episode of IT Insight

July 19, 2006

I got an email from Ana who disagreed with one of my statements over AJAX in my latest episode of IT Insight. What I said (translated from Spanish) was roughly:

“The MVC paradigm was designed to separate the application layer from the presentation layer. AJAX is a step back as it makes this virtually impossible”

She pointed out that the goal of AJAX is precisely to separate those two layers and that AJAX emphasizes the value of the code that resides within the server.

I must say that at first I was quite surprised that she wouldn’t agree with my statement since AJAX pages usually include a hell of a lot of JavaScript code. To me it was evident that this got in the way of having a clean “view” layer. However, after rereading the e-mail I realized that Ana had a web-designer background and I started to understand.

From a web designer perspective, it makes a lot of sense to consider the “view” layer everything that runs inside the browser. This allows them to work on a much larger projects and grab a larger part of the total application value. Today, most web designers working on large web applications only have a marginal role in the application development. They usually only develop templates that are later used by the application developers.

However, from an enterprise application developer perspective, this doesn’t make a lot of sense. Web pages developed using AJAX, specially recent complex applications such as Zimbra (http://www.zimbra.com) cannot usually be designed by web designers. That is because those pages do include some application code that is not trivial. Therefore, developers will argue that they have to develop those pages. They will probably also argue that web designers usually do not use version control systems or understand customer requisites. The idea is that by separating the two layers it becomes more difficult to manege the project as a whole. Using different languages for each tier (JavaScript and Java, for example) doesn’t make the problem any easier. That is why large corporations tend to prefer a single programming model such as J2EE.

In the end we must recognize that there is a power struggle going on between developers and designers. Both want a large share of the pie. Right now designers have the higher ground in smaller accounts while developers rule the corporate world.

© 2026 Huibert Aalbers. All rights reserved.

Contact Me