ZOMG! TEH PATENTZ!

Out there, clogged in the great wide intertubes, there is a veritable cornucopia of blogs, forum posts, and sites, where people like to discuss an important topic: how TEH PATENTZ will come and doom us all. This in itself is not a silly thing to think. For example, there are companies (so called patent trolls) who do not contribute anything to society, they simply buy others’ patents then make grandiose legal threats to earn cash. Or, in other cases, some companies like Sisvel literally send in the police to raid trade shows, sniffing about for those violating precious MP3 patents like pigs seeking truffles.

However, there are a few things to consider. Firstly, patents are not global – and in the case of patents on software, which are what threatens products like GNU/Linux,  not neccessarily available everywhere. Generally speaking, a jingoist US-centric view is dangerous because the issue is so complex – US patent & copyright laws are not the world’s copyright & patent laws, and you can make a serious error in judgement if you don’t remember that (and what it may mean to companies who dabble in software patents).

Secondly, software patents these days are rarely (if ever) exercised by anyone other than patent trolls. Certainly inside the US, where the patent office doesn’t seem to believe in issues like verification, non-triviality, or prior art, patents are filed at an incredible rate on the most ridiculous things, then never used. Companies like IBM amass a veritable armada of patents around the world, but never deploy them – other than in a nuclear-style self-defending threat. Everyone knows software patents are a farce, and nobody with a huge patent portfolio would stand to gain anything from beginning a real shitstorm – again, much like nuclear warfare. Given how many “huge” software projects are ingrained into so many places, actual patent risk to those products would be devastating for EVERYONE. The bluster is more valuable than enforcement – other than to trolls (or in less fluffy terms, terrorists). And for the trolls, only the biggest, “easiest” targets with the highest chance of payout is worth the time.

So, What is ths leading on to? Well, it’s leading on to a very sophisticated piece of software called Mono. Mono is an implementation of two international standards submitted by popular patent whipping boy Microsoft (Eolas, Visto, Alcatel, Patent Hawk – everyone wants a piece of the world’s biggest software company). Standards are a good thing – Standards allow companies and individuals to all sing from the same hymn sheet, to all interoperate and cooperate, with the least amount of effort. Whilst web browsers might have bugs, at least the internet is built on enough standards that you CAN “just”access ay web site you feel like – anyone remember non-standards like AOL Keywords? Standards also grant an air of legitimacy to a project – saying “I made a programming language” is all well and good, but “I made an internationally standardised programming language” makes it sound like you’re serious.

And Mono is serious.  It makes a serious effort to embrace those published standards to increase the number of people who can take advantage of them (Microsoft implementations are available only for Windows, FreeBSD and MacOS X). Mono has embedded users, and it has desktop users – it not only embraces those original standards, but extends them in both directions – those extensions are not only for Mono, but flow back to users of Microsoft’s implementation as well. Mono is a shining example of exactly what these standards exist for, and what they allow. By leveraging Mono, which by the way is  Free Software like Linux (in fact the license used is even more Free), developers are able to (and have) produce high-class, high-quality applications for desktop, server, or handheld device in a fraction of the time that some of the alternatives would take, and gain true cross-platform capability essentially for free. Mono takes many of the same promises as Java, but unlike Java, builds on an actual standard (and unlike Java, there is more than one implementation of those standards which actually works properly). Due to a streamlined and modular design (inspired in no small way by Java’s mistakes), applications built on Mono can be a fraction of the size of the equivalent built on Java – as Mono applications can easily only require a limited subset of the whole, rather than pulling in an enormous monolith just for one app.

So, how did I get from patents to Mono? Well, here’s the rub – because Microsoft own some of the patents to their published standards, some people freak out. And when people freak out, they tend to lie. A lot. They lie and conceal and deceive and lie some more, and with enough work, it becomes impossible for most people to tell when the lie ends and when the truth begins. Microsoft haven’t helped matters at all, with their bluster about patents, and neither have Mono’s main corporate sponsors, who signed a patent cross-licensing deal for their GNU/Linux offering (which some use as evidence that Mono must be at risk from patent litigation). When things are less than crystal clear, most just ignore it – but when someone is deliberately stirring mud (or FUD, however you opt to spell it) into the mix, it can make those who aren’t equipped with knowledge of the entire situation rather… uncomfortable. They know all about patent trolls and how those trolls go around suing people, and they sure don’t want to get sued, so if an agent of chaos whispers into their ear “you know, Mono is covered by some patents too”, it only serves to alarm them. Related parties have pointed out with relative frequency that those licenses are available under a “royalty free, reasonable & non discriminatory” license, but free patent protection isn’t remotely good enough, is it?

