Wednesday, January 27, 2010

The free software way

Red Hat just opened a new community-driven forum,, to discuss open source software issues. An interesting article posted there is The Free Software Way by Richard Fontana, who you may recognize as a co-author of the GNU GPL version 3.

Richard talks about "open source" from a legal point of view, which seems appropriate as he was Counsel at the Software Freedom Law Center, and is now Open Source Licensing and Patent Counsel at Red Hat.

The most important part of his post is this:
To me, then, open source is not a development methodology, let alone a distillation of broadly-applicable principles seen as underlying such a methodology. Rather, open source is a specific legal model of property rights transfer. To put it differently, open source is about freedom to use, modify, and share creative material that could otherwise be severely legally restricted by the author. (Source code availability is relevant because otherwise the freedom of modification would be practically impossible to exercise.)
Read his article for yourself. What do you think?

Monday, January 25, 2010

Going completely open source

I'm pleased to bring you this story: A New Zealand high school converted entirely to an open source software platform, both server and desktop. By doing so, the school has slashed its server requirements by a factor of about 50 - despite a government deal that effectively mandates Microsoft software in all schools.

This was a bold move, since (as we too often see, unfortunately) a national contract with the government means Microsoft gets paid anyway, even though the school doesn't run any Microsoft software.

The school runs Ubuntu on the desktop, and Mandriva on 4 servers: firewall, storage, and 2 virtual host servers (KVM). They also use Mandriva Directory Server to manage the school's LDAP directory, OpenOffice and Google Docs for documents, Moodle for education, Mahara for student portfolios, etc.

Good job!

Saturday, January 23, 2010

Microsoft knew of flaw in September

Remember all the recent fuss about the critical flaw in IE that led to the attacks against Google? At the time, it seemed to be just another example of buggy IE. But it was important enough for Microsoft to step up its patch cycle, and release an emergency fix.

Turns out, Microsoft knew about the vulnerability since September.

Microsoft security program manager Jerry Bryant wrote in a blog posting this week:
When the attack discussed in Security Advisory 979352 was first brought to our attention on Jan 11, we quickly released an advisory for customers three days later. As part of that investigation, we also determined that the vulnerability was the same as a vulnerability responsibly reported to us and confirmed in early September.
(Emphasis mine.)

So this critical security issue was reported to Microsoft 4 months ago, but sat on it. Microsoft says they originally intended to release the fix in February, and only moved it up because of the attack on Google. Giving Microsoft the benefit of the doubt on that one, that means the bug would have sat exposed, unaddressed for 5 months, waiting for an attacker to use it. Which they eventually did.

To compare, Free / open source software has bugs too. Sure, some open source projects may have certain bugs sitting in them for months before someone gets around to them. To be fair, though, critical bugs (like security) get fixed pretty damn fast in F/OSS.

I think I found another reason to recommend Linux.

Monday, January 18, 2010

Command not found

Most of the time, I try to live within the Linux GUI, so I can write about the experiences that any average user will have when they first try out Linux. But I've mentioned before that my background is UNIX systems administration - although now I'm in management. Still, I sometimes like to do some things at the command line, just to remind myself that I still can.

If you also like to work at the command line, you'll be interested to know about a feature in Linux that's just for you: "Command not found".

That's right, it's a feature now! But rather than just blandly tell you that your command isn't installed, Linux gives you the option to install that program.

Think of it this way: when you type a search into Google, but mis-type your query, Google recognizes that you probably meant to type something else. Google gives you a link to try your search again, with the correct text. That's pretty much what happens here - Linux recognizes that your command doesn't exist, and (after finding what you were trying to do) offers to install the right package.

For example, let's say you are at the command line, and you want to resize a digital photo to be more appropriate for displaying on a web site. So you type the "convert" command, part of ImageMagick. But your system wasn't installed with ImageMagick on it. You briefly see a "Command not found" message, then after a moment Linux asks if you want to install the ImageMagick package on your system. Answer yes, the package gets installed, and your command continues as though nothing happened.

This only works at the command line, of course. And it doesn't happen when running a script - if you mistype a command in a script, you'll get the "Command not found" message, and nothing gets installed.

This feature is provided by PackageKit-command-not-found, part of PackageKit, so standard PackageKit rules apply.

Maybe you don't want this behavior on your Linux system? Feel free to uninstall the package, and that feature just goes away. To uninstall, just go into System - Administration - Add/Remove Software, and remove the PackageKit-command-not-found package.

Thursday, January 14, 2010

Printing is offline

Here's an interesting problem that I've recently experienced on Windows. Let me tell you my story:

At work, I have a little desktop USB Canon inkjet printer connected to my laptop, which I primarily use to print quick items like an agenda for a meeting I'm in. For big print jobs, I have a Windows print queue definition that points to the network HP laserjet printer in our office.

One day when printing to the local printer, Windows warned me that one of my color ink cartridges was running low. Ever the lazy person, I just clicked the "print in greyscale" box whenever I printed to the local printer.

Eventually, my black ink cartridge ran empty. About to go on vacation for the holidays, I didn't order a replacement, and just printed everything to the laser printer.

When I got back to the office, I figured there wasn't a point in keeping the local inkjet printer powered on if I wasn't going to print to it, so I turned it off. The next morning, I wasn't able to print to our network printer. That meant I couldn't print anything! Every time I tried to print, Windows said the printer was "offline". Ouch!

If you can see the problem, you are smarter than I am.

Through many iterations of experiments, I've determined the following:
  1. If the local printer is off when I boot Windows, the network printer appears to be "offline".
  2. If the local printer is on when I boot Windows, I can print to the network printer.
I'd love to have someone explain this to me!

Why does Windows seem to care about the local printer, when trying to print to the network printer? Linux doesn't care about these things. These printers are defined on different queues - or at least, Linux puts different printers on different queues. I assume Windows does that. Does Windows do some kind of weird print-fu where the local printer matters, even when printing to a network printer?

I guess I'll have to unplug the USB cable to the local printer until I get a new ink cartridge ...

Saturday, January 9, 2010

There's a problem on your computer

..but Windows doesn't tell you about it.

Whenever I boot my laptop with Linux (using my USB flash drive) I get this interesting warning message on my desktop:

I suppose the laptop's internal hard drive is due to fail any time now, taking all my work with it. (Fortunately I save all my work on our file server, and keep my email on the mail server, so I'm not likely to lose much of anything.)

But thanks to Linux, I do know that the hard drive is reporting health problems. So if this were my own system, I'd make sure my backups were up to date, and start shopping around for a replacement hard drive.

I find it interesting that I've never seen a similar hard drive warning message under Windows. I've discussed before that I can only compare the default behaviour between Windows and Linux. Maybe Windows saves this warning to a log file, instead of showing it to me? I wouldn't know. I also wouldn't know that my laptop's hard drive is going to die soon.

I think a real strength behind Linux, and any open source software system, is that it's driven by real people - not corporate entities. As a result, Linux and other open source software works in a way useful to real people. It just makes sense that a desktop environment would alert me when my hard drive is due to fail. Thanks!

Similarly, my wife's laptop - also running Linux - is over 5 years old now. The battery no longer holds a full charge anymore. So when she logs in, Linux warns her that her battery may be broken. Except I think she has the option to disable the battery level warning, but prefers not to. The message tells her what is her maximum battery capacity, and she decided we'll replace the laptop when the battery reaches a certain level. (And that's coming soon.)