J-F Bilodeau's Blog @ chronogears.com

Wednesday, June 17, 2009

BSOD(roid)

I published my first Google Android application today: BSOD(roid). The application is an adaptation of the BSOD XScreenSaver hack that simulates crashes from various operating systems. I've squeezed in 20 crashes for about a dozen operating system. If you have an Android phone, please give it a try! It's free and licensed under the GNU GPL.

BSOD(roid) Menu
Windows 3.1 BSOD


Get Application
Source code

Positive reviews!

Labels: , , , ,

Thursday, December 11, 2008

The State of the Operating System Market

Here's exiting news. For the first time in 15 years, the Windows market share fell below 90%. On the upswing is Mac OS X with 8.87% of the market, and Linux at 0.83%. Source

These numbers are important for a number of reasons. For starters, Microsoft is gradually loosing it's grasp on the operating system market. Apple is doing a fantastic job of nipping Microsoft's monopoly.

As for Linux, you may noticed that it enjoyed 0.93% market share in August. I suspect this has been due to the release of UMPCs like th Eee PC. As the fad cooled down, chances are the sales cooled down as well. However, while visiting Future Shop on the weekend, I saw five UMPC with two of them running Linux. That's a 40% market share for Linux just there ;). As I predicted earlier, the rise of cheap computers will continue to hurt Microsoft as they are struggling to compete against free and open operating systems.

To put the numbers in perspective, here's a little report I put together with my trusty OpenOffice Calc:


A couple of interesting trends to notice.

Windows has been steadily loosing ground. This year alone, they've lost 2% of their market share. The year before that, 1.94%. Ouch! I can see why Microsoft was in a rush to deliver Vista. They needed something to help them regain the ground that they are loosing to other operating systems.

Apple has more than double their market presence over nearly five years. I personally attribute this to Mac OS X and Steve Job's marketing genius. Mac OS X is a true Unix operating system with a gorgeous interface slapped on top of it. This means that newcomers to computer have a system which is simple and inviting, while power-users have a solid Unix machine to hack. Personally, I feel that this has been a stroke of genius on Apple's part. Instead of re-inventing the wheel, or adopting Windows, they took advantage of FLOSS to custom build a rapidly growing operating system that is leaving Windows in the dust.

Linux is still barely a blip on the radar, but is still growing. Between this year and last year, Linux enjoyed a growth of 30%. I feel that this is important, since Linux is already well established on the server, but is struggling to gain traction on the desktop. I'm of the opinion that this increase is due to the UMPC explosion earlier this year. Linux is slowly by steadily spreading to the desktop.

What remains to be seen is how next year will play out. Windows 7 is due out in mid 2009, and sounds like Microsoft may actually get this one right. I don't expect to see the same level of anticipation as there was with Vista, since Windows 7 sounds like the Windows Vista that customers where expecting to get in the first place.

Linux has definitely penetrated the market. It is becoming more and more of a household term but retains a mythical aura. It has become one of those buzzwords that folks like to throw in conversation.

I'm a very poor prophet of the future, but I would like to predict some exciting movements next year. I believe that Mac OS X will continue to climb. I suspect that Linux may drop a bit, now that the UMPC buzz is dying down. Windows may regains some of it's share. I would even go so far as saying that Windows' market share will remain stable next year — that is, no significant drop or rise.

However, in the years to come, as cell phones are starting to overlap desktop computers in terms of functionality, I suspect that this is where we will see Linux shoot up. Reading about the buzz on Windows 7, I'm getting the impression that Microsoft is positioning Windows to be a competitor not to Linux or even the Mac OS X, but for the iPhone. Unfortunately, I don't think they are going the right way about it. Microsoft's vision seems to be focused on the tablet PC. Windows XP running on a tablet PC was introduced in 2001 by Bill Gates. However, seven years later, tablet PCs failed to make a dent in the market.

The reason tablet PC have not replaced laptop is due their limitation. As cool as they look, they are nowhere near as useful as a regular laptop. For instance, most do not have a keyboard, or a cover for the screen. Also, a tablet PC cost considerably more than a regular laptop. As for competing with cell phones, a tablet is simply too bulky to haul, and whip out whenever you need it. Thus, the tablet PC is not the best of both world. It's just an expensive toy.

I have no doubt that multi-touch displays a-la-iPhone will become de facto in a few years. But once again, Microsoft is playing catch-up since Apple has already invested heavily in the technology, and has already benefited from the fruits of their research. Linux is also multi-touch aware, and I'm looking forward to seeing what the community builds with the technology.

One more OS to note is OpenSolaris. When Sun Microsystem initially decided to open-source their flagship operating system, I was skeptical. My original impression is that Sun was hoping to breathe back life into the venerable but ailing SunOS before it sputtered and died. To my surprise, it looks like OpenSolaris could quickly become competition for the likes of Ubuntu. As much as I like Linux, I'm please to see solid competition on the horizon. I would go as far as to say that OpenSolaris is an operating system you may want to keep your eyes on.

Labels: , , , , , , , , , , ,

Tuesday, July 22, 2008

Been a while

I haven't posted in a while. I was on vacation, so please forgive me. However, I'm back at work, but then, I'm expecting my baby boy in about three weeks, so there may be silence for a while again.

There has been many minor events in the world of free software, but nothing earth shattering. My only frustration is ISO and their handling of the OOXML appeals.

Also, some of you may have heard that Viacom is suing Google over YouTube. Viacom is the owner of MTV, Paramount Pictures and DreamWorks. The suit has been ongoing ever since Google purchased YouTube. Viacom's claim is that YouTube is a haven of illegal movie uploads. To prove their point, Viacom has asked the judge that Google hand over all their user accounts as well as a list of all the videos they watched. The idea is that Viacom wants to demonstrate that copyrighted videos are more popular than non-copyrighted videos.

I think that it's only fair that Viacom attempts to protect their copyright. However, I cannot accept Viacom's request for identifiable user information. This means that Viacom would not only be able to know which videos are more popular on YouTube, they know immediately know who are the copyright infringer.

On one hand, it's true that whoever illegally uploads and whoever watches a copyrighted video on YouTube may be breaking the law. On the other, it's setting up the Internet to become a corporate police state.

In my opinion, Viacom is simply playing dirty to win the lawsuit against Google — a rather short-sighted strategy to control their copyright-catalog. It's the type of corporate action that pits David against Goliath — David being Google, the good guy.

Though I don't foresee this backfiring too much in Viacom's face, I'm of the opinion that Viacom will loose more than it will gain from this lawsuit even should they win.

On a personal note, I've aquired a mayhem device, also known as a video camera. Of course, the first victims of my mayhem device was the pets. The following video is the result.



Of course, it has been posted on YouTube ;). You may notice I've used copyrighted music. I would like to claim Fair Use.

Hope you have a great day!

Labels: , , , , , ,

Sunday, July 6, 2008

KDE 4 - Is it really bad?

KDE, which stands for the 'K Desktop Environment,' is one of the many graphical environment for Linux. Some of the environment include Gnome & Xfce.

I use all three regularly for different reasons. I like Xfce on my Eee PC because it's lite and takes little resources. When introducing someone to Linux, I stick to the default Gnome environment since I find it reasonable easy to get started with. For my day-to-day, I recently switch to KDE 3.x.

In January 2008, the KDE team released version 4 of their desktop environment — a dramatic departure from the original design. The original reviews were remarkable positive for a first-generation desktop.

However, now that the party is over, the hangover starts. The bugs are starting to make itself known and users are getting more and more impatient to see their favourite KDE 3.x feature ported to version 4.

So, this begs the question: Is KDE 4 the new Vista?

I would like to answer the question with an emphatic no.

It's true that it's easy to draw parallels between KDE 4 and Windows Vista. For starters, it was late, it did not include all the promised features and was riddled with bugs upon delivery.

So, why is this different?

For starters, I don't think KDE 4 is mean to immediately replace KDE 3.x. Both are being developed in parallel. It may be preferable to think of KDE 4 as another desktop environment as opposed to the next version of KDE. The changes are too dramatic to liken it to an upgrade. Think Mac OS 9 -> Mac OS X.

Another important point is that KDE 4 is available for early adopters. As opposed to Microsoft which is scrambling to get everyone to upgrade to Vista, the KDE developers are not forcing anyone to move to the next version. Of course, anyone who is interested can try it, and having used KDE 4 since before January, I can tell you that it's an impressive endeavour. It's a bold departure from KDE 3.

Finally, KDE 4 is free software, and that's what matters. You like it? Great! Don't like it? Then fix it! Don't care to fix it? Then go back to KDE 3 or Gnome or Xfce or whichever desktop environment tickles your fancy — and I think that this is what makes KDE 4 so different from Windows Vista. As opposed to Vista, where the license clearly states that 'you may not
work around any technical limitations in the software
,' KDE 4, like any free software, encourages you to work around any limitation of the software.

Just like anything else in Linux, it's about choice. I personally congratulate the KDE developers for their bold foray into new territories with KDE version 4. It may not yet be to the level that KDE 3 users out of their environment, but it's getting there. And in a few years, I think that we'll see KDE 4 become an important player in the realm of desktop environments.

Labels: , , , ,

Friday, June 27, 2008

Firefox Adoption

