My favorite books for becoming a great open source software engineer

Why am I passionate about this?

I’ve been a professional software engineer and maintaining open-source software for 16 years. My work on open source has been heavily informed by industry best practises and my work on proprietary software has been heavily informed by open source best practises. Without these books, I’d be a worse engineer on many dimensions. Some of them may feel antiquated but all are still full of relevant wisdom for every open-source (and proprietary) software engineer today.


I wrote...

Git in Practice

By Mike McQuaid,

Book cover of Git in Practice

What is my book about?

Git in Practice is a collection of 66 tested techniques that will optimize the way you and your team manage your development projects. The book begins with a brief reminder of the core version control concepts you need when using Git and moves on to the high-value features you may not have explored yet. Then, you'll dig into cookbook-style techniques like history visualization, advanced branching, and rewriting history each presented in a problem-solution-discussion format. Finally, you'll work out how to use Git to its full potential through configuration, team workflows, submodules, and using GitHub pull requests effectively.

Shepherd is reader supported. When you buy books, we may earn an affiliate commission.

The books I picked & why

Book cover of The Design of Everyday Things

Mike McQuaid Why did I love this book?

I was introduced to this book in a Human-Computer Interaction course at university but most of it barely mentions computers at all. It radically changed the way I thought about design of all everything, including all the software I have written since, to aim to be as intuitive and natural as possible.

Tip: read this on paper or on an iPad rather than an iPhone or Kindle as the pictures as essential.

By Don Norman,

Why should I read it?

4 authors picked The Design of Everyday Things as one of their favorite books, and they share why you should read it.

What is this book about?

Even the smartest among us can feel inept as we fail to figure out which light switch or oven burner to turn on, or whether to push, pull, or slide a door. The fault, argues this ingenious,even liberating,book, lies not in ourselves, but in product design that ignores the needs of users and the principles of cognitive psychology. The problems range from ambiguous and hidden controls to arbitrary relationships between controls and functions, coupled with a lack of feedback or other assistance and unreasonable demands on memorization. The Design of Everyday Things shows that good, usable design is possible. The…


Book cover of Working in Public: The Making and Maintenance of Open Source Software

Mike McQuaid Why did I love this book?

I was lucky enough to read an early draft of this book and it’s simply the best analysis of the open-source software ecosystem around today.

The writing style is friendly and not formal despite the academic-level research that went into this book. It made me think differently about the open-source projects I maintain and how I interact and chose those I use.

By Nadia Eghbal,

Why should I read it?

1 author picked Working in Public as one of their favorite books, and they share why you should read it.

What is this book about?

An inside look at modern open source software development and its influence on our online social world.

Open source software, in which developers publish code that anyone can use, has long served as a bellwether for other online behavior. In the late 1990s, it provided an optimistic model for public collaboration, but in the last 20 years it’s shifted to solo operators who write and publish code that's consumed by millions.

In Working in Public, Nadia Eghbal takes an inside look at modern open source software development, its evolution over the last two decades, and its ramifications for an internet…


Book cover of Peopleware: Productive Projects and Teams

Mike McQuaid Why did I love this book?

This is the oldest book on my list and is the most underrated. It describes, with serious rigour and detail, how to run more effective software projects and teams.

Most of this advice has been ignored by most of the industry for most of the time but it’s a big part of the reason I’ve worked from home for 14 years and am as productive as I am today.

By Tom DeMarco, Timothy Lister,

Why should I read it?

2 authors picked Peopleware as one of their favorite books, and they share why you should read it.

What is this book about?

Demarco and Lister demonstrate that the major issues of software development are human, not technical. Their answers aren't easy--just incredibly successful. New second edition features eight all-new chapters. Softcover. Previous edition: c1987. DLC: Management.


Book cover of Producing Open Source Software

Mike McQuaid Why did I love this book?

This is from an older generation of open source development, pre-GitHub, but much of the advice here is still incredibly relevant and astute today, helping provide advice on the interpersonal as well as technical sides to open source development.

Many of the underlying principles from this book are what form my grounding as an open-source maintainer for the last 15 years.

By Karl Fogel,

Why should I read it?

1 author picked Producing Open Source Software as one of their favorite books, and they share why you should read it.

What is this book about?

The corporate market is now embracing free, "open source" software like never before, as evidenced by the recent success of the technologies underlying LAMP (Linux, Apache, MySQL, and PHP). Each is the result of a publicly collaborative process among numerous developers who volunteer their time and energy to create better software. The truth is, however, that the overwhelming majority of free software projects fail. To help you beat the odds, O'Reilly has put together Producing Open Source Software, a guide that recommends tried and true steps to help free software developers work together toward a common goal. Not just for…


Book cover of Ship It!: A Practical Guide to Successful Software Projects

Mike McQuaid Why did I love this book?

Another book that predates GitHub but provides a lot of actionable advice today that’s been mostly ignored across much of our industry.

Hard problems like “why isn’t my software project reliable?” are tackled head-on and addressed here. It was an early nudge for me to automate as much as possible in software projects and not ignore difficult problems with project organisation in favour of “fun” technical tasks.

By Jared Richardson, William A Gwaltney,

Why should I read it?

1 author picked Ship It! as one of their favorite books, and they share why you should read it.

What is this book about?

"Ship It!" is a collection of tips that show the tools and techniques a successful project team has to use, and how to use them well. You'll get quick, easy-to-follow advice on modern practices: which to use, and when they should be applied. This book avoids current fashion trends and marketing hype; instead, readers find page after page of solid advice, all tried and tested in the real world. Aimed at beginning to intermediate programmers, "Ship It!" will show you: which tools help, and which don't, how to keep a project moving, approaches to scheduling that work, how to build…


You might also like...

The Managing People Practice Manual

By Neil Thompson,

Book cover of The Managing People Practice Manual

Neil Thompson Author Of The Managing People Practice Manual

New book alert!

Why am I passionate about this?

Author Writer Educator Adviser

Neil's 3 favorite reads in 2023

What is my book about?

This manual addresses the need to ensure that people are at the centre of the organisation. There has never been a timelier reminder of the need to ensure that leading, supporting and developing staff are critical aspects of creating the right organisational culture to grow and develop. Written with sensitivity, it brings together essential learning and underpinning theoretical knowledge and frameworks to promote effective practice.

This is an essential handbook for managers and leaders who want to develop the full potential of their people. It not only covers the fundamental issues of human resource management, but also highlights important topics that organisations find difficult to address, such as empowerment, stress management, mental health, equality, diversity, inclusion, and the promotion of well-being at work.

The Managing People Practice Manual

By Neil Thompson,

What is this book about?

It is refreshing to come across an HR book that bridges the gap perfectly between the academic theory and the practicality of ‘how to do it'. Dr Neil Thompson takes us on a humanistic journey that genuinely captures the human dimension of people management. This is an extremely helpful manual full of important and practical information about promoting well-being to achieve the best outcome for various everyday people management issues. The easy-to-understand inclusive language of this book calls to anyone interested in people management, meaning this is a perfect book for students, HR leaders, and practitioners. I know I will…


Genres
  • Coming soon!

5 book lists we think you will like!

Interested in project management, software, and software engineering?

10,000+ authors have recommended their favorite books and what they love about them. Browse their picks for the best books about project management, software, and software engineering.

Project Management Explore 11 books about project management
Software Explore 55 books about software
Software Engineering Explore 25 books about software engineering