Bill Hilf (of Microsoft) visited Finland
This is an old blog entry I copied from the Finnish book's site mainly to use as filling while I was designing the layout for this site. Since it might be an interesting read, I'll just leave it here. Hope you enjoy...
While Conan visits Finland as I write, last Thursday there was a chance to meetup with an even more interesting American. Earlier I had bumped into my old friend and former collague Ilija Lazarov, who informed me that the Nr 1 Open Source guy in Redmond, Bill Hilf would be visiting Rantasauna at my former university. So, did I really want to spend an evening listening to Microsoft's opinion on Open Source? Sure, that might be interesting. And no, Bill Hilf is not the "Get The Facts" man, I don't think I would have been interested in that kind of stuff. All in all, there would be a sauna, food and drinks courtesy of Microsoft, and if nothing else, I could meet two old friends Aali and Ilija, so the worst case scenario was good enough to go there. Luckily, Bill himself turned out to be a very interesting guy as well. He seems to be involved in anything MS does with Open Source, and lots of high-level stuff, like relationships with the EU Commission. Apparently, he came up with the idea to offer the source code instead of documentation. ("Not that I would say in public.")
Bill talked about what he does at Microsoft. One important part is to study Open Source and help Microsofties understand what Open Source is, how it works, and so forth. For instance, his lab has organised so that people inside MS can easily download any Linux ISO there is. (Before he arrived, some people worried whether it was okay to download Linux distributions, and might do it from their home or something, as to not get into trouble.) Better yet, they have a 4 processor server running all kinds of virtualised Linux and BSD operating systems, which you can simply just logon to via an Internet Explorer ActiveX control. The funniest thing though was that Bill has ended up distributing hundreds of Ubuntu Live CD's as a way to let people get a glimpse of Linux.
It seems that Bill is the right guy to do that kind of educational work, and probably does it quite a lot too. At the dinner afterwards Perl came up in the discussion, and just like a reflex he took 30 seconds to briefly describe what Perl is on a very general level. I noted this, because out of all the nerds sitting around the table, including the one from Microsoft Finland, I cannot imagine there was anyone else but the pretty PR lady accompanying him, that wouldn't know Perl. And traveling with him around Europe, it is possible she had heard about it more than she would like to as well.
The research Bill's guys are doing is just the kind of stuff I'm interested in: How do Open Source projects work? How many developers are there in the Kernel, Apache, Samba over time? What is the ratio of actual developers committing code to all the people on the mailing list? (Less than 10 %. The ratio is remarkably similar across different projects.) How many lines of code in the Kernel at any given month? Which version was a particular distribution using and how much did a particular RH or SUSE Kernel deviate from the vanilla? He also spoke about Microsoft's own experience with Open Sourcing the WiX installer. According to Bill this research is public, and indeed he did show some slides, but googling for it now gives me nothing. It would be very interesting if Bill's guys had a website with this kind of stuff.
Bill's core message (which I suspect he is delivering just as much inside Microsoft as outside) is that there is the Open Source process -- a way of producing software -- and there are Open Source products -- Red Hat, MySQL, JBoss. The message is that Microsoft competes with these products, but not with the Open Source process. Looking from the outside, I'd say MS pretty much competes with the process as well, but Bills point is correct in that as a for profit company, the way of producing software is just a means to an end. MS shareholders probably wouldn't have any philosophical objections in MS open sourcing both Office and Windows, if indeed that would be the most profitable option. The message is also a healthy one after you realise that there is nothing wrong with one company competing with another company, MS against RH for instance. Then he went on to talk about "co-opetition". Which means that MS often both competes and co-operates with any given software. For instance Oracle is a competitor to SQL Server, but many people run Oracle on Windows and (increasingly, I'd say) MS has an interest in ensuring that Windows is a good choice to run Oracle on. In the same vain MS is also in co-opetition with MySQL and JBoss. (Those were the examples he mentioned.) For instance, 40% of JBoss installations are, would you believe it, on Windows. Bill called this the dirty little secret of Open Source, but on the other hand, we all know that is the only reason we all now use MySQL and not PostgreSQL, even on Linux.
Ok the slides were pretty but the good stuff is always in the Q&A session. Since the last slide was about Windows Academic Program, a program to license Windows source code to universities to research and teach Computer Science courses, I asked him to comment on those who say that you should not go and look at Windows source code because then you can never work with anything else ever again. Bill gave a long answer explaining tainting in general but not really answering the question. I was surprised that he didn't deliver an official "Microsoft statement", so I asked whether I really was the first one to ask such a question and he confirmed that this is something they will have to work on. I'm left wondering whether Bill really did not have a good answer or whether he just talked about salmon recipes because he cannot say anything not approved by the PR department. Since he is a smart guy, I actually believe the latter :-)
Then another guy asked about Microsoft and Mono, whereupon Bill got some laughter with: "Now that one I do get a lot!". And indeed, he did deliver a memorized Microsoft statement. Later we all laughed at this and the PR Lady (whose name I have forgotten, I'm so sorry) thought that was very perceptive of me. The official statement is that the ECMA stuff in .NET is free, but the things MS has developed on top of that is not and Bill (well the words came out of your mouth so...) thinks it's not fair that someone would just copy that work. As one of the "approved answers" brainstormed by Microsoft PR, it was one of those things that sound okay but doesn't really fairly address the actual question. So I
followed up with asking whether I've understood correctly that the ECMA specification is really just the very basics (the runtime, Bill clarified) and by his answer you could not have interoperability on the really interesting stuff like ASP.NET or Windows.Forms. Bill again tried to defend the "party line" with "sure you can do interesting things with the ECMA specification" and that nobody really wants to run Office on Linux. Since he is such a nice guy, and since I had promised my Microsoft-friends not to "say anything bad" I didn't say that I could think of many people who might want to run ASP.NET with Apache on a Linux server. Bills final words: "In any case, we never said you would be able to
do that", were at least a fair and straight answer from a fair and straight guy.
Now stepping out from the Rantasauna for a while, let's see how this relates to the rest of the world. With such a statement straight out of Redmond, it looks to me like:
- All the people who have critized Mono and Miguel, and said that Microsoft will use their patents to clamp down on it, were clearly right. Of course, we should also remember that Miguel has been consistent with his view, that that is okay because he just wants to use Mono with GTK# and doesn't care about Windows.Forms or ASP.NET.
- Now we can definitively take .NET away from the list of cross-platform and vendor independent technologies. It is notable that while people have been raising the issue of most of .NET being outside the free ECMA specification, most people have wanted to believe that all of .NET was supposed to be interoperable and cross-platform. In short, we thought it was Microsoft's answer to Java. In fact, while I have never seen an actual Microsoft employee saying it, I have seen consultants (holding MS mvp title) with close connections to MS demonstrating Mono (and things like ASP.NET running on it) as proof that Mono was a cross-platform solution. While it may be true that "we [Microsoft] never said so",
Microsoft clearly did not denounce these talks either. From a marketing standpoint, it is understandable why they'd want people to believe .NET is a cross platform solution.
- The previous point is good to remember, for instance in the current debate about open document formats. It is now clear that just because Microsoft makes something into a "free and open" ECMA standard, it does not necessarily mean anything we normally take those words to mean.
- It will be interesting to see how far Microsoft goes to attack the Mono ASP.NET implementation, for instance in non-commercial distributions like Debian. It is clear that Red Hat and Novell have already heard from MS.
Then there is the last question: Is Bill a good guy or a bad guy? ;-) My view is, that he clearly is a good guy, but nevertheless he works for Microsoft. So he might distribute Ubuntu CD's inside Microsoft and his team certainly is doing a great job in fighting a lot of Open Source FUD inside Microsoft. At the same time it is clear his public appearances are approved by the PR department. And let's face it, nobody expects anything else.
Also good to remember is that Bill came to Microsoft from IBM. So he may be an Open Source guy in many respects, but there is no reason to believe that he would ever have spoken against things like software patents anyway.
I remember when Gentoo founder Daniel Robbins joined Bill's team at MS, an LWN commentor accused him of selling out. I replied that "Personally, I think educating the worlds by far largest software company in Open Source is a good thing to do. I'd do it for free." I'm still of that opinion (so Bill if your interested send me a mail) but I have to admit that seeing Bill talk made me wonder whether I would do it for money, if that would mean I'd have to respond to questions with answers approved by a PR lady, however pretty she might be.