Archive for the 'Free Software' Category

Even John thinks it’s wrong

John Gruber has become something of an Apple apologist over the last couple of years. His blog used to be pretty interesting, but it kind of morphed over the period of a year into a series of rants about basically how anyone who didn’t like Apple was deluded in one way or another.

A lot of us don’t like Apple’s approach under Steve Jobs. The products are uber shiny, but it’s just the same trap Gates cooked up for us 15 years ago, with a similar pitch. Back then Windows looked pretty good too, remember. It wasn’t brushed aluminium, but it had a whole 16 colours!

The deal is one that short sighted companies supplying almost anything will try and offer – lock-in. Lock-in is a well known issue in the IT industry, and in my day job it’s something we have to address with our customers in every pitch.

Lock-in describes a situation where a customer loses the ability to change supplier, because the supplier has a proprietary hold on them somehow. In my business the risk is generally that we deliver something nobody else can easily understand, but in other businesses it can be introduced in all sorts of ways.

I honestly believe lock-in is bad for both parties to a contract eventually. It is clearly bad for a customer to give up their control over their own property, and for a supplier it encourages lazy, inwardly-directed thinking that ultimately makes their products suck. c.f. Microsoft.

Apple are being creative in their approach to lock-in. Buy an iPod, and you can only really use it with iTunes. Install iTunes, and lo here’s a music store with DRMed music that you will never be able to move to another manufacturers player. Clunk, click, you’re locked-in. You shell out 500 quid on records from the Apple music store, and for the rest of your life you have no choice of music player – pick another supplier and you lose your entire music library.

That’s pretty much par for the course for a lot of companies these days – many of them feel that’s fair business tactics. Apple have gone further with the iPhone though. It’s not just your music that’s locked down, but any applications you can run. If you are happy with Apple becoming your own personal Sky Daddy then that’s fine. But the odd one of us weirdos thinks that maybe at some point in the far distant future we might actually want to be able to control our own property. Just in case, you know?

Apple have almost immediately shown their true colours with their control over the iPhone Appstore with their decision to remove a piece of software because it competes with their own products. And yes, even John thinks it’s wrong. Which shows just how bad it really is.

The nerve Apple have here is far beyond Microsoft’s wildest dreams. For all their unfair business practices and shoddy code, Microsoft have maintained a neutral platform on the whole. Sure they hid some APIs and agressively bought and then killed competitors, but Windows is a thriving ecosystem with real software on it. Just imagine if Microsoft plain denied WordPerfect because they’d decided to release MSWord. Dear me.

So please, dear reader, remember that whilst a benevolent dictatorship might seem very efficient it can turn sour very, very quickly. And if you really want to keep control over your own life, choose Free Software.

Free as in…

He means free as in hairy naked hippies frolicking across the meadow, not free as in stealing a Faberge egg from a museum by executing an implausibly complex plan involving a variety of non-existent high-tech gadgets.

– Anonymous Coward, Slashdot

Risks of Open Source Software

This article on Computer Business is an interesting review of the state of Open Source use in large corporates.

The most interesting part I think is this:

…’Why is open source seen as risky?’ The answers were very consistent.

The answers included the fact that legal and purchasing processes made it difficult to acquire open source software…

So this means that companies don’t want to use Open Source because They find it difficult to purchase!. Unsurprising really, since almost all open source software is free. There is generally nobody to buy it from, and no cost involved.

So there are engineers out there who want to use free software, but the beancounters won’t let them because it doesn’t cost anything! Bizarre? certainly. Quite plausible too, from the corporates I’ve seen.

Any organisation so inflexible that it is unable to deal with this really deserves a good spanking. That is feeble. However, in a once in a lifetime offer, if anyone out there would like to purchase some free software, My company will be happy to sell it to you, for only £50 per CD, for the effort in packaging it.

New Free Software Project…

I’m involved in a rather exciting looking new free software project, using my shopping list de jour of fun tech: Twisted, Nevow, Atop, with a heavy dose of zope.interface and pyparsing too.

Watch this space for more information, we beta in November…

Butt-Covering vs Productivity

There has been a lot of debate about whether Free Software is better or worse than proprietary software, or indeed as to whether the freeness of software is orthogonal to quality. Eric Raymond’s famous claim in The Cathedral and The Bazaar is that “many eyeballs squash bugs” – that a large educated user population with source access contributes to code quality.

Personally I think he’s missing the point – Free Software is better than proprietary software, but it is because of the emergent properties of the processes used by the development team, not because of anything inherent in freeness. The practices that emerge from a disparate developer team without formal leadership are those that naturally ‘work’.