I was intrigued by this article from PC Pro in the UK about the trailblazing pace of Firefox 3.0 adoption. It turns out that just after 10 days, the number of visitors using Firefox 3.0 is outnumbering those using Firefox 2.0. Wow! Talk about success!

Just for the fun of it, I looked at my (completely unscientific and scewed) site stats. It turns out that the number are very similar for me. Before June 17th, it turns out that Firefox 2.0 was already in the lead, followed by Firefox 3.0.

Here are the stats over a 32 day period:

Before June 17th:

Firefox 3 52.87%
Firefox 2 45.98%
Firefox 1 1.15%

Firefox Visitors Before Release June 17th

On June 17th and after:

Firefox 3 62.00%
Firefox 2 38.00%

Firefox Visitors After Release June 17th

For the sake of comparison, here's how Firefox fared between the other browsers.

Before June 17th:

Firefox 85.29%
Internet Explorer 11.76%
Mozilla 1.96%
Safari 0.98%


Firefox Visitors Before Release June 17th

On June 17th and after:

Firefox 86.21%
Internet Explorer 8.62%
Opera 5.17%

Firefox Visitors After Release June 17th

So, what conclusions should we draw behind these stats?

Well, to begin with, I don't think my site counts as a solid benchmark of Firefox for two reasons. I think it's fair to say that a lot of my visitors are like-minded and a lot of my regulars are friends and family. Most of them will be using Firefox.

The only surprise is that Firefox 3 was already ahead of Firefox 2 on my site 16 days before the release. This is most likely due to me encouraging my friends to try the latest beta.

I'm happy to see that Firefox is going to strong on my site — and not all of those visits are from people I know.

Beyond that, I'll let you draw your own conclusion.

Have a great day!

Labels: , ,

Thursday, June 26, 2008

How Microsoft Won and is Loosing



Steve Ballmer had it right. Developer developer developer!

The prime reason why Windows won over OS/2, the MacIntosh and even MS-DOS was thanks to the mighty influx of application that crept up for the OS. And the only way that those applications existed was thanks to developers.

Thought the Windows API are not the most graceful API I've encountered, they were reasonably well documented. I learned the Win16 and Win32 APIs mostly by reading the MSDN help files.

Using the simple tactic of ensuring that developers would favour the Windows platform early on, Microsoft achieved dominance in the operating system market.



But what is happening today? Balmer has been singing a different tune for the past few year. Since the rocketing rise of Microsoft's stocks capped in 2000, the behemoth is now struggling to pierce new markets while retaining their heavy monopoly.

It's interesting to see Microsoft running like a chicken with it's head cut off. Vista is a disaster, they are still loosing money in their search and gaming division and .NET is barely making a dent in the Java marketplace. Let's not even mention their iPod killer: the Zune.

If it wasn't for the near monopoly on Windows and Office, Microsoft would be hemoraging money faster than the speed of sound. BANG! Bankrupcy before they know it.

I think the reason is pretty clear. Microsoft is now spitting in the face of the very people that brought them to where they are: the developers.

Balmer himself said that he would like open source innovations to happen on Windows. However, he seems (or chooses) to be clueless about the free software philosophy.



Balmer can push all he wants, but he should realize that developers are usually intelligent folks. Many open source developers are quite brilliant. I do believe that most developers can smell bullcaca when it is spewed out of someone's mouth.

Genuine honesty free of marketspeak is not something you often hear from Microsoft!



It's certainly not by forcing proprietary software or standards down the FOSS developer's throat that Microsoft is going to win any friends. Neither is it going to give developers the desire or even the posibility to innovate.

Personally, I like computers to work for me and not the other way around. That's one of the many reasons I don't use Windows &mdash I cannot stand an OS that thinks it can tell me how I should work.

Labels: , , , , ,

Thursday, June 12, 2008

Microsoft and Québec

"Vive le Québec Libre!"

I'm both honoured and weary of Microsoft's reach in Quebec.

The honour comes from the fact that Microsoft is calling their next version of Windows Embedded 'Quebec.' It's nice to see Canada recognized again.

However, using Canadian landscapes to win me over. Things like recognizing the GPL and supporting standards (instead of redeveloping them) would make me look at Microsoft again.

I'm also weary of Microsoft and their deal with the government of Quebec. Microsoft recently objected public access to the deals, since it would "likely risk to cause serious prejudice to our client and would procure the competition an appreciable advantage and would substantially undermine the competitivity of our client."

What I find interesting is that both IBM and Novell had no quorum against exposing the deal. So, what does Microsoft have to hide? What kind of prejudice would it place on the government of Quebec? If Microsoft feels that if would procure a appreciable advantage to their competition, does that mean that Microsoft has priced their products well above that of their competitors? What else was in the deal?

I'll keep my eyes on http://blogs.savoirfairelinux.net/cyrilleberaud/ and see which way this story goes. I'm sure it worth it!

"Vive le Québec Enchainé!"

Labels: , , , ,

Sunday, June 1, 2008

Good News All Abound

Yay!

OOXML has been formally appealed by South Africa, Brazil and India. Microsoft has announced that they will support ODF 1.1 in Office 2007. However, they will not even support OOXML until the next version of Office.

To keep up with the good news, Internet Explorer 8 will finally be standards compliant. As a web developer, this is such a relief! No more double standards for web pages.

Furthermore, thanks to the success of the Eee PC, Linux is becoming more and more ubiquitous. Desktop Linux is, in my (no so) humble opinion at a level that is above that of Windows and the Mac. Not only do you have choice, but if you compare the ease of use of Gnome or KDE, I think that Linux is a powerful contender. The only obstacle that remains is education. Windows users need to unlearn things like C:\ drives or the pain of running setup programs.

Finally, even Novell is reporting success in the Linux front. I took the plunge and installed Novell's openSUSE, and thus far I'm greatly enjoying it. As much as I like Ubuntu, I would hate for a single Linux distribution to become the 'defacto standard,' just like I would hate to see Gnome or KDE displace one or the other. Choice and competition are good.

I'm so excited to see real competition gearing up in the world of informatics. I'm afraid that the Microsoft monopoly has set us back a number of years from where we could be in terms of technology. For example, it if hadn't been for Internet Explorer slowing the adoption of standard HTML, then CSS, where would the web be now?

Oh well. That's water under the bridge. Now that we are freeing ourself from the Microsoft stranglehold, who know what real innovation we are going to see in the world of computing.

Labels: , , , , , , , , , , ,

Thursday, May 29, 2008

What is Windows?

What is Windows? Yeah, I know, it's supposed to be an operating system, but I'm completely confused as to what is Windows.

Here's the situation. My work laptop is back. Of course, I promptly installed Ubuntu 8.04. Now, Ubuntu, like most Linux distribution is much more than an operating system. You get the rock-solid Linux kernel, the GNU tools, and a full-fledge desktop environment. By full-fledged, I mean that I have my office suite, Internet browser, email program, photo management and photo editing software, games, and other miscellaneous doodads. The whole thing takes a little over 2G. Oh, and none of those programs are crippled trialware.

Now comes the fun part: installing Windows Vista Ultimate!

Installing Vista is actually straight forward. Similar to Ubuntu, you just pop in the installation CD and reboot. Unfortunately, there's not 'live DVD' for Windows, so you can't try it on your hardware before you install it. That would have been really nice, as you'll see later.

Moving ahead, I went through the necessary motions (like entering the insanely long activation code). Vista installed. Vista rebooted. Vista came up. It took a little longer to install than Ubuntu but not too much, especially considering that the whole thing takes 10G of disk space already!

Now, for the fun part: Pop! pop! pop! pop!

That's the sound of all the popups that came up after the installation — or at least that would be the sound if my sound worked.

Windows Activation was one of the biggest annoyance. It complained that it had to phone home and validate with Microsoft that I'm allowed to run Vista — but it cant! Why? Well, both my wired and wireless network cards do not run.

Now, I should specify that the laptop is about half a year old. The version of Windows Vista comes with SP1, which means that it should be up to date, right?

So, here I am with 10G of hard disk space eaten up by an operating system that threatens to cripple its functionality if I don't phone home, but the operation system cannot phone home. Ouch! I can't even download the drivers, since I can't connect to the Internet.

We'll skip over the hunt for drivers and move ahead to the next interesting part about Windows Vista Ultimate. For the price, it contains remarkably little. I mean, I've got a web browser that passes as a poor imitation of Firefox, a crippled word processor called WordPad that supports only RTF or plain text and a paint programs that reminds me of my DOS days. My computer is barely powerful enough to support the whizzbang visual effects and is better without it.

(Do I need to mention that the 'whizzbang' effects are turned on in Ubuntu?)

So, here's my question to anyone who wishes to answer it: what the heck is Windows? What is the 10G for? What am I paying so much money for?

I mean, it can't be for the glitzy user interface, since that's been available long before Windows Vista (Mac OS X, XGL). It can't be for the load of default applications that are installed on it, since it's pretty naked for an operating system. It can't be for development purpose since I can't seen to find a single compiler on it, much less a decent text editor. It can't be for its hardware support since it was missing drivers for at least 7 devices on my older laptop. It can't be for it's performance, since Ubuntu is more responsive, boots faster and uses less memory.

