Category Archives: microsoft

Browser wars: IE loses 12% market share in 2009, Germany hates it

I’ve been looking at the browser stats for 2009. According to StatCounter, Microsoft began the year with a 67.19% share for IE (versions 6-8 combined) and ends it with 55.23%. That’s a 12% loss or an 18% decline, depending how you figure it.

The biggest part of that share has gone to Firefox, which started with 25.08% and closes with 31.92 – a gain of 7% or a rise of  27%.

The big story is that Firefox 3.5 is now the world’s most popular browser. Although true on these figures, it is also true that IE 7 on the way down is crossing IE 8 on the way up; it’s possible that IE 8 will overtake Firefox sometime next year, though by no means certain.

However, there are huge regional variations. The UK loves IE: currently IE 8 is on 31.48% vs Firefox 3.5 on 19.2%, and IE overall is 56.02%. Germany on the other hand hates it:

According to these stats, Firefox 3.5 has a 44.19% share in Germany and IE 8 just 15.32%. The USA is somewhere in between, though closer to the UK in that IE 8 is in the lead with 26.64%.

Overall, clearly a good year for Mozilla and a bad one for Microsoft.

What about the future? Well, it’s notable that not all IE migrants are going to Firefox. The Other section is showing steady increase, and I’d bet that a large chunk of Other is based on WebKit, either in mobile browsers or in Google Chrome. Apple’s Safari is also WebKit-based, and has increased its share significantly during 2009. Mozilla should worry that developers are largely choosing WebKit rather than Gecko.

A bigger concern for Mozilla is the big G, source of most of its income. Google pays Mozilla for search traffic sent its way. It cannot be good when your main customer has a product that competes directly with your own. I’m guessing that a Google browser will overtake Firefox during the next decade.

More patent nonsense: Microsoft loses in Office custom XML appeal

Microsoft has lost its appeal in a case where a small company called i4i claims that Office 2003 and 2007 infringes its patent on embedding custom XML within a Word document. This is not the XML that defines the content and layout of the document. It is XML contained within the document that Word itself does not understand, because it conforms to a custom schema, and which will not be displayed unless you write code to parse it and output some sort of result to the document.

Microsoft now says:

With respect to Microsoft Word 2007 and Microsoft Office 2007, we have been preparing for this possibility since the District Court issued its injunction in August 2009 and have put the wheels in motion to remove this little-used feature from these products. Therefore, we expect to have copies of Microsoft Word 2007 and Office 2007, with this feature removed, available for U.S. sale and distribution by the injunction date.  In addition, the beta versions of Microsoft Word 2010 and Microsoft Office 2010, which are available now for downloading, do not contain the technology covered by the injunction.

The key phrase here is “little used feature”. It is true, in that the vast majority of Word documents do not use it; the only users who will be affected will be those who have built custom solutions which use it in some kind of workflow or for data analysis.

Why did Microsoft lose? Here I have to admit my lack of legal knowledge; though I’m aware that Microsoft’s track record in court is not good. One interesting aspect of the case reported here is that Microsoft was proven, by an email from January 22 2003, to have been aware of the patent and products from i4i:

we saw [i4i’s products] some time ago and met its creators. Word 11 will make it obsolete

says the internal email; Word 11 is another name for Word 2003.

That said, intuitively both the patent and the decision seem odd to me, in that XML is specifically designed to allow data with a custom schema to be embedded within a document defined by another schema. But does the i4i patent cover every XML document out there that does this – such as, for example, XHTML documents that include microformats? The answer, as I understand it, is no, because the patent is about how the custom XML is stored, not that it exists. Here’s a quote from the patent itself:

The present invention is based on the practice of separating encoding conventions from the content of a document. The invention does not use embedded metacoding to differentiate the content of the document, but rather the metacodes of the document are separated from the content and held in distinct storage in a structure called a metacode map, whereas document content is held in a mapped content area … delivering a complete document would entail delivering both the content and a metacode map which describes it.

