Contributing to Postgres
How do you contribute to Postgres? Read some tips on how to familiarize yourself with the process and follow what's happening.
Join the DZone community and get the full member experience.
Join For FreeAbout once a month, I get this question: “How do I contribute to Postgres?.” PostgreSQL is a great database with a solid code base, and for many of us, contributing back to open source is a worthwhile cause. The thing about contributing back to Postgres is you generally don’t just jump right in and commit code on day one. So figuring out where to start can be a bit overwhelming. If you’re considering getting more involved with Postgres, here are a few tips that you may find helpful.
Follow What’s Happening
The number one way to familiarize yourself with the Postgres development and the code community is to subscribe to the mailing lists. Even if you’re not considering contributing back, the mailing lists can be a great place to level up your knowledge and skills around Postgres. Fair warning: the mailing lists can be very active. But that’s ok, as you don’t necessarily need to read every email as it happens — daily digests work just fine. There is a long list of mailing lists you can subscribe to, but here are a few I think you should know about:
- pgsql-general — This is the most active of mailing lists where you’ll find questions about working with Postgres and troubleshooting. It’s a great place to start to chime in and help others as you see questions.
- pgsql-hackers — Where core development happens. A must read to follow along for a few months before you start contributing yourself
- pgsql-announce — Major announcements about new releases and happenings with Postgres.
- pgsql-advocacy — If you’re more interested in the evangelism side this one is worth a subscription.
Following these lists will definitely prepare you to contribute code in the future and will give you the opportunity to chime in to the discussions.
Familiarize Yourself With the Process
As you are reading along with the mailing lists, the docs will become one of your best friends for understanding how certain things work. Postgres docs are rich with how things work, so when you have questions, it's best to check there instead of asking what may have already been answered. Different areas may be slightly different to contribute to, and it can range from docs improvements to bug fixes to new features. The PostgreSQL wiki has its own guide to help prepare you for contributing.
So You Think You Want to Contribute?
You’ve read the mailing lists, you’ve chimed in to some discussions, and you’re ready. But where do you begin?
One of the best places is to help with code review of open patches during a commitfest. You see, development happens in sprints (known as commitfests) for Postgres. Within the commitfest app, you can browse the various commitfests, browse open patches, and review/comment on them. Often, just as much work can go into the review of patches that go into writing them, so contributing to review and testing can be extremely helpful.
You’ve Reviewed Some Patches, You’re Ready to Write Your Own
Before you just jump right in and write a patch, it can be a good idea to test the waters. Consider starting back at step one with a discussion on the mailing list. Lay out the problem that you see and what you’re interested in helping to fix. Sometimes, someone else may already be working on it or may see dangers in that area, or just maybe the mailing list is overwhelmingly on board and looking forward to your patch. What you picked up from following the mailing lists and reviewing patches already should do you well as you start to dig in. Then, once it is written, submit it during an open commitfest.
Code Isn’t the Only Way
Yes, Postgres is code, and at heart, it is a database. But it is more than that; it’s a community. Postgres doesn’t work on code alone, it works from people sharing their knowledge on it and helping others. If you don’t feel quite ready to jump in and contribute, there are plenty of opportunities to give back such as joining your area non-profit to support evangelism efforts: PostgreSQL.US in the US and PostgreSQL EU in Europe. You can also yourself start blogging about Postgres (if you do, register your blog for PostgreSQL Planet) or consider speaking at your nearby user group.
Not everyone will be a PostgreSQL developer, but that doesn’t mean you can’t follow along and participate. If you just want to lurk that’s perfectly fine. Consider subscribing to Postgres Weekly or follow on twitter @postgresql.
Opinions expressed by DZone contributors are their own.
Comments