Pigsflew.com Realization of a Dream

25Sep/070

Linux for Human Beings

Don Reisinger of CNet News.com wrote an article appearing on Slashdot today that talks about linux and its place in the consumer market. He illustrates a dichotomy between two different types of linux developers, but his conclusions are off-base.

According to Reisinger, linux has either three directions from here: 1. Become super user-friendly at the expense of the tweakability and under-the-hood capacity of linux, 2. go back to "linux' roots" and follow Linus Torvalds, or (and here I quote) 3. "face a "civil war" that could lead to total Linux annihilation."

I'd like to present something to you. In the good old days of the Microsoft world, we had MSDOS, a relabeled version of the "Quick and Dirty Operating System", QDOS. In this world, everything was configurable. You could do anything you wanted. Unfortunately, because doing anything complicated took too many steps, people didn't often do much. This is why they developed (following Apple), Windows. Now Windows didn't do much, but what it did do was easier and more honed to human beings than was the command prompt.

Windows took a step further from that with WinXP and Vista, wherein the command prompt, while still there, is crippled to the point of being barely usable.

On the other hand, Apple's newest, OSX, is a BSD-derivative operating system, and while it has a fully functional and exceptionally usable GUI, it also has a complete shell available to the user, with approximately all the tools from Linux/BSD available.

This "civil war" Reisinger presents is a fear that's ungrounded. I am an Ubuntu user. This is because the simple tasks that I perform on a daily basis, as well as the setup tasks that prepare the machine to meet my standards, are made extremely easy for me, and with minimal interference. It's important to me that the terminal remain always available to me, that I can still write and run bash scripts, that, when it's faster to do so, I can still fire up a shell.

But I shouldn't be forced to.

This is where the dichotomy becomes entirely flawed. There is nothing that says an operating system can not be both oriented toward usability, and fundamentally malleable. A person should be able to fire up an application and have it, within reasonable tolerances, do what he or she expects. This is a mark of a conscientious programmer; any code which is not designed with, or with the ability to have, a GUI attached should be viewed as nearly wasted code.

Linux' roots are the same place that any other operating system's roots are: a collection of applications and machine code which enables the user to utilize the capabilities of the machine. An operating system which does not do this is an unfinished operating system.

Unlike any other operating system, we can keep working together to finish Linux.

I want other people to use Ubuntu. I've been putting up posters, wearing stickers, giving out burned copies, telling people about it, I've been evangelizing this because as an OS, Ubuntu is almost finished. It's friendly, it's usable, and I don't have to hold a newcomer's hand quite as hard to get them into it. It's not about money, because I can't, don't, and won't ask for any--and I don't think Canonical ever will either.

What I want is users. I want a whole boatload of us. I want enough of us out there that choose Linux over non-*nix that open source libraries start getting used to reach us. I want games designed by corporations in OpenGL2, rather than DirectX. I want applications to be released using Mono instead of .Net; I want these things to happen so that anyone, anywhere, on any operating system--Even Windows!--can use everyone else's software. And that's only plausible if we get attention.

So I applaud Mozilla for providing the best cross-platform browser and email client, Canonical for the easiest Linux distribution, HP for their open printer drivers, System76 and Dell for providing preinstalled machines, Blizzard for already releasing OpenGL games (like World of Warcraft), and all other companies that stand behind the choice of the user.

Filed under: Geekdom No Comments
12Jun/070

The Bittersweet Hypothesis

Bittersweet Symphony

A song by The Verve, with a fairly large sample from an orchestral song by the Rolling Stones, this song was in the end the Verve's downfall, as they can no longer play it without the Mick Jagger's permission.

The song is most notable for the Bittersweet Hypothesis, outlined below. The phenomenon was noted by the University of Awesome's own Professor Adrian during his research on Jesus' iPod

The Bittersweet Hypothesis

The hypothesis states that, for all music players, as the time of ownership of said music player increases, the probability of that player containing The Verve's Bittersweet Symphony approaches one.

Bittersweet Hypothesis
Exhibit A: Topical graph outlining the basis of the hypothesis

