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, your hobbies and where you are from.
I live in Philadelphia and have worked on Postgres for 24 years. My heritage is Armenian.
Any Social Media channels of yours we should be aware of?
My website is momjian.us.
When did you start using PostgreSQL, and why?
I was a consultant writing database applications. I wanted an SQL database to use on my home Unix machine, and Postgres was both free and I could see how the database worked internally.
Do you remember which version of PostgreSQL you started with?
It was Postgres95, version 1.01.
Have you studied at a university? If yes, was it related to computers? Did your study help you with your current job?
I never took a computer course, but read lots of books and experimented.
What other databases are you using? Which one is your favorite?
I used Ingres and Informix in the 1990’s.
On which PostgreSQL-related projects are you currently working?
Uh, mostly helping to build the community, but I take on documentation improvements and small patches.
How do you contribute to PostgreSQL?
Community management, public speaking, blogging, patch application.
Any contributions to PostgreSQL which do not involve writing code?
Sure, the ones above.
What is your favorite PostgreSQL extension?
Probably PostGIS, since it extends Postgres to enable an important use case.
What is the most annoying PostgreSQL thing you can think of? And any chance to fix it?
I think we need the system to be auto-tuned better, particularly postgresql.conf parameters. Parallelism tuning is particularly difficult.
What is the feature you like most in the latest PostgreSQL version?
Adding to that, what feature/mechanism would you like to see in PostgreSQL? And why?
I think sharding is an important workload we need to support.
Could you describe your PostgreSQL development toolbox?
I am pretty old-school: ssh, MicroEmacs, Bash scripts, GNU mkid.
Which skills are a must have for a PostgreSQL developer/user?
You must know C but it still takes a lot of study to understand all the Postgres subsystems.
Do you use any git best practices, which makes working with PostgreSQL easier?
I wrap every git action in a bash script that can automate my workfload and check for mistakes.
Which PostgreSQL conferences do you visit? Do you submit talks?
Do you think Postgres has a high entry barrier?
No, but it does so many things, people often treat it like a normal relational databases and miss using many of its advanced features.
What is your advice for people who want to start PostgreSQL developing - as in, contributing to the project. Where and how should they start?
Do you think PostgreSQL will be here for many years in the future?
Well, I am 24 years into this, and the code is 34 years old. I think the ability of Postgres to adjust to new workload demands, and its strong community, means it will probably be used for many more decades.
Would you recommend Postgres for business, or for side projects?
I think Postgres is good for all relational database workloads except embedded use cases, where SQLite is best, and for petabyte workloads.
Are you reading the -hackers mailinglist? Any other list?
I read all the lists.
What other places do you hang out?
Which other Open Source projects are you involved or interested in?
I get involved in other projects as I find bugs or need features, but not regularly.