In other words, the custom XML is not stored directly within the containing document, but in a separate file, together with an instruction that says “please insert me at location x”.

Is that really any different? Intuitively, I doubt it. What we think of as single files are often in reality a number of sections bundled together, such as a header part and a content part. Further, what we think of as a single file may be stored in several locations, with metadata that defines how to get from one part to the next.

An Office 2007 document such as .docx is in reality a ZIP archive which contains several separate files, organised according to the Open Packaging Convention; if the i4i patent has wider implications, it strikes me that they would be for the OPC rather than for XML itself.

I don’t claim any expertise in whether or not i4i has a valid claim against Microsoft or others. I do have an opinion though, which is that this kind of patent litigation does not benefit either the industry or the general public. This particular case concerns me, because the patent strikes me as generic, and one that could be applied elsewhere, which means more effort expended to workaround legal issues rather than in improving the software we use; and because even if the feature in Word is “little used”, the concept is an important one that still has great potential – though now probably not in Microsoft Office.

Technorati Tags: ,,,

Splashtop: the pragmatic alternative to ChromeOS

Today I received news of the a new Eee PC range from Asus which will be based on the Intel Atom N450. Two things caught my eye. One was the promise of “up to 14 hours of battery life”. The other was the inclusion of dual-boot. The new range offers both Windows 7 and what Asus calls Express Gate, a lightweight Linux which boots, it is claimed, in 8 seconds.

Express Gate is a version of Splashtop, and is a web-oriented OS that offers a web browser based on Firefox, a music player, and instant messaging. There is also support for:

View and edit Microsoft Office compatible documents as well as the latest Adobe PDF formats

though whether that means OpenOffice or something else I’m not yet sure. The Adobe Flash runtime and Java are included, and you can develop custom applications. Citrix Receiver and VMware View offer the potential of using Splashtop as a remote desktop client.

The idea is that you do most of your work in Windows, but use Splashtop when you need access right now to some document or web site. I can see the value of this. Have you ever got half way to a meeting, and wanted to look at your email to review the agenda or location? I have. That said, a Smartphone with email and web access meets much of this need; but I can still imagine times when a larger screen along with access to your laptop’s hard drive could come in handy.

The concept behind Splashtop has some parallels with Google’s ChromeOS, which also aims to “get you onto the web in a few seconds”. The Asus package includes up to 500GB of free web storage, and of course you could use Google’s email and applications from Splashtop. Another similarity is that Splashtop claims to be:

a locked-down environment that is both tamper proof and malware/virus resistant.

That said, ChromeOS is revolution, Splashtop is evolution. The Google OS will be a pure web client, according to current information, and will not run Windows or even Linux desktop applications. Knowing Google, it will likely be well executed and easy to use, and more polished than versions of Splashtop hurriedly customised by OEM vendors.

Splashtop on the other hand arrives almost by stealth. Users are getting a Windows netbook or laptop, and can ignore Splashtop if they wish. Still, that fast boot will make it attractive for those occasions when Splashtop has all you need; and frankly, it sounds as if successfully captures 80% of what many users do most of the time. Splashtop could foster a web-oriented approach for its users, supplemented with a few local applications and local storage; and some may find that it is the need for Windows that becomes a rarity.

It is telling that after years of hearing Microsoft promise faster boot times for Windows – and in fairness, Windows 7 is somewhat quicker than Vista – vendors are turning to Linux to provide something close to instant-on.

Moonlight 2 released; no Microsoft codecs unless you get it from Novell

The Mono Project has released Moonlight 2, its implementation of Silverlight for Linux. I tried my own database application and was pleased to find that it works fine; better than it did with the earlier release.

Note the right-click menu which offers some handy debugging features as well as the invitation to “Install Microsoft Media Pack”. If you choose this, you get a dialog offering the Microsoft codecs which are downloaded from Microsoft, not from Mono servers. You have to agree a EULA that restricts use to Moonlight running in a web browser.

That last bit is intriguing; it seems Microsoft is trying to prevent desktop or out-of-browser Moonlight (or Mono) from taking advantage of its codecs.

