I started with Linux many years ago and used various distributions. I rarley had any driver issues. Sine some years now, I am using OpenBSD for all my personal stuff. My desktop and my server. I will never go back to any Linux Distribution as OpenBSD is so much cleaner, consistent, easier to use and better documented than any other distribution out there. There are two problems with OpenBSD. At first the hardware support. I choose my machines carefully so that OpenBSD is supported which is not that easy sometimes. The second problem is the JVM. At my work place, everything runs on Linux servers with Oracle JVMs so I have to use that. OpenJDK 7 is already pretty stable on OpenBSD but the behaviour can vary too much so that this is not an option.
...can you elaborate on why? really, I'm interested. I mean I get that having the same OS for a server and for a desktop simplifies things, but... how did you arrive at OpenBSD? ...did you first go through FreeBSD? I'm sure other people will be thankful too if you'd blog about your experience!
(Note: I'm currently investigating a "cheapest to maintain" solution, and by this I mean man-hours, not upfront costs, so I could choose Windows Server just as well - not that I would do that - for both my personal server and the servers of a bunch of NGOs that I help with sysadmin stuff for free... and was wondering if something like FreeBSD was better than Ubuntu Server LTS ...I want something that I could just "drop it there and leave it running for 5 years", but at the same time there will be some packages - like webserver and related that I will want to keep to the latest stable versions, like upgrading every few months or so; and yes, I do care about security, so being of to date on all security fixes and at the same time not having to keep fixing an recompiling stuff...)
Yeah I had FreeBSD on the route before OpenBSD. FreeBSD was a very disappointing experience for me. This is some years back so the situation may be better. Back then, a lot of ports were broken. It felt that every second port did not compile. The second thing was that FreeBSD is like most Linux distributions: It tries to support everything and that is bad. If you have a problem and ask how you solve that with FreeBSD you mostly get the answer: you can use X or Y or Z. X has this disadvantages, Y was not updated for years and Z has no documentation. I also tried to try NetBSD but it panic'ed on all my machines during boot.
Disclaimer: I am an OpenBSD fanboy because it opened my eyes. OpenBSD's base system already solves 90% of my problems with exactly one, perfectly maintained and documented solution. You want a firewall? Choose between pf, netfilter or something else on FreeBSD. On OpenBSD the answer is "use pf" (which is btw by far the best paket filter I every experienced). The port system just works, is up-to-date and has good default configurations (and I never missed a package). Maintenance is very easy. It is not as easy as apt-get update && upgrade but the release upgrade (every 6 months) never broke anything on my systems (and takes just 10 minutes). Besides that, there is nearly nothing to do. Here is the bug/update list of the current release (5 months old): http://openbsd.org/errata51.html
The last thing I want to mention now is the consistency in all tools. For network configuration there is ifconfig which can just handle everything (e.g. on linux you have to use special tools for wlan). You have great manual pages. The manual pages are real manual pages with introductions to the systems, various high level topics down to device nodes etc. They are completely up-to-date and the best source for all informations.
Thanks for the quick answer. I'll definitely put some time aside for researching OpenBSD and see if it can fit my needs. Though you got to admit that the OpenBSD folks really don't know how to "sell" their product... I mean I know that in the OS world marketing if for the mindshare and not for the money, but that that's even more reason to do it right... their horrible website and throwing things about crypto and export restriction first really made me think they are not even remotely solving the types of problem I have...
BSD definitely can't do everything that Linux can do, but it can do most things, normally the most important things, and it can do some interesting things that Linux cannot.
For programs that only are available on Linux, BSD kernels can run Linux applications.
It's a little painful using Linux after you become accustomed to BSD. Linux is really fast, but it's too random, sometimes even chaotic, and it seems disorganized by comparison.
But for people who are used to Linux there seems no reason to switch. Linux has lots of resources behind it to keep up with new hardware. BSD will never be as quick to produce drivers.