Here are some practices that I think are good examples:

  • Design Review: all designs are open to argument by anyone. No centrally appointed “architect”.
  • No Code Ownership: it is common practice in proprietary development for classes to be “owned” by their author, and others are loathe even to look at them, let alone make changes to them. This is often caused by…
  • Source Code Control Discipline: propertiary projects often have no SCC at all amazingly, or they use it just like a file system, without using the branching, merging and logging facilities.
  • Code Talks: no complex UML design tools to communicate ideas – even the most illustrious team members are expected to put together prototypes when they’ve got a new idea.

Some of these processes are prevalent in corporates, but they generally use them not because they actually wish to improve quality. What happens is that a project goes badly wrong, and costs a fortune. There is a huge blamefest. Someone senior proclaims that Something Must Be Done.

More junior management are under pressure to fix whatever went wrong. However, they probably don’t understand what went wrong. Software projects are Hard. Sometimes the proejct was never, ever going to work anyway – the real brief was impossible. That is not a conclusion anyone will willingly come to. The idea that risk is inherent in these projects so sometimes you pay the price is anathema to management.

They latch onto the primary tool of management: Process. Process is an excellent tool to solve some problems. Unfortunately, the problems that make software projects go wrong are not those kind of problems. Since nobody understands what went wrong, the process implementation quickly becomes an exercise in avoiding blame.

On the surface, the techniques used sometimes even resemble those effective ones I listed above – Source Code Control for example is an obvious good move. However, when the purpose for using it is to avoid blame, it becomes an obstacle rather than an aid. Things like permissions and locking become the emphasis, things that are entirely unrelated to making good code.

So Winter’s First Law: Any Process Introduced Purely For The Purpose of Butt-Covering Will Have an Adverse Effect on Quality.

Wikipedia

A long pause, lots of stuff has been happening both at work and at home. I’m also going to get some proper tech for this blog up and running!

Right, a marvellous href="http://interviews.slashdot.org/interviews/04/07/28/1351230.shtml?tid=146&tid=95&tid=11">Interview
with the founder of Wikipedia. He
really understands how the whole free thing works, and he’s proved it with
one of the most impressive achievements on the Internet. It’s great to see
the principles of free software applied to other fields of endeavour.

Software Patents

There’s a vote in the EU Council of Ministers tomorrow about changes to
European Patent law. A bunch of vested interests and clueless EU types want
to introduce Software Patents, thereby allowing great big companies to make
even larger profits, whilst royally stuffing smaller companies, individuals and
free software developers.

Of course they dress it up in the same old language they always do, but
that is pretty much the size of it. An initial proposal was put together
by an EU committee. This proposed to make software patentable with no
limits (it currently isn’t, there is a specific exemption for software from
being patented right now). The EU Parliament in a sudden vicious attack of
democracy, that I think surprised even itself, slew this proposal wholesale.

Those who support the bill went all quiet for a while, and are now
introducing it virtually unchanged to the EU Council of Ministers, ignoring
all of the amendments from the European Parliament. Originally this was
listed as being accepted ‘without debate’ tomorrow, but intense lobbying
and some very good press briefing has led a number of EU Governments to
decide they want to debate the bill. There is still every chance that it
will be passed though.

I find the whole business rather surprising myself. Both sides of the
argument have been firmly colonised by vested interests – huge
megacorporates who see monopoly rents as a new and profitable line of
business, and smaller independent coders who want the freedom to write
whatever they want.

What doesn’t seem to have been shown by any of the actual legislators is
any attention to the rest of society – what kind of society they wish to
construct. The entire business has resembled the US model of pork-barrel
government, something that doesn’t happen nearly to the same extent here in
the UK.

Debian and Duelling Banjos

Debian produce a community-supported
Linux distribution. It’s a very good one, in fact, although that is
tangential to this. Long long ago, for some reason that never became very
clear, href="http://lists.debian.org/debian-devel/2000/07/msg00206.html">someone
emailed their developer list (debian-devel) and asked for some sheet music
for “Duelling Banjos”.

Why they did this is lost in the mists of time. However, Duelling
Banjos Sheet Music was not a very common request, and so google decided
that in fact debian and duelling banjos were somehow related. A few months
later, href="http://lists.debian.org/debian-devel/2000/12/msg02427.html">someone
else emailed debian-devel asking for Duelling Banjos. This confused
the Debian developers, but that was about it.

However, Debian and Duelling Banjos were now inextricably linked in the
mind of google. Google being the font of all knowledge, that was it.
suddenly
everyone
was
after
duelling
banjos
music!

Of course, I am just making this worse by posting this. And I don’t
even know what a Duelling Banjo is, or why one might want one.

Forgent Sues over JPEG Patent

Story at wired.com.

This kind of thing (a submarine patent) is so anti-competitive, and so
clearly harmful to everyone, that it completely and permanently amazes me
that it has the support of so many people who claim to be ‘friends of
business’. Including the current incumbents of the White House and Downing
Street. The problem is that the lawyers and losers who inhabit these
places wouldn’t know a business if it smacked them in the face.