5 ms·
tl;dr: I think eBPF is great and that there are many things to criticize about the BSDs, but I think the claims about innovations taking off and BSD developers
by tete 3y ago
tl;dr: I think eBPF is great and that there are many things to criticize about the BSDs, but I think the claims about innovations taking off and BSD developers not cooperating are baseless.
I'm sorry. There's much to criticize the BSDs for, but compared to Linux a lack of innovation simply isn't among them.
From containers to capabilities, from networking to storage, from event handling to audio (and I am talking about the kernel side of things here) Linux runs in circles, re-inventing half-baked solutions that becomes yet another deprecated, yet still supported API/syscall a few years in.
Also on the note of corporation. There has been more than one event where corporation was the intention and some Linux guy posted on some public mailing list about the OpenBSD developers will be sued.
And when it comes to user space the situation is even more clear.
But then again one has to admit that there are philosophical clashes, especially when it comes to OpenBSD.
If you look at FreeBSD there's a lot more interaction. See OpenZFS. Here FreeBSD decided to corporate. At the same time, even though that is user space, Wayland and other projects are defined as "for Linux".
I believe in general there's a lot more cooperation than you think. It's just that devs aren't really much into making everything some public ceremony. If you share a common fields, you might go to common events or send an email, jump into an IRC, Discord, etc. Especially given the history regarding licenses. People - on both sides (if you can even call it that) - now behave properly and talk things out directly instead of having mud fights.
And if you look at the OpenBSDs Innovation page on their website, compare the list of Programs and subsystems as well as the list of Projects maintained by OpenBSD developers with what people think is great software or with software that's on your system and you don't even think about cause it never ever made problems. And then you have things like sndio which I've seen shipped with more than one game on Steam, because it just works and everyone doing proper updates (Android, RPM, etc.) using bsdiff (granted, that one is in fact older).
The main thing where the BSDs sometimes lag behind (with exceptions such as Apple's ARM processors, etc.) is supporting each and every device of hardware. However, one has to say that your Thinkpad has a better chance of working properly out of the box than any Linux distribution I ever encountered. And while that worked decades ago, I currently don't manage to have any system properly handling audio input/output states. It either switches around in terms of muting, or it forgets that the headphones were connected, outputs to the wrong place, etc. To be fair that also does seem a problem with some other OSs, but on OpenBSD it's always correct. I mention this because it's one example of hardware actually working, and not being wonky. And I don't have to constantly be scared that the next driver version breaks stuff, or that an API is deprecated. Yes, Linux is absolutely excellent on keeping compatibility, but the sad state is that you'll end up with 10 APIs with different parts not working properly.
And don't get me started with epoll vs kqueue. It's one great example of what I mean by half-baked solutions. Or think about how hacky setuid for processes on multi-threaded processes on Linux is. Setting owners of a thread instead of of the whole process? Every other OS gets that one right, but on Linux even big projects like Go struggle:
https://github.com/golang/go/issues/1435 https://github.com/golang/go/issues/1435
Btw: I say that at someone who is a huge fan of eBPF, even though I have to admit that it really is a double-edged sword. It's not one of these "this is at least better than not having it in all situations" things, even though some people sadly act like it. And one thing that is great about the BSDs at a community level is that they don't jump on every hype train. I think if they did they'd probably be dead by now, because they are smaller and so building something, changing the whole system to support it properly only for the next big thing replacing it three years later doesn't work for them. So that's where the being opinionated probably stems from. They very strongly go towards something they know will still be there and sensible in 5-10 years. You can read that in nearly all popular "critical of something" posts. It's always about wild unfounded claims or re-inventing something that didn't work out.
- 0dayz 3y agoYour main critic doesn't really hold much water since distros and the kernel is pretty much the only "designers" of Linux. Wayland is part of freedesktop.org for instance. Systemd would be an exception I would admit, but there doesn't seem to be much interest from the BSD to port or attempt to use the systemd fork or openrc. OpenBSD does have interesting projects, but why would a game needs their own audio server. Not only that but openbsd isn't exactly releasing big new innovations a cross the board, but usually small security focused or KISS versions of something. Stability is also what you make of it, while it's true that BSD probably have a higher uptime than say fedora rawhide, it's selection of software and not breaking them is a whole other thing.