Why FreeBSD #98

Posted on April 09, 2018 in technology

FreeBSD has been production-ready far longer than my career.

If you found a mentor who has been in the business of keeping businesses like yours running since you were a wee kid, you would likely pay attention to their advice.

FreeBSD has opinions, backed by experience and experiments. It has decades of "legacy" of carefully covering edge cases, documenting and testing them, ensuring the code works on muliple architectures and for varied loads.

The individuals who take up this task of maintaining code written by people before them understand that their path is painfully slow and needs meticulous work. However, it is also among the most rewarding experiences a community can enable and encourage individuals to do. FreeBSD inspires this confidence through their consistent work for two and half decades - still maintaining values, ideas, patterns and code written long before the project itself began.

One might feel convinced that FreeBSD's age is its weakness, and that going serverless on someone else's property is the only future that is allowed to exist. Indeed, a bunch of people believe it beyond all doubt and you can too. In fact, you would be mostly correct - your future can be completely made of stateless lambda functions, dynamically scaled on globally distributed systems where you don't care how it all works. It is a valid future; so is business as usual.

We aren't even done with mainframes yet, baremetal servers in datacenters will remain available and in demand for the foreseeable future. The infrastructure tools for serverless deployments and vendor APIs for managing hardware will settle down over the next few years. This commodification should bring down the barrier to entry for managing clusters big and small, with automated container scheduling, internal routing over peer-to-peer VPN, distributed filesystem and more built into the OS.

UNIX and FreeBSD specifically, have lived past many oopseuologies and false alarms. It packs more punch than ever before, be it for streaming huge files, fast or handling millions of TCP connections. It auto-tunes most parameters whether you are running it on baremetal or as a virtual machine. With ZFS RAID and ECC RAM, silent corruption of data is no longer a concern. This confidence comes from putting priorities in order and doubling down to get stuff done right — for years on end.

The BSD communities do not throw away work done by others, on the contrary the various BSDs and Illumos derived projects share their research and code on a regular basis, accelerating progress for everyone.

The distractions and noise around the topic of server operating systems and deployment styles has increased manyfold, however FreeBSD remains a sound choice for many pragmatic sysadmins.

This post is part 2 of the "why-freebsd" series:

  1. Why FreeBSD #99
  2. Why FreeBSD #98