Andreas 'acme' Scherf

Introduction

Hello, I'm Andreas "acme" Scherf, and I've been working with PostgreSQL for a while now. In this interview, we'll be talking about my experiences with PostgreSQL, its ecosystem, and what it means to contribute to the project.

Getting Started with PostgreSQL

When I first started using PostgreSQL, I was immediately drawn to its flexibility and power. The database's extensibility, combined with an active community of developers and users, made it easy for me to learn and start contributing.

This journey began when my university offered a PostgreSQL-based course as a side project. It allowed us to explore various aspects of the system in-depth while using Python and SQL.

Learning the Basics

In addition to learning about data types, functions, triggers, views, sequences, and indexing, understanding SQL basics were essential for me.

I started with a simple SELECT query that pulled all my users' information. From there, I expanded my skills by using different functions such as SUM, AVG, MAX, MIN, COUNT, GROUP BY, HAVING, JOIN, AND subqueries.

PostgreSQL's Ecosystem

As I started to explore more about PostgreSQL, I discovered that it has an extensive ecosystem of tools and projects.

Some key points include PostGIS, which offers support for geospatial data types and functions; pg_search, which enables full-text search over any table type in the database; and pgvector, which makes working with vectors easy.

Beyond SQL

PostgreSQL is a multi-language project, and as such, it can be used for both high-level and low-level programming.

I've been working on extensions written using Rust (pgrx) and C. While using Visual Studio Code with Lldb, I have found that my development process becomes more streamlined.

Development Toolbox

For extension development, I use both VSCode + Lldb and neovim.

I prefer vscode+lldb for the extension development because of their ease of access to tools and libraries. For main PostgreSQL codebase, as a patch reviewer, I only stick with neovim since there are fewer features.

Conferences and Workshops

I try to attend conferences whenever possible.

I have spoken at PGConf.EU 2023 and 2024, both held in Prague and Athens respectively, but haven't yet visited PgConf India. I've also submitted talks about my work during Google Summer of Code 2024 and 2025.

PostgreSQL's Future

As for PostgreSQL's future, I believe it will continue to thrive because of its flexibility, extensibility, and a motivated community.

This, combined with extensive documentation available online, makes it an ideal choice for newcomers to the project. For experienced developers, there are also plenty of opportunities to contribute, making it a rewarding experience.

Getting Started

If you're new to PostgreSQL development, I recommend starting by working with tools like monitoring tools and extensions.

I have found that these give exposure to how the system works internally and make it easier to start contributing. Staying active in the community is also essential for learning from others and getting help when needed.

Conclusion

Lastly, I want to thank Ilaria Battiston, Stephen Frost, Pavlo Golub, Boriss Mejias, and Amul Sul for helping me throughout my journey so far!

This experience has been truly rewarding. I have learned a lot from these individuals as well as the PostgreSQL community at large.