Supporting Evidence

  1. If you have a music playing device, take it out.
  2. Turn it on and look for Bittersweet Symphony.
  3. If it's there, I told you so.
  4. If it isn't, it'll probably be there soon. Also, you're an outlying data point.

Consequences

The consequences of the Bittersweet Hypothesis are dire. The most important one is that this song may cause severe clogging of the tubes.

There are over 7 billion people in the world. if one in 20 people have portable music devices, that makes 350 million such devices. Each one will in all probability eventually cause a download of Bittersweet Symphony, which is approximately 4 MB, or megabytes, or million bytes. This turns into 1.4 Billion megabytes, or 1400 Terabytes of the same song repeated over and over. Now, remember that for most portable devices, the song is also repeated on a personal computer, doubling the number to 2800 TB of the Bittersweet Symphony.

Just for good measure, that number is roughly 2,800,000,000,000,000 Bytes, which are 8 bits each, 11,200,000,000,000,000 bits (Eleven thousand two hundred million bajillion infinity).

Solutions

Several solutions have been proposed to resolve this issue. One is to create a central data center to store a single copy of the 4 MB file, and then every music playing device would have to stream it from there, but unfortunately this does not resolve the problem of clogging the tubes, it only reduces the places it ends up stored.

According to Joshua, the supercomputer from War Games, it is "an interesting game. The only winning move is not to play." It has been suggested that the song be banned from the tubes in order to protect them from this magnitude of clogging.

Filed under: Geekdom, Personal No Comments
20Feb/070

The Charm of Disintegration

Let's start with one thing: I'm a linux user. That doesn't mean I approve of the open source world all the time, in fact in a lot of ways this community can be petty, stupid, and sheeplike, just like any other set of end-users. I was, and I suppose, am still a Windows user, but again I don't like everything about them. And while I adore the look of Mac OS X, I've tried (very hard, I might add) to like the way it works, but some things just require too many precise clicks (read: resizing and positioning windows), so I am not a mac user.

That said, lets talk about the application designs in these systems. In Windows, it seems that everything is about integration. We have a mail application--oh wait, no, it's also a calendar, and a contact management system. In fact, if we're Netscape, let's go ahead and throw an html editor and a browser in there for good measure. They have a file browser that also understands HTML, CSS, Javascript, embedded applets, and of course the dreaded ActiveX, which allows a "trusted" web site (say, microsoftupdate.com) to modify your operating system.

This is not a bad thing, it's a frame of mind called "Integration" that is fairly pervasive in both the Windows world, and the Open Source world. For a linux/OSS example, Ximian Evolution is in fact almost an exact one-to-one equivalent of Microsoft Outlook. They had the Mozilla Suite, which was effectively exactly what Netscape was. KDE's Konqueror Browser is every bit as stupid as Microsoft for throwing an integral operating system piece -- the file browser -- at the unpredictable internet.

But OSX has something new, something everybody is quickly realizing is a good idea, and something other companies have been reproducing ad nauseum to varying effect: Widgets. The widget is a small program that does exactly one thing, but when doing that one thing it runs like the wind.

Why is this good? Let me explain the concept of Disintegration. If I want to browse the internet, I open firefox, not because it's the greatest web browser ever, but because it's just a web browser. It opens quickly, and if something on the internet breaks it, Oh no! I might have to reinstall it. Nothing else can be easily affected by its failure. The fact is, I don't want to wait for my email server before I can quickly add a new homework assignment to my Gnome Calendar, because I'm forced to use Ximian Evolution to update it.

OSX doesn't only do this in widgets, it separates everything. Mac Mail is a mail client, nothing more. iCal is a calendar, with no nonsense. Safari is a web browser that does one thing extremely well. Why can't we learn from them? All of these programs are light, fast, and do exactly what you want without doing anything you don't: I'll tell my computer if I want my mail. Right now all I want is my calendar.

Integration is okay when it's modularly integrated. An application that works with another application to use data from it is a good idea. An application that shares libraries in order to access common information from the Operating System is a good idea. But a single application that controls everything is not.

Let me finish with a cry for help: Ximian Evolution sucks. I want Gnome-calendar to let me update those extremely useful calendar views on the system clock without it. Pretty please?

Filed under: Geekdom, Personal No Comments