Software Patents: The new MAD

With the recent news of Microsoft being told to stop selling MS Word in the US due to it’s infringement of a patent owned by i4i I am really hopeful that perhaps, just perhaps, someone will start to realise just how MAD this all is.

Reading the first story I linked to, there is a reasonably understandable explanation of the patent in question but lets be honest here. Does this sound like an truly new and innovative invention?

“What we have developed at i4i is what’s customarily referred to as ‘customer-centric’ or ‘custom XML,’ which is allowing people to create customer-driven schema — we’ll call it templates or forms. So, while XML is used to tag and to mark the data that’s created, our technology is used to create the whole schema and the management of the data.”

They’ve managed to patent the ability to create your own schema by the sounds of that. Isn’t that what XML is for?

Anyway, I can’t see the good ‘ole boys really winning in the long run. I’m sure it will get over turned when hopefully someone shows up with some prior-art. But it seems to me that with this ridiculous system in the States, they are building their own new version of the Cold War. Remember Mutually Assured Destruction? That’s where they are now.

Businesses like Microsoft, IBM and others build vast portfolios of patents on the most ridiculous things not for their inherent value, but mainly as a safeguard against being sued for infringing someone else’s equally ridiculous patent. ‘If you sue me for patent xyz, then we’ll sue you with zyx’. Then we have the other wonderful group of [ahem] businesses known as Patent Trolls who bring nothing to the party except litigation. Nice.

Who wins out of all this in the long run? The worst group of parasites on the planet (yes, even worse than estate agents): Lawyers.

Surely, the US Government must see the stupidity and waste that this daft situation has created? I really hope that this is the litigious straw that will break the back of the patent camel.

Finally, get this. The last paragraph of that story reports on a patent that Microsoft has just been granted, which they applied for several years ago.

Word-processing document stored in a single XML file that may be manipulated by applications that understand XML

A word processor including a native XML file format is provided. The well formed XML file fully represents the word-processor document, and fully supports 100% of word-processor’s rich formatting. There are no feature losses when saving the word-processor documents as XML. A published XSD file defines all the rules behind the word-processor’s XML file format. Hints may be provided within the XML associated files providing applications that understand XML a shortcut to understanding some of the features provided by the word-processor. The word-processing document is stored in a single XML file. Additionally, manipulation of word-processing documents may be done on computing devices that do not include the word-processor itself.

Hmmm – this appears to have far reaching implications. OOXML, ODF, any word processor supporting XML file formats… Jeez. How the f**k can you call this an invention?

Please, UK Government and the EU Commission, don’t let the patent trolls of the world make you think that software patents are a “good thing”.

Promises, promises

Microsoft made an interesting announcement, they are promising not to sue people for using Mono. Jolly good of them really, it is nice not being sued.

Lets just assume for the moment that this promise means what they say it means (forgetting about the partial implementations exclusion and the fact that the promise needed to be made in the first place) and it makes Mono totally safe to use now, even in countries with broken patent laws. I still won’t be using Mono. Mono is a useful tool for solving the problem “how on earth am I going to run all this .Net code I wrote when I switch to Linux?” I for one don’t have that problem, but for those that do, Mono is the tool for the job.

The reason I won’t be using Mono is that the .Net framework is already embraced by Microsoft, it is already extended by Microsoft. It was from the beginning and will probably always remain so. Mono is playing catch up and people want to be using the leader. This goes for Moonlight and Silverlight too. Silverlight 2 came out, some misguided websites moved to it, Moonlight 2 is in progress, but following. The only glimmer of hope for Mono as something that is more than a specific problem solving tool is GTK#. In this, the Free software community is taking the upper hand by extending Mono, in ways that Microsoft won’t follow. Maybe if .Net/GTK# applications become the norm on Windows this would be a good thing overall. Personally I will stick to Python/GTK on Ubuntu for my fairly limited desktop app programming requirements.

The Ubuntu/Mono debate continues…

Mono seems to be causing a great deal of debate and discussion within the Ubuntu Community right now. I’m sure it probably always has, but it definitely seems that the intensity is building at the moment.

For those who don’t know what Mono is, from their website:

Mono is a cross platform, open source .NET development framework.

