VERBOSITY
The Leverage of Good Documentation
As time goes by, I begin to notice that my contributions to open source software are not groundbreaking improvements in performance, nor are they impressive new features. Mostly, it seems, I’m noticing small mistakes and fixing them. What’s more, most of those mistakes aren’t bugs in the code, but rather typos and other mistakes in documentation. It’s tempting to view pull requests for documentation as second-class citizens; after all, these changes don’t improve the application itself. Still, I’ve come to realize that improvements to documentation have a high yield, since better documentation makes every future developer using the code more effective. The inherent leverage in writing high-quality documentation means that you don’t need to create the next Requests or Redis to have a big impact.
I’ve made a career out of enabling others to build user-facing features and functionality, and I find that writing and improving documentation is an extension of that. Designing overall system architecture and building the basic frameworks upon which others create user-facing features is one way to facilitate software development; documenting existing software well is another, equally powerful way to achieve the same goal. The importance of documentation is succinctly described by Kelsey Hightower.
Even if you’re not writing Jessfraz or Antirez level code, you can have a similarly large impact by writing and improving the documentation that enables the next generation of developers to build amazing things.