Reading time: 7 minutes
PostgreSQL is the World’s most advanced Open Source Relational Database. The interview series “PostgreSQL Person of the Week” presents the people who make the project what it is today. Read all interviews here.
Please tell us about yourself, and where you are from.
I grew up as an Army brat - someone who moves from base to base. I am settled with my family now and live in a coastal town between Boston and Cape Cod.
I joined EDB in 2013 as a Database Consultant after working with Postgres for several years in the “industry.” Most of my time as a Database Consultant was spent on Postgres-related projects onsite at the customer’s office. Many years later, those experiences working directly with customers shaped my thinking as a Product Manager.
How do you spend your free time? What are your hobbies?
I’ve always enjoyed staying active outside: walking, swimming, and even yard work. I have a wife and two young daughters who are less than two years apart, and my daughters are getting to the age where they are doing activities that are fun to watch, like gymnastics. I still prioritize getting a few training sessions in Brazilian Jiu-Jitsu every week. BJJ is great for both mental and physical health.
Any Social Media channels of yours we should be aware of?
No, I mostly avoid social media besides the unavoidable LinkedIn and tech-related Slack workspaces.
Last book you read? Or a book you want to recommend to readers?
The Sandworm book (cybersecurity related) and Westworld Psychology: Violent Delights are the last two books I read. It certainly takes me more calendar days to get through a book than it used to.
Sandworm is a well documented history of certain cyberwar events, including the NotPetya cyberattacks. Along with the historical element that is relevant today, a good takeaway was how Ukraine developed plans to fall back on analog options when online systems were knocked offline by malicious actors.
Westword Psychology is a good read if you are a fan of the show like I am and want to explore some of the show’s themes: artificial intelligence, cognitive dissonance, and free will.
Any favorite movie, or show?
My favorite show airing now is ‘For All Mankind.’ As you can guess from my book answer, I’m looking forward to Westworld returning this summer. Since I don’t watch too many shows, I still prefer the big productions with weekly releases.
What is the best advice you ever got?
Not necessarily advice, but the quote - “You can do what you decide to do - but you cannot decide what you will decide to do” stuck with me. While it first sounds like mumbo jumbo, it is a good reminder to continually investigate what factors play a role in making a decision or taking action.
When did you start using PostgreSQL, and why?
I don’t remember exactly when, but in the early to mid-2000s, I was working on a greenfield application to catalog collections of raster and later LiDAR data; it was a complete storage project: a mix of disk and database storage. And because of organizational policies, the process of developing against an existing commercial database and collaborating with others was too slow. But, I still had superuser access on my system, so I started prototyping with Postgres and convinced others to follow along, which didn’t take much convincing. The project went smoothly, and Postgres later became a supported system. It was mind blowing at the time to run this powerful database with no licensing restrictions on my local system and even at home.
Do you remember which version of PostgreSQL you started with?
I started with 8.0 but more heavy usage came with 8.3, after Esri started supporting Postgres as a geodatabase. It was convenient to write server-side functions with Postgres/PostGIS and still allow analysts to use the desktop software they’ve spent their careers using.
What other databases are you using? Which one is your favorite?
While I’m not working with them daily, I’ve been doing more research around distributed databases. Another area of interest is osquery, an open-source project out of Facebook that allows you to use SQL to query a system. Since containers are just Linux, you can inspect containers with a little bit of SQL, and some extensions to osquery exist that enable you to query the Kubernetes API with SQL.
On which PostgreSQL-related projects are you currently working?
Any contributions to PostgreSQL which do not involve writing code?
I’m the Product Manager for the Database Server, Extensions, and Backup and Recovery at EDB. I work directly with many large companies that aren’t accustomed to going through a community project for help and enhancement requests. Think of companies that worked directly with one database vendor for at least two decades. EDB employs full-time contributors to PostgreSQL. I try to give those customers a voice in consultation with the Postgres contributors within EDB. Our preference is to work with the community and meet customer needs upstream in Postgres. When that is not possible or timely, then we look at meeting customer needs in a proprietary fork of Postgres or as an extension.
What is your favorite PostgreSQL extension?
The foreign data wrappers, mongo_fdw in particular.
What is the most annoying PostgreSQL thing you can think of? And any chance to fix it?
Annoying is a bit strong, but it is frustrating how little long-held Postgres tuning rule of thumb for memory and Disk I/O seem to apply in public cloud environments and even differ between public cloud environments. Hopefully, the Asynchronous and “direct” IO support being discussed on pgsql-hackers eventually helps in this area.
What is the feature you like most in the latest PostgreSQL version?
v15 Beta 1 is out now, and MERGE is getting a lot of attention for a good reason beyond migrations: it is a clean way to put conditional logic into a single SQL statement. Server side backup compression introduced in v15 will have a significant impact; those who need it, really need it.
Adding to that, what feature/mechanism would you like to see in PostgreSQL? And why?
I can remember back when there were no backup tools for Postgres. Everyone rolled with their own shell scripts. But now there are several good backup and recovery tools for Postgres, a considerable advancement from the old days. At the same time, some significant capabilities like incremental backup seem best done upstream in pg_basebackup.
Could you describe your PostgreSQL development toolbox?
I try to access and work with PostgreSQL like our customers are most likely to in production: either stock terminal and psql or Postgres Enterprise Manager (PEM).
Which PostgreSQL conferences do you visit? Do you submit talks?
I’ve been to and spoken at Postgres Vision. Outside of Postgres-centric conferences, I’ve spoken at several DevOps conferences, mainly on the topic of Postgres on Kubernetes.
Do you think PostgreSQL has a high entry barrier?
It seems silly, but I recall the most common barrier being new users getting denied because of the default pg_hba setting. At least it used to be a common post. That seems to have gotten sorted out because I don’t recall it coming up in a long, long time.
Along with local installations, you can quickly deploy Postgres in Kubernetes with just a little YAML when using the right operator. And every major cloud has a managed Postgres service. Once Postgres is running, most people get pretty far exploring a “cluster” just using pgAdmin4. So, it is easy to get up and running with Postgres in whatever environment you are most comfortable in.
Do you think PostgreSQL will be here for many years in the future?
Yes. But, for Postgres to thrive long into the future, the conditions must still exist where features generally beneficial for everyone that take years of dedicated development time still get sponsored. With the number of “big” projects happening around Postgres that do not have general-purpose usability, we should not take it for granted.
Would you recommend PostgreSQL for business, or for side projects?
Postgres has been ready for business for many years now. When I started at EDB in 2013, many of my conversations were with those who had very little exposure to Postgres, but many years running mission-critical databases. And those early conversations really revolved around Postgres being “production ready .” I haven’t had that conversation in years.
What places do you hang out?
I’m still keeping up with the CloudNativePG community project and if you are interested in Postgres+Kubernetes, join the Slack workspace, and we can chat there.