Two blog posts have caught my attention in the past couple of days and should be mentioned, one on either side of the debate and interestingly that is one from a developer and one from a user. Thankfully these two posts and most of the comments attached to them have been free from the personal attack and verbal abuse that has been written on several mailing lists and forums recently. Those don’t have a place in a decent debate, I will not condone them by linking.

First the developer.

Jo Shields writes well and clearly has a lot to say. This is a well written piece that articulates the position of a software developer who clearly likes what Mono has to offer.

I recommend you read it and consider carefully what Jo has to say.

The other article, from a user and expressed in plain and heartfelt language, tells us why he feels Mono is not for him.

I also recommend you read that one too and consider his position.

Welcome back.

What strikes me with these posts is how technical and abstract the position of the developer is and how emotional and personal the position of the user is. It is a very clear distinction and one that is probably at the heart of this disagreement.

Interestingly, the developer seems to inadvertently (I assume) be making the case for Mono dependent applications being removed from a default install in his final point in the “Why it is not a threat” section:

The layering of escape routes is extensive in Mono, especially Mono in Debian/Ubuntu. In the first instance, the contentious Microsoft-sourced non-ISO libraries such as System.Windows.Forms are not included by default, and are rarely used in Free applications anyway (because WinForms looks like ass, amongst other things). If a reason is found to remove these non-standardised libraries, then bam, they’re gone – without harming Free apps. Secondly, if a more severe change is required, then the Mono packages can be patched to remove the infringement. If more drastic changes are required, as mentioned above, then the applications can also be patched to support any core changes. And, taking it one step further, if the whole of Mono needs to be pulled, then applications can be ported. The porting process would potentially be slow and painful, and cause great harm to an application’s future rate of development (although no worse than if the app was written in the target language from day one), but nobody who has written an app they care about would simply throw their hands in the air and say “never mind, it was fun, but the Man says I have to stop now”.

The user’s post is emotional and from the heart. As a user myself I believe this perspective should not be regarded in any way less important or valuable than the technical position; both are just as valid.

The bone of contention for me is Mono. I remove it. I don’t like it. I refuse to use it. It rubs me the wrong way. Anything that starts with Microsoft and goes via the sellout, Novell, cannot be good.

I know that Microsoft is opposed to the existence of Linux. That have said so, often and stridently. I know that Novell caved in and did not stand up for FOSS when they had the chance. They have since apologized, sort of, but the damage is done. Other companies did not follow suit, including Red Hat and Canonical. I respect them for this as much as I detest Novell for selling us down the drain.

My perspective on the Mono thing is from that of a user and not a developer. I really fail to see why anyone would want to build new applications on top of a framework that has so many unanswered questions and causes so much angst in the community as a whole. We have plenty of other solutions that are – if not 100% free from controversy – certainly far less likely to end up requiring the kind of backtracking or complete re-writing that Jo describes above.

I think the problem many of us have with Mono will not go away, irrespective of what, or how much, the developers say. When I first removed Mono from Ubuntu back on Hardy, I did not know, nor had read anything about the Mono controversy before. It was simply an “itch I wanted to scratch”. I was unhappy with Mono being in my desktop OS for non-technical and personal reasons. I tried removing it and found that it worked so I wrote a post on how to remove Mono from Hardy. What amazed me was the huge surge in traffic to my lowly blog and the number of comments it attracted. That was in August last year.

The fact is that there are many, many “users” of Linux who simply do not want Mono dependant applications to be included by default in their distribution of choice: Ubuntu. The opinion of developers that Mono is great – as Jo so eloquently says himself – in the end carries little or no weight with users:

Why Mono is desirable

That’s a question which depends on whom is being asked.

If you’re asking a user, then the answer is “it’s not”, any more than a Scheme compiler or LOLCODE interpreter.

If you’re asking a developer, then the answer is VERY different…

Mono clearly provides a useful and good tool for developers to [ahem] develop things, but there are many other less controversial solutions which are as independent from Microsoft as it is possible to be. Surely these should be chosen over a framework that carries so much baggage and ill-feeling? Fedora are moving in that direction and appear to be picking up users at Ubuntu’s expense.

In short, I strongly believe Mono and applications that depend on it should reside in Multiverse and not in Main.

Finally, I think this sums up what many feel about Mono (A re-phrase one of Steve Ballmer’s most famous quotes):

