DEV Community

Cover image for pgDay Paris: no notes!
Floor Drees
Floor Drees

Posted on

pgDay Paris: no notes!

Or... yes notes, but not on the event itself. I learned a LOT about how the Postgres project is organized, and what newcomers (to the project) struggle with. And I rode Slonik (not in a crazy sexual way).

Vik Fearing (@pg_xocolatl on Twitter) typically organizes pgDay Paris, with Carole Arbaud (@pg_krol). This year however Karen Jex (@karenhjex) took the lead, and she did a magnificent job, despite strikes, protests, and literal fires in the streets.

My Aiven colleague Francesco Tisiot (@ftisiot) talked about the correct usage of strings to avoid many problems of where their misusage creates unparsable datasets, in his talk “Fix your strings”. I got to room host both of the tracks for a part of the day.

DEI and Postgres

One of the tracks had just female speakers. I hadn’t even noticed at first, but later heard it was deliberate. Postgres Women organized a group photo.

Magali Milbergue talked about the value of non-technical talk at technical events (bumped to a keynote, since the keynote speaker got sick the night before), and just how bad (and worse) we’re doing in terms of Diversity, Equity, and Inclusion as an industry.

I was a little surprised that such a mature community apparently still needs to hear this, but then again, I didn’t think people needed to be told to upgrade their instances (read on). And looking at the make-up of the core contributors group of Postgres - although a lovely bunch - clearly there's still room for improvement.

Updating Postgres

Lætitia Avrot, Field CTO at EDB, mentioned the many customers who are still on Postgres 9.x (?) - while 15.2 is the current version. Postgres always supports 5 major versions, which is quite generous for any project really. But all those folks are on an unsupported version. That brings with it security concerns, and a whole host of features that we might make content around, aren’t even available to a whole lot of (Enterprise) customers - “Minor releases in Postgres will never include new features, only bug fixes.”

Other than commercial projects, PostgreSQL doesn't have set release dates, but usually a new version drops in fall - in any case they release every year, so companies could “just reserve time” to upgrade their instances. A patch is ready once people say they're happy with it, and there are no objections.

Upgrade strategies, according to Lætitia:

  1. Can you afford a service disruption? Just upgrade.
  2. READ THE RELEASE NOTES
  3. Tools for major update: export/import data, pg_upgrade, use logical replication

Contributing to PostgreSQL

Melih Mutlu used to work on hyperscale Postgres with Citus Data (acquired by Microsoft in… 2018), but end/2022 started working on PostgreSQL as part of the open source team at Microsoft. With his talk he aims to help other first time contributors like him, and to give feedback on the onboarding experience.

The core contributors of Postgres are free software folks. Free as in freedom, not as in price. They’re mostly opposed to moving to GitHub even though people new(er) to the project are asking for it. When I asked some of them why, they said that GitHub will just bring “drive-by contributions, from people who just take time away from the project”. The message: “We’ve been here before GitHub, and we will be here after it’s gone.”

Where to start then? Melih watched various talks and read many blog posts. Some concepts that were new to him:

  • Patch - he was used to PRs
  • Mailing list - changes are send over email
  • IRC

The [E] labels on the todo list indicate that a thing is Easier to implement. Sadly there's only a handful of beginner friendly tasks at any given time. Picking his first tasks, Melih:

  1. Tried to build Postgres using different setups
  2. Read the docs and looked for opportunities for improvement
  3. Discussed with Postgres committers on his team at Microsoft on where he could bring value

The community is generally welcoming and helpful, the mailing list is archived, but it's hard to get answers if you're not "known" yet.

There's hundreds of emails, nobody (or very few) will read your message, but if you comment and test your code, write good commit messages, Postgres "hackers" will figure out what your patch does that way.

And one shouldn’t forget to list their patch as a commit fest entry.

The PostgreSQL docs

According to technical writer Sarah Haïm-Lubczanski Postgres is the anti-example of great documentation, with its walls of text. Sarah recommends using the diataxis framework, like the Kubernetes project, and Azure SQL. We’re using Diataxis at Aiven as well.

The docs are 26 years old, and according to Sarah need:

  • shortcuts and TL;DRs - “even MySQL does this!”
  • more callouts - “like MongoDB”
  • diagrams!! - “like Duck DB (no screenshots because those are a nightmare to maintain)”
  • markup for easier scanning

The Postgres documentation only has 3 images (yes, in total), and 1 of them is not accessible for people who are colorblind. Sarah hopes for more support for visual learners.

Returning theme of the day: there's no information on how to contribute to Postgres (contributing guide). Changes to the docs are submitted through a... form???!!

What’s next?

Top comments (0)