Wasting a CrowningMomentOfIToldYouSo

Last week, Skype has been having a bit of trouble; well, quite a bit of trouble. That’s the kind of trouble that make you very angry with your service provider, until you think twice and remember you’re probably not paying for it — at least, that’s what should happen for most people. Yes I know there are people who pay for Skype, but I’m pretty sure that most of those complaining, don’t; for a simple reason: if you’re paying for a service and such service does not work, you do not bitch on the net, you get to the customer care and demand your money back.

For whatever reason – which mostly relates to the human instinct for seeing conspiracies everywhere they can – people blamed Microsoft for it even though that is virtually impossible to be the cause, heck even the acquisition is not complete yet!

It would have been a good time to show users how relying on a proprietary, close-garden technology without any reliability assurance such as Skype is not the smartest business move. But no, a number of people, including some self-appointed Free Software advocates, preferred once again painting Microsoft as the Big Evil, the One True Ruler and so on. And nevermind if that means that Skype has always been a proprietary, closed, patented technology; it was good just because they made a Linux client! Alas.

Now, there possibly be another chance to get that crowning moment (geek points to those who guess where my title comes from): if Microsoft really were to drop support for Skype on platforms they don’t control. Right now you can use Skype on Windows, Linux, OS X, Android, iPhone, PSP (3000 and Go models only), Symbian, some TVs, a number of hardphones and so on. Rumours want Microsoft ready to cut down all these accesses to be the only ones controlling the technology. I’d expect otherwise.

While it is difficult to argue that Microsoft cares much about Linux (they definitely care more about OS X than they do Linux), it seems suicidal for Microsoft to take away the one feature that keeps most of the Skype users attached to it: omnipresence. Wherever you are, you have Skype, which is why even I keep on using it (even though I have a number of backup options). Microsoft seems to know what it means to be interoperable with Linux, from time to time, as it should be noted with them helping Novell working on Moonlight to have compatibility with Silverlight.

But facts shouldn’t get in the way of strong opinions when it comes to Microsoft, as people who should know better prefer to paint them as a single-minded, evil corporation, with the aggravating quality of being incompetent and suicidal. I’ll be clear here and say out loud that trying to paint Bill Gates as Elliot Carver is borderline insane.

First of all, trying to paint any corporation as single-minded shows that they never had to deal with one. In any relatively big company or project, not having multiple heads and directions would be impossible. This is why Microsoft can produce utter crap as well as decent stuff, fail badly or show off cool technology such as the Kinect. But again, you can’t even argue that they did a decent job at providing clear API for their XBox that you get painted as being on their payroll as they couldn’t possibly get anything right. Talk about echo-chambers, uh?

On the other hand, I don’t have any reason to expect Microsoft to do the obvious marketing move; there are a number of possible moves, and one might very well be to drop support for non-Microsoft platforms from the new version of their software, or at least of their protocol, as unlikely as I think it to be. Will that be bad for Linux or for Free Software? Only if we argue that losing the proprietary Skype client is bad — which we could only do if we also accepted that software might be proprietary; I do accept that, but the same advocates above doesn’t always sound that way.

What we could do instead is get ready for when Skype could collapse due to Microsoft’s action, and show that it is possible to have an alternative. But having an alternative does not mean merely trying to reverse engineer the protocol, means getting our act together and find a decent way to have videochat in Linux without going crazy — I haven’t tried pidgin in a while, but last time it didn’t let me configure neither the audio nor video input, which would get wrong.

While I know there are enough developers who are working on this, I also expect advocates, and their sites, wasting the chance of making good publicity for Free Software and instead prefer playing the blame game, as pictured above. Gotta love reality, uh?

Just accept it: truth Hurds

Okay the title is a very lame pun. But in this post I’d like to argument a bit more my reasons for not liking the Hurd project, at least in the way it is still being developed nowadays, which I announced on Identi.ca yesterday. This might sound quite strange coming from the guy who dedicated time and soul to Gentoo/FreeBSD.

