Hacker News Comments on
Absolute FreeBSD: The Complete Guide to FreeBSD, 2nd Edition
Hacker News Stories and CommentsAll the comments and stories posted to Hacker News that reference this book.
This is a brief (probably incomplete) summary of my understanding (many points also supported by the essays in your included link):
FreeBSD has the concept of a base system: a set of tools intended to work together harmoniously, maintained by a core group of people. You can easily find evidence of this by looking at the source code; the userspace tools sit right next to the kernel. This is in contrast to _GNU_/Linux, where everything (including coreutils) is pulled in from various sources. Many Linux distributions emulate a base system by including utilities that transform the kernel into a complete standard system (e.g. Debian).
Linux has a benevolent dictator who decides project direction, while FreeBSD has a core group of contributers who decide the future of the project. However, I'm not sure that the Cathedral vs. Bazaar is a fair comparison to impose on these projects. In any case, both projects seem to have been getting things done, and unfortunately (or maybe fortunately), I'm not too savvy on internal managerial disputes or issues.
The closest Linux distribution to FreeBSD is most likely Gentoo Linux, as its Portage system is very heavily inspired by the FreeBSD Ports system, in which all "packages" are simply recipes to build from source. You can even run the Gentoo project on a BSD kernel, although this sickens most FreeBSD users for some reason. Most other Linux distributions default to installing binary packages, which is also possible, but not traditional in FreeBSD.
Linux has recently added LXC, while FreeBSD has had Jails for a while now. LXC is much better marketed than BSD Jails through Docker, but Absolute FreeBSD has an excellent section that describes how to do isolated deployments via Jails. FreeBSD also has the Linuxulator that emulates 32-bit Linux system calls via FreeBSD system calls, allowing users to seamlessly run Linux binaries on FreeBSD. The FreeBSD startup system, however, has stayed more or less the same for the past few decades, revolving around an rc.conf file and init scripts. Linux has seen many more efforts in this area, including systemd and initramfs.
BSD projects use a BSD license, which many businesses prefer over the GNU license used by Linux. However, this is a discussion that deserves more than a small summary.
Linux is most likely to support recent hardware because of extensive userbase and industry support. For example, NVidia's latest CUDA SDKs always have Linux bindings, but not BSD ones.
The BSDs have great reputations for killer implementations of TCP/IP.
The BSDs have been using the GEOM disk management system for a long time, which is one of my personal favorites in terms of features. It allows you to treat character and block devices as pipes, so for example, adding encryption is simply "piping" a bare disk through an encryption layer, resulting in a new device. You can even "pipe" things across the network. Linux is somewhat caught up via device-mapper, so this is not a huge deal if you're trying to choose which one to use. Both are great operating systems. Just use whatever works.
It's likely that you know things that I don't, so please feel free to correct me if I'm wrong.
⬐ the_why_of_yYour "Philosophy" section describes the current situation, but with the growing adoption of systemd the GNU/Linux ecosystem will move more and more in the FreeBSD direction here so its coherent development approach will be less of a differentiator.
Re GEOM: does it have any features that Linux device-mapper lacks? Both look very similar to me in capabilities. For example, device-mapper has support for thin provisioning (thinp) and GEOM has gvirstor(8).
"Absolute FreeBSD: The Complete Guide to FreeBSD" by Michael Lucas is one of the best technical books I've read: