Kirk McKusick and the FreeBSD Project

Working the crowdAxialMarket HQ was proud to host Kirk McKusick on January 17th in a discussion about the history of FreeBSD, the FreeBSD Foundation, and what it takes to keep an open source project alive and vibrant. Kirk’s talk was focused on the community aspect of the FreeBSD Project. Many open source projects have a short shelf-life, starting with one leader and a galvanized base. Often, projects like these fail because of disinterest by the leader, who by the nature of not choosing a successor (or not having one) the vision of the project is lost.

More about the ProjectThe FreeBSD Project has solved this problem by distributing the leadership to a group of 9 Core members, who are democratically elected by the Committers. The 275 Committers of the project can submit code changes to the master repositories, and integrate the changes submitted by around 5500  Contributors, who cannot. Contributors can be promoted to a Committer after a successful career of adding high quality code. It’s this organic structure that has helped the Project be successful and survive for over 30 years. Learn more about the FreeBSD Project’s organization structure here.

BeastieThe Project’s interaction as a legal entity are handled by the FreeBSD Foundation, which is a 501(c)(3) non-profit organization dedicated to supporting the Project financially and representing it where a legal entity is required. Kirk McKusick is a Director, and helped build the governance structure for the Project. He also holds the copyright on the BSD Daemon, better known as Beastie.

We had a great crowd of over 60 who came to talk with Kirk. There was a big contingent from NYC*Bug, other Unix user groups and message distros. There were a lot of great questions, including asking about the benefits of the BSD License vs the GPL, how the Foundation builds relationships, both public and private, with large companies that run FreeBSD.
Wieste, Ike and EricWe had two surprise attendees in the crowd, Wietse Venema, the author of postfix, and Eric Allman, the author of sendmail. I had a chance to sit down and pick Eric’s brain on a couple of ideas we’ve been talking about at HQ. While getting his master at Berkeley in the 1980′s, Eric worked on Ingress, a fully open source ACID compliant RDBMS with Michael Stonebraker, Jerry Held and others. Ingress is the predecessor to Sybase, Microsoft SQL Server, and Postgres (Post Ingress). We floated the idea of building in Unix permissions to the row level, allowing for more granular data access. Talking with EricIngress had tried to apply row level permissions, but removed it because of the highly complicated nature of resolving multiple levels of permission granting across users. Since we’re not planning to add any grant permissions for this Eric said our crazy idea was feasible, but wasn’t sure it was advisable. All we heard was feasible.

About these ads

2 thoughts on “Kirk McKusick and the FreeBSD Project

  1. Great write up Jeff. Interesting bit about row-level security. My instinct tells me that a solution using table-valued functions based on a common secure column (like user group) would be the most flexible and fastest (using appropriate indexes) solution.

    • We discussed datum-level permissions (similar to your suggested approach above), and Query modification-based perms, the latter was apparently the subject of Eric’s Master’s thesis, in either case the only solution allowing for true EAFP without relying on the client for enforcement involves either making modification to the storage engine itself, or to perform the query modification in the query parser within the server. Either are feasible, but are both going to require some elbow grease.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s