I trust most readers recognized immediately that my HTML5 is dead post last week was laden with irony. This week, I want to take a step back and put this important standard in proper context (which is ultimately more helpful for decision makers). And since this blog is geared towards organizations deploying Esri web mapping technology like ArcGIS Server, I’ll get a bit more specific to our domain.

I’ll first acknowledge a personal bias; I’m biased against plugins and always have been because they can act as barriers to use (I still have nightmares about trying to deploy the Java client for ArcIMS in 2001). This is a reason why I’m excited about HTML5.

While I’ve been vocal about my general disdain for plugins over the years, I recognize that not all plugins are created equal and the benefits can outweigh the costs sufficiently to warrant their use for certain types of applications (read, in lots of situations that hundreds of our clients have requirements for).

Especially when used for internal apps and/or more feature-rich apps, I think that Flash/Flex and Silverlight remain highly relevant and appropriate for several reasons:

  • As far as plug-ins go, Flash is ubiquitous (98%) and Silverlight (presently ~65%) will likely be there soon.
  • They’re from major vendors that people know and trust.
  • Esri is placing considerable focus on their Flex and Silverlight APIs.
  • They are well-suited to web GIS. As unfashionable as feature rich ArcView 3.x surrogate apps are these days, orgs quickly discover you can’t take functionality away that users have become accustomed to as part of their ArcIMS-generation apps. Users can get pissed when you take stuff away that they’re used to having.
  • They deliver a consistent user experience assuming your device supports that plugin (the latter is important, which I’ll discuss later). There are foibles with JavaScript across different browsers (for our product/project development, vastly more testing has been required), which slows development.
  • You can accomplish things (non-trivial things) that you likely won’t be able to with HTML5 any time soon, which is pertinent to certain types of apps.
  • They’re really starting to hit their stride productivity-wise for Esri technology, whereas HTML5 is probably a couple years off before we can start to get going in earnest for many common use cases. Note: We’re releasing Silverlight and Flex technology that allows people to start migrating/replacing their ArcIMS apps and Web ADF apps in earnest in 2011. While we think we've got a smart, realistic HTML5 strategy rolling, it'd be way premature to be attempting any of our product development using HTML5.
  • It’s possible to leverage these platforms now, and tie in HTML5 naturally over time, reusing much of the same architecture.

Here’s why I particularly like Silverlight:

  • The Silverlight development experience is integrated with excellent Microsoft development technology which allows orgs to get more done, faster. Our development pace with Silverlight far outstrips our output with Esri’s JavaScript API and Flex API. We’ve done lots of product development with all three, and our team prefers Silverlight by a significant margin (followed by Flex).
  • Silverlight seems to be gaining lots of traction, and there’s a huge talent pool of Microsoft developers. I have a hunch Esri is going to continue getting behind Silverlight in a significant way.

Here’s why I’m excited about HTML5:

  • It requires no plug-in, which removes a potential hurdle in front of the map counter for end-users. I consider this significant.
  • Not proprietary; this is usually key for any true web standard.
  • Ideal for apps that receive massive traffic (e.g. hurricane evacuation apps).
  • One app that serves multiple platforms is preferable to developing different apps for different platforms, provided interactions aren’t substantially different between your small touch screen vs. desktop screen/mouse which they often are.
  • All the big vendors are getting behind HTML5, and I have minimal concerns it’ll suffer from a failure to launch. There will be tremendous competition to implement it well.
  • Every time I hear the word “Flash” I think of splash pages, and every time I hear “Silverlight” I picture a silverfish zipping across my old kitchen floor.

People should default to the simplest solution that meets their requirements. I doubt anyone would argue that, all things being equal, not requiring a plug-in is superior to requiring a plug-in. If you’re in a situation now where you think a plug-in jeopardizes your maximum user base and you can deliver an app that doesn’t require a plug-in and it delivers the goods without increasing your work significantly, definitely do it. A common candidate for this is a simple, targeted app intended to answer one or two questions for lots of people. Esri’s JavaScript API will be your go-to technology right now (which is what we use) but cool stuff with HTML5 isn’t that far off (which is what we will be using, and are doing early-stage R&D with now).

Technologies like Flex and Silverlight have an essential role to play for quite a while; especially over the next few years and likely much longer for heavier/richer applications. HTML5 will provide tremendous value as it matures in the years ahead, and will inevitably replace many types of apps for which it is fundamentally better suited.