Benevolent dictator for life
Title given to a small number of open-source software development leaders
From Wikipedia, the free encyclopedia
Benevolent dictator for life (BDFL) or just benevolent dictator is a tongue-in-cheek title given to a small number of free and open-source software development leaders, typically project founders who retain the final say in disputes or arguments within the community.[1]
History
The term benevolent dictator has been around since at least 1868[2] and its usage in computer contexts dates back to the early beginnings as can be seen in a Usenet post from 1984 where it has been used for a moderator.[3]
Benevolent dictator for life is thought to have been first used in 1995 for Guido van Rossum, the creator of the Python programming language.[4] Shortly after Van Rossum joined the Corporation for National Research Initiatives, the term appeared in a follow-up mail by Ken Manheimer to a meeting trying to create a semi-formal group that would oversee Python development and workshops; this initial use included an additional joke of naming Van Rossum the "First Interim BDFL". The title was initially coined as "Benevolent Dictator" by Ken Manheimer; later Barry Warsaw suggested it would be "Benevolent Dictator for Life".[5]
Eric S. Raymond's essay "Homesteading the Noosphere" (1999) also popularized the term benevolent dictator for a single decision-making open source owner or maintainer.[6] Raymond elaborates on how the nature of open source forces the "dictatorship" to keep itself benevolent, since a strong disagreement can lead to the forking of the project under the rule of new leaders. Most open source software development projects utilize distributed version control systems, in which contributors submit pull requests to the project's maintainer, who may merge or reject the submission. Other distributed copies of the software are then based on that maintainer's repo. The position of BDFL is a consequence of network effect. They become stewards of the overall project on account of being the repo that the rest of the community is subscribed to and submits changes to.
In July 2018, van Rossum announced that he would be stepping down as BDFL of Python without appointing a successor, effectively eliminating the title within the Python community structure.[7] In 2025, Mastodon developer Eugen Rochko stepped down, transferring ownership to a non-profit structure.[8]
Referent candidates
| † | Deceased |
| Name | Project | Type | Ref. |
|---|---|---|---|
| Sylvain Benner | Spacemacs | Community-driven Emacs distribution | [9] |
| Vitalik Buterin | Ethereum | Blockchain-based cryptocurrency | [10][better source needed] |
| Dries Buytaert | Drupal | Content management framework | [11] |
| François Chollet | Keras | Deep learning framework | [12] |
| Evan Czaplicki | Elm | Front-end web programming language | [13][14] |
| Laurent Destailleur | Dolibarr ERP CRM | Software suite for enterprise resource planning and customer relationship management | [15] |
| David Heinemeier Hansson | Ruby on Rails | Web framework | [16] |
| Rich Hickey | Clojure | Programming language | [17] |
| Adrian Holovaty and Jacob Kaplan-Moss |
Django | Web framework | [18] |
| Andrew Kelley | Zig | Programming language | [19][20] |
| Xavier Leroy | OCaml | Programming language | [21][22] |
| Haoyuan Li | Alluxio | Data Orchestration System | [23] |
| Miles Lubin | JuMP | Mathematical optimization modeling language in Julia | [24] |
| Yukihiro Matsumoto (Matz) | Ruby | Programming language | [25] |
| Wes McKinney | Pandas | Python data analysis library | [26] |
| Gavin Mendel-Gleason[a] | TerminusDB | Open-source graph database for knowledge graph representation | [27][28] |
| Bram Moolenaar† | Vim | Text editor | [29] |
| Matt Mullenweg[b] | WordPress | Content management framework | [30] |
| Martin Odersky | Scala | Programming language | [31] |
| Taylor Otwell | Laravel | Web framework | [32][33] |
| Theo de Raadt | OpenBSD | A Unix-like operating system | [citation needed] |
| Arnold Robbins | Awk, Gawk | Programming language | [34] |
| Ton Roosendaal[c] | Blender | 3D computer graphics software | [35] |
| Sébastien Ros | Orchard Project | Content management system | [36] |
| Mark Shuttleworth[d] | Ubuntu | Linux distribution | [37] |
| Jeremy Soller | Redox | Operating system | [38] |
| Don Syme[e] | F# | Programming language | [39] |
| Linus Torvalds[f] | Linux | Operating system kernel | [16][40] |
| José Valim | Elixir | Programming language | [41] |
| Pauli Virtanen | SciPy | Python library used for scientific and technical computing | [42][43] |
| Patrick Volkerding | Slackware | Linux distribution | [44] |
| Nathan Voxland | Liquibase | Database schema management | [45] |
| Jimmy Wales | Wikimedia Foundation | Collaborative knowledge project | [46][i] |
| Jeremy Walker | Exercism | Open-source programming education platform | [47] |
| Shaun Walker | DotNetNuke | Web application framework | [48] |
| Larry Wall | Perl | Programming language | [49] |
| Evan You | Vue.js | JavaScript MVVM framework for building user interfaces and single-page applications. | [citation needed] |
| Soumith Chintala | PyTorch | Deep learning framework | [50] |
| Martin Traverso, Dain Sundstrom, David Phillips | Trino | SQL query engine | [51] |
| Kohsuke Kawaguchi | Jenkins | Automation server | [52] |
| Gabor de Mooij | RedBeanPHP | Database object relational mapper | [53] |
| Bram Cohen | BitTorrent | Peer-to-peer file sharing protocol | [54] |
| Walter Bright | D (programming language) | Programming language | [55] |
| Ritchie Vink | Polars | Data analysis framework | [56] |
| William Falcon | PyTorch Lightning | Deep learning framework | [57] |
| Lars Hvam | abapGit | Git client for ABAP | [58] |
| Sebastián Ramírez | FastAPI | Web framework for building APIs with Python | [59] |
| Bill Hall (gingerBill) | Odin | Programming language | [60] |
| Damien Elmes (dae) | Anki | Spaced repetition system | [61] |
| Ryan Cramer | ProcessWire | Free content management system (CMS) and framework (CMF) | [62] |
| Salvatore Sanfilippo | Redis | In memory key-value database | [63] |
| Daniel Stenberg | cURL | Web protocol client | [64] |
| Werner Schweer | MuseScore Studio | Music notation software | [65] |
Organizational positions
- CTO of TerminusDB
- Lead Developer at the WordPress Foundation
- Chairman of the Blender Foundation
- CEO of Canonical Ltd. until December 2009, again since July 2017
- Technical Advisor at the F# Software Foundation
- Sponsee of the Linux Foundation. Also holds the trademark for Linux.