Tom Hanrahan: Director of Linux Interoperability - Port 25: The Open Source Community at Microsoft
< Back to Blogs
Tom Hanrahan: Director of Linux Interoperability by Sam Ramji on June 08, 2007 05:34PM

Most of Port 25’s readers are aware of my commitment to interoperability between Microsoft and Linux, as exemplified in the OSSL’s work on IPsec and now the three-sided virtualization, identity, and systems management work with Novell.

I’m proud to announce a leader at Microsoft who has the sole purpose of bringing Windows and Linux technologies together: Tom Hanrahan.

Tom will join as the Director of Linux Interoperability, and will head our Linux/Windows interoperability work, including leadership of the Microsoft/Novell Interoperability Lab.  This development lab will undertake much of the engineering work involved in the multi-year technical partnership.  Among other things, Tom has much to teach us on “developing in the open” – how to work in a transparent way with a broad engineering community.
Tom brings 30 years of engineering, management and community development experience to this effort – and the larger Microsoft community. Prior to joining Microsoft, Tom was the Director of Engineering at the Linux Foundation where he was responsible for managing a variety of technical initiatives.  Earlier in his career, Tom led IBM’s Linux Technology Center in Portland, and spent 11 years at Sequent Computer Systems in the early days of SMP (symmetric multiprocessing).

It is excellent to have Tom on board, and he is already making an impact.  His outstanding history of Linux engineering will greatly contribute to our focus on interoperability. You can also expect to see some of Tom’s work (and thoughts) show up on Port 25.

Please join me in welcoming Tom Hanrahan.

