I just got done reading the specs on Internet Explorer 10’s tablet ‘features’ in Windows 8. This new set of features is incredible on the surface, but as a developer I’m flabbergasted that Microsoft has decided to ignore the de facto standards and now has created yet another touch/tablet interaction model. I’m not flabbergasted a company would do that, because Apple did it with the iPhone and iPad to create the de facto standard that RIM (disclosure: I work for a subsidiary of RIM) and others have followed. What this means for developers who are trying to reach the widest possible audience is that their web applications are going to have to choose between:
- Lots of branches in their code to handle every possible variation of event detection
- Send users away
- Attempt to use some open source or home rolled equalization library that tries to mask the differences (this way could lie madness)
- Give the users a lesser experience
- Create multiple versions of the same thing, each with their own special ‘per device’ sauce (this way also lies madness).
Maybe there’s another option, but I just don’t get why Microsoft has done this to devs.
Today BDConf wrapped up. It’s targeted primarily towards mobile development and I had a chance to go to their first event in Grapevine, TX in March. One of the things that they talked about was writing for an ever changing web audience that accesses your site/web application through any number of devices. However, this sort of added complexity from a major player in the OS department means that one of two or three things is going to happen, and one of them isn’t going to be developer buy in. I’m convinced that Microsoft is going to have to either adopt some method for giving developers a smaller amount of effort to reach their audience on a Windows 8 tablet, or they’re going to really hurt their end user experience.
I want to create interactive, 3D-space enabled applications with rich interactions that happen to live in a browser, but Microsoft is definitely not reaching out to developers to create a “bold”* new experience in IE10. They’re not making it easy for end users to have a great, familiar experience. If you’re switching from an iPad 1 or 2 to a Windows 8 tablet you’re going to get fed up, and move back to the iPad. If you were to switch from the iPad to the PlayBook you’d be comfortable. Microsoft has created a barrier to entry, and this is not a good move. They’re distancing themselves from developers, and they’re distancing their users from rich content.
(update:) Don’t misunderstand me to think that all of what they’ve added to IE10 is a move in the wrong direction, but it’s just not cool that they added a bunch of new HTML5 standards support, and ripped the mobile/tablet market a new hole to support.
* Microsoft employees used the term “bold” numerous times during their announcement presentations today and many people in the media and on twitter noted this.