Benevolent dictator for life

Benevolent dictator for life (BDFL) is a title given to a small number of open-source software development leaders, typically project founders who retain the final say in disputes or arguments within the community. The phrase originated in 1995 with reference to Guido van Rossum, creator of the Python programming language.[1][2]

History

edit

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". According to Rossum, the title was most likely created by Ken Manheimer or Barry Warsaw.[1]

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.[3]

Usage

edit

BDFL should not be confused with the more common term for open-source leaders, "benevolent dictator", which was popularized by Eric S. Raymond's essay "Homesteading the Noosphere" (1999).[4]

Among other topics related to hacker culture, 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.[citation needed]

Referent candidates

edit
Key
Deceased
Name Project Type Reference
Sylvain Benner Spacemacs Community-driven Emacs distribution [5]
Vitalik Buterin Ethereum Blockchain-based cryptocurrency [6][better source needed]
Dries Buytaert Drupal Content management framework [7]
François Chollet Keras Deep learning framework [8]
Evan Czaplicki Elm Front-end web programming language [9][10]
Laurent Destailleur Dolibarr ERP CRM Software suite for Enterprise Resource Planning and Customer Relationship Management [11]
David Heinemeier Hansson Ruby on Rails Web framework [12]
Rich Hickey Clojure Programming language [13]
Adrian Holovaty
and Jacob Kaplan-Moss
Django Web framework [14]
Andrew Kelley Zig Programming language [15][16]
Xavier Leroy OCaml Programming language [17][18]
Haoyuan Li Alluxio Data Orchestration System [19]
Miles Lubin JuMP Mathematical optimization modeling language in Julia [20]
Yukihiro Matsumoto (Matz) Ruby Programming language [21]
Wes McKinney Pandas Python data analysis library [22]
Gavin Mendel-Gleason[a] TerminusDB Open-source graph database for knowledge graph representation [23][24]
Bram Moolenaar Vim Text editor [25]
Matt Mullenweg[b] WordPress Content management framework [26]
Martin Odersky Scala Programming language [27]
Taylor Otwell Laravel Web framework [28][29]
Theo de Raadt OpenBSD A Unix-like operating system [citation needed]
Arnold Robbins Awk, Gawk Programming language [30]
Eugen Rochko Mastodon Open source, decentralized social network [31]
Ton Roosendaal[c] Blender 3D computer graphics software [32]
Sébastien Ros Orchard Project Content management system [33]
Mark Shuttleworth[d] Ubuntu Linux distribution [34]
Jeremy Soller Redox Operating system [35]
Don Syme[e] F# Programming language [36]
Linus Torvalds[f] Linux Operating system kernel [12][37]
José Valim Elixir Programming language [38]
Pauli Virtanen SciPy Python library used for scientific and technical computing [39][40]
Patrick Volkerding Slackware GNU/Linux distribution [41]
Nathan Voxland Liquibase Database schema management [42]
Jimmy Wales Wikimedia Foundation Collaborative knowledge project [43][i]
Jeremy Walker Exercism Open-source programming education platform [44]
Shaun Walker DotNetNuke Web application framework [45]
Larry Wall Perl Programming language [46]
Evan You Vue.js JavaScript MVVM framework for building user interfaces and single-page applications. [citation needed]
Soumith Chintala PyTorch Deep learning framework [47]
Martin Traverso, Dain Sundstrom, David Phillips Trino SQL query engine [48]
Kohsuke Kawaguchi Jenkins Automation server [49]
Gabor de Mooij RedBeanPHP Database object relational mapper [50]
Bram Cohen BitTorrent Peer-to-peer file sharing protocol [51]
Walter Bright D (programming language) Programming language [citation needed]
Richie Vink Polars Data analysis framework [52]
William Falcon PyTorch Lightning Deep learning framework [53]
Lars Hvam abapGit Git client for ABAP [54]
Sebastián Ramírez FastAPI Web framework for building APIs with Python [55]
Bill Hall (gingerBill) Odin Programming language [56]
Damien Elmes (dae) Anki Spaced repetition system [57][58]