Comments RSS
  1. communist said:

    All Microsoft would need to do in order to foster interop and compatibility is stop polluting standards and just release usable (patent free) specs if you cant live without your glorious extensions. And by specs I mean specs that can be used without having to know what "Do like Word 97" means. But does MS really want interop? They have the least to gain when people could go ahead and edit their doc files without formatting and other errors in OpenOffice instead of the latest and greatest $400 Office suite.

    I give him 2 years at most ;)

    posted at 06:09PM 06/08/2007
  2. einhverfr said:

    @Communist

    .

    I don't think that interop works like that.  Everyone wants to use a limited form of interop as a way of obsoleting the competition.  This is the nature of Identity Services for UNIX, SUA, Samba, Wine, Mono, etc.

    .

    Furthermore, I am probably in the minority here in that I don't think that Microsoft is much worse than any other player at polluting standards.  For example, how ANSI-complaint is MySQL's syntax by default?  How much does Linux and GNU extend the POSIX standards?  This isn't even a bad thing-- if vendors can try to get their extensions into the next version of the standards, than their experiences wrt their extensions are valuable in helping further develop such standards.

    .

    Having said this, the goal here is obviously to ensure that Windows can pretend to be Linux on a network.  This has already been happening with SFU (now SUA), and the like.  However, I would suggest that Windows as a system is too tightly integrated internally to create the large Athena-style networks that are possible on Linux.  The converse reason is behind a lot of the work on Samba and WINE.

    posted at 07:21PM 06/08/2007
  3. ohboy said:

    You missed the obvious fact that Microsoft is a monpolist. A monoplist doesn't have the freedom of conduct a non-monoplists has. That's cast in anti-trust law.

    Microsft likes to extend standards and keep the extensions propriatery, having the goal of locking the custumor in and the competitor out. Microsoft calls this 'Embrace, Extend and Extinguish.'

    MySQL can hardly being accused of keeping its deviations from ANSI SQL propriatery. Heck.. even the source code is available. A competitor wishing to bring a 100% MySQL replacement to the market can do so by starting wioth the ANSI standard inspecting the MySQL source code for the MySQL specifics. It can even base its own product on the MySQL. The same goes for the GNU tools extending POSIX. Any competitor can bring a 100% compatible version of the GNU tools to the market, the barrier to enter the market is low. No such thing can be said of a vendor wishing to bring a 100% compatible offering to a Microsoft product. Ask the Wine and Samba people.

    And I don't think either the FSF or MySQL has ever been slapped on the wrist for anti-competitive behavior. Prove me wrong.

    All in all, you 'boy boy am I a reasonable guy, here' kind of counter arguments, don't hold water. Your counter argument fall in the 'compare apples to oranges' category, to the point of being, sorry to say, boneheaded. Next time give me an argument I need my teeth for to refute. Given Microsoft's monopoly status, it's track record and it's vendor lock-in corporate policy, given that free market based societies around the world value free competetion and have laws in place to prevent, and if needed, remedy, monoplies I wish you good luck in arguing that Microsoft breaking standards is not a bad thing. You will need all the luck in the world.

    posted at 08:47AM 06/10/2007
  4. einhverfr said:

    @Ohboy

    .

    The line needs to be drawn at the "extinguish" part (which is illegal under antitrust law for someone with market power to do unfairly).  Extending standards is necessary and healthy.

    .

    MySQL's extensions to, or more accurately deviations from, the standards are often senseless attempts to make life easier for C programmers without worrying too much about the standards themselves.  || meaning 'or' when the standard says concat?  And MySQL at least through 4.x broke standards by default.  (5.x still does but not as badly.)

    .

    In these cases it is still about vendor lock-in.

    .

    In MySQL's case, it is worse in that it is vendor lockin into an inferior product, as MySQL offers no guarantee of ACID compliance (it will happy fall back onto non-transactional tables when transactional ones are unavailable, and this is still the case in 5.x).

    .

    You state, "Any competitor can bring a 100% compatible version of the GNU tools to the market" and this is probably no less true for Microsoft.  If you don't want to do this with the GNU tools and don't want to release your code under an open source license, you would have to use the same clean-room processes to avoid copyright infringement.  The only step missing is the disassembly or reverse compilation stage...

    .

    When I referred to being slapped on the wrist for antitrust violations, I was referring to Microsoft.  I felt at the time (and I think that time is bearing this out), that this is the worst possible punnishment for Microsoft simply because, as you say, they are now held to a higher standard than they would otherwise be (if they were broken up, they might not be held to as high a standard-- that would be a change of circumstances which might override the collateral estoppel, but IANAL).

    .

    Back to embracing and extending.  People who make the arguemnt that Microsoft should not extend standards usually fail to understand how the standards process works.

    .

    Basically, most standards bodies include various industry players.  They include what information they can get broad approval for, and then let those industry players experiment in other areas.  The standards are usually designed by people with working implementations of the proposed additions.

    .

    So, when Oracle, Microsoft, IBM, Sybase, and others make proposals for the next version fo the SQL standard, they are generally proposing their specific implementations.  There is an incentive for each player to get their proprietary extensions opened up and included in the standards, as this forces the other players to play "catch-up" in standards-compliance.  And yes, from what I have seen, Microsoft has been heavily involved in standards organizations in many of these areas.

    posted at 02:01PM 06/10/2007
  5. Durethia said:

    Here's my take on the argument of whose at fault for complying with standards.

    When an Open Source product, deviates from a "standard", inherent to it's open nature should it be accepted by a sufficient number of people it then becomes an example of Standards Evolution.  Which, is a good thing.  If the idea is infact, a bad idea, a core peace of capitalist philosophy adheres; in that, if it's not a good idea then too few will embrace it.  The hidden key here, is, the fact that a proposed change is without external incentive or influence.  If a proprietary software maker breaks a standard, consumers simply have to deal with it and choice and options aren't really as abundant in the proprietary arena as many proponents of capitalism would have one believe.

    While Sony Entertainment, can press their assertions through out all subsidiaries and not only force their ideas on the consumer via a Sony Viao, but even in magazines as they also own some publishing houses, television and movies, embed their logic in the semi conductors...

    The Apache group, owns and directly influences with authority Apache, nothing else; not even the Mozilla team which would seem to require working hand in hand.  As one is the server, the other the client.

    So you see, when ideas evolve in the Open Source, they evolve on a foundation of pure thought, creativity and rationale.  When things evolve on the shelf, it's simply who has the funniest commercial, and who has the most control over distribution channels, resources, manufacturing and myraid applications from Yamaha motorcycles to Yamaha music instruments.  Consumers don't have any real option, but to buy whatever is on the shelf.  I bet Adam Smith didn't see how his philosophy would infect itself in the long run.  If he were alive today, I'm quite certain he'd opt to make major changes in The Wealth of Nations.

    In short, Microsoft can't break standards, unless their 'extensions' or whatever they want to call it, is fully open for all to implement.  Otherwise, they aren't merely presenting their proposal for world wide peer review and acceptance, but through tyranny, forcing it upon it's subjects.  Big difference.

    posted at 06:19PM 06/13/2007
  6. einhverfr said:

    @durethia

    .

    Many standards, including SMTP and Kerberos, provide a framework for extensions.  Are you saying that proprietary vendors should not be allowed to use those fameworks?  (BTW, contrary to what many think, Kerberos interop with Windows has always been pretty good.  There have been a few glitches, but no showstoppers.)

    .

    Basically where I draw the line is in breaking standard implementations.  If standards-compliant input does run as expected on a product, than that is bad.  It is worse as the input is more common.  So PostgreSQL's case handling is not as bad as MySQL's use of the || operator or even MySQL's case handling even though all three of these violate the ISO SQL 97 and 2003 standards...

    .

    Therefore I draw the line at breaking standards.  THis is, after all, what people are afraid of, right?

    .

    Here is one thing I am afraid of.  Right now, standards bodies are very experience-based.  In general, the standards from the ISO, ANSI, ECMA, IETF, etc. come out of experiences with problems and solutions to those problems.  If we were to really seriously argue that Microsoft (or other proprietary vendors) should not pursue solutions to problems with the standards, we are going to short-change ourselves in terms of the evolution of the standards.  We may end up with standards which are fundamentally broken and don't work.  (IMO, parts of the SQL standards are that way anyway, particularly the connection between schemas and roles.)

    .

    So I am back to my point-- as long as Microsoft interoperates with the vanilla standards implementations, I am happy to see them work on extensions.  If they fail to do this, then they are broken, and I am one of the first to argue with them about it.

    .

    I will give you one example of something that was broken (and where the correction was not documented).  I have already sent this to Microsoft, and it was discovered by participants in an open source app I work on.

    .

    In IE 6 and below, the handling of BUTTON elements was broken. See http://msdn2.microsoft.com/en-us/library/ms535211.aspx

    .

    The HTML standards state that the value attribute is sent back to the server, but IE was sending back the innerText.  This caused LedgerSMB to break because we use the innerText to localize the labels of the buttons.

    .

    This was actually fixed in IE7, but the documentation has not been updated on MSDN.  LedgerSMB expects standards-compliant behavior, IE6 and earlier don't give it.  So we don't support those web browsers.  (Interestingly the open source web browser W3M is also unsupported because it does not handle button elements at all, nor does Pocket IE, which means we have to work on better support for Minimo).

    posted at 02:08PM 06/14/2007
  7. Welcome Tom.  Good choice Bill & Sam.

    posted at 08:21AM 06/15/2007
  8. Durethia said:

    @einhverfr

    If the whole issue is whether or not a proprietary vendor should be able to write extensions, well, for most part sure.  But, an argument saying that those proprietary extensions serve to improve any Standard is a stretch.  If no one may freely implement this 'extension', then it can't be considered for standard revision.  Seriously, how can it influence a Standard when only one kid is allowed to play with it?

    But, there's a piece of this that many people over look.  And regardless if it's an extension or not...

    Computers communicate; just like humans do with language.  In order for any communications to take place, there can NOT be ANY restraint on said communications, and every attempt to do so in the past has lead to very grave situations such as the Dark Ages and Latin only being used by "scholars" for the purpose of keeping the "common man" ignorant.

    Ever wonder why, your cell phone can call up, and talk to ANY everyday phone in the world?  Because despite the borders, politics, cultures... communications MUST be OPEN and STANDARD.  Everyone knows this, to include, almost every country that has a telecommunications infrastructure having federal mandates and regulations governing telecommunications specs, implementations protocols.

    Computers are becoming more and more used as a means of communications.  Legally, as a citizen, I'm entitled to public state/government documentation and forms.  Why do some chose a proprietary format for distributing the documents, by law, they should provide to any citizen on demand?  If the person can not read the document, then it's effectively not delivered, and no amount of technicalities will ever change that.

    What if your child, had a PDA running Linux or whatever came on it.  Got into a bit of trouble and the only way he could ask for help is through a wireless connection to the local police stations website.  But, it's coded for Internet Explorer (becuase Microsoft refuses to abide by any standard, and claims they are providing "extensions"), and as a result... well... who would you sue?  You know, you can sue your phone company if you can't call 911.  Why?  Little known fact, Pac Bell, AT&T, a phone company can NOT deny you an active phone line regardless if you pay or not.  Of course, they would like you to pay, but they can not completely disable your phone line for the sake of being able to make emergency calls.

    There is a reason for this stuff.  It all boils down to making sure, EVERYONE can communicate, when needed or wanted.  When was the last time you tried to learn a foriegn language and had to sign a NDA?

    Microsoft, or any other vendor, has no right, making anything that is meant to be put on Removable Media, or across the network as proprietary.  If it can be saved to removable media, or sent across a network, it's intended as a form of communications.

    It might seem as an extreme today... but if my child dies because of some degree of incompatibility with his electronic device trying to contact emergency services... I'll sue the company responsible on both sides for making a communications device, meant for general and wide use, proprietary and not compatible with existing base technologies.  And, I'll win.  I know I'll win, because by then, the Law will have enough associative precedence that will make it clear, that there is no difference in a phone calling 911, and a PDA submitting an online form to a local police stations website.

    posted at 05:12PM 06/21/2007
  9. einhverfr said:

    @Durethia

    .

    First, I know a few things about telephone standards, and they are not as open as you might think.  In particular, some codecs used for compression in limited-space lines (such as G.279 iirc) are patent-laden despite being an ITU-endorsed standard.  Many other standard codecs (such as GSM) and even signalling protocols have been encumbered by patents which have at least for a time prevented open source implementations (GSM patents have lapsed).

    .

    Also, try to tell me that SS7 is a truly open standard.

    .

    Compared to the world of telephone devices, computer standards are generally far *more* open.  Patent encumbrance is far less common wrt IETF standards than wrt ITU ones, for example, and I think that this is one of the major keys to the success of the internet.

    .

    In short, I think that there is a lot of misinformation about the way standards processes actually work in the real world.

    .

    Back to the questions of extensions.  Extensions are almost always required to solve problems that a vanilla standard implementation does not solve.  For example, TSQL in MS SQL is not compliant to any SQL standards that I know of.  Nor is any other stored procedure language.

    .

    I will grant you the fact that I think that NDA's to view document format specifications are problematic, and I would not encourage the practice.

    .

    However, as much as I believe that open source is the right way to go (and the majority of my income is derived from building open source software), I think that very little is gained from arguing that every proprietary implementation needs to be entirely opened up.

    .

    Instead, I think we need to look at what works and what actually breaks standards.

    posted at 06:19PM 06/21/2007
  10. So for those of you who read Port 25 , this is old news . However I just wanted to echo Sam Ramji's welcome

    posted at 05:28PM 06/29/2007
Post a Comment
*
*