With the latest release of Ubuntu (a flavor of Linux) open source operating systems have never been more user friendly. It’s still not for everyone, but how are you going to know whether it is for you or not if you don’t try? And trying Linux is so easy these days. After burning a CD or DVUD with the disk image downloaded from the Ubuntu website, simple restart your computer and you should be given the option to either install the OS to boot direct into Ubuntu’s version of the Linux desktop. Trying out the desktop without installing it doesn’t affect anything installed on your hard drive, your computer has just booted up from the CD. (The downsides are that reading data from external media can be slower than from the hard drive, and since the CD is read only, nothing you do in this test mode will be remembered after a restart.) But starting up your computer this way isn’t a long term solution, it’s just a way to find out whether Linux is something you’d be interested in installing and learning to use. If you do, the CD will walk you through installing Linux next to your existing OS so you’ll have the option to start your computer into either one.
Why should you try Ubuntu? There are all sorts of philosophical big picture arguments people make about open source software (software than can be freely redistributed or modified by anyone), and another set of pragmatic ones about never having to pay for another version of Windows or Mac OS X, let alone Microsoft Office, and Ubuntu’s safty from viruses and spyware. There’s even a third set based on personal hatred of Microsoft and everything it represents. I can get behind all of those, but for me, there’s a single compelling reason to spend at least part of every day using Ubuntu or another version of Linux.
On a window’s computer the gap between being a computer user and a computer programmer is a vast and gapping chasm. Trying to jump from a person who uses computer programs to someone who writes them takes a lot of knowledge, and it takes a long time before what you learn about programming actually helps you accomplish useful tasks. On Macs the gap is narrower, and that’s where I first started writing code. In Linux the gap is the smallest of all. People can even drift across it accidentially. And the code you start writing is immediately useful for things like data analysis.
Linux breeds superusers. People who don’t just use programs others have written, but when confronted with a question no one else has ever asked, or a problem no one else has ever addressed, can still get their computers to do what they want. Two guys who came in the same year as me started using linux this past summer for the first time for a two week python course (only one week of which was useful, I was there). Now one of them is writing C++ code for his phylogenetics project, and the other programs his lab’s liquid handling robot. Both are getting things down in weeks or months that without the ability to write their own code would take a big part of their entire doctoral research (or just wouldn’t even have been considered feasible in the first place.) As in any field, once you know enough to get results, learning begins to snowball and before you know it you’re doing things you never thought you’d be able.