Platforms: How wide? How deep? How chunky? How durable?

Just a simple thought here, one you’ve probably thought of before, but not one that we hear a lot of talk about.

When you’re choosing a platform to build upon, you can compare them along four axes:

  • How wide? How many people can you reach? If you’re in Windows Presentation Framework or ObjectiveC, you can reach people using each distinct operating system. There are cross-OS platforms, but that still limits you to desktops and laptop — there’s work going on now for cross-devicetype platforms to reach mobile, but lowly paper and film can reach those who cannot afford a smartphone. The potential audience for your work is one criterion in determing a platform.

  • How deep? What can you do in that development environment? Apple’s iPhone offers both Ajax development and native development. The latter gives you deeper capabilities. For .NET developers, using Silverlight offers a deeper experience than using Ajax as the presentation layer. Digital displays give you more possibilities than linear video or a paper delivery. No-brainer here… judge platforms by what you can do atop them.
  • How chunky? How homogenous is the platform? Java Micro Edition and Flash Lite both suffer versioning fragmentation on mobile, but even so, the differing implementations of J2ME across different phone brands resulted in 5:1 efficiencies for Flash Lite. A similar situation exists with trying to do vector-charts in desktop web browsers… much easier to do this in Flash than special-case each browser brand, version, and OS.
  • How durable? How long will your work remain viable? Some people use this as an argument for things labeled “open” — “Suppose Adobe starts to charge for Flash Player?” is one popular objection. Sudden shifts beneath you are not fun. Me, I don’t much care about the decision process for a platform, whether it’s a bigger multi-company committee or a smaller single-company committee… I’m looking more at the final result than the process. Still, things that become de-facto standards tend to become de-jure standards with time, as the history of PostScript, PDF, and Flash attest. If you’re betting on a platform, you need to trust it’ll stay around.

How many people can you reach? What can you do once you reach them? How much does it cost to reach them? And how long can you enjoy the benefits of your work?

Four simple questions that seem to slice through a lot of the discussion out there. How wide? How deep? How chunky? How durable?