“Ajax”, not “ajax”: A Fitting Name for a Pattern

Consider this “Ajax”, not “AJAX”, Part II. A blog post in two parts, each part as trivial-bordering-on-absurd as the other.

Spotted as a parenthetical remark in a recent Doug Crockford article:

I am writing ajax in lower case because I think ajax has become ordinary enough that the caps are no longer justified.

That’s a new one.

“AJAX” in 2009 is as ridiculous as RADAR or LASER, but “ajax” is a step too far. I still prefer “Ajax” to “ajax”. Reason being, it’s a design pattern. Just as we say Strategy, Abstract Factory, or Singleton, we ought to say Ajax. Admittedly, each of those patterns includes an entity sharing the same name as the pattern, and being a class, the entity is capitalised; in Ajax, there is no actual “entity” called Ajax, so you might say ther’es no reason to capitalise. However, patterns outside software design are still capitalised, e.g. among Tim O’Reilly’s patterns of Web 2.0 are Hackability and Play, not hackability and play.

The objctification, even anthropomorphisation, of patterns is a big part of their power. Once you see a pattern as a living thing, you can see it as something that evolves over time and is capable of forming relationships with other patterns. In that, there is a close analogy between patterns and such software entities as classe and tables.

ajax > AJAX, but I <3 Ajax.

4 thoughts on “Ajax”, not “ajax”: A Fitting Name for a Pattern

  1. Doug, I consider Ajax a high-level (architectural) design pattern, as I explained here:

    Ajax App – This is the root pattern for the entire collection. Although the Gamma et al book has no root pattern, many of the hundreds of pattern languages do include a root pattern (including Alexander et al’s patterns, which starts off with a pattern about the organisation of the entire planet(!) and goes all the way down to the design of an individual room). For many in the target audience, this pattern is trivial – after all, you’ve bought a book on Ajax patterns because you probably already know you want to build an Ajax App. However, the pattern helps the whole collection stick together and gives other patterns something to reference. Also, a couple of years ago, “Ajax App” would certainly qualify as a novel pattern – JJG’s original article was really pointing out the emergence of an architectural pattern he called “Ajax”. “Ajax App” is the pattern that corresponds to the “Ajax” pattern.

Leave a Reply