Although I started my hacking as a college student on FreeBSD, I shortly moved to Linux and remained a professional Linux developer for many years, a majority of the time as a graphics driver developer for i915. Returning now to FreeBSD development, later in my career, I bring a rare perspective and opportunity to highlight what’s done well and what could use some improvement.
With all due respect, many of the FreeBSD developers are insular folks who’ve worked in the project for their entire lives. It’s not surprising given their passion that they haven’t had much time to stick their head up and see how other projects do things. The obvious comparison is Linux, which from a user adoption perspective has been way more successful. I don’t intend to propose how to make FreeBSD as successful as Linux, but I do hope to shed some light on how to make the FreeBSD operating system more appealing to both developers and users.
I’ll be using my experience as a Linux graphics driver developer and active Linux kernel contributor to highlight specific hurdles I’ve had (as well as pleasantries) in my switch to full-time FreeBSD development. While some of these hurdles seem trivial to grizzled FreeBSD veterans, it’s often death by a thousand cuts that will dissuade fresh faces.