Why the OS Matters
In response to
Jean-Louis Glassée’s article
“The OS
Doesn’t Matter…” I wrote quite simply: the future of the browser wars is he who integrates with
the OS best
.
This phrase came from my article lambasting Microsoft’s use of HTML for their
IE9 jump lists, which caused quite a stir. In the wave of ever increasing web browser capability, the operating
system is going to matter to web users more than it ever has before.
The whole reason that we can have this argument that operating systems don’t matter is that over the last 15 years
the world wide web has given birth to a document interface of such staggering importance that it now overshadows the
traditional desktop operating system. You can shop online, but you can’t shop from a desktop application. You can
bank online, but you can’t bank from a desktop application.
The web’s innocence to be no more than a document interchange format for the Large Hadron Collider project
protected it in the beginning. The web browser only needed to show a simple document, so it didn’t have to touch
much of the underlying operating system (the first web authoring tool and web browser were on NeXT). Had HTML tried
to replace native applications at the time it would have failed miserably, being over specced and almost certainly
too slow.
It wasn’t until the popularisation of server side processing languages (particularly ASP) that saw the first
“web apps”. Whilst the web browser still couldn’t achieve much, you could click a button and the server on the
other end could technically achieve anything; send an e-mail, ring a bell, launch a rocket. This was unlike
traditional desktop software which could not (and still largely doesn’t) assume it was online to be able to get
anything done back at the company. Even the Internet phenomenon of Shareware had you phoning or mailing in to
purchase the product on CD.
Around 1996 laptops were beginning to become popular, gaining desktop-capable power and new levels of portability.
Dial-in became all the rage and Microsoft were looking to tap into this new found portability with Exchange server.
Jim Van Eaton: Outlook Web Access - A catalyst for web evolution
Traditional web applications constantly refresh the document for just about every action. During Exchange
5.5 development in 1996/97 we used hidden frames to communicate to the server when sending messages so we
wouldn’t clear the user’s document. However, we still had many frames updating during navigation of the
mailbox. We also developed a Java applet for the date picker control in the calendar view to augment the
user experience since DHTML on the current browsers at that time was just about non-existent. In the end we
found that the applet did not meet our performance needs because virtual machine initialization* was too
expensive. OWA 5.5 had richer support than prior versions but it still lacked the type of experience that
users get in a win32 application …
… The first DHTML prototype for OWA was written on top of a pre-beta version of IE5. IE5 was
such a huge improvement. IE4 was a great step forward and we did evaluate it but IE5 had many other
built-in technologies that let us improve the user experience. The IE5 browser could certainly absorb xml
but making a DAV request was impossible from the browser, so we added an ActiveX control to the prototype
that made it possible to make DAV requests such as SEARCH, PROPFIND, etc… The OWA prototype was demo’d
to Billg and he loved it. This gave us enough momentum to get a component that we needed to be installed
by IE5 that we called XMLHTTP. XMLHTTP was born and implemented by the OWA dev effort of Shawn Bracewell.
Exchange funded the effort by having OWA development build XMLHTTP in partnership with the Webdata team in
SQL server.
(well judged given the Java lawsuit in late 1997)
Now whilst this didn’t integrate the HTML document into the operating system any more than had before, it laid the
foundations for web sites that were no longer a collection of interlinked documents. Microsoft, who I rag on for
failing to understand the web, did however understand the web from the perspective of developers and businesses
(just not users) and were bang on to ride the crest of the crazy dot-com bubble that was just gaining momentum and
culminated in 2000. The bubble essentially meant that a lot of people with not very many skills were paid very many
monies to create websites. The majority of users were still on dial-up well beyond the dot com bubble (remember when
you paid monthly and per minute?) yet Flash intros and tons of images were common.
What we got out of this was a massive commercial drive and the necessary momentum to push dowdy banks who didn’t
want to risk payments on the Internet into opening their arms to Internet patrons and all their lovely smelling
money. This I believe to be (in hindsight, as it could not have been seen at the time) the killer feature that
finally gave the web a capability that was more practical than its desktop counterparts. Even if the web could look
like and smell like a desktop app (as soon as DHTML appeared there were numerous attempts at mimicking desktop UI)
as long as it couldn’t do any trick that couldn’t be done better on the desktop, it was going nowhere. Shopping
changed that. It was easier to design, build and update a catalogue of items through a web browser than it was to
write a dowdy C++ Win32 database front end application, distribute it on CD and require the user to phone their
order in. There was no fun in that and that model was reserved for telephone directories and large
B2B purchasing systems.
Despite the splash screens, spaghetti HTML code and a total and utter lack of
web optimisation techniques in use at the time, it’s dial-up
we have to to thank for having a web where we can purchase anything in an instant and then go check your balance
from the comfort of your home without having to survive yet another phone tree—neither the shops or banks had an
ounce of innovation in them to put together such systems, oh no. It was necessity that was the mother of this
creation. Because you can’t use the phone at the same time as dial-up, it necessitated that payment
had to be done online. The user could have done a mail-order, or hung-up and phoned in the order,
but this would put a huge burden on the systems developers (and their lack of skills) to store this state
information. The browser session was quick, simple and cheap to use rather than store shopping carts for a month
waiting for a nebulous cheque in the post to match it up with. If it were not for dial-up and the dot-com bubble, it
could be argued that online purchasing would not have taken off until the iTunes store in 2003… scary thought.
Now, it should be noted that megacorps have no taste and it doesn’t matter how ugly something is, if it does the
job, it shall be so. Design aficionados may contort in disgust at the crappiest web app replacing a finally crafted
native app, but during, and after the dot-com bubble a skills change occurred in business (from all the mass hiring
and sudden rush for people to retrain to jump on the bandwagon) such that internally, big-business was both locked
into, and could only think in terms of ill-conceived web apps (that plague many institutions to this day, including
the British government). The IE-only intranet was born. This is the change that caused web apps to be developed
instead of native ones, as usually would be the case; beginning their life within the enterprise before the
concept leaked out to the end-user in new forms.
Then things went quiet.
We all know about those five years of web stagnation and the meteoric rise of Firefox.
Microsoft’s business plan was to provide IE as a loss-leader to achieve two things:
-
Increase developer dependence on Internet Explorer so as to tie the web specifically to
Windows and therefore sell more copies of Windows in the long term …
-
Sell more copies of Visual Studio for developers to take advantage of ActiveX, which
offered everything HTML couldn’t
The web got where it was in 2003 (99% IE usage) because the web wasn’t Microsoft’s business. The web
was a loss-leader, nothing else. The web sold copies of Windows and Visual Studio, end of. That is evident
from the total and complete lack of major upgrades to IE6 for five years.
Will Apple Embrace the Web? No.
This is interesting because the bundling of IE with Windows, a total IE monopoly, and ActiveX is the exact opposite
of OS integration! Microsoft wanted to keep the web… the web (as Apple are doing now)—a quirky document-centric
format sand-boxed within the browser that could never come close to replacing traditional apps, especially
Microsoft’s then new love-child .NET.
A website being tied to a particular operating system is not OS integration. You would not call it OS integration
that Adobe don’t have a Linux version of their products.
Because the web started out as a document format it had no concept of being specific to an OS (it was designed to
solve the problem of document portability across the various OSes at use in scientific institutions at the time) and
therefore when the browser was hacked and extended to be an application interface, the browser naturally smoothed
over the differences between operating systems. I’m telling you all this lengthy history gumpf because it’s the
reason why we so dismissively state that the operating system doesn’t matter so much because ‘everything’s on
the web’ now.
What we are doing is brushing aside the fact that the web browser—because of many driving factors, wanted or
not—has been pushing a ‘good enough’ (but not great) user experience along at a break-neck pace. As web-users
did not need to download and install a piece of software for each company they visited on the web to be able to
experience their services, the browser was hacked to make the best use of this one winning factor over desktop
software, even though it failed to make the best use of OS-conventions and technologies to provide a great
user experience (what did big-business care?).
The web is now about great user experience. With coming up on 2 billion people on the web, changing the wording of a
button can double profits. Having your site run 10% slower can lose you millions in revenue. The design, experience,
and speed of web apps is now a tangible, money-in-the-bank, competitor-busting factor. Despite many of the
‘advanced’ techniques we have now for website optimisation being perfectly applicable 10 years ago, now
businesses can smell the money and therefore it’s become important to listen to those who have been rallying the
call since the beginning.
Good user-experience goes hand in hand with the expectations, features and the interface paradigm of the operating
system. One cannot simply take a document interface that was designed with no other perception than desktop
mouse-clicks and just simply tack touch-controls onto it. Apple ditched Flash on iOS for not only technical reasons,
but also that it was so utterly obtuse to the radical departure from the desktop that the iPhone embraced. Because
Flash had to live in a plugin prison, the user had to interact with it in special ways outside of the
reliable-ish behaviour designed to exist throughout the whole OS. It sucked, simply put, and sucky
experience is lost revenue, not just for the website owner but for Apple and their ability to pitch the device.
Consider this: it was a better choice in Apple’s opinion sales, revenue to exclude Flash and ask
authors to change the whole web than it was to get the Flash experience on iPhone to an acceptable point. Other
handsets have Flash, sure. It sucks. Turning it off is the best thing you can do to improve your phone’s operation
and your web browsing experience. Apple were the only ones to say that ‘good enough’ is not good enough for
them.
In a surprising role-reversal (which is covered more in the article Will Apple
Embrace the Web? No.) Microsoft have learnt to stop fighting the web and instead embrace it. They have
been so far behind other browsers that they have lost the ability to string their technologies together in the same
way that allowed AJAX to come into existence. Internet Explorer 9 is to support HTML5 and a slew of
related technologies and standards as cutting edge as can be implemented cleanly and reliably.
Of course super slick, fast HTML5 web apps directly draw developers away from coding specifically for Windows
technologies in order to target more than one browser (and by extension: OS). In the past Microsoft beat away this
threat through hard-nosed business tactics to destroy the competition and stagnate the web—not an option now, they
are the haemorrhaging market share at a terrifying rate and have nothing good to leverage with IE8. This time around
the solution Microsoft have come up with is to compete not on grounds of websites that only work on Windows but
all websites working better on Windows.
Microsoft want the web to be the fastest, the best on IE9/Windows. Take a blind taste-test! Website looks the same
in Firefox and IE9 but Microsoft want IE9 to be clearly the better choice. That’s what the hardware acceleration
is all about. They are drilling the browser into the full capabilities of the operating system, tapping into APIs
that would normally be the realm of desktop apps and games. The pinned sites and jump lists feature of IE9 is all
about trying to make the web behave in the Windows way; applying the user-experience benefits that
Microsoft advertise Windows 7 as having to the task that most users do more than anything else on their computers:
browse the web.
The whole reason the operating system GUI exists–and even that there is more than one—is that there are many
ways to manage more than one task happening at a time and we are still perfecting that very task. The web is no
different in this regard; tabbed-browsing, not least. Managing more than one task is the domain of the OS, not the
web, and the OS has every opportunity to improve how we manage our view of the web such that one way is better than
another and leads to what else but sales?
Whoever makes the better user experience is going to get the users. Firefox was better than IE6, that much was
obvious. Now, the margins are cut-throat and that simply supporting a standard is not going to sell hardware and
software. Let us not kid ourselves that browser standards are anything but a developer feature, you could make a
website using just an image map and a good many users would not know any better than if it were HTML. What matters
to Microsoft and Apple is not the content of these sites any more (as was the previous browser war) but how well
this content is experienced in the shape of the operating system which holds it. It would be hard to deny that the
original iPhone greatly raised the bar of expectation in a mobile phone web browser. Have you used IE6 on a Windows
Mobile device? Opera Mini was good, but it was still designed around the expectations of the mobile web from 2003:
cHTML3.2. Just look at how Opera Mini changed in version 4 and 5 (zoomed out view, page panning, tabs). It takes its
queues from a new kind of mobile web that Apple pointed out.
Why was the iPhone browser good? It behaved and reacted in a way that was totally sympathetic to the operating
system and hardware. That’s OS integration, and it’s the future.
Windows Mobile was so trying to be a desktop environment it even had a woefully bad ‘right-click’. Opera Mini,
trying to be the same browser for every phone, couldn’t offer the best of what the phone had to offer (blame going
not to Opera but the blind handset manufacturers and their totally crippled Java implementations).
With standards support beginning to align in the browsers, as far as I can see at this time all browsers basically
look the same (tabs on top) and do the same (back, forward, search) so the only way to be different, to gain users
and to make money, is going to be providing the best experience through OS integration. Web apps need to start
feeling more like web apps and less like web pages because their desktop counterparts enjoy all
sorts of OS hugs-and-kisses that the web lacks. Microsoft saw that in IE9 and I believe it to be only just the
beginning of Microsoft’s plans to out-fox the competition by doing ‘the Windows way’ better than they do. The
good thing is that that no longer has to mean IE-only websites :)
The OS matters now more than it has ever done so before. It has been completely ignored by the web for 10 years and
now it’s become relevant, meaningful. More people are using operating systems to view the web than ever before.
The quality of their experience matters in real, tangible terms that businesses understand.
The operating system is not dead yet, it’s just been waiting for its time to really shine.