Book Review: Working in Public: The Making and Maintenance of Open Source Software by Nadia Eghbal
April 11, 2023
Open source software has taken the world by storm over the past few decades. From operating systems to programming languages, open source projects have become ubiquitous in the software development landscape. However, despite their widespread use, few people understand what goes into creating and maintaining an open source project. In “Working in Public: The Making and Maintenance of Open Source Software,” author Nadia Eghbal provides a thorough analysis into the world of open source, examining the people and processes behind some of the most successful projects in the industry.
At its core, this book is about people. Eghbal interviewed dozens of developers, maintainers, and contributors from a wide range of open source projects to get an inside look at how they work. Throughout the book, she weaves together their stories to create an interesting narrative about the challenges and rewards of working on open source software. She highlights the different motivations that drive people to contribute to these projects, from a desire to learn and improve their skills to a sense of altruism and community spirit.
One of the key themes that runs throughout the book is the tension between the idealistic vision of open source as a collaborative, community-driven endeavor and the realities of actually getting work done. Eghbal examines how open source projects are funded (or not) and how that affects their sustainability. She explores the challenges of managing large and diverse communities of contributors and the difficulties of balancing the needs and wants of different stakeholders. She also delves into the thorny issue of toxic behavior within open source communities and how that can drive away contributors and stifle innovation.
Despite the many challenges, Eghbal remains optimistic about the future of open source software. She argues that the benefits of collaboration and shared knowledge far outweigh the difficulties and that there are many ways to address the issues facing open source projects. Throughout the book, she offers concrete suggestions for how both individuals and organizations can support and improve the open source ecosystem, from funding development to fostering a culture of inclusivity and empathy.
The strength of this book is the way it balances high-level analysis with concrete examples from real projects. Eghbal draws on her interviews and research to provide detailed case studies of some of the most well-known and successful open source projects, including Kubernetes, Ruby on Rails, and Homebrew. These case studies help to illustrate the concepts and ideas discussed in the book and provide valuable insights into the workings of these projects.
Another strength of the book is its accessibility. Eghbal writes in a clear and engaging style that is easy to understand, even for readers who are not familiar with the technical details of software development. She uses plenty of real-world examples and analogies to help illustrate complex concepts, making the book an enjoyable and informative read for anyone interested in the topic.
Overall, this book is an excellent resource for anyone interested in open source software, whether you are a developer, a manager, or just a curious reader. Eghbal’s thorough investigation into open source provides useful information on the problems and chances in the swiftly developing industry. Her book is a call to action for all of us to support and improve the open source ecosystem, and it offers practical advice for how to do so. Highly recommended.