Organizational positions

edit
  1. ^ CTO of TerminusDB
  2. ^ Lead Developer at the WordPress Foundation
  3. ^ Chairman of the Blender Foundation
  4. ^ Until December 2009, CEO of Canonical Ltd
  5. ^ Technical Advisor at the F# Software Foundation
  6. ^ Sponsee of the Linux Foundation. Also holds the trademark for Linux

See also

edit

References

edit
  1. ^ a b Guido van Rossum (2008-07-31). "Origin of BDFL". Artima.com. Archived from the original on 2012-07-21. Retrieved 2008-08-01.
  2. ^ "Python Creator Scripts Inside Google". eWeek. 2006-03-06. Archived from the original on 2018-08-09. Retrieved 2008-05-13.
  3. ^ Van Rossum, Guido (July 12, 2018). "Transfer of power". mail.python.org. Archived from the original on July 12, 2018. Retrieved August 9, 2018.
  4. ^ Raymond, Eric S. (2000). "Homesteading the Noosphere § Project Structures and Ownership". Eric S. Raymond's Home Page. Archived from the original on 2012-07-01. Retrieved 2008-08-01.
  5. ^ "Spacemacs COMMUNITY.org". GitHub. Retrieved 2017-08-24.
  6. ^ Pearson, Jordan (24 April 2017). "Ethereum's Boy King Is Thinking About Giving Up the Mantle". Vice. Retrieved 5 September 2023. One participant called him a benevolent dictator.
  7. ^ Fay, Randy. "How Do Open Source Communities Govern Themselves? | RandyFay.comties Govern Themselves?". randyfay.com. Retrieved 27 November 2020.
  8. ^ "Keras API Special Interest Group, Leadership". GitHub. December 21, 2021.
  9. ^ "56: Ember vs. Elm: The Showdown with Philip Poots | The Frontside Podcast". The Frontside Podcast. Archived from the original on November 16, 2018. Retrieved 2017-08-14.
  10. ^ elm-conf (2016-09-19), "Code is the Easy Part" by Evan Czaplicki, retrieved 2017-08-14
  11. ^ "Dolibarr project organization, different roles of actors".
  12. ^ a b Constine, Josh (December 7, 2012). "Dropbox Hires Away Google's Guido Van Rossum, The Father Of Python". TechCrunch. Retrieved June 1, 2015.
  13. ^ "Clojure JIRA Workflow". Archived from the original on November 13, 2015. Retrieved 3 October 2015.
  14. ^ "Adrian and Jacob retiring as Django BDFLs". Adrian Holovaty. January 12, 2014. Retrieved June 14, 2015.
  15. ^ "Proposal: Create a standard process for proposals". GitHub.
  16. ^ "Interfacing with Zig, a BDFL-run Project". Loris Cro's Blog. December 10, 2021. Retrieved April 14, 2024.
  17. ^ "A History of OCaml | OCaml.org". Retrieved 2015-09-18.
  18. ^ "OCaml Infrastructure mailing list". Retrieved 2015-09-18.
  19. ^ Introducing Alluxio Open Source Project Governance "[1]"
  20. ^ "Governance Structure: JuMP". Retrieved 2023-09-13.
  21. ^ "A Ruby Design Process". Retrieved 2016-04-17.
  22. ^ "pandas 0.20.3 documentation: Tutorials". Retrieved 2017-07-24. "Wes McKinney's (pandas BDFL) blog"
  23. ^ "TerminusDB, Twitter". May 6, 2020. Retrieved May 6, 2020.
  24. ^ "TerminusDB — what's in a name?". TerminusDB. August 21, 2019. Retrieved May 8, 2020.
  25. ^ "Why Neovim is Better than Vim". January 15, 2015. Retrieved 30 September 2015.
  26. ^ "Thesis, Automattic, and WordPress | Post Status". July 24, 2015. Retrieved 2015-07-24.
  27. ^ "Programming in Scala Leaps onto the World Stage!". Retrieved 2015-11-25.
  28. ^ "Taylor Otwell, Twitter". Taylor Otwell. October 9, 2014. Retrieved October 9, 2014.
  29. ^ "Taylor Otwell, Creator of the Laravel PHP Framework". Facebook. August 5, 2014. Retrieved August 5, 2014.
  30. ^ Robbins, Arnold (March 2014). "The GNU Project and Me: 27 Years with GNU AWK" (PDF). skeeve.com. Archived (PDF) from the original on October 6, 2014. Retrieved August 11, 2023.
  31. ^ "Mastodon is crumbling—and many blame its creator". The Daily Dot. January 18, 2019.
  32. ^ "Developer Intro/Overview". Retrieved 20 July 2018.
  33. ^ "Orchard Project Steering Committee". Archived from the original on August 12, 2015.
  34. ^ "Ubuntu carves niche in Linux landscape". CNET. Archived from the original on 6 November 2015.
  35. ^ "CONTRIBUTING.md · master · redox-os / redox". July 8, 2023.
  36. ^ "Contributing to the F# Language and Compiler". Retrieved 29 September 2015.
  37. ^ Dee-Ann LeBlanc (31 July 2006). Linux For Dummies (7th ed.). John Wiley & Sons. p. 15. ISBN 978-0-470-04793-4.
  38. ^ "Elixir Companies". GitHub. Retrieved 2017-11-01.
  39. ^ "SciPy 1.0.0". GitHub. Retrieved 2017-10-27.
  40. ^ "SciPy project governance". GitHub. Retrieved 2017-10-27.
  41. ^ "Stories of Linux: A Look at Slackware Linux". linux.com. Archived from the original on October 30, 2014. Retrieved September 21, 2014.
  42. ^ "User and Developer Community | Post Status". Retrieved 2015-08-13.
  43. ^ Chozick, Amy (June 27, 2013). "Jimmy Wales is Not an Internet Billionaire". The New York Times.
  44. ^ "Jeremy Walker on Being the BDFL of Exercism by Humans of Open Source • A podcast on Anchor". Anchor. Retrieved 2021-03-26.
  45. ^ Book: Building Websites with DotNetNuke 5, Michael Washington and Ian Lackey, Packt Publishing. Page 14 "The core team comprises individuals invited to join the team by Shaun Walker, whom they affectionately call the "Benevolent Dictator".
  46. ^ "The Art of Ballistic Programming". Archived from the original on June 17, 2013.
  47. ^ "PyTorch Governance | Maintainers — PyTorch 2.0 documentation". pytorch.org. Retrieved 2023-03-21.
  48. ^ Trino and the BDFL model https://trino.io/blog/2023/04/06/trino-bdfl-focus.html
  49. ^ Jenkins Enhancement Proposal #1: BDFL https://github.com/jenkinsci/jep/blob/master/jep/1/README.adoc#bdfl
  50. ^ RedBeanPHP index page https://redbeanphp.com/index.php?p=/welcome#sponsor
  51. ^ BitTorrent Enhancement Proposal #1: The BEP Process https://www.bittorrent.org/beps/bep_0001.html
  52. ^ "Polars - About us". 2024-04-07. Archived from the original on 2024-03-24.
  53. ^ "Lightning Governance — PyTorch Lightning 2.3.0dev documentation". lightning.ai. Retrieved 2024-04-10.
  54. ^ "Addressing the Future of ABAP: The Power of Open Source". 2024-06-06.
  55. ^ "GitHub FastAPI". 2024-07-30.
  56. ^ "Proposal Process". 2019-03-31.
  57. ^ "ankitects Github organization". GitHub. Retrieved 2024-09-14.
  58. ^ "Anki development discussion". Reddit. Retrieved 2024-09-14.