I'm starting to suspect it's for games, since a lot of games are written for Windows. Is Windows Vista a really, really expensive virtual game console? Actually, I just learned that it's probably not the case. I just tried to run Civilization IV on Vista, and it told me that it had compatibility problems. It doesn't sound like it's the best operating system for games.

The other possibility is that people want to run Microsoft Office. Yes, Microsoft Office is a nice office suite, but I've been using OpenOffice.org since the StarOffice days. True, OpenOffice does not have all the features of Microsoft Office like talking paper clips or online activation, but it serves me marvelously well — and it has a real drawing toolbar instead of the silly ribbon. That ribbon may be great for Office neophytes, but is a total hindrance for power users.

But I digress. Let me close by saying that it's true that the best things in life are free.

Labels: , , ,

Friday, May 16, 2008

Microsoft Windows for (Nearly) Free?

This is a follow up to Microsoft Windows for Free?

Shortly after I wrote this entry, a couple of interesting events occurred. As I predicted, Microsoft went ahead to compete with Linux on ultramobile PCs (UMPC) like the Eee PC. They are now offering Windows XP Home for $32 US. It's not free, but it's getting close to cheap. Actually, it's not free in either sense of the word, since Microsoft dictates what it considers a UMPC. The maximum specs are: 1G of RAM, 80G of hard disk space, single-core processor running at 1Ghz, screen size of 10.2 inches and no touch screen capability. Anything higher than that requires the vendor to buy Windows XP at their regular price.

That's fair. It's their product, so they can choose how it's licensed. However, I fail to see how they plan to compete with Linux on this field with those restrictions. Furthermore, the $32 US is only for Windows. This means that if you want Word or Excel, be ready to fork out more money. I'd be surprise that Microsoft would allow the vendors to ship Windows with OpenOffice prepackaged. Have fun playing Minesweeper!

With Ubuntu, I have a full fledged desktop with my office suite. The full install that takes up less disk space than Windows — And the $32 stays in my pocket.

Another interesting event is the fact that One Laptop Per Child (OLPC) recently announced that they would support Windows XP on the XO laptop. What a shame. To me, that alienates the whole concept of the XO — learning. How can they learn in a closed, controlled and censored system that greatly limits their freedom. Some of those children who are growing up in a dictatorship are denied yet another freedom. That is a massive loss for them.

Those poor children are denied freedom in the world of computing to further entrench the monopoly of an American company. I cannot help but wonder what goes on in the mind of folks who are more concerned with buying yet another, bigger yacht on the back of those children.

I remember in the early days that OLPC decided that the XO should only use free software (as in free speech). Thus, both Windows and Mac OS X were refused early on. Steve Jobs, president of Apple, went as far as offering Mac OS X for free (as in beer) for the XO, but was denied, since he would not free (as in speech) the software.

In their 'philanthropic' move, Microsoft is charging about $3 for Windows XP. Of course, that does not include Office or anything like that. Just Windows (Yay! Minesweeper!). Furthermore, to allow the XO to dual boot between Windows and Linux, the machine will cost an additional $7 to make.

Since Microsoft is all about their image, I was surprised that they did not offer Windows for free as Steve Jobs did with Mac OS X. I mean, $3 per copy isn't going to register a blip on Microsoft's revenue radar. So, why?

The only thing I can see is anti-thrust. Microsoft is having enough problems with the EU and the Department of Justice, that they may be reticent to offer Windows for free out of fear that it will be perceived as an anti-competitive move.

Though I may be painting Microsoft as a nasty, greedy ogre, we have to remember that they cannot force people to buy their products. They are doing a fantastic job of both painting their software as the 'only' option and — more importantly — hiding the true monetary cost of buying (and using) Microsoft software.

As long as the average consumer remains ignorant of both of those aspects, they may never realize that there are alternatives — much less of the need for those alternatives.

Labels: , , , , , , , , ,

Sunday, May 11, 2008

Ubuntu Vs. Windows Vista

Wow. What can I say? I actually had a chance to work on Vista. Really! Since the hard disk in my work laptop died, I was given another portable pre-installed with Windows Vista.

What an experience. It's an HP dual core 1.9GHz 2G laptop with an nVidia graphics card. It should fly, right? Well, it flew about as gracefully as a turtle on it's back in the middle of the highway.

For comparison, I'm currently writing this blog from an older Gateway machine running on an AMD Turion 64 (single core), 1G of RAM with a Radeon XPress 200M. running (for now) Ubuntu 7.10. The machine was out of commission since I dropped an entire cup of coffee into the DVD drive. Thankfully, the folks at Farstar Networking in Alexandria did a fantastic job resurrecting it for a fraction of the cost I would have assumed it would have been.

However, back to Vista. For starters, after I had booted, the machine was already sucking up >700MB of ram. That leaves less than 1.3G to run my applications. That's not overly bad, since I've go to 2G on the HP, but my Gateway has only 1G. So, forget about running Vista on it. In Ubuntu, running the Gnome desktop with Compiz, Apache, MySQL, Firefox 2, Thunderbird and a system update, I'm not quite at the 475MB watermark.

I've heard a lot of folks complain about the performance of Vista. I finally had a chance to experience this first hand. Yuk! Is it ever SLOW. I could not even drag a window without the system studdering. Furthermore, I got kind notification from Norton Anti-Virus that my subscription was expired, and I should renew. What's that about my credit card number? I forgot what it's like to run an OS where you need an anti-virus. Let's not get into the endless array of continual popups.

Here's my first major gripe: No package manager. HP installed tons of crap on the laptop, including a (I would assume) redundant wireless connection manager, a trial version of Norton, tons of little application that are — supposedly — there to improve the user experience, and god knows what else. Time to clean the system!

I crack open the Add/Remove program, click on the first application, hold down control, and click on the next. Guess what? You can't! In Windows, you can only uninstall a single application at a time. Furthermore, it takes forever to remove the tiniest of application. Oh, and let's not get into the reboots. Remember, I'm cleaning this up because I need to get some work done. How much fun is it when all of a sudden, all your windows starts to close one after an other, and the machine reboots. Oh, I just love it when my operating system controls me. Sure! I love being a slave to the machine. Kiss your freedom goodbye.

On the other hand, I want to upgrade my Eee PC to Ubuntu 8.04. Unfortunately, I lacked disk space. No problem. I cracked open Synaptic package manager, selected a number of application for uninstallation, clicked Apply, and waited while the applications were removed. By the time the applications were removed, Windows Vista had finished booting, and was almost at the desktop. Of course, that was just one of the many reboots I had to do with Vista. None so far on the Eee PC!

Vista is slow. I asked one of my Windows Guru how I could turn off Areo. After digging around a bit, my guru showed me the option where I could chose the Windows Basic theme instead of Areo. What a difference this makes!!! I can move my Windows without feeling like the system is about to go into terminal shock. Here, on my Gateway, I've got Compiz working with the wobbly windows and all the fun graphic effects. It works great &mdash smooth as silk. Oh, and the Gateway is Windows Vista Capable. Not Ready, which means that Areo would not even work on the machine. My Eee PC is running eeeXubuntu with Compiz as well. It's pretty!