So what is in Moonlight 2? Miguel de Icaza explains:

Moonlight 2 is a superset of Silverlight 2. It contains everything that is part of Silverlight 2 but already ships with various features from Silverlight 3.

Those additional features include the pluggable pipeline, easing animation support, writeable bitmaps, and partial out-of-browser support. Further, de Icaza says:

We are moving quickly to complete our 3 support. Microsoft is not only providing us with test suites for Moonlight but also assisting us in making sure that flagship Silverlight applications work with Moonlight.

There is also a new patent covenant that:

ensures that other third party distributions can distribute Moonlight without their users fearing of getting sued over patent infringement by Microsoft

That said, the media pack is a source of friction. Only the Novell Moonlight distribution will raise the above dialog to install the Microsoft codecs; others will have to make their own arrangements; at least that is how I understand de Icaza’s post.

It seems an odd restriction, and means that most users should download from Novell.

What is the future of Microsoft Small Business Server?

I’ve just attended a briefing on Microsoft Server and the future of the Small Business variant was one of the things we discussed.

There are a couple of issues with Small Business Server that make me question its future. One is that, at a time when cloud-based services are proving their ability to simplify computing for small businesses, Microsoft’s offering is more or less cloud-free.

A second issue is that by bundling onto one machine products that were designed to live on separate servers, Microsoft has made Small Business Server more complex to manage than a grown-up Windows server environment, especially when upgrading to a new version.

I’d like to see SBS migrated to a virtual environment, with separate VMs for Exchange, SharePoint and Active Directory, all running as virtual machines. This is more or less how I run my own test system, and it works very well. It is more flexible, less fragile, requires no special tuning, and is easier to look after than single-server SBS.

That of course presumes that you think there still is a need for SBS at all. The other scenario I’d like to see enabled is one where the on-premise server is in effect a cache for cloud-based services. If a disaster occurs, there would be no interruption of business.

But what does Microsoft have in mind? It is not saying, though I was assured that it is an area of continuing investment – in other words, there will be another Small Business Server – and that sales remain healthy (then again, vendors always say that).

One of the complications for Microsoft is that SBS is generally installed and maintained by partners (of varying levels of competence) and it will take courage to disrupt that business. More than likely we will just get SBS 2010 with Exchange 2010, 2008 R2 and so on. In other words, more of the same.

Reflections on Microsoft PDC 2009

Microsoft’s Professional Developers Conference has long been a key event in the company’s calendar. CEO Steve Ballmer and his colleagues are famous for their belief that developers make or break a platform, and PDC is where the most committed of those developers learn as much as Microsoft is willing to share of its long-term plans. There have been good – for example, 2000 C# and .NET launch, 2008 Windows 7 – and bad – for example, 2001 Hailstorm, 2003 Longhorn – PDCs but they have all been interesting, at least the ones I have attended.

So how was PDC 2009? While there was a ton of good content there, and an impressive launch for Silverlight 4, there was a noticeable lack of direction; maybe that was why Ballmer decided not to show up. It should have been the Windows Azure PDC, but as I have just written elsewhere, Microsoft has little excitement about its cloud. Chief Software Architect Ray Ozzie gave almost exactly the same keynote this year that he gave last year; and the body language, as it were, is more about avoiding the cloud than embracing it. Cross-platform clients, commodity pricing, throw away your servers: from Microsoft’s point of view, what’s not to hate?

In theory, mobile computing could have been another big story at the PDC, but Microsoft’s slow progress in Mobile is well known.

My instinct is that Microsoft needs to change but does not know how: the wheels continue to turn and we will get new versions of Windows, ever more complex iterations of Windows Server, Exchange, SharePoint, and feature after feature added to Microsoft Office – does it really need to become PhotoShop – but in the end this is more of the same.

The mitigating factors are the high quality of Windows 7, which will drive a lot of new PC sales for a quarter or two, and the strong products coming out of the developer division. Visual Studio 2010 plus Silverlight is an interesting platform, and ASP.NET MVC is in my opinion a big advance from Web Forms.

