Chris's Blog

Sunday, December 18, 2005

My latest pet project: FreeBSD

So I've decided to take a plunge and explore a non-MS Windows operating system. My OS of choice happened to be FreeBSD (see new logo below):



Rationale
My reasoning for playing with a new OS is simply because there is a huge amount I can learn from it. FreeBSD derives from the original Unix BSD. It's known for it's high performance especially as a server OS. I decided to try FreeBSD instead of Linux because FreeBSD, although not as popular, is more like Unix, and unlike Linux, FreeBSD is an entire operating system (Linux is only a kernel that has a huge amount of different distributions, e.g. RedHat, SuSE, Gentoo, etc). I also chose FreeBSD because it wasn't Linux (Linux zealots tend to hate anything that's related to Microsoft -- read the comments for the articles on slashdot.org if you don't believe me -- and that doesn't rub well with me :)).

Comparing FreeBSD to Linux
FreeBSD and Linux are similar in many regards. They have the same basic shell interfaces (although, FreeBSD defaults to tcsh while Linux defaults to bash). They also both run the X windowing system and thus both support desktop environments like Gnome, KDE, and (my favorite) XFCE. Additionally, FreeBSD can run nearly all Linux software natively (and it's been rumored that FreeBSD can run Linux software faster than Linux can)! I found a very good comparison article that you might find interesting here.

My Experience so far
My experience so far has been slow at first, but has been picking up rapidly as of the last few weeks. I installed FreeBSD 5.3 on the second drive of my PC last spring, and that was the first time I installed a non-windows OS ever (and there were definitely some bumps in that road). Things worked out okay, except I couldn't quite figure out how to get sound working properly. FreeBSD, by default, does not have any sound support installed in the kernel, so you have two options: 1) load the sound drivers manually (I was able to crash the OS several times doing this), or you can build a custom kernel (which I learned is the better, although more time consuming, choice).

The ugliest part of getting my system set up, however, was trying to install Java. For some reason, Java has these weird licensing restrictions which means I had to download a bunch of files manually before the FreeBSD installation process could actually install Java (some files required free registration). I then had to compile the Java source code which was a HUGE PAIN because it took FOREVER.

Summary of the good and the bad
In conclusion, let's go over some of the highs and lows of the FreeBSD experience:

Pros:
  • FreeBSD is 100% free.
  • It's not as mainstream (or sexy, as some say) but still compatible with Linux.
  • Very easy to install software, simply type pkg_add -r as root (people rave about the ports system too).
  • Solid base. BSD has been around for a long time and contains very solid code. It's also much more organized than Linux (in terms of supporters).
Cons:
  • Less user friendly. Most Linux distros will set everything up for you automatically. FreeBSD gives you a basic system and you have to configure things like X yourself (this can be a good thing if you want the learning experience, though).
  • Not as bleeding edge as Windows or Linux. Windows by far supports the most software, but FreeBSD lags behind even Linux when it comes to supported software. I believe the FreeBSD community takes longer to port software for stability reasons, but I'd still like to be able to install a non-beta version of Java 1.5...
  • More of a server OS than a desktop OS. FreeBSD definitely makes a great desktop OS, but it's assumed that you're running a server when you first install it (e.g. no sound support by default and no automatic X installation).
There's a lot more I could say about FreeBSD, but I'll save it for later. I definitely encourage you to try it out if you're bold enough (and have the free time). I mentioned a few negatives, but the reality is that I love working with FreeBSD and hope to learn a lot more about it as time goes by. I recently set up Samba and Apache, so I'll probably talk about those soon. Feel free to comment on anything I've talked about if you find it interesting, wrong, or have more to add.

Tuesday, December 13, 2005

New Blog!

Not that I have readers or anything (yet), but welcome to my new blog! I was previously a member (sorta) of xanga.com, but decided that it was time to move on when my primary friends stopped posting and I stopped getting readership (blogger is way cooler anyways - maybe YOU should be blogging here).

This blog is open enough to contain anything, but will most likely contain nerdy tech stuff that I'm so fascinated by. You'll notice that you can comment on my posts (which I hope you'll do very frequently) as well as subscribe to my blog through what's called a feed. There are lots of free programs out there that let you do this. If you're using firefox, you can subscribe to my blog by clicking on the little icon on the right-hand side of your address bar to create what's called a "live bookmark".

Speaking of technology, I found this way-cool site today: www.writely.com. I read about it in a news article on C|Net that was talking about how all software is moving off the desktop and onto the internet. Writely.com is a site that allows you to write documents for free and in several different formats. What blew my mind about it was how it felt so much like a normal word processor like MS Word, but it was free, could upload and save in more formats, and ran inside my browser (firefox)! Definitely worth checking out if you have the time.