# NetBSD
I've been daily driving some Dell netbook (specifically the Inspiron 1018) with NetBSD since I started this camping thing a week ago. Therefore, I've been learning a lot about it, and I've also made some little programs and scripts to do certain things I've needed to do, like changing the brightness, and showing system status on dwm. I couldn't find a way to change brightness as a regular user, so I made a program for it, and suckless' official dwmstatus and slstatus don't really support NetBSD very well, so I wrote my own little script to do it (in Perl).
The systems for fetching system status are very different from that of Linux, but some things are the same, like getting the current time, which makes sense, since the date command has existed since Version 1 AT&T UNIX (date(1)). While other things, like brightness, are fetched through sysctl(8). And volume is fetched through mixerctl(1), which shares most arguments with sysctl(8). Etc.
I think it's a pretty nice operating system, but I personally prefer the "everything is a file" approach, since that means I only have to worry about one API: the filesystem one. Though, the sysctl one isn't half bad, so I don't really mind it. One API for files and one API for hardware and kernel stuff. Except envsys(4), which uses proplib, which itself uses XML, which I feel is unecessary when they already have a perfectly working "Management Information Base" system (which is used for sysctl and mixerctl). In other words, I prefer having one interface to communicate with one kind of thing or everything (as long as it isn't shoehorned), rather than being forced to use a bunch of different interfaces to communicate with different instances of the same kind of thing.
I might just be misunderstanding things, though. So if I am, please do inform me, and I'll take back anything incorrect I've said.
Maybe I'll try daily driving some other BSD once I get home.