Tuesday, March 23, 2010

Trying out Linux

One of the different things about being in the CSE program was the heavy reliance on Linux/Unix machines. Prior to this year, I'd never had any exposure to the Linux world - concepts such as root and permissions and the idea that everything can be done from a command line was foreign to a hardened Windows user like me.

Last semester, starting with CSE 2341, all the lab assignments had to be compiled on the department machines, forcing students to become familiar with SSH and command line compiling - no more pretty IDEs. This semester, my math class - Finite Element Analysis - has code written in Fortran 77. It didn't come with any executables, just a directory and a Makefile. We had to learn to tweak the config file and compile and run the entire thing on the math department server, which of course, runs Linux.

I got tired of having to SSH into everything to write/compile small bits of code, and I got tired of trying to use a Windows IDE to set everything up so I could compile on my Windows machine. I tried installing Cygwin, but I found out that it was too difficult to configure with all the dependencies I had to download, so eventually I just gave up and started dual-booting Ubuntu 9.10 on my machine.

Thus far it's been an interesting experience. I like having power to do real computing from the command line. I like that it's easy to open gedit, write a few lines of code, and then compile. It's interesting to see that OpenOffice really can meet most of my everyday needs. Many of the open-source applications I have installed on Windows are easily available on Ubuntu (Firefox, VLC), and other things such as MATLAB have comparable open-source alternatives. What's been most confusing so far are permissions, and trying to configure software that's not in one of the repositories. The case-sensitivity is tough to deal with, coming from a Windows background. I hate that there's no option to "paste as root" in Nautilus - but maybe that'll come in the next version. Wine actually runs the software I use in my business faster than Windows! But on the flip side, it refuses to run my favorite chess software at all.

Overall I truly appreciate the open nature of Linux. Sometimes it seems overwhelming, but it's nice to know that I could customize just about anything I want. I've been gradually using it more and more over the semester to familiarize myself with programming concepts, since it makes things work pretty much out of the box. The only thing that keeps me from using Linux a lot more is that my chess software, which is very important to me, simply can't be run with the current tools.

No comments:

Post a Comment