I’ve been using FreeBSD for the last five years. When I was first using Unix in the mid 1990’s it was on the old Vt100 terminals connected to the solaris box at university. Linux came out around that time and I remember running up some of the early versions of RedHat and Mandrake on my home box. Those days it was a pretty awful install, but with a bit of perseverence everything came up. I still remembr the buzz I got when I served my first webpage across the LAN from the RedHat box running apache.
After introducing my brother to the geek world of *nix, I left it for a while and stuck to winboxes. Bro decided to get into systems administration (and later perl programming). He did his research and told me that he’d heard of some good Linux distro’s for running a production server, but that he’d been told of this great OS called FreeBSD. He showed me FreeBSD running on his box. I was hooked in under 5 minutes.
The thing that I’d always found frustrating with Linux was the god awful installation system - installing rpms always seemed to lead to terrible and unfixable dependency problems. The more deps I fixed the worse things became. I might say that things seem a lot better these days, upgrading software via rpm or deb does not seem to have the circular dependency problems anymore. Anyway, this leads me to the FreeBSD ports collection, a huge collection of software ported to the freeBSD Operating system.
Installing from ports seemed so easy and logical. If needed, precomiled packages could be installed via freeBSDs packages sytem. Actually, to tell the truth I started off using the pkg_add utility to install prebuilt binaries. After a while I’d find some of these binary installs would not necessarily be available but that the port installs were usually there. So once I’d cut my teeth on using packages I moved on to using the ports system. The beauty of the ports system is that you can take a look at thre Makefile and see exactly what is going on - after a while you start to see how Makefiules work even withoput having read the manuals. Manys the time that a small edit on a Makefile has made an otherwise broken port install.
Ports do have their disadvantages though. IMHO it is better to install huge applications like Firefox, Open Office etc from packages - it is a hell of a lot faster than doing it from ports.