(Picture licensed under Creative Commons Attribution ShareAlike 2.0 Brazil License, and by Eurico Zimbres FGEL/UERJ. Modifying photos with logos and horribly formatted text makes you a big man and proves your argument is correct)

The thing about the FUD brigade is how inconsistent their arguments are. Circular logic rules the day. Try visiting their web sites and you might get lost in circular links, too (never cite a reputable source when you can cite yourself!). Here’s the typical exchange:

<them> Mono is dangerous because it is covered by patents

<me> So are lots of Linux apps. Why is Mono special?

<them> They’re MICROSOFT patents!

<me> There are lots of Microsoft patents in things. Why is Mono special?

<them> It is inconvenient for me to acknowledge that those exist, so i will pretend they do not. However, Mono is special because it goes out of its way to emulate patented Microsoft software!

<me> Really? Don’t things like Wine do that too, without such bile-filled reaction? And unlike Wine, Mono implements a published standard

<them> The standards are a trap! They can charge you for patent license fees!

<me> True. But they’ve said they won’t. And that’s more than you’ll get out of most people who own patents which are, to all extents and purposes, violated in Free Software projects

<them> But if you start to rely on Mono, then Microsoft can disable you down the line when they suddenly sue!

<me> And that’s different from loads of other software in GNU/Linux how exactly? Smarter people than me or you have a “don’t worry about maybes” attitude.

<them> But Mono is dangerous because it is covered by patents!

And so on. Ad infinitum.  Mix in something about the patent cross-license deal (which explicitly did not admit to any specific patent violation) and you’ve got an average day in a Mono IRC channel. And thanks to the carefully orchestrated FUD campaign, people who simply don’t understand the issue parrot it (which is, of course, the idea).

Sometimes, shooting the messenger is appropriate. Nutcase Florida attorney Jack Thompson has done more harm to the “violent videogames are bad” movement than anyone else, through virtue of reducing his own argument ad absurdum. The anti-Mono crows have done the same thing for discussing important questions like the brokenness of the US patent system or monitoring the ethics behind the deal between Microsoft and Mono’s main sponsor. Much like Whacko Jacko, however, those who don’t know any better listen to ill-informed and one-sided diatribes as gospel, and doing so harms Free software as a whole.

So, since the FUD brigade won’t discuss it, I will. Microsoft claim to hold patents covering all of the following technologies – I challenge those who would single out Mono because of the Microsoft connection to discontinue use of any of the items on this list, for precisely the same reasons they claim Mono should not be used (threats of Microsoft patent enforcement). This is a reduced list – the full list is on microsoft.com:

Still here? Without any IPv6, IPv4, or HTTP? REALLY?

Mono is a Free Software implementation of an international standard making it easy to develop desktop and server applications which run without porting work on multiple operating systems. Nothing else today can claim that lofty title – and making it easy for developers to offer up high-class GNU/Linux software to Windows or Mac users is a great way to show them the power of Free software. It should be embraced, not derided.