That’s not enough though; and we still await a convincing strategic discussion of how Microsoft intends to flourish in the next decade.

Technorati Tags: ,,

How Microsoft adds COM to everything

I’ve been writing a retrospective on Microsoft and noticed an intriguing pattern.

When Microsoft was fighting the browser wars, it first of all developed its own web browser, and then added COM (ActiveX).

When Microsoft was countering Sun’s Java, it came up with its own implementation, Visual J++. Key differentiator: COM integration.

When Microsoft was responding to Adobe Flash, it came up with its own implementation, Silverlight, and then – you guessed.

The reason is that COM is the gateway to everything Windows; but it is a frustrating habit for those who want to live in a cross-platform world.

Importing folders to SharePoint

I’ve been working with Small Business Server 2008 recently and one of the tasks was to import an existing shared folder into SharePoint.

You would have thought that would be trivial, but it turns out it is not quite so. The normal suggestion is to open a SharePoint library in Explorer and do the import there. That’s actually not ideal. One problem is that, at least in our case, it does not work on the server though it does work on workstations. I suspect this is some arcane permission problem or feature; but doing this over the network is inefficient. Another issue is that Explorer is not smart about things like setting the date to that of the original, which can be annoying. A third problem is that some characters are allowed in document names on the file system, but not in SharePoint – such as  & { } and %. If your Explorer copy hits one of these the copy will fail.

I looked for a script-based solution, initially using PowerShell, but came across SPIEFolder instead. This is a simple C# application. Once I’d figured out that you have to run it from an elevated command prompt, it worked fine. However, it only imports into the top level of a SharePoint library. I added a target subfolder argument to SPIEFolder, and some name mangling to deal with illegal characters, and now it does what I want. I’ve not changed the default file date behaviour yet; but I think I can see how do do this if necessary: see http://msdn.microsoft.com/en-us/library/ms439259.aspx for the code.

Google Gears out, HTML 5 in: what this means for offline web apps

I was interested to read that Google is abandoning Gears in favour of HTML 5.

While that makes sense, it is a hassle for developers who have developed for Gears, since there are differences between features such as HTML 5 local storage and Gears LocalServer. The Gears API was tidy and effective so in some ways I’m sorry to see it go, though a broad standard will be much more useful.

Still, this does mean that you can develop to the HTML 5 standard for Offline Web Applications with some hope that, although broad implementation is lacking now, it will come in future. Even IE 9 is likely to have a fair amount of HTML 5 in it.

It is a critical standard because the success of something like Google’s Chrome OS will depend on it. Nobody can count on being always connected.

In the meantime, there are also offline features in Adobe Flash and Microsoft Silverlight.

Hyper-V VMs can fail to start if the host is copying a large file

I have a couple of Microsoft Hyper-V servers which I’ve been working with, one of which has 20GB RAM. It had two virtual machine guests, one with 12GB allocated and another with 2GB allocated. I created a third VM with 2GB and started it up. It worked initially, but on rebooting the VM I got the message:

Failed to create partition: Insufficient system resources exist to complete the requested service. (0x800705AA)

This was puzzling. Most people consider that the Hyper-V host does not need very much RAM for its own operations – Brien Possey suggests 2GB, for example – and I am running the stripped-down Hyper-V 2008 R2. 4GB should be more than enough.

After chasing round for a bit, and wondering if it was something to do with NUMA, or WMIPrvse.exe gobbling all the RAM, I found out the reason. At the time I was trying to start the VM, the Hyper-V host was copying a large file (a .VHD) to an external drive for backup. In order to perform this action, the host was using a large amount of RAM for a temporary cache; and was apparently unable to release it for a VM to use until the copy completed.

In some circumstances this could be unfortunate. If you had a scheduled task in the host for copying a large file at the same moment that a guest needed a restart, perhaps triggered by Windows Update, the guest might fail to restart.

Something worth knowing if you work with Hyper-V.

Technorati Tags: ,