Site of the Week: CosmicOS

What do you use when you need to initiate first contact with intelligent life-forms? An Open Source Contact Message of course!

Logic gates and Simple Expressions giving birth to a universal language

Logic gates and Simple Expressions. Giving birth to a universal language

If ET is listening out there, then this is probably the code to use to communicate. Nothing says “hello” like inviting them over to conquer us that much quicker, eh?

The language was actually inspired by Lincos by Hans Freudenthal and Carl Sagan’s Contact.

Linux *does* suck…

But not in the way and/or for the reasons you may think. Of course this is all strictly personal opinion and may not reflect any others using the software bundle.

Why does it suck?

There’s a culture of accepting something that’s “good enough” in the Linux world and this really doesn’t sit well with me. Especially since I know many of the developers involved wouldn’t tolerate the same acceptance in other projects/fields. There’s a reluctance to take a step back and ask “is this good or just ‘good enough'”. 

Above all else, there’s a severe aversion to the question : “Does it suck?”
There’s no reason to fear or hate this question irrespective of how much time and effort went into it. An honest answer can only make it better.

It’s never “good enough”. It should never be “good enough”, and if it ever seems to reach the “good enough” stage, you’re not working on it hard enough or you’ve overlooked something.

If it was just a matter of eye-candy, I wouldn’t even be making this post. What I’m after is much, much more in terms of usability and intuitiveness. For starters, there are things that need to be tweaked, adjusted, monitored, or otherwise involve some kind of user intervention (even if it’s just once during setup). Not much, but just enough to ensure fatigue for new adopters. It’s that initial hurdle that feels like Everest for grandma.

Actual productivity will arrive a bit later as familiarity sets in.

So what is it that I want?

Linux needs to suck less than Windows, in terms of usability and intuitiveness. And, possibly, suck on par with Mac.
(Welcome to my brain.)

If I truly had my way, I would go with a LFS distro of my own, but I don’t think that will be solving the problem for everyone else. Or even make everyone else understand that there is a legitimate problem (that is also part of a specific mindset as well as a technical hurdle). I’ll get exactly what I want, but there would be no way for me to maintain it for other systems or produce something production quality for everyone else on my own. Even worse, I would be repeating the same efforts carried out by thousands elsewhere.

Not a whole new distro

That’s already been done before and all it does is fragment the Open Source community. And what many developers seem to overlook is that they’re violating their own DRY (Don’t Repeat Yourself) paradigm whenever they embark on such a project. If you emphasise this in your code, then why violate it in spirit by embarking on a whole new distro to solve the same problems?

If you stop spending time on competing efforts (yes, even if you do share code, you are competing) and cooperating instead, a vast majority of these issues would have been solved already. What we need now is a layer or overlay on the platform to provide the additional usability.

I can understand, and do appreciate, that the majority of development going into Linux distros come from volunteers. Perhaps because of that, I almost get the feeling that the majority of development is carried out by tired day labourers. Often the responses to criticism do present an aura of frustration with, not only with the complaints and those who make them, but themselves as well.

There’s never enough time, never enough resources and never enough manpower to fix “every little problem specific to one user”. Well for every one user that complains, chances are there are a dozen others that silently reject the entire platform. That’s the real shame and it’s all the more reason to not repeat the same efforts and waste those precious resources.

Debian is already there… Just work from there.

Debian is the past, present and future of Linux

What basically amounts to the Swiss Army Knife of operating systems, I believe the project has truly earned the title “Universal Operating System”.

I’ve yet to come across any other distribution that is as stable, as secure and as easy to customise as Debian right out of the box. It’s no wonder why so many other developers have chosen it as a base system to launch their own distros.

It’s usually Debian in a skirt or Debian in a pair of pants or Debian nude…

The problem with Debian, again, is that it’s just “good enough” when it comes to most things related to user interactivity.  And I’m not even talking about the bleeding edge stuff. Everything else is rock solid, but that’s just the nagging point. You can get the system to do almost anything your heart desires, but you have to work at it.

To me, this is unacceptable because I know it doesn’t have to be that way.

Ubuntu, which is really Debian in a mini-skirt, gets the cake for trying hard in this area, but there are things to be improved. Mint, which is basically Ubuntu all dressed up (Debian in a mini-skirt + tiara and makeup) gets further along the way, but is still not quite up there.

In the opposite end of the spectrum is DSL (Damn Small Linux) which is basically Debian nude.

OpenBox, the saviour of Linux

This isn’t as strange as it sounds. There’s a great deal of flexibility and power in this deceptively simple software package, if only we bother to look a bit deeper.

OB is far more efficient when it comes to horsepower management (CPU, Memory, Graphics etc…) and incredibly flexibile in customisability. I don’t believe there are other window managers that quite match OB when it comes to balancing appearance and efficiency with performance and productivity. This is the ideal foundation to start any usability improvement project.

Linux needs friends in gaming & hardware

Hard-drive manufacturers and high-speed Internet service providers owe a word of thanks to the porn industry.

Likewise, Windows owes a great deal (and is owed a great deal) to the gaming, devices and hardware industry. The vast majority of drivers, API’s are specifically tailored for Windows and plastered as an after thought for Linux. Which would explain why detection is less of an issue on Windows (at least in XP).

Even Dell’s half-hearted dip into Open Source should be exploited, if it will yield results. Do you want “it just works” functionality on Linux with devices and hardware? Well, you can’t go to bed with the devil with having sex. This is no time to be prudish, so take off those knickers and get comfortable with the idea that you will be confronting and cooperating with the corporate world. Sometimes, that will mean proprietary drivers etc… Other times, a heart to heart conversation that may sway the argument in your direction.

The point is, don’t completely rule it out on ideological grounds.

Don’t repeat the same efforts.
Start with Debian.
Work on OpenBox.
Then improve the heck out of both of them.

I mean the the whole gambit of utilities, drivers, devices, interface, usability, environment, installation… everything.

This, I believe, is the path to a Linux platform that doesn’t suck.