Contributing to open source can be scary, but it doesn't have to be. This is the missing handbook that will guide you from making your first contribution to building a sustainable practice.
With DRM free content, licensed under creative commons (CC BY-NC-SA 4.0), this book will go anywhere your open source journey takes you.
This is your invitation to join us.
If you resonate with any of the above, don’t worry. A lot of developers struggle with these things.
In fact, you are part of the majority. These are the issues keeping MOST people from hitting their contribution goals despite their best intentions.
The good news is, they can all be mitigated. How to Open Source covers all of that in the book.
Don't think you can do this at all because you simply don't have the time? Download this free chapter and see how others fit contribution time into their schedule.
Practical tips and a four-step framework to break down the barriers preventing you from contributing to open source.
Detailed guides to make progress on common open source tasks: Issues, documentation, pull requests, and more.
Set yourself up for long term contribution success and maximize your impact.
"Richard is a rare voice in the open source community: skilled and experienced, but also empathetic, caring and welcoming. If you're venturing into the open-source bazaar, let Richard be your guide."
Author of The Complete Guide to Rails Performance and co-maintainer of Puma
"Richard does an excellent job of balancing the why of contributing to open source, with the how. This book will help you overcome common challenges folks face when navigating open source projects. If you find yourself on the other side of the table in the future, it will serve as a guide for how to make your project more welcoming to others. This book may be intended for those who already know how to code but is a useful read for anyone with a keen interest in open source."
Chief Operating Officer at Creative Commons
"How To Open Source provides practical, real world examples of getting started in Open Source. This book is a must read for anyone that wants to get started in the open source world."
Ruby core contributor
Richard Schneeman, O'Reilly Author & creator of CodeTriage
"I wrote the book I wish someone had given me 10 years ago when I got started contributing."
Richard has spent the last quarter of his life researching how to bridge the gap between projects that want contributors and people that want to contribute. He has conducted interviews, paired with developers, and made hundreds of personal contributions. He is most known for helping sixty-thousand developers contribute to open source through his platform, CodeTriage.
He is a maintainer of libraries with over 1.9+ billion downloads. He currently helps maintain the Puma webserver, a high performance threaded webserver in Ruby. He contributes to high profile projects including the Ruby language and created several successful open source projects such as derailed benchmarks with over 2.8 thousand stars on GitHub. In addition to Ruby, Richard enjoys writing Rust and "any programming language that will get the job done."
Richard lives in Austin, Texas, with his partner, two kids, and two dogs.
Beginners are actually great for open source because you can see things other “experts” can’t. A beginner can respond to issues, write documentation, and interact with PRs. I teach all these skills with detailed real-world examples in my book. If you’ve tried before and failed, learn how to "floss one tooth" and transition from looking for issues tagged with “good for beginners” to finding your own beginner actions.
Developers comfortable enough with programming to write a feature without following a tutorial will get the most out of this book. If you're employed as a developer, you're more than qualified. If you don't consider yourself a developer or are still at the intro stages, there's plenty of content for you, but you might have to supplement this book with additional outside material.
The "How to Open Source" book is all new content. While writing this book, it was important that I don't just list off a series of tips and tricks. Through my time teaching at the University of Texas, I know the importance of stories for retention. I loaded my chapters with examples that are easy to follow and will help you recall what you need when you need it.
I wrote this book assuming no prior language experience. The tasks and examples apply to any programming language. I pick from the Ruby language and ecosystem when I need to show real-world examples. I also provide a few examples from Rust, Python, and Java. All code examples come with a thorough explanation.
The private Slack group was a special offer for early supporters who bought the book during the first week of launch. It is also an opportunity for me to gather feedback from the community on the kind of offerings they would like to see in the future. There is a lot in the works. If you'd like to be notified of future offerings or promotions, you can subscribe on Gumroad or follow @HowToOpenSource on Twitter.
You’re not alone. The day always seems to end before you can get around to that open source idea in your head. Unfortunately, I don’t have a way to give you more hours in the day. But I can show you how successful contributors found the time and how you can do it too. Here’s a free chapter from the book to give you some ideas.
Before jumping into the driver's seat as a maintainer, I recommend you practice being a contributor. This book's core focus is on developing those contribution skills and building a sustainable practice. If you're primarily interested in content on maintenance, you'll still need to build skills in responding to issues, writing documentation, and interacting on PRs.
Maintainers are in high demand. Getting their attention can be tricky but not impossible. I walk through my experiences with this all-too-common scenario and share specific, respectful strategies to move the conversation closer to getting your PR merged. You'll also learn about the hidden dynamics of maintaining an open source repo. When you understand what maintainers want, you can maximize your chances of getting your PR merged.
The book has a creative commons license and no DRM. I wish I could give everything away for free: the book, the illustrations, my videos, everything. I chose to make CodeTriage free and open source for all because I believe the community is a better place when everyone has access. I learned from my time publishing my free Rails course that giving away content can have an enormous impact, but content is harder to sustain than code. I've labored over this book for years and am proud of the result. I charge because I think it's worth the value.
Email your questions to [email protected] or message @HowToOpenSource on Twitter.
Don't wait for a beginner issue. Take a beginner action instead.