3 ms·
I'm switching to FreeBSD for my current project and most likely future ones. Been setting things up and migrating the last few days. In fact, I'll probably conv
by waynesonfire 6y ago
I'm switching to FreeBSD for my current project and most likely future ones. Been setting things up and migrating the last few days. In fact, I'll probably convert my Linux dev box to FreeBSD and run Linux in a VM.
Why the swtich? I'm really hoping that FreeBSD brings me some stability. I'm frustrated of learning how Ubuntu does things with every new named release. In a commercial environment, I'm aware and comfortable with the vast amount of infrastructure that's deployed to make our applications operable. One of my goals for FreeBSD is to come back to fundamentals and build my applications in an environment that I can understand and maintain without fully staffed teams.
Couple things I noticed. As a Linux user for many years, I am working my way through the FreeBSD Handbook docs. Most of the material I'm familiar with so it's a fast read but have on numerous occasions learned new information. Especially useful since I'm learning how FreeBSD does things. It's no diferent than learning a new programming language in a paradigm that one would considers themselves an expert in.
As a primarily app developer, rc(8) is just the right amount of abstraction and it makes sense. I get it intuitively. I really find it joyful when I encounter such designs.
I love how FreeBSD is organized. This must be attributed to it being designed by a cohesive team. Great job, I noticed and very quickly.
One downside so far, Google seems to answer _every_ linux / ubuntu question I throw at it or at least guides me close enough that I can sort my way through a problem. This hasn't been my experience with the FreeBSD system. Though I've tackled all my issues, it took more time. I should provide an update to this in the future since it could very well be because it's a new system.
I'll also miss cgroups. FreeBSD has rctl(8) and it looks like jails have resources parameters as well. cgroups are very well deigned for the problem that they're solving for me. It gives the right control over the right resources in a cohesive manner.
I'll end this with things that I'm excited for. I find learning new things does this to me so I'll share just for fun. I'm excited to learn jails and hope that I find it an improvement over Docker. I'm excited to deploy my erlang application and host my postgres database. I'm excited for root zfs. I'm excited to UPGRADE when the next version of FreeBSD comes out. This should work right? I _never_ upgrade my Ubuntu dev box. I'm excited that Wireguard is getting native kernel support in BSDs [https://www.phoronix.com/scan.php?page=news_item&px=WireGuard-For-OpenBSD-Kernel https://www.phoronix.com/scan.php?page=news_item&px=WireGuar...]
- drewg123 6y agoOne thing to watch out for is that FreeBSD ports/pkg is a "rolling release", where most 3rd party applications & libraries are updated frequently, as opposed to every 2 years for Ubuntu. The upshot is that you'll want to just update firefox, and it will want to remove and re-install 57 packages. I personally run the quarterly packages to avoid the churn as much as I can. This is somewhat similar to Ubuntu, except "major" updates happen every 3 months.
- anthk 6y agoFreeBSD has the handbook. Avoid google random answers, they are dangerous as often are really outdated with misleading info. Also, FreeBSD has a channel in Freenode, they'll help you a lot. But first: - Check man pages - Read the handbook If you coudn't solve it, ask in the IRC channel.
- loeg 6y agoSometimes the Handbook is dangerously outdated with bad info too. It can be hit or miss. Manual pages are often updated, but do check the modification date for a clue — last updated in 1996? Maybe double check other sources. (For context: I'm a FreeBSD developer.)
- anthk 6y agoI tought you kept the docs updated at least as good (or close to) as the OpenBSD counterparts.