Earlier this year we started a program (“Developer U”) to help colleagues who show promise for PostgreSQL Development to become contributors. Because I’m a softie for people’s origin stories, I talked to several of the participants about their motivations, hopes, dreams, and patches.
Mario on the right, during a team offsite last September
Mario Gonzalez is based in Chile, and works in the TPA (Trusted Postgres Architect) team at EDB. In past years he also worked on edb-python, Barman and repmgr.
A bit of background
Mario studied Computer Engineering, learning the Basic programming language when he was little. He used to work for Mandriva Linux, and during his time there he was able to contribute to gdesklets and the Gnome project. In Postgres he worked on a test concept project called "webtranslator" hosted on pgFoundry, translating Postgres SGML Docbook files into readable html. Among other things the tool was used to translate manuals into Spanish language.
Having an opportunity like Developer U is something Mario was looking for since joining EDB in December 2022. He actually asked his manager about it in his first week, who was optimistic that his new report could progress into Postgres development eventually. He was correct, but Mario also came in with Postgres and C programming experience, as well as a healthy dose of curiosity.
What excites Mario about PostgreSQL is that, it managed to survive where many other open source projects have died. "Postgres has proved to be mature enough to adapt to many scenarios. I'm sure whatever lies ahead, Postgres will carry on being a main actor!"
Contributing to PostgreSQL
Despite his experience with Postgres as an end user, and his knowledge of C, it still surprised Mario that he could really work with Postgres code practically immediately. Without diminishing the time investment, he’ll still have to make, Mario can see becoming a Postgres developer is within grasp.
During the Developer U kick-off Mario learnt that in Postgres the DDL (Data Definition Language) of an object cannot be extracted without running `pg_dumpall`. "We worked on a patch that can be used to see what's the DDL of `CREATE ROLE` directly. We think this can be the base for multiple other statements too."
He’s looking forward to seeing the patches he worked on with his colleagues get merged. In the short term he plans to look at past commit fest patches that for some reason have not been merged, and investigate what changes would be required.
What’s next?
Beyond patches, Mario hopes to contribute to the Postgres community in ways that do not involve writing code, by volunteering at events for instance. You’ll surely see him around more!
Interested in getting in touch? Mario is active on LinkedIn, and of course on GitHub.