I am typing this on my Macbook Air. A very pragmatic and great machine for me to use. 13 inch, really small and light to use on the plane, 8 GB of RAM, 250 GB solid state drive which makes video editing a snap; the works. I’ve been using a Mac for about 5 years now and I moved away from Windows because I was sick of having to use a larger part of my processor for virus scanning. Once switched to Mac using Windows also seems unwieldy and I would really miss my Terminal with Unix emulation.
I am not alone in this – at most conferences all you see is MacBooks in various forms and ages. When I started as a web developer this was different. Thinkpads with Windows were the big thing and Macs were too expensive and just not right to use.
Now, as someone working for an open source company it seems to be hypocrisy to use a system that is not open source, and believe me, I had my share of people telling me that it is just that. I run Linux on my servers, I had a Linux laptop, but I just did not get warm with it. Many things like watching movies and playing songs were too much of a hassle because of codecs not being open, I missed Photoshop, and I just didn’t find an editor I liked (that was some time ago).
The fact is that I am happy with the system, it makes me most effective in what I do and everything works and is beautiful. Apple is great at that. It makes sure things work when you stay in the world you have chosen to use. We give up things we thought mandatory (like replacing a battery) for convenience. We don’t screw new hardware in or change the configuration, in many cases this is not even possible.
And all of that is a problem.
Web developers in the Western world are not people using the web. We are much more of a technological elite than we want to admit. Whilst we discuss the merits of high retina displays and how to support them the average world-wide web surfer sits out there with a Windows box or a Linux machine or uses a hotel computer or something slightly resembling a computer in an internet cafe.
Other people only surf at work, on the windows box ghosted by their IT department with no discussion as to what goes on it as every piece of non-IT-certified software might be a virus.
We never suffer their pain, we just don’t know any longer. Using Windows to me now feels weird and I don’t enjoy it. I like my command line, I don’t want to click through layers and layers of menus and find checkboxes to activate.
But this is not who we work for. On the desktop a huge amount of people use Windows and will use Windows for quite some time to come. Does this mean we have to optimise things for Windows, and even older Windows with terrible versions of IE? No, cause this brought us the dark ages of the browser wars with “site only works in IE” solutions that drive us nuts right now. On the other hand it means though that we should not make the mistake to assume that everything works in IE and Windows just because it works in Chrome or Firefox on a Mac.
The biggest irony is that as web developers we’ve been complaining about Microsoft and its lack of standards support for our whole life, and now that Microsoft does support standards we optimise for prefixed and beta functionality in other, Mac browsers instead. It is the same mistake developers did supporting all the cool things IE6 promised to standardise or we told ourselves are “de facto standards” as “everybody has a Windows PC with IE6” back then.
I think we have to face the fact that IE will not go away, and that having a VM running on your Mac and testing in IE is a damn good test to see how your work will perform outside, where the users are. Yes, this is frustrating, yes, it is annoying and means having a VM on your computer and give up quite some space of your HD for virtual images that need to be re-created every 90 days but it is worth it. And Microsoft is dedicated to make it easy for people, as shown in their Modern.ie site with all the info and downloads you need. Of course, having IE on Mac and Linux would be the best solution, but IE being part of Windows’ core, this will never happen.
If we care about standards and about cross-platform support we should make sure our stuff works in IE - it does not have to be the same as in all other browsers, but it needs to work. I see far too many solutions actively blocking IE to ensure there is no testing needed. That is exactly what those sites that state “only works in a modern browser like IE6” did. I think we’ve moved on from this.
Our job is to create enticing and beautiful products for the people of the web. Just because we have access to power tools doesn’t mean we should concentrate on what they provide. Let’s lower our expectations on what is out there and concentrate on making things work. A lot of what we consider amazing right now might never be of any interest for our end users and should happen under the hood instead of being a “you need this to see what I did”.