29 Responses to “ZOMG! TEH PATENTZ!”

  1. > Related parties have pointed out with relative frequency that
    > those licenses are available under a “royalty free, reasonable
    > & non discriminatory” license, but free patent protection isn’t
    > remotely good enough, is it?

    Just one question. Where can I find a copy of this “royalty free, reasonable & non discriminatory” license?

  2. There is also Mozilla and OpenOffice, they both bundle COM implementations which might be patented by MS.

  3. > > Related parties have pointed out with relative frequency that
    > > those licenses are available under a “royalty free, reasonable
    > > & non discriminatory” license, but free patent protection isn’t
    > > remotely good enough, is it?

    > Just one question. Where can I find a copy of this “royalty free, reasonable & non discriminatory” license?

    [miguel_] Direct, anyone can request it from ECMA
    [miguel_] Well, you can request the docs from ECMA
    [miguel_] The Gnome Foundation is a member, and whoever is the member can request the docs
    [miguel_] It might be possible also for the public to get them but I dont know what you have to do

    I asked, that was the answer. Make of it what you will.

  4. what we really need is to roll back the corporate interest changes that the Reagan administration made to the patent laws. The way I hear it (from someone I consider a reliable source), the patent laws were sane before the Reagan administration made it possible only for large corporate entities to file patents on inventions. I also hear that the process of maintaining a patent is too costly for Joe US Citizen to afford. I don’t have time to review this, but it might give details that prove either a) the patent system was screwed up and needs to be fixed or b) my source is not so reliable.

    http://ipmall.info/hosted_resources/lipa/patents/Legislative_History1984.pdf

  5. It would not be a big deal of M$ were not talking out both sides of their mouths. M$ RAND is meant to reassure you but it is not free and you have to have a hole in your head to trust them with your development time by now. M$ themselves view Mono and all dependencies as special to Novell and there’s nothing special about being limited to Suse and paying a tax to M$ for free software. SCO tried that too, remember all of that M$ caused trouble?

    What’s more important is that no one needs moNo. There are many superior and free alternatives, including java. Why waste your time chasing M$’s tail lights when you can use perl, php or any other well established scripting language?

  6. > It would not be a big deal of M$ were not talking out both sides of their mouths.
    > M$ RAND is meant to reassure you but it is not free and you have to have a hole
    > in your head to trust them with your development time by now. M$ themselves
    > view Mono and all dependencies as special to Novell and there’s nothing special
    > about being limited to Suse and paying a tax to M$ for free software. SCO tried
    > that too, remember all of that M$ caused trouble?

    Welcome to the inevitable outcome from dealing with a large corporation – the left hand and right hand not only not knowing what each other are up to, but only ever seeing each other during the company picnic. For another example, consider Sony. Sony are sweetness and light and allow you to install Linux unmodified on their games console, to encourage Cell development, right? Well, Sony also put rootkits onto audio discs. Sony is good, Sony is bad, Sony is BOTH – Sony is too big to talk about in single terms.

    The same applies for Microsoft, really. Yes, without doubt, some elements of MS are evil scheming assholes. Usually the biggest brass, who come from an older corporate culture. But there are also those who simply love their jobs and what their jobs allow them to do, love the technology they’re working on, and really want to see that technology spread – and given their corporate culture, that sometimes means stupid decisions are made higher up about the best way to do that.

    If, for the sake of argument, the MS brass could be given a compelling _business_ reason why putting all the .NET patents under their ‘open specification promise’ (an all-encompassing irrevocable patent grant), rather than trying for per-company patent nonsense, then that might have actual results.

    > What’s more important is that no one needs moNo. There are many superior and
    > free alternatives, including java. Why waste your time chasing M$’s tail lights
    > when you can use perl, php or any other well established scripting language?

    .NET as a whole presents a lot of interesting options that none of the things you mention do – you can write in any language you like yet interoperate librarywise (which is a good thing), the lass library isn’t a huge pile of bullshit and chips (unlike PHP), it’s not a bloaty pile of bloated bloat (unlike Java), and it’s not painful to write in a clean manner (unlike Perl). I gave a talk to co-workers on the topic – about why we picked Mono as our platform for internal tools development, and that decision was taken after I had already done a full implementation in Perl – it was an unmanageable monster compared to the joy and ease developing the C# version gave.

    Programming language choice is, in most cases, a personal decision made on a per-app basis. The great thing about .NET is that you can pick any language for the occasion, but still have access to a huge high-quality class library, whether you’re writing Python or Brainfuck or Visual Basic. How is that not a good thing, from a developer standpoint?

  7. You may find this information useful:

    http://slashdot.org/~willyhill/journal/205317

    Twitter is one of a dozen sockpuppet pseudonyms of one of Roy Schestowitz’s gang of clueless mud slingers.

    It’s also quite amusing to see Twitter going on about how other languages are superior when in fact he doesn’t actually know any of the languages he’s talking about and so clearly has no ability to objectively compare any set of programming languages to one another.

  8. > Twitter is one of a dozen sockpuppet pseudonyms of one of Roy Schestowitz’s gang of clueless mud slingers.

    I know, I know. But unlike some, I won’t suppress debate.

    > It’s also quite amusing to see Twitter going on about how other languages are superior when in fact he
    > doesn’t actually know any of the languages he’s talking about and so clearly has no ability to objectively
    > compare any set of programming languages to one another.

    But the point, of course, is that others accept it at face value, so the only option for THEIR benefit is to tackle the points head on, lest they believe any of it. This page was written for educating the educable, not Matlab Man’s cadre.

  9. HI there,

    Just as in this current political climate, we see here the follies of trying to discuss anything serious within certain components of the linux community. You apparantly can’t speak your mind about legitimate fears without being labeled a heretic by seemingly objective individuals that should know better than to descend into such an abyss.

    Your ‘admission’ that novel did not ‘admit’ to any patent wrong doings is absurd considering who they sleep with lately, but I guess that never crossed your mind because your goal is the polar opposite.

    So , like the current political climate with ugly jabs and robocalls piling on the garbage; unless you fully embrace Mono and apparantly M$ which is responsible for the novel/M$ pact, the OOXML debacle and the ‘ballmer’ comment about Redhat, then one is clearly a clueless mud slinger with delusions of brighter tomorrow where foss is just that, where no mud exists and clear fresh water remains.

    Let that be a warning to you all that come here to unmud the waters, that if you try you willl just continue to muddy the waters with rampant amounts of what some here call ‘bullshit’ [ see directhex remark, its not mine <] , so just beware when you post here, or on the referring thread here: http://ubuntuforums.org/showthread.php?t=634805&highlight=mono&page=23 , that when you do you can be guaranteed a reasonably muddy reception 🙂

    Just as similar attempts at freedom were on some fronts rejected throughout history it seems the same tricks are being perpetrated today, – and just as then, those whom find passion in such farflung ideals of ‘for the greater good’ in lieu of ‘for the greater profit’, will continue to speak out about such injustice for the collective freeing of anyone, anywhere who feel the flogs of oppression and bears the weight of injustice.

  10. > Just as in this current political climate, we see here the follies of trying to discuss
    > anything serious within certain components of the linux community. You apparantly
    > can’t speak your mind about legitimate fears without being labeled a heretic by
    > seemingly objective individuals that should know better than to descend into such
    > an abyss.

    You’re right, I should know better than to feed the trolls. Yet something compels me to do so. Perhaps it was when some Monopoly-supporting kid like Roy decides to bad-mouth me personally on his FUD blog. Hard to be sure.

    > Your ‘admission’ that novel did not ‘admit’ to any patent wrong doings is absurd
    > considering who they sleep with lately, but I guess that never crossed your mind
    > because your goal is the polar opposite.

    Tell me, what is my goal? You say you know me, so reveal it.

    > So , like the current political climate with ugly jabs and robocalls piling on the
    > garbage; unless you fully embrace Mono and apparantly M$ which is responsible
    > for the novel/M$ pact, the OOXML debacle and the ‘ballmer’ comment about
    > Redhat, then one is clearly a clueless mud slinger with delusions of brighter
    > tomorrow where foss is just that, where no mud exists and clear fresh water remains.

    You know, the whole “M$” thing really makes you look immature. You want to “discuss anything serious”, try dropping things like that for a start. It’s hardly “seemingly objective” is it.

    OOXML has some design issues that frankly scare me, Microsoft definitely strong-armed it through the standard process, but with that said, I fail to see what is actively bad about being able to refer to those standards, crappy as they may be, when improving software like OOo or AbiWord. Moar interop is bad how?

    And really, you want a world “where no mud exists and clear fresh water remains”? And you do that by throwing random straw-man arguments about and proclaiming that anyone who goes near Microsoft is helping to destroy Freedom and Barack Obama? Seriously?

    > Let that be a warning to you all that come here to unmud the waters, that if you
    > try you willl just continue to muddy the waters with rampant amounts of what
    > some here call ‘bullshit’ [ see directhex remark, its not mine < ] , so just beware > when you post here, or on the referring thread here:
    > http://ubuntuforums.org/showthread.php?t=634805&highlight=mono&page=23
    > that when you do you can be guaranteed a reasonably muddy reception 🙂

    I call a spade a shovel. I call bullshit bullshit. If that offends, be offended. I find Roy’s rambling nonsense, and the fact that people believe it (to use your own example, the way people believe certain robocalls), more offensive than any curse word I could type.

    > Just as similar attempts at freedom were on some fronts rejected throughout
    > history it seems the same tricks are being perpetrated today, – and just as
    > then, those whom find passion in such farflung ideals of ‘for the greater good’
    > in lieu of ‘for the greater profit’, will continue to speak out about such injustice
    > for the collective freeing of anyone, anywhere who feel the flogs of
    > oppression and bears the weight of injustice.

    http://en.wikipedia.org/wiki/Straw-man_argument

    Educational reading for you.

  11. […] http://www2.apebox.org/wordpress/linux/51/ , interesting page, liniked into from: http://ubuntuforums.org/showthread.ph&#8230; < directhex last post a few weeks ago here, of course mentions in a no mono thread that btw here is the latest version of mono LOL…what a swell person, whom on the former url I showed cleary seems to be talking M$ smack as if he ‘works’ there…to me anyway thats how it seems […]

  12. Ooh, a pingback! Never seen one of those before.

    Nice to see I get mentioned in Roy’s Club again though. Perhaps you could draw me with a cape and giant eyebrows, when doing your usual bad-art-mockery thing?

  13. Me : Microsoft owns .NET and does not state they let anyone make a free use of it, or derivated work from it. If they don’t, sorry, I didn’t find it on their site, may you point me to the link where it is written ?

    You : omg!!z3h pat3nt! Microsoft owns IPV4/IPV6, they even own electricity, please shutdown your computer.

    Me : Just for your information, Microsoft doesn’t own IPv4/6, they own technologies developed around these protocols, and you were probably too busy FUDing in order to take the time to read the first paragraph of the “list” you posted.

    What i’m asking isn’t to put Mono to a grave, it’s just being ensured, directly by the patent’s actual owner, Microsoft, that i can make any use of it that i want.

    And btw, GNOME isn’t shipped with installed Wine apps, afaik, while it’s now shipped with Mono. This kinda makes a difference.

    Please grow up and push some real arguments in the conversation, that’ll probably be much better for the whole community.

  14. Hi Steve

    Re your text – “Just for your information, Microsoft doesn’t own IPv4/6”

    Please look at

    US Patent 6101499 – http://www.freepatentsonline.com/6101499.html

    From what I’ve read patent basically covers creating your own IP address, and applying an IP address created by another machine. Please note that the Assignee is Microsoft Corporation (Redmond, WA)

    Im not sure you can implement TCP/IP without it.

    I also found the kerberos patent number, but couldnt find the SOAP one. It would have been nicer if the blog article linked to the patents rather than wiki articles about the technology.

    Thanks

  15. @Stuart Crouch, sorry about that Stuart, I didn’t have the time (nor legal training) to point to specific patent numbers which I could say with any degree of confidence were violated. Last time I saw someone attempt to do so whilst attacking Mono, it was a big ol’ chucklefest for all concerned who understood the matter in detail. Better to let casual observers see which technologies are involved rather than link to potentially irrelevant patents.

    That and it would have taken a few extra hours, which sucks.

  16. @Stuart Crouch,

    Of course you can implement TCP/IP without it. It is a method of automatically assigning an IPv4 address based on the MAC address i.e. it is an IPv4 version of something that is part of the IPv6 standard. There is no requirement to to use this method in IPv4 as should be obvious from the fact that IPv4 existed and worked just fine long before this patent was even filed. You can, and probably do, use static assignment or DHCP to assign IP an addresses.

  17. While the points you make about mono are interesting, the technologies listed as Microsoft patented technologies, while undoubtedly correct in that Microsoft may claim such patents, is simply ludicrous to anyone who knows anything about the software on this list and the history of the development of these applications.

    Dot net and its various frameworks and core programming languages were developed by Microsoft. Any patents granted to Microsoft relating to Dot Net etc have the leg of developed by microsoft to stand on.

    Just one example of this absurdity is Kerberos, developed by MIT and distributed under an MIT license. Microsoft never designed developed or had any part in the coding of Kerberos. It did incorporate it into NT and changed to code so it would no longer interoperate with non Microsoft versions of kerberos. I suppose this is the basis of their patent application; not that I’d brag about such an original “invention”.

    IPV4? IPV6 as Microsoft patented “inventions”. Its obvious you are not that ignorant as to accept such a claim, why do you think those that are reading your article are that ignorant.

    Dot net is and original work by Microsoft – one of the few it can lay claim to, though there are of course those that would say Java done right is hardly an original idea.

    By original, I mean it in the sense of DARPA’s funding of the design and development of TCP/IP after the development of ARPANET (1969) , to ensure a packet switched network that could survive a nuclear attack. Vinton Cerf, Herbert Zimmerman, Louis Pouzim and Robert Kahn are names that come to mind, In 1975 Bill Gates was just getting started writing a basic interpreter for some 8 bit machine – MITS I think. In 1975 I had been programming for nine years and was avidly following the development of tcp/ip and its various IETF RFCs.

    Microsoft was not part of any of this process as Gates hadn’t even bought Q-DOS from seattle computer and renamed it MSDOS yet.

    But then, as I understand it, Microsoft claims to have invented the computer operating system too.

  18. Blog story featured on Linux Today http://www.linuxtoday.com/developer/2009052600635NWGNLL

  19. “Related parties have pointed out with relative frequency that those licenses are available under a “royalty free, reasonable & non discriminatory” license, but free patent protection isn’t remotely good enough, is it?”

    Heh, pants on fire! Jo, with this post you might have aided the Mono detractors more than anyone else could have…

  20. Epic journalism, guys. Real smooth. Listing my employers there is *totally* worthwhile and relevant. Do you want my driving license number whilst you’re at it? It starts with an “S”

    Of course it is relevant. It gives context and is standard journalistic practice to introduce someone along with his profession.

    This has nothing to do with personal information such as your driver’s lincence (a cheap shot).

    Is your employment secret?! It’s the first thing you write about in your, hmm, “About page”…

    Also, LOL-talk does not a valid argument make.

  21. No, it’s not secret – it’s also entirely irrelevant. And I was under the impression that “standard journalistic practice” involved actually contacting someone you were attacking, y’know, for comment.

    If revealing things about people is relevant, can we talk about how Roy still lives in University halls of residence? Does that add valid context to the things HE writes about me?

  22. It is not irrelvant..watch professionals do this on msnbc for example.and they always say right up front, who the guest is and what they do for a living..so yes it IS relevant..

    Besides,,what about the ECMA thing Jo, is that also irrelvant ?

    Why not answer that too while your at it, or is that question somehow also irrelevant ?

    cheers
    nl

  23. @neighborlee, please explain the relevance, then. Why is that detail, which is distinct from the packaging work I do, relevant to the topic?

    As for “the ECMA thing”, I already replied to it on your last comment.

  24. […] Shields makes a good argument in his article from a couple of months ago: he lists a number of software projects that Microsoft claims to have […]

  25. Your mention of MS’ claim of a patent for ‘ping’ brought back bad memories. Every unix in the early ’90’s implemented ping that was compatible with other OSes. Except MS–they added an option to include large amounts of random data in the ping packet. This broke lots of non-MS boxes out there. Script kiddies began pinging unix boxes and crashing them so they could say MS is better. This required emergency patches to all sorts of things, including NCD X-terminals. MS violated the spirit of the internet at the time with a gratuitous & non-standard ping option. That’s ’embrace-extend’extinguish’. I wouldn’t be surprised if they pulled that kind of stunt again.

  26. […] Jo Shields is an active mono apologist, especially in the Ubuntu community. Often, after he posts something on his blog, the talking points go endlessly around the Ubuntu Forums and related sites. Take for example, his brilliantly argued ZOMG! TEH PATENTZ! […]

  27. Fascinating. I’ve been trying to track when and where the current excitement about Mono started, and this so far is the oldest article being refered to.

  28. […] ZOMG! TEH PATENTZ! http://www2.apebox.org/wordpress/linux/51/ […]

  29. Only those who have GNU/Linux from Novell are covered under the MS promise. All those that try to ridicule those against wide spread adoption should line up with their wallets ready when MS starts to sue after it has completely contaminated GNU/Linux and free software alternatives.

Leave a Reply