Linux Mono is a cancer that attaches itself in an intellectual property sense to everything it touches.”

A Little Bit of Fry and Richard

How good to see one of “us brits” over there…

BOSTON, Massachusetts, USA — Tuesday, September 2, 2008 — The GNU operating system is turning 25 this year, and the Free Software Foundation (FSF) has kicked off its month-long celebration of the anniversary by releasing “Happy Birthday to GNU,” a short film featuring the English humorist, actor, novelist and film maker Stephen Fry.

Fry on Free Software

This is a great introduction to Free Software – one that your mum, dad and other friends & relies can understand.

Stephen has generously donated his time to the cause of free software. His ability to communicate a technological and philosophical movement in terms of the basic principles of sharing and user freedom — ideas that everyone can understand — will introduce a new and broader audience to the benefits of free software,” said Matt Lee, an FSF campaigns manager and writer/producer of the film.

Go on – go and watch the film* and forward the link to anyone you can think of. You are also free to download the video (link to UK Mirror) and share and distribute it too under the terms of the Creative Commons Attribution-No Derivative Works 3.0 United States License.

* If you are one of those poor souls still using proprietary software, you might need to read this first. The video is encoded in Ogg, a free an un-patent encumbered format that is really free to use. Of course you could go and download a free operating system too and rid yourself of the shackles and chains which Stephen so eloquently describes.

How to remove Mono (M$) from Ubuntu Hardy Heron

I have had a long-time problem with Mono and the Mono-based applications that, for reasons I do not understand, come installed by default with Ubuntu.

For those who don’t know about it, Mono:

provides the necessary software to develop and run .NET client and server applications on Linux, Solaris, Mac OS X, Windows, and Unix.

That sounds pretty innocuous on the face of it. But Mono has a potentially fatal sting-in-the-tail for some, and leaves a rather nasty taste in the mouths of many others…

The potential sting is because Mono is developed and supported largely by Novell who are, as we all know so well, in a patent-protection deal with Microsoft. This caused a huge storm when they signed the deal – basically because it gave some “credence” to Ballmer’s “Linux/OSS breaches 235+ patents” line. So, it’s O.K. for Novell to do stuff that implements helps M$’s stuff because they have “protection” from being sued [yeah right – who really believes that one!]. But what about everyone else???

The nasty taste which has always ‘ever-so-slightly’ tainted my use of Ubuntu is that Mono is there only to support applications written in languages and for platforms which are basically Microsoft’s. It encourages software development using systems that are based on technologies almost certainly encumbered by a whole raft of M$ patents. To my mind, there are many great non M$ languages and architectures out there which are almost part-and-parcel of Linux programming and I see no need to bring .NET, ASP or even Visual Basic to my desktop. If I want to write an application, I could use PHP, Python, PERL, C, C++, Java and, of course, many others. Why do I need to endorse and encourage the proliferation of non-free software by relying on M$’s IP and the smell of their stinky patents?

Well, I figured I don’t. So, I thought I’d see what happened if I removed Mono from Ubuntu.

As a test I typed the following (but I didn’t accept the Y/n question before doing some further research):

sudo apt-get remove --purge mono-common

The following packages will be REMOVED
banshee f-spot libart2.0-cil libavahi1.0-cil libboo2.0-cil libflickrnet2.1.5-cil libgconf2.0-cil libglade2.0-cil
libglib2.0-cil libgmime2.2-cil libgnome-vfs2.0-cil libgnome2.0-cil libgtk2.0-cil libgtkhtml3.16-cil
libmono-addins-gui0.2-cil libmono-addins0.2-cil libmono-cairo1.0-cil libmono-cairo2.0-cil libmono-corlib1.0-cil
libmono-corlib2.0-cil libmono-data-tds1.0-cil libmono-data-tds2.0-cil libmono-security1.0-cil libmono-security2.0-cil
libmono-sharpzip0.84-cil libmono-sharpzip2.84-cil libmono-sqlite2.0-cil libmono-system-data1.0-cil
libmono-system-data2.0-cil libmono-system-web1.0-cil libmono-system-web2.0-cil libmono-system1.0-cil libmono-system2.0-cil
libmono-zeroconf1.0-cil libmono1.0-cil libmono2.0-cil libndesk-dbus-glib1.0-cil libndesk-dbus1.0-cil libtaglib2.0-cil
mono-common mono-gac mono-jit mono-runtime tomboy

