After months of shifting between different Unix-like operating systems I decided to finally settle down. My experience with FreeBSD thus far was flawless and positively incomparable to many a GNU/Linux distro. Setting up highly robust RAID arrays with ZFS, sandboxing services via jails and building a resilient firewall with PF. Everything was simply lovely! However, the community is much smaller than that of GNU/Linux and everywhere I look employers typically search for GNU/Linux programmers. Heck, many never even heard of or read about FreeBSD and if so, their knowledge is pretty limited. “Ah yes, that server Unix that Netflix uses, right?” It saddens me greatly, but that’s the reality. If it depended on me, I would run FreeBSD on every single server, be it Sun’s legacy SPARC or a brand new Intel Xeon cluster with petabytes of hard drive space. Alas, I’m not the one calling the shots.
While using CRUX and Arch Linux I also realized that my honest warmth for FreeBSD came from the fact that I actually wanted to use a technically challenging Unix-like OS. Gentoo, Arch and CRUX provide that challenge equally well! The added bonus is that they still belong to the GNU/Linux realm. Thus, troubleshooting can be done with the assistance of the whole user community. Finally, there are distributions tailored to servers (SLES, CentOS, ClearOS, RHEL, Debian, etc.) and desktop systems (Fedora, xUbuntu, Manjaro, Mageia, Linux Mint, etc.) alike. One kernel (though with a myriad of configuration options) + many init systems + tons of tools for everything. It’s chaos, but one we enjoyed as kids when building colorful towers out of Lego blocks. We can actually relive those moments in GNU/Linux thanks to Linux From Scratch and Beyond Linux From Scratch. Quite exciting, isn’t it?
All that being said, I decided to go for Fedora. It offers great balance between low-level system management and development, and ease of use typical of desktop distributions. The double-edged blade of licensing is actually an incentive to me. I do use proprietary software from time to time, but would like to avoid it if a possibility arises. Focus on new Unix-like technologies is an additional boon. From there I can easily migrate to CentOS, Red Hat Enterprise Linux or Oracle Linux if need be. It’s a well integrated network of similar GNU/Linux distributions covering different fields. Quite obviously, I will not forget about the Unix Way and the lessons taught to me by FreeBSD. I will always follow the principles of simplicity, good design practices and sane programming. What I’ve learned about system management will come in handy, no doubt. Who knows, maybe I’ll be able to help in fixing systemd-related issues or showing people that there are genuinely Unix-like approaches to certain problems.