First of all let’s put into context what Hurd is nowadays: it is not something viable, or usable. Twenty (20!) years after its original inception, Hurd is still nothing that you’d think of using on your desktop, or your server — nor should you, I guess. The class of operating system this belongs to is the same as Gentoo/FreeBSD, Debian’s GNU/kFreeBSD , Haiku, Plan9 and so on, a toy project. Or if you want to make it sound less childish, a research project, but I prefer the shorter version.

But while there are so many toy projects operating systems, I’m singling out Hurd, and there two main reasons for my feeling; they can be considered mostly personal, non-technical opinion, but I’ll stand by them.

First of all, most other toy systems have given us steady improvements in different areas; take Plan9 for instance: ten years older than Hurd, but recently Linux gained access to paravirtualized filesystems, based on what? On the Plan9 protocols. Good research going — even though it does seem tremendously silly when you look into it for the first time. And even though I was sceptic the first time I looked into it, GNU/kFreeBSD has probably made glibc a bit more … malleable.

But most importantly is that the whole Hurd project at the moment does not have any real technical reason to exist, it only has one huge symbolic value for the GNU project, beginning with the idea that “Linux is not the Free operating system”.. which I could accept if it wasn’t coming from the project sponsored by FSF. The same FSF that insists that you should not use any proprietary operating system, that you should only and always use Free software and so on so forth.

Is Hurd the example of Free Software people should use? Do they insist on their argument even when it is totally, technically, unsound? I’m afraid some of the people in the FSF do. Luckily, FSF is not just those, and there are numbers of reasonable, hard-working and capable people. Which is why even I have signed copyright assignments to FSF with a bit of rant attached), and why I try to contribute to GnuPG when I can (given I use it).

Once again, though, what’s the problem if a bunch of elitist developers feel like working on a toy system? It really isn’t something new; heck Plan9 is, as far as I can tell, mostly developed for that. With a few difference: most of the people I saw involved with Plan9 are also involved in the suckless projects (and I rarely, if at all, agree with the premises of such projects), and they definitely are not very interested in making more users for any software at all, so their approach is well suited to their goals, not so for the GNU people, but oh well.

The problem I have, with actually any toy project, is with the people who keep insisting to find philosophical reasons to show others why their project is really, very, so much important. It happens (awfully often on Identi.ca) with both Plan9 but, more often lately, with Hurd. And when I do show my disagreement, I usually end up flooded with defences of said projects (“they don’t bother you”, “everybody should keep using what they prefer”, … sure of course — then why can’t I voice my personal opinion?).

This brings me with categorizing most of the people involved in toy project (or actually, any project — with mainstream projects it is a bit more shady to go from one category to the other) in three categories: the silent doers, the vocal doers, and the advocates.

For the silent doers, those who know they are working on a toy project and have no expectancy for people to consider it “important for the greater good”, I have fondness: you go with it and try to get something good out of it — I have done something like that with G/FreeBSD: Gentoo has had libarchive (bsdtar) from way before it went mainstream as a dependency of GNOME and KDE.

I’m a bit more polemic with the vocal doers: sure, you’re entitled to advertise your choice, no way I’m going to argue against it; but I’ll also not refrain from stating my disagreement. That shouldn’t be a problem, no? And I’m sorry, but I’m also not going to generally be convinced by your reasons to keep developing. It’s not a lack of respect, and I’m sorry if you feel this way, but… I don’t really care. If you want to show me something, show me technical reason why your work could be important to me, or to others, but technical.

But please, spare me the advocates. They talk just too much (after a passing reference to Hurd I get three, continued messages, trying to argue for it? I’m going to be a bit disappointed — I reply and I get another three? I’m seriously cranky), and of the wrong arguments. I really don’t care about the philosophy of a subproject. I subscribe to the basic philosophy of Free and Open Source Software, and I maintain that it can be technically superior if the project accepts that proprietary software can (and usually enough does) have better technical aspects. Survival of the fittest, for me, is happening only in technical terms.

Clear enough now?