This lot removes just three applications from Ubuntu 8.04: Tomboy, F-Spot and Banshee. And they aren’t exactly desktop behemoths either.

The long list of libraries and things that just might break something else looked pretty scary to simply accept without question. So I built a quick Ubuntu Hardy 8.04 VM using Virtualbox and tried it in there first. It seemed to be fine. Nothing else I tried broke. I rebooted the VM and tried loading several applications and it all worked as expected.

So here we go then; to get rid of Mono, Tomboy, Banshee and F-Spot, simply type the following.

sudo apt-get remove --purge mono-common libmono0

(The --purge switch removes the old packages from the package manager’s cache so you actually get the disk space freed up too)

Now I must confess to having used Tomboy in the past. But after a bit of research some time ago I found what I think is actually a better alternative called Zim. It is basically a desktop Wiki application:

Zim is a WYSIWYG text editor written in Gtk2-Perl which aims to bring the concept of a wiki to your desktop. Every page is saved as a text file with wiki markup. Pages can contain links to other pages, and are saved automatically. Creating a new page is as easy as linking to a non-existing page. Pages are ordered in a hierarchical structure that gives it the look and feel of an outliner. This tool is intended to keep track of TODO lists or to serve as a personal scratch book.

I have been using Zim for several months now and am very happy with it.

F-Spot is easily replaced by gthumb which, for me at least, does exactly the same thing: it gets photos from my camera.

I never used Banshee after looking at the UI once. I found Rhythmbox much more obvious and easy to use, and it is already installed as well.

So, to replace the 44 packages (and 3 apps) above with non-encumbered alternatives, simply type:

sudo apt-get install gthumb zim

Of course please check your own system before blindly following my instructions. I checked carefully before removing Mono to make sure nothing was going to break. I would recommend you do the same, and, of course, back up your Tomboy notes first 😉

What a difference a single letter makes…

I have just read this article on the Register and it makes me proud to be British!

A patent for the handling of gratuities in card payments has been revoked by the UK Intellectual Property Office (IPO) for being a business method implemented by a computer program. The decision follows recently-revised guidance on patentability.

One of the inventors told OUT-LAW today that his company spent more than £100,000 trying to enforce and defend the patent before passing the rights to another company, which he described as a “patent troll”. He believes that company will appeal this month’s ruling.

If you read the full story, there isn’t anything remotely “patentable” about this idea at all.

Their patent described a process of generating and handling an electronic online authorisation and uploading request relating to a payment transaction. The customer would be offered the chance to add a gratuity and a request for authorisation of the total would be constructed. A request would then be made over a telecoms network and a receipt generated for the customer.

Yes. That’s it. It’s an idea about how to charge for a tip and the main bill at the same time! Pretty new and innovative huh? Good grief… How on earth does anyone think this is patentable?

Patents are to protect INVENTIONS. That is new things, things that haven’t been thought of before or that are not just evolution to the status quo.

Over here we have some tests that a patent application must pass.

A landmark ruling in 2006 in the cases of Aerotel and Macrossan changed the way the UK-IPO assesses whether inventions are patentable. A new four-step test was introduced for the assessment of patentability:

  1. Properly construe the claim;
  2. Identify the actual contribution;
  3. Ask whether it falls solely within the excluded matter;
  4. Check whether the contribution is actually technical in nature.

Step 3 caused the patent to fall. The patent can cut fraud and enable gratuities to be paid by card at the same time as the principal sum; but the Hearing Officer wrote: “while they may be advantages of the invention, they are not achieved by technical means… They are achieved by changing the business process – i.e. changing the sequence of steps – in which the terminals are used. The claim is to how a business uses a known system.”

“The contribution falls squarely within the business method exclusion. It also falls within the computer program exclusion given its implementation by means of a computer program,” he concluded.

Ho hum. That sounds quite sensible to me. Although – as the title of this piece suggests – if you replace the K in UK with an S. Guess what? Yep. It’s protected by patent law.

There are some cracking comments on this post too. Well worth a read if you find the whole US/EU patent differences interesting. Especially when it comes to software and computing.

Next Page »