As a last point, one of my coworker asked about an 'upgrade path' from Vista Home to Vista Premium. He needed to upgrade Vista so he could run SQL Server Reporting Services (if I'm not mistaken). The software does not run on Windows Home. Not because Windows Home is incapable of running it, but because Microsoft thinks you should not. That is why I love free software. I come from a country that enjoys freedom of expression, movement, religion, etc. I cannot imagine myself relinquishing any of those fundamental freedoms for any price. It's the same thing with software.

I'm a free person. I refuse to pay for proprietary software that limits your freedom when there are perfectly good (better!) free solution out there.

In closing, my Eee PC quietly upgraded to Hardy Heron (Ubuntu 8.04). One reboot was all it took. I then reinstalled whatever applications I had removed. No reboots. Everything works. Don't you wish it was the same in Windows? (To be fair, the wireless card did not come back up. But it took two minutes of googling, and found a simple solution)

While I'm writing this on my Windows-Vista-Incapable Gateway laptop running Ubuntu 7.10, I'm upgrading to Hardy Heron. Can you work on your machine while you are upgrading your Windows version?

If the answer is no, I would then ask you: why not?

Oh, and you paid how much for Windows Vista? And that does not even include an office suite???

<SHOCK>!!!!</SHOCK>

Labels: , , , , , , , , , ,

Monday, May 5, 2008

Thank you Microsoft!

Microsoft is considered by many open source advocates to be the arch-enemy of Linux and free software. I think it's fair to say that Microsoft fears the success of Linux and the free/open source movement. They are doing their best to make compete. However, free software is not their traditional competitor.

Because GNU/Linux is free (as in speech), and is freely (speech & beer) available to anyone, they cannot buy it out and close it as they have done with some past competitor. Because free software is developed by a (tightly or loosely knit) community that may or may not receive corporate sponsorship, they cannot hinder the development. Because the software is free (as in beer), they cannot compete in terms of price. Even Internet Explorer is more expensive than Firefox. Though it may be a 'free' download, remember that you must buy Windows to have Internet Explorer. Thus, as part of what you pay in Windows, you also get Internet Explorer. In other words, Internet Explorer is just another (unfortunately inseparable) component of Windows — not a free download.

Finally, Microsoft cannot compete in terms of freedom. Their End User License Agreement (EULA) determines what you can and cannot do with their software. In the free software world, the license protect both your freedom to use the software, and the freedom of the software.

So, how is a multibillion dollar corporation to compete against the penguin and the likes? FUD is their answer. FUD stands for 'Fear, Uncertainties & Doubt'. Or, in Microsoftspeak, 'Get The Facts.'

In the hopes of driving people away from Linux and free software, Microsoft created a site called getthefacts.com. The site is a direct attack on free software. Though the so-called 'facts' presented by Microsoft are an assault on both intelligence and reason, I think that the biggest looser of the site is Microsoft and a major victory for Linux. For starters, I think that any reasonably intelligent person understand that asking a Honda salesperson what they think of the Ford Focus over the Civic will not get them an unbiased, objective answer. Why should it be any different with Microsoft?

What MSFT may not realize is by setting up getthefacts.com, they have provided immense exposure to GNU/Linux and the free software movement. The website presented free software as a true competitor and alternative to Microsoft products. Folks that had never heard of Linux before are now becoming aware of it thanks to Microsoft. Furthermore, IT directors who rely on Microsoft to keep them up to date with the industry are kindly informed of alternatives to Windows and Office.

For this, I say Thank You Microsoft. There is nothing like corporate backing to promote free software. After all, it's time that Microsoft catches up with the market, and joins the ranks of Novell, IBM, HP, Apple, etc who are all users and backer of free software.

Labels: , , , , , , , , , ,

Friday, April 25, 2008

Control Panel for the Eee PC

This week, I wrote a small Eee PC control panel that takes advantage of the wonderful eee kernel module. The control panel runs in the background and is available through the system tray. Pointing on the icon gives the general status of your Eee PC. A click on the icon will bring up the actual panel. From there, you can control the fan, the front-side bus (overclocking) and the voltage (from what I can understand).

Obligatory screenshots:
The system tray icon & tooltip
Eee PC Control Panel Tooltip
The control panel
Eee PC Control Panel

The control panel is written in Gtk+, and works great on my eeeXubuntu. I would assume that it works fine on the default Xandros install or even (K)ubuntu. From start to end, the control panel was created on the Eee PC, proving that it can be used to get actual work done.

For the convenience of Debian or Ubuntu users, I've create a deb package. Otherwise, a tarball is available with a pre-compiled version of the control panel as well as the full source code. Of course, it's all GPL ;) Please copyleft.

eeectl.deb
eeectl.tar.bz2

Before you install the control panel, make sure you install the eee kernel module available at http://code.google.com/p/eeepc-linux/. Detailed installation instructions are available at http://wiki.eeeuser.com/howto:overclockfsb.

This is a first for me in many ways, so please forgive any stupidity or ignorance on my part. I've used Gtk, Glade and GkSu APIs for the first time, and I've created my first .deb package. I'm more than willing to learn from any guru who may find improvements to my little application.

Of course, usage of the Eee PC Control Panel is entirely at your own risk. Though I use it on my own machine, I cannot be held responsible if you fry or brick your little machine.

Hope you enjoy!

(Before you ask, there is no Windows version, nor do I intend on creating a Windows version. For starters, I'm not willing to buy a Windows license for my Eee PC. Someone else can take care of that)

Labels: , , , , , , , , , , , , ,

Monday, April 21, 2008

Beware the Microsoft Poison Pill

As someone who uses mostly free and open source software, I can't help but be wary and cynical of Microsoft's position toward open standards.

If you are wondering why many of the members of the open source community feels that way, here are some facts:

Microsoft is well known for their Embrace, extend and extinguish (EEE) tactic. The moment a standard comes out that is supported by the industry, Microsoft launches their old tactic. They will 'adopt' the standard. Make changes to it that will only work with their software, ensuring that the standard becomes a Microsoft-only standard. Then, when the competition is mostly dead, they drop support for it.

Here are some notorious examples:
  • Refusing to support CSS standard for nearly a decade to ensure that webpages had to be formatted specifically for Internet Explorer.
  • Attempting to break Java's write-once-run-anywhere promise by adding Microsoft-only extensions.
  • Support for Unix applications using POSIX
  • Support for OpenGL to which Microsoft created a competing standard: Direct3D.

Each of the above technologies were once embraced by Microsoft, and most of them have been mostly abandoned. There are many more examples.

Another notorious tactic is to release multiplatform products to accelerate their acceptance as a 'standard,' then abandon support for those products. Examples include:
  • Internet Explorer for the Mac and UNIX.
  • Windows Media Player for the Mac
  • 'Sponsoring' Silverlight on Linux through Moonlight.

In the words of PJ from Groklaw, 'People aren't as dumb as Microsoft needs them to be' and I'm very thankful for that. Sure, there are folks that are strong partisans of Microsoft, paid or not. However, I think that the majority of the world is starting to realize that Microsoft is not all the gold and glitter they pretend to be. The EEE tactic is starting to backfire at Microsoft. For example, Opera has recently filed a lawsuit against Microsoft. In their press release they make mention of the "Embrace, Extend and Extinguish" strategy by name.

But EEE is not the only tactic that Microsoft uses, especially recently. I may not be a fan of Microsoft, but I don't think they are stupid. They are not where they are today in the marketplace out of blind luck (neither are they where they are because of technical superiority). The other tactic used by Microsoft which infuriates me is their total refusal to embrace standards. Be careful, I'm talking about embracing, not extending. Microsoft has split the market countless times by creating their own proprietary standards.

Examples of established standards Microsoft is refusing to support are:
...and the list goes on.

Some may argue that to remain competitive, Microsoft should not have to adopt competing technologies, but that's a fallacy. For starters, many of these standards existed before Microsoft created their competitors. Also, if Microsoft is not required to support 'competing' standards, their competitors should not be required to support Microsoft's proprietary standards either. Hint hint: Mono & Moonlight.

The latest trumpet blow from Microsoft is Open. You've got the Office Open XML, the Open Specification Promise, Microsoft Open License, Microsoft Open Value and even (GASP!) the Open Source Heroes. Now, how many of these so-called open initiatives actually are compatible with the free/open source software philosophy? As usual, Microsoft dances around the real issue: GPL compatibility.

So, how is this new tactic different from EEE? It's not. And that what I want people to realize. Microsoft is in the stage of Embracing and Extending open source. They are attempting to create a powerful divide between the 'Microsoft Open Source' and real free software (à la GPL) so they can move in for the Extinguish stage. I cringe every time Microsoft uses the word 'open' just as I cringe when someone pronounces my first name like that of a popular denim wear. It's not right to my ear. It's an abuse of the language that I'm familiar with. Furthermore, unlike Alanis Morrisette's poetic use of the word ironic, Microsoft is purposely muddying the water of the language to spread a thin layer of FUD jam to conceal their poison pill.

So, next time Microsoft slaps together a marketspeak sentence with the word open strewn in, look up Embrace, extend and extinguish, and think twice before you hop on the bandwagon, because it is not going in your direction. The Microsoft Open Bandwagontm is headed in one direction only — towards 1 Microsoft Way, and the ride can be very bumpy.

Labels: , , , , ,

Sunday, April 20, 2008

Discrimination Against Linux Is Discrimination

"This gas station only serves Ford and GM vehicles. Yes, the gas works in your Honda, but we will not serve you."

"This CD player only supports CDs from Sony or BMI, Yes, your United CD would work, but we won't play it."

"This website only serves Linux or MacOS X. Yes, your operating system will work, but we won't let you view it."

How does discrimination feel? I feel fortunate that I come from a country when discrimination against race, religion or gender is protected by the constitution. I've spend most of my life ignorant of racism, and I'm very happy about that.

However, going to a website, and being told that I cannot use it because I'm not using the 'browser of choice' or the 'operating system of choice' is very insulting — especially when the website works fine with my browser and operating system. This gives me an idea of how discrimination and racism must feel.

Dilbert.com recently entered a major overhaul. That's not a problem. What's a problem is that I was greeted with the message 'Windows 2000, Windows XP, Windows XP Media Center 2005, Mac OSX 10.3 or Mac OSX 10.4 is required to view this page.'

If you read any of my posts, you know that I run mostly Ubuntu Linux & Firefox. Thus, I was unable to enjoy part of the website. Now, before you gripe and say that Linux and Firefox do not have the capacity necessary to present the website, read on.

As someone who has developed a number of websites, I get suspicious when I'm told I can't use the site with my present configuration.

Should you be discriminated against, here are tips to help you.

Tip #1: If you are discriminated against, yell. The worst thing that you can do is decide "I'm never going back to that site." You are doing a disservice to yourself and to the site owner. Take a moment to use their comment or feedback page to tell them what you think. This is important. Some site owners may not realize the damage they are doing to their site. Help yourself by helping them. If they refuse to hear you, then leave, or try tip #2.

Tip #2: Use Firefox with the User Agent Switcher add-on. This add-on allows you to 'pretend' that you are a different browser on a different operating system. Using the agent switcher, I was able to use the section of the Dilbert's site by telling the site that I'm running (GASP!) Internet Explorer 7 running on Vista. Of course, I promptly wrote a (sorry to say) nasty message to the site telling them what I thought.

Tip #3: Don't switch! As long as your browser supports (most) of the W3C's recommendation, there is no reason for you to bow to discrimination. You have a right to choose your browser and your operating system.

I may disagree strongly with the browser that you use, but I will defend to the death your right to use it.

Labels: , , , ,

Friday, April 18, 2008

If it breaks, who do I blame?

A question I get in almost every seminar I present on topics like open source or Linux is: if the product fails, who can I yell at?

In other words, they are looking for a massive, faceless corporation they can call to complain (and sue). In the open source/Linux world, who can you scream at?

I think it's a valid concern ranging from home users to operators managing the information technology infrastructure of million dollars businesses. But is free software really that much of a risk compared to proprietary software?

If you download and install any piece of software licensed with the GPL, you will notice that the license boldly states that the software comes with no warranty whatsoever. In other words, if it breaks, you have no one to sue. Should you go back to proprietary software then?

If a warranty and support is the only reason to use proprietary software, well, you're in for a nasty surprise.

Let's take a look at a couple of commercial licenses:

To paraphrase the Microsoft Windows Home edition EULA, you have no warranty. Should the software not meet your needs, you have 90 days to ask for a refund. Should it cause your computer to meltdown, your claim is 'limited to the greater of the actual damages you incur in reasonable reliance on the Software up to the amount actually paid by you for the Software or US$5.00.'

I would love to peak at the Microsoft Office 2007 License, but it's in an EXE file. Strange that you need Windows to be able to see a license. Oh well, if Microsoft wants to be incompatible with the rest of the world, that's their choice.

The Adobe Photoshop CS3 license is not much more promising. Again, you have 90 days to ask for a refund. After that, you're on your own.

I'm assuming that if you feel that running proprietary software is preferable over open source, then you probably pay for an anti-virus. Here's the McAfee EULA. Aside from the warranty lasting only 30 days, the rest sounds awfully familiar. I don't know about you, but after a while, all licenses starts to sound the same, don't you think?

Just for giggles, let's take a look at one more license from a company that 'thinks different.' Can you guess who? Here's a link to their licenses. Any surprises over here? Not in terms of warranty, but looking at section 2.B, there's a mention of open source software included with the product. So, it seems that some software vendors do take a byte out of the forbidden fruit called open source.

So, are you still convinced that proprietary software offers better protection? But what about service and support agreements, you say? Microsoft will happily lighten your wallet in exchange for a phone number that you can call if you're up the creek without a paddle.

Here's the kicker. If you are in a situation where support is a requirement, that is readily available to you. You need help with your Ubuntu setup, call Canonical. You heard that PHP is a great web development language but want support, call Zend. What's a website without a database in the back end. Let's install MySQL and call Sun Microsystems for a support agreement.

If this is too many companies, you could look at one-stop single-vendor support from shops like IBM, Sun or even Novell.

And hey, if you're looking for friendly, personable support in Ontario or Quebec, call Farstar Networking.

By considering free and open source software as an alternative, not only do you get the complete source code to your application (which you don't with Microsoft), you can also get support. The choice is yours.

I'm hoping that this is a bit of a wake up call. I've seen a number of article discussing the virtues of single-vendor or multiple vendor-solutions. However, it sometimes seems like Microsoft is the only single-vendor solution out there. They may also seem to be the only one who is on solid financial grounds. If that's your opinion, be aware that when you buy Windows of Office, you are subsidizing their Internet and game division, which is known for losing money.

It may be surprising to know that Microsoft is not the only company that is making a profit. Open source is a billion dollar market that Microsoft has not been able to tap. Others are already tapping it.

So, next time you have a need for a new server or home computer, before you hit your quick dial button to Microsoft Sales, how about you place a few calls around. You may be surprised as to how much you can save in the short and long term.

And you can still have someone to blame if it doesn't work. Except you get to keep the code. What more could you want?

Labels: , , , , , , , ,

Tuesday, April 15, 2008

Hold the Mono, please

Does Microsoft innovate? I think so, but not as much as people think. They are very good at taking existing ideas, and adapting them to work only on their products.

This leads me to the .NET Framework, their competitor to the Java programming language. Java is a programming language that has been around since 1995 and has enjoyed tremendous success in the computing world. Its success is due to a number of factor. Personally, I feel that Java succeeded because it used and encouraged a number of best practices, like forced exception checking, strongly typed language and taking full advantage of object orientation as well as design patterns. Furthermore, Java evolved through the Java Community Process. The JCP is a process managed by Sun Microsystem, the creator of the Java programming language, that allowed interested parties to participate in the development of the language. This means that Java is not the brainchild of solely Sun Microsoft, but also that of IBM, Borland, Novell, and many other organizations. Because many organizations actively participated in the development of the project, this encouraged adoption.

Today, the success of Java is undeniable. There is one company, however, who is directly threatened by Java, and that is Microsoft. One of the early promise of Java was write-once-run-anywhere. That is, you write your computer code once, compile it, and then you can run it on Windows, Mac OS X, Linux, your cellular phone or whatever else you'd like! This is a reality today. I do a lot of Java development, and use a lot of Java programs on Linux, the Mac and Windows.

It works. Microsoft does not like this. They would prefer that applications are written for Windows and stay on Windows.

To achieve that end: enter the .NET Framework. Microsoft created .NET as a response to Java. To compete, they create a language that superficially resembles Java called C#, and a framework that is tooted as write-once-run-anywhere. They even went a step further and got part of the .NET framework standardize with the ECMA.

Just like Java, the success of .NET is undeniable. Let me be the first to say that Microsoft actually came out with some cool ideas. I like LINQ and I think that Workflow Foundation will be an important set of API in the future.

However, I will not develop open-source application with .NET for two reasons:

1. It is not free software. Java has recently been freed by Sun Microsystems. Yay! I hope that this will continue to speed the adoption of Java on Linux. However, .NET is not free. Microsoft owns a number of patents on .NET and has yet to provide a license to their intellectual property that is compatible with the GPL. Until Microsoft opens .NET, I will not touch it with a ten foot pole on Linux.

2. It is not write-once-run-anywhere. It's true that I can create a .NET application on Windows and run it on Linux. However, please repeat after me: .NET is not write once run anywhere. Saying that .NET works on Linux is bullcaca.

For starters, there is a project that is sponsored by Novell (and indirectly, by Microsoft) called Mono which permits the development of .NET applications on Linux. However, repeat after me: .NET is not write-once-run-anywhere. I need to get that into your head. Sure, it looks like it's portable, but here are the problems you will encounter:
  • The API to write GUI (windowed) application is meant to run on Windows. Whatever application is created on Windows with .NET will look good on Windows, but look like crap on Linux. Futhermore, Mono has its own GUI API that is incompatible with the one provided by Microsoft. This means you either create your .NET application to run on Windows or Linux. Say bye-bye to portability. Score 1 for Microsoft!
  • Microsoft is introducing more and more Windows specific API. Just the names of the APIs should give you a clue: Windows Presentation Foundation. Windows Communication Foundation. In other words, Microsoft is making sure that your write-one-run-anywhere investment is glued to the Windows platform.
  • The is no community process. This means that Microsoft has sole control over the direction of .NET. Don't go whining to Microsoft that your gorgeous .NET application looks like crap on Linux and does not work on your Mac. They don't care. Actually, that's a lie. They do care. They care that it runs on Windows and only on Windows. You can expect more and more Microsoft Windows specific API on .NET masquerading as 'open,' 'portable' APIs.
  • You are creating .exe and .dll files. Unlike .class or .jar files in Java, These files are Windows specific. They contain MS-DOS and Windows code. In a Java application, there is not a single line of platform-specific code. That means that Mono has to be able to load a Windows executable on Linux. For something that is supposibly portable, it sure carries a lot of Windows with it.
  • But Linux already has strong support for .NET with Mono! you say? So, why not use Mono? The reason is simple. It's a Microsoft technology. It belongs to Microsoft, and should they decide your Mono application is eating away at Windows market shares, prepare to receive a kind letter from Microsoft politely indicating that since you are using their intellectual property, you owe them $$$.
  • Though I doubt that Microsoft will ever collect open source developer for the use of their so-called intellectual property, I think that the real problem will be that Mono on Linux will forever play catch-up with .NET on Windows. Who wants to use a 'write-one-run-anywhere' technology that is one or two years behind on some important platforms? Either you write a Windows-only application in .NET, or look at alternatives.

.NET exists solely to further Microsoft's agenda. Anyone that chooses to use Mono on Linux is kindly helping Microsoft achieve that agenda. Yes, there are some cool ideas in the .NET framework, but most of those ideas are copied from existing languages. For example, I've been using workflow management API and designers long before Microsoft came out with the Workflow Foundation API.

Before you consider Mono, please take a look at what's available on Linux already. You want true write-once-run-anywhere? Java is one solution. Not good enough? What about Python? Pascal? PHP, C/C++? Need I go on?

Linux is where it is today not because of heavy-handed sales tactics or razzle-dazzle marketing, but by its own merit. Let's continue to develop Linux through it's own merit.

We will not innovate if we follow the Microsoft path — that is, mostly copying what others are doing.

As for me, I think my plate is delicious as it is. I'll hold on that Mono sauce, thank you very much!

Labels: , , , , , , , , , ,

Sunday, April 13, 2008

Enjoying the Asus Eee PC

Having just received my Eee PC, I'm still getting familliar with it's capabilities. The keyboard requires getting used to, but I'm getting better. As long as I don't have to use the right shift key too much, I can almost achieve the same typing speed as on a regular keyboard ;) All joking aside, once you get used to the keyboard, it's actually quite pleasant.

I got the 8G model, which means that I have a whooping 8 gigabytes of 'hard disk' space. While this is tiny compared to a regular hard-disk, which is usually over 100 gigabytes for a laptop. However, for my needs, I think that 8G, or even 4G should be enough. Since the Eee PC supports SD cards, I'm using a 4 gigabyte card for my /home partition (for Windows users, think My Documents).

The pre-installed operating system is a custom version of Xandros Linux (which is based in Ottawa). Though the default is fine for most people's need, I wanted something that gave me more -- so I installed eeeXubuntu. I removed the default Gnome games, Abiword and
Gnumeric to save space, and them promptly installed:

I've got ~640M of space left (which ought to be enough for anybody) on my system partition. Not too bad, considering I've got a practically complete portable development system.

One of my goals is to get Morrowind working with Cedega. So far, no joy, but I'm not about to give up. I know some folks got it working, so I'm sure I can as well.

If you are going to install eeeXubuntu or Ubuntu, be aware of the Eee Wiki. One of the coolest trick I found is how to enable the ALT+F11 key to make a window take the full screen. That really takes advantage of the 800x640 screen resolution. There are many more cool tricks on the page. Check it out!

Software for Windows seems to take up much more room than software for Linux. If anyone plans to run Windows on the Eee PC, I would like to recommend they consider using Google Docs. It is a word processor, spreadsheet and presentation package that runs in a web browser like Internet Explorer or Firefox. Using Google Docs does not require you to install and special software. As long as you are connected to the Internet, you can use it. Futhermore, Google Gears should eventually allow you to run online application offline.

Actually, I'm using Google Docs one my Eee PC right now to author this article. So far, the Eee PC turns out to be a fun, yet useful machine. My wife is starting to strongly hint that I'm spending too much time on it. Oups! I think I should wrap up this article, and spend some quality time with her! See ya!

(Hum... I'm a bit disappointed with the Google Docs' HTML exporter. I wish it did XHTML)

Labels: , , , , , , , , , , ,

Thursday, March 27, 2008

Why Should You Consider Linux?

I'm a lucky man. I've married a beautiful woman with wonderful critical skills. She kindly pointed out to me that I may explain this free software and Linux thing, but nowhere do I emphasize the reasons why I think you should consider Linux.

Let me remedy that.

I believe there are many good reasons why an individual or a business should look at open source software and the GNU/Linux operating system in particular. In this article, I will address a range of potential users, from the end-user (everyday user) up to the IT professional. Some of the reasons will be technical, others social or even personal.

1 - It's Fun
I have a lot of fun with Linux, whether it's trying new software packages like Blender, Eclipse or even Alien Arena, trying a new distribution, or recompiling my kernel for the Nth time. There's so much I can do that I never get bored. Also, none of it is illegal, since the software I use is free as in free speech.

2 - It's Secure
Linux had security built into it from the ground up. Windows had security added long after it was created. Windows XP SP2 and Windows Vista are the first Windows versions to offer true desktop security.
One of the things I loved right away about Linux was the fact that applications cannot be modified or erased by end-users. In Windows, there's nothing stopping you from erasing part of the Microsoft Office or Windows folder. Yikes!
But it's not just a question of whether or not you are able to delete an application folder. The code, being opened, undergoes continual verification. Security problems are usually quickly discovered and corrected. It would be very difficult for someone to add a backdoor to any part of the code in Linux without it being noticed very quickly.

3 - It's Virus Free
Currently, there is not a single virus in the wild that can affect Linux. What I like about this is not just the peace of mind that it offers, but the fact that I do not need to install an anti-virus. You can if you really want to, but I generally tell Linux users not to bother.
(Having worked in the anti-virus industry myself, I'm of the opinion that anti-virus softwares are sometimes as obtrusive as the viruses themselves)

4 - It's (Mostly) Free
You can get a good thing for nothing. Open source software is an example of that. Linux is free (as in $$$) to download and use. The only financial commitment on your part is your Internet time, and maybe the cost of a CD.
Did I mention that you can then give the CD to whoever you want? That's right. It's not just legal to share Linux, it's also widely encouraged. For those that do not have a fast Internet connection, or who cannot burn CDs, Ubuntu offers free shipping of their excellent Linux distribution.

5 - Supports Many Hardwares
A few years ago, the situation was inversed. Windows had more drivers for more hardware. Now, it's starting to change. Windows is dropping support for older hardware, and according to the news, Microsoft will not install Service Pack 1 on Windows Vista machines that use unsupported drivers. Furthermore, when installing Windows and new peripherals, it is often necessary to hunt down and install drivers from the web. From personal experience, it is possible to plug in just about any hardware in Linux, and it's typically detected and ready to use.
Not every hardware is supported by Linux, but then again not every hardware is supported by Windows.
(Gripe: Many drivers in Windows are megabytes, if not hundreds of megabytes in size, and can take over your system. This is typically not the case in Linux — HP, I'm looking at you!)

6 - Supports Older Machines
Distributions like Vector Linux and Xubuntu work great on older hardware that simply will not run Windows Vista or even Windows XP. So, if you need to update from older versions of Windows but your current hardware does not support it, you could consider moving up to Linux instead.

7 - It's Stable
I have Linux machines hosting websites, mail servers, database servers, etc, live on the Internet. I kinda forget they exist because they just work. I rarely have to install patches or upgrade software.
How long have you kept your Windows machine running without reboot? Days? Weeks? Months? In my case, I've had servers up for over a year. Some almost two years. I've lost track.
Here's food for thought. In Linux, the only thing that forces a reboot is to load a new kernel. This is something I discovered the first time I installed Gentoo Linux. After I got my kernel compiled and loaded, I continued to build my machine — I compiled a GUI (Gnome), MySql, OpenOffice, sound driver and a whack-load of other stuff. Only after I had loaded my sound driver did I realize I never rebooted once, yet I had a fully loaded, fully functional machine. I was sold!

8 - It's Flexible
Why is it that Internet leaders like Google, Amazon and Wikipedia run Linux? I'm willing to bet that one of the reasons is its flexibility. Since Linux is free software, an organization can endlessly tweak it to suit its very specific needs. The success of Linux's flexibility is also noticeable in the fact that it is available anywhere from hand-held video-game consoles to cell phones to 85% of the world's super computers (Did you notice that Windows' super computer presence is barely 1%. Now, why would that be?).

9 - Free as in Free Speech
Following the idea of flexibility, we should not forget that Linux is free — as in freedom. It is your operating system. You can use it to do whatever you want. Don't be fooled into thinking that Windows gives you the same freedom. I challenge you to compare the terms of the GNU GPL to that of the Windows EULA. Decide which one gives you more rights.

10 - Community
There is a vast and expanding community behind Linux. It started as a community project that is now sponsored by large corporations like IBM and Sun Microsystems.
This community is visible in forums, newsgroups and mailing lists. Though the discussions can sometimes get nasty, most participants desire one thing: to continue the betterment of Linux. This community crosses all national and cultural boundaries.
To get a sense of the community, I invite you to take a peak at Ubuntu forums. You can freely browse without having to register.

11 - Altruism
Linux is developed by countless volunteers around the world. True, some developers make a living writing code for Linux, but without this mostly anonymous army of developers, testers, writers, translators and users, Linux would not be where it is today.
By using it, you are starting to free yourself from Microsoft's illegal grasp over the software world and are rewarding the community that helped bring Linux to where it is today. I'm sure there's nothing more rewarding to those countless individuals than to know that their contribution, minor or otherwise, is appreciated. Furthermore, you are encouraging freedom in the world of computing.

12 - Helping Developing Countries
I live I Canada, and I enjoy a wonderful quality of life, and I only realized how spoiled I am when I had a chance to visit Guinea in Africa. I realized that most folks who are considered 'poor' in my country would be considered quite wealthy in Guinea.
This said, not everyone in the world can (and should) pay Microsoft's tax. The added cost of Windows and Microsoft Office represents a large portion of a new computer.
OMGWTFBBQ!!!!!! I just went to the Microsoft website to check the price of Windows and Office for comparison. $259 for Windows Vista Home and $499 for Ultimate??? I must be living in isolation, because I can't imagine anyone wanting to pay that much just for fancy graphic effects (that Linux already offers). Half a grand for Ultimate? What is Microsoft thinking? I remember paying $99 for Windows 95 fourteen years ago, and I felt that the changes between Windows for Workgroup and Windows 95 was worthwhile. But $259 for a crippled and crippling operating system?
And if that's not bad enough, what about $539 for Office 2007? I don't even want to look at the price of Office Ultimate. (Ok, I did look at the price. Ouch!)
I'm sorry, but that's a total ripoff. This is what happen when a greedy company acquires not one but two monopolies. Do you realize how much of your taxes go to Microsoft? I shudder to think...

Ok, back to the point I wanted to make:

Helping Developing Countries - Second Try
Projects like the One Laptop Per Child are allowing children in developing nations to expand their horizons and join in the wealth of information that is available on the Internet.
I think that the XO is a wonderful piece of work, and I wish that even Canadian children could get a chance to work with it. One of the features of the XO I find amazing is the ability to view and modify the source code of the application they are working with. Talk about a total learning experience!
Such great philanthropic projects are only available thanks to free(dom) software like GNU/Linux, Open Office and many others. Not only is the software free as in free beer, it is free as in free speech.
By using Linux and participating in the communities, you help refine an already excellent product so that the whole world can take advantage of what computers have to offer.
Some Microsoft users point out that Microsoft and the Bill & Melinda Gates Foundation do participate in philanthropic projects — but why are they trying their darndest to stop the propagation of Linux to developing countries? It doesn't sound like they care much about what's best for those children to me.

13 - Popular
You have probably already used at least one device that runs with Linux or some open source software without realizing it. It's everywhere. The moment you hop on the Internet, the information that makes its way to your machine probably passes by half a dozen Linux machines along the way.
By the way, Asus, Dell and even Walmart have started selling PCs with Linux preloaded. Compare the prices with PCs that come with Windows preloaded. Do I need to spell out why those machines are less expensive?

14 - It's Easy
Yes, you read that correctly. You no longer need to be a hard-core computer programmer who is not afraid of bits and bytes to use Linux. Quite the opposite. Thanks to great projects like Ubuntu as well as desktop like Gnome and KDE, using Linux is as easy &mdash if not easier than Windows.
Now, just to make sure we understand each other: I'm stating that Linux is as easy to use as any other modern operating system. I'm not saying that Linux is like Windows. In other words, there is a learning curve — just like there is for Windows. To get you started, please read Is Linux Like Windows?

There you have it — some of the reasons why I'm a die hard Linux user, and reasons why I think you should consider Linux as well. If you are already a Linux or open source user, why do you use it? Did I miss anything?

In a future post, I would like to show you how you can try Linux risk free.

In the meantime, spread the word. It's time that everyone realizes that Microsoft is not the only player in the world of computers and that there are alternatives to their products. If you think that Microsoft is the best thing since sliced bread, please do your research. You may find that beneath Microsoft's glossy packaging, there's a lot of ugliness. But just to be fair, here's the same for Linux.

Hope you have a great day!

Labels: , , , , , , , ,

Sunday, March 23, 2008

Is Linux Like Windows?

This is a follow-up to the article on 'What is Linux?'
I'll cut to the chase, and answer right away - no.
It is possible to set up Linux so that it looks very much like Windows, but under the hood, it is not Windows. We have to understand that Linux is very flexible and customizable. Someone with some technical knowledge, time and determination can install a Linux system exactly the way he or she would like. Those who are interested in truly learning Linux from the ground up can take a look at Gentoo or Linux From Scratch. This can be a great technical learning experience, but it is very technical.
If you would like a gentler introduction to Linux, I would heartily recommend Ubuntu.
Ubuntu is a free Linux distribution (distro amongst the initiate). A Linux distribution is a full-fledged, pre-packaged collection of software. Distros makes it easy and convenient to install and use the GNU/Linux operating system. Currently, Ubuntu is one of the most popular distributions due to its ease of use, stability and continued support. It is not the only popular distribution. If you are interested, you can also visit and/or try any of the following:

This is only a sample of some of the many distributions available. All of the above can be installed with minimal difficulty.
However, as mentioned above, Linux is not the same as Windows. It does not strive to be a carbon-copy of Windows, but an operating system that stands on its own merits.
Let's take a look at the important differences you will encounter between Linux & Windows.

No C:\ Drive
Yes. That's right. There is no A: drive, no C: drive and your DVD-ROM is not your D: drive. Your 'C:' drive is called the 'root directory.' Everything starts from the root directory. Also, where Windows uses the backslash (\) Linux uses the forward slash (/).
Here's a little cheat-sheet to help you get started:
C: drive/
My Documents/home/<<your name>>/Documents
Desktop/home/<<your name>>/Desktop
Settings/home/<<your name>>/
CD-ROM / DVD-ROM/media/cdrom
USB Flash Drive/media/<<drive name>>

Mac OS X users may recognize the above structure. Just replace /home/ by /Users/ and /media/ by /Volumes/.

Linux does not use file extensions
In Windows, a file ending with .doc is assumed to be a Word document and a file ending with .exe is an executable. In Linux, the extensions are usually meaningless, especially for executable files. So, firefox.exe becomes firefox, oowriter.exe becomes oowriter, and so on.

Files are case sensitive
In Windows, there can be only one file called letter.odt. It can be called letter.odt or LETTER.ODT, but it will be the same file.
In Linux, letter.odt, Letter.odt and LETTER.ODT are three different files. Furthermore, be aware that if you are asked to enter a command, it may be case sensitive.

No Viruses
Yes, you did read that correctly. There are no viruses in the wild for Linux. This means that you do not need an anti-virus. Should your friend or coworker kindly send you an email virus, you are immune. No need for McAfee or Norton.
I'm not saying that Linux will never have viruses, but I strongly doubt that it will develop the rich virus ecosystem that is present on Windows.

Windows Applications do not work on Linux
Many Windows applications have their equivalent in the Linux world. Actually, many of the applications used in the Linux world are becoming available in the Windows world as well.
Another cheat-sheet to get you started (free of charge!):

Microsoft OfficeOpenOffice.org
Internet ExplorerFirefox or Iceweasel
OutlookEvolution
Outlook ExpressThunderbird
Adobe PhotoshopThe GIMP

By the by, most of these programs are available for Windows if you would like to give them a spin.

No need to download programs
In the Windows world, to install an application like WinZip, it is necessary to go to the WinZip.com website, download the setup executable, run the installation program and then we can use the program.
In most distributions, there is a 'package manager' that does the work for you. In Ubuntu, the Add/Remove Program takes care of everything for you. Just select the program(s) you would like, click Install, and it's done. That's right -- no need to run around the web, manually download setup programs and doing the installation yourself.
Ubuntu Add/Remove Programs

It's Secure
Windows XP Service Pack 2 and Windows Vista are starting to take security seriously. However, Linux has been written with security from the very beginning. This means that you don't immediately have access to every component of your system by default. Linux may refuse to show you a file or run a program. This is for security reasons.
Should you need access to a secure resource, you may be prompted for your password or the 'root' password. Be aware that once you enter the root password, you have complete control over your system. If you want to, you can render your system complete unusable. Note that you can do the same with Windows, except that Windows will not prompt you for your password.

It's Free
Free as in free beer. Yes, you can get something for (nearly) nothing. I add nearly because you need an Internet connection, and maybe a blank CD. Also, some of your time may be required.
Linux is also free as in free speech, and that's the part that is truly valuable for me. Windows is controlled by Microsoft — not by me. Mac OS X is controlled by Apple — not by me. Linux is controlled by — me! — and you!
That's freedom!
However, I know that too much freedom can be intimidating. That's where distros come in handy. They pick the most common option, and pre-package everything for you so that you get up and running quickly. However, once you get the hang of your environment, you can start tweaking stuff, and customizing stuff.

So, how does one get started with Linux? Well, stick along, and in a later post, I would like to show you how you can try Linux risk free!

In the mean time, you are welcome to continue your research. I would recommend Wikipedia as a great place to start. If you can, talk to other Linux users, and find out what they have to say. I personally think it's a great operating system, and I'm excited that you are interested in knowing more.

— and no, I don't make money selling Linux. This is a labour of passion and love.

Labels: , , , , , , , , , ,

Saturday, March 22, 2008

Free Software 201

If you haven't read my previous entry, Free Software 101, I would recommend you do so before moving onto this one.

In this article, I would like to continue the discussion on the definition of free software. Previously, we explored the four freedoms attached to free software. For a software to be called free, it needs to meet those criteria.

Some software are given away, like the giftware license of the Allegro game library. Others are said to be public domain, in the sense that they do not have a copyright, and thus, have no limitations in terms of use.

Software that falls under the 'giftware' license or public domain may have the four freedoms. Any individual or organization can use the source code for any purpose, including proprietary and commercial software. Their use and the changes that they bring to the code does not have to be given back to the community. Thus, the new implementation of the software and its users looses the four freedoms.

To protect those four freedoms, the Free Software Foundation, founded and headed by Richard Stallman, created the GNU GPL (General Public License). The goal of the GPL is to ensure that any softwares licensed so would not lose their four freedoms.

This is the license that is used in countless open-source softwares like the Linux kernel, the MySQL Database and the Java programming language. Even Wikipedia uses the GPL to protect the content of their articles. A quick search on SourceForge found over 79,000 projects that uses the GPL.

The GPL is written so that anyone can use it -- both the developer of the original code, and the end user of the code. Agreeing to the GPL pretty much binds you to the four freedoms. That is, you can use the code, view the code, copy the code and share your changes, but you cannot remove those four freedoms from your work.

The GPL allows you to sell a product that includes GPL code as long as you do not remove those four freedoms in any way.

There is more to the GPL than what I've discussed here. For instance, the GPL protects the copyright holder by offering no warranty and the GPL version 3 addresses software patents. However, what I believe is important here is the spirit of the license. If you are considering using GPL code in a commercial project, you may want to consult a lawyer or contact the Free Software Foundation to clarify your right (I'm a coder Jim, not a lawyer). However, keep in mind that there are thousands of successful commercial products out there that uses GPL code. The Asus Eee PC readily comes to mind.

The GPL is one of many licenses that are designed to preserve the four freedoms. Such licenses are known as copyleft licenses. The symbol for copyleft is a reverse copyright (©) but has no legal meaning. Copyleft licenses are also known as viral licenses, since your use and derivative of the work is bound by the same terms as the original license, like a computer virus that infects every executable it touches. The analogy may be less than savory and also misleading. Installing a GPL software like OpenOffice on a machine does not spread the GPL to all your programs. However, using OpenOffice's code in a development project does bind you with the GPL. Whatever use and modification you bring to that code must retain the four freedoms. That is, you could not commercialize a new office suite based on the OpenOffice source code without releasing the source.

Does that mean you could not create a commercial software product based on GPL code? There are many commercial products that include GPL code. As a matter of fact, many commercial applications were later released under the GPL.

Examples include the Linux kernel, which is used in a number of software packages, such as paid-for distributions like Mandriva Linux. Another example is TransGaming Cedega, a program that runs most Windows games on the Linux platform.

There are many advantages to open sourcing software under the GPL, or another open source license. However, I will leave this discussion to another post.

Labels: , , , , , , ,

Friday, March 21, 2008

Free Software 101

Is Free Software software for free? If you are confused about the meaning of Free Software, then this article is for you.

To start with, let's demystify the word 'free.' Free software is often described by Richard Stallman as 'Free as in free speech, not as in free beer.' We are talking freedom and not cost here. This implies that the software can be used for just about any purpose.

To put this in context, I wonder how many people have read the license for the proprietary (non-free) software they install on their machines. Whenever you install a program, you are requested to agree to a license. This can be a legally binding contract that determines what you can and cannot do. Typically, those contract distills down to a simple fact: The vendor chooses what you are allowed to do, and you're not allowed to sue the vendor for any reasons.

Let's take a look at parts of the Windows Vista Home's EULA (End User License Agreement). Here are some semi-random snippets:

2.a Licensed Device. You may install one copy of the software on the licensed device. You may use the software on up to two processors on that device at one time. Except as provided in the Storage and Network Use (Ultimate edition) sections below, you may not use the software on any other device.
In other words, you cannot install Vista on more than one computer. In you have three computers, you need to buy Vista three times.

8. [...] you must comply with any technical limitations in the software that only allow you to use it in certain ways. [...] You may not work around any technical limitations in the software reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;
In other words: You can't 'fix' it or look under the hood.

9. MICROSOFT .NET BENCHMARK TESTING. The software includes one or more components of the .NET Framework 3.0 (“.NET Components”). You may conduct internal benchmark testing of those components. You may disclose the results of any benchmark test of those components, provided that you comply with the conditions set forth at http://go.microsoft.com/fwlink/?LinkID=66406.
Interesting but fair. To release information about benchmarks, I need to do it the was Microsoft wants me to do it. But what about freedom of speech?

25. LIMITATION ON AND EXCLUSION OF DAMAGES. You can recover from Microsoft and its suppliers only direct damages up to the amount you paid for the software. You cannot recover any other damages, including consequential, lost profits, special, indirect or incidental damages.
In other words, if Vista dies and wipes out all your corporate data, you can only get a refund for Windows. Yay!

4. USE WITH VIRTUALIZATION TECHNOLOGIES. You may not use the software installed on the licensed device within a virtual (or otherwise emulated) hardware system.
That's an interesting one. You cannot run Vista Home with VMware or VirtualBox. Why? Hint: It's not a technical reason. Second hint: Draw an S and place a vertical stroke through it.

The above as some example of limitations placed on you if you choose to install and use Windows Vista Home.

Most software that you install on your machine is going to carry some restriction. I hope you take the time to read was you are agreeing to when you click the 'I Agree' button. Just like commercial software, free (as in speech) software have their license.

The most common free software license is the GNU GPL (General Public License). It is used with the Linux kernel (the 'heart' of the Linux operating system), most of the command-line tools used in the Unix world, including Linux and Mac OS X, Open Java 7, MySQL and countless other software.

The goal of the GNU GPL is to provide the 'four freedom' of free software. Here are the four freedoms:

  • Freedom 0: The freedom to run the program for any purpose.
  • Freedom 1: The freedom to study and modify the program.
  • Freedom 2: The freedom to copy the program so you can help your neighbor.
  • Freedom 3: The freedom to improve the program, and release your improvements to the public, so that the whole community benefits.
(NB: Computer programmers like to start counting at zero instead of one)

The four freedoms work together to ensure that any software that is licensed as free software (ie: GPL), continues to remain free software.

Freedom 0
The first freedom is pretty straight forward: The freedom to run the program for any purpose. In other words, Microsoft Windows Vista Home is not free software because I cannot run it for any purpose. For example, I cannot run it in a virtual machine -- Microsoft chooses what I can and cannot do with Windows. On the other hand, I can run the Linux kernel just about anywhere I like. Proof: the Linux kernel is used in everything from digital cameras to routers to super computers. Oh, and it serves me marvelously as a desktop and server operating system

Freedom 1
The second freedom is one of my personal favourite - The freedom to study and modify the program. I can look under the hood! I cannot emphasize how much I learned from looking at other developer's code. Furthermore, if something does not work for me, I can fix it. This is why the Linux kernel is found in places like digital cameras and supercomputers. We are allowed to modify it.

Freedom 2
Freedom 2: The freedom to copy the program so you can help your neighbor. Yes. You read that right. You are allowed -- and encouraged -- to copy the software. Can you do this with Windows? Legally? I do not advocate copying software illegally. Quite the opposite. However, I'm always happy to 'help my neighbor.'

Freedom 3
And finally, Freedom 3: The freedom to improve the program, and release your improvements to the public, so that the whole community benefits. This may sound like a given, but some program come with the source file, and you are allowed to modify it, but cannot release the modification to the public. An example of that is the Torque game engine by GarageGames.

Linux Torvalds initially offered his kernel for free under the GNU GPL, giving any developers who were interested the four freedoms mentioned above. In the very first posting, Linus said "It is NOT protable [...], and it probably never will support anything other than AT-harddisks, as that's all I have :-(." Interestingly, Linus predicted that his kernel would never evolve beyond the 386 of the days. Today, the Linux kernel is available practically everywhere. Had Linus removed any of the four freedoms, chances our his kernel would be a forgotten piece of code today.

The four freedoms are the heart of free software. However, it does not mean that free software is without restriction. Some of those restrictions will be explored in my next entry: Free Software 202.

Labels: , , , , , , , ,

Wednesday, March 19, 2008

Three Things Microsoft Should Do

In the last year or so, Microsoft has earned the ire of partners, governments and customers. Forgetting about the Vista blunders, I think that one of Microsoft biggest mistake is to try to induce FUD (Fear Uncertainty & Doubt) into the FLOSS (Free/Libre/Open Source Software) movement.

In a way, I can't blame Microsoft for that. After all, Linux is on the rise, the cost of machines is on the drop and customers continue to look for ways to save money and free themselves from Microsoft's illegal monopoly.

What irks me is that Microsoft seems to think I'm stupid and I'm just going to swallow whatever FUD they send my way. I'd like to think that I'm far from being the only user who is annoyed at how Microsoft is treating us. We are not sheep that exists only to pay a tax to Microsoft (which I don't).

If Microsoft is serious about working with the open source community, here are three things I need to see before I consider working with Microsoft.

Support ODF in Microsoft Office
Sure, they can keep using their half-baked OOXML, but there is not a single valid technical reason why Microsoft Office does not support ODF. Microsoft does not want documents to be interchangeable from office suite to office suite. In other words, OOXML and it's attempt at ISO certification is there only so that Microsoft continues to entrench governments with Microsoft Office.

Use the GNU GPL 3
Most free software is released under the GNU GPL 2 or 3, which is incompatible with Microsoft's OSP (Open Specification Promise) and the Ms-PL (Microsoft Public License). This is not an accident. Microsoft does not want software written using their technology to spread to other platform. Again, it's vendor lock-in. If Microsoft truly wanted to work with the Open Source community, they should abandon the OSP and the Ms-PL for the GPL, or another OSI certified license.

Use and Contribute to Existing Standards
I know this is very similar to the above to challenges, but Microsoft has a fascination with re-writing code that already exists. For example, NUnit provides everything that a developer needs to do unit testing, but Microsoft re-created the same functionality in Visual Studio Team Edition. Using Windows Metafiles and DrawingML instead of the W3C SVG (Scalable Vector Graphics) recommendation. Creating the WMA file format when MP3 or Ogg already exists. Let's not get into Java vs. .NET!

This fascination with re-creating the wheel means that the world is always split between true standards (ISO, W3C, etc), and Microsoft. More standards is not better for the customer. If that was the case, there would be different type of incompatible CDs, DVDs and even television that work only for a single cable providers. By having a single standard for CDs, it means that I can buy a CD from Sony (minus the rootkit), and play it in a Panasonic player without having to worry about incompatibilities.

Until I see more action from Microsoft on those three fronts, I will happily continue to develop application on my Linux machine, and I will not care if they work on Microsoft platforms or not.

Links:
OSP - Incompatibility with open source
Ms-LP
Free Software Foundation

Labels: , , , , , ,