Josef Machytka
Reading time: 13 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 was born in Czechia and lived most of my life there. However, for the last 12 years, my family and I have been calling Berlin, Germany, our home. It is an open-minded place that gives people a lot of freedom, we like it here very much.
How do you spend your free time? What are your hobbies?
My biggest hobby is my family. My wife is an artistic painter, and in the past, I helped her organize her exhibitions. Now she focuses on digital art, so my IT knowledge also comes in handy. We have two children: a 23-year-old daughter and a 17-year-old son, both of whom aspire to work in the film or gaming industries.
Besides that, I have two lifelong hobbies: databases and Jungian psychology. My colleagues usually don’t understand how I can enjoy databases — which I do professionally — as a hobby, but I find databases fascinating. So I study or test them in my free time too. I’m also deeply interested in Jungian psychology, because I come from a family of doctors and both my parents were quite fascinated by psychology, even though they practiced in other medical fields.
Recently, I discovered a new passion for 3D printing. Since my son studies 3D design, animation, and game programming, I bought a beginner-level 3D printer and have been making various creations. It’s a fascinating process that constantly teaches me new things.
Any exercises you do regularly?
During my life, I’ve tried different physical activities, starting with weight training during my teenage years, then moving on to volleyball and long-distance cycling during my university studies. I’ve also done some long-distance pilgrimage hikes, sleeping outdoors in nature. Recently, though, I’ve scaled back to just taking walks.
Berlin is an exceptional place with a very colorful history, and practically every street has its own genius loci. There are many fascinating examples of different architectural styles, so simply walking through the city is an amazing, very enriching experience. In the summer, we often head to the Baltic Sea—mainly the islands of Usedom and Poel—where we enjoy long walks on the beach.
Any Social Media channels of yours we should be aware of?
I have my main profile on LinkedIn.
And I also regularly publish on Medium.
Those are two most important links I can give you. I also have profiles on researchgate.net, and academia.edu.
Are you known by a nickname in the community? If yes, what’s the history?
I had some nicknames among friends during my cycling and hiking days, related to my love of science fiction movies — especially Star Trek and Star Wars — but I don’t use them anymore.
Last book you read? Or a book you want to recommend to readers?
If I don’t count manuals and documentation — which I have to study almost daily — then I prefer audiobooks over regular books. After staring at multiple screens all day, I like to give my eyes a break. Or I listen to audiobooks while driving. I enjoy a broad range of genres connected mainly to my interest in Jungian psychology, particularly its archetypal aspects. Some titles might actually surprise readers. But I also like very good action stories - here I follow recommendations of my children, they are knowledgeable about the latest titles.
Favorite movie, or show?
Thanks to my two children, I enjoy a wide variety of movies and shows — from manga animation, Disney films, and musicals, to Star Wars, Star Trek, and even intense action movies. Both of my kids want to work in the entertainment/film industry, so they watch a lot of movies to keep up with current trends. We often watch them together so we can have shared topics of conversation. This also fits nicely with my interest in the archetypal side of Jungian psychology — it’s all about stories and heroes.
Best music, best song?
I prefer epic movie soundtracks, particularly by Hans Zimmer, Thomas Bergersen, Lorne Balfe, Armen Hambar, Ennio Morricone, Steve Jablonsky, and Lin-Manuel Miranda. I don’t have a single favorite song, but I especially admire the work of Hans Zimmer and Thomas Bergersen.
Best food?
I’ve been a vegetarian for 30 years, and I love Asian cuisine—especially Vietnamese dishes. I always prefer food that’s made with genuine care and enthusiasm. Living in Berlin makes being a vegetarian much easier, since so many young people here are vegetarians or vegans. According to some surveys, at least 10% of the population are vegetarians or vegans, and up to 30% prefer vegetarian meals. Shops and restaurants recognize this, so it’s very easy to find veggie options everywhere.
Practically every restaurant has at least one vegetarian choice or a special veggie menu. Even the ever present Turkish fast-food stands and small bistros have plenty of tasty Mediterranean vegetarian dishes. There are also many excellent fully vegetarian restaurants all over Berlin. In Mitte, I can recommend Kim999, Vegan Living - Quy Nguyen, Soy, Daluma, Mom’s Vegan Cooking, or Vegan Pirates, however there are many others in different parts of the city. Google maps can always help here. But Berlin is truly exceptional in this regard; in other parts of Germany, we’ve sometimes struggled to find vegetarian food.
Best drink? Non-alcoholic or alcoholic?
I love high-quality tea, especially Korean or Taiwanese green teas and oolongs. In Czechia, there’s a network of tearooms called “Good Tearoom,” offering excellent teas from all around the world. My family and I used to visit them quite often, so our children also grew to appreciate good tea.
As for alcohol, I don’t drink it at all. I grew up in the Czech town of Ostrava, which was heavily industrialized in those days, with mines and iron production. Because the work was so dangerous and demanding, alcohol consumption there was extremely high. I had some very bad experiences with people who were drunk, so I decided to stop consuming alcohol altogether.
What does your ideal weekend look like?
My ideal weekend is definitely spent with my family, and some of our best recent experiences have been our visits to Disneyland Paris. We share a strong interest in stories, heroes, and archetypes, so we all really enjoyed it. Many people have misconceptions about Disneyland, thinking it’s only for small children, but those kids often get overwhelmed and exhausted quickly. For us, it felt like stepping into a movie world, and the Disneyland employees work hard to create a positive, safe environment. It was truly a wonderful experience.
What’s still on your bucket list?
I generally don’t make long-term plans, especially given how quickly things can change these days. I also prefer not to share too many details about any plans I do have. I go by my instincts when it comes to what I want to achieve, but the order and priorities can shift. With everything going on in the world right now, it’s hard to insist on any fixed goals.
What is the best advice you ever got?
I had a very remarkable grandmother with a unique life philosophy, and from her, I learned what I call the “ultimate answers” to life and the universe. She grew up in Prague during the 1920s, in the cosmopolitan environment of the First Czechoslovak Republic. Her language and mentality were an incredible blend of different European influences, and she expressed her ideas in a special poetic style using the slang of that era, which mixed Czech, German, and French words. If I tried to translate her words directly into plain English, a lot of their depth and charm would be lost. Nevertheless, I cherish her insights, and they have guided me in many ways throughout my life.
When did you start using PostgreSQL, and why?
I worked for Czech Telecom/Telefonica in the Czech Republic for 15 years, where everything revolved around Oracle — from version 7.0 right up to 12c. I developed various applications in PL/SQL, Oracle Forms, and .NET. But in the 2010s, telecommunication companies experienced a significant drop in earnings and started looking for more cost-effective solutions. By that time, PostgreSQL was mature enough to serve as a solid alternative, so I began migrating Oracle-based systems to PostgreSQL 8.4/9.0. I’ve since worked with every new version of PostgreSQL that has come out.
Do you remember which version of PostgreSQL you started with?
Yes, I started with version 8.4 and it was already quite a good database with many interesting features, when compared with other databases of that time.
Have you studied at a university? If yes, was it related to computers? Did your study help you with your current job?
I studied Automation and Robotics at the Technical University in Ostrava. I was originally very interested in building automation and control systems, but at that time in Czechia, there weren’t many opportunities in that field. Then I discovered fascinating possibilities with databases — essentially another form of automation and control, just in a different arena. I shifted my focus to using databases to “automate” business processes, and my interest in psychology has also been helpful in this work. I have been doing databases ever since.
What other databases are you using? Which one is your favorite?
I started with dBase III/IV and FoxPro 2.0/2.5 back in the days of MS-DOS. I briefly worked with the key-value-oriented Mumps language on Digital-VAX systems, then built some web applications using MySQL, programmed with MS SQL, moved on to Oracle, and eventually to PostgreSQL. Lately, I’ve been involved in migrating from Sybase ASE, SQL Anywhere, MySQL, MS SQL, Informix, and Oracle to PostgreSQL. My favorite database is definitely PostgreSQL.
On which PostgreSQL-related projects are you currently working?
I work as a Professional Service Consultant, PostgreSQL specialist, so I have the opportunity to work on multiple different projects and problems. I enjoy all of them, and particularly those very complicated ones which require a deeper understanding of databases and operational systems.
How do you contribute to PostgreSQL?
I don’t contribute by writing PostgreSQL code. However, I often study its code when I’m looking to understand certain behaviors or need detailed information for my articles and talks about PostgreSQL internals.
Any contributions to PostgreSQL which do not involve writing code?
I conduct PostgreSQL workshops and training sessions, write articles on credativ.de and Medium, and give talks at various PostgreSQL conferences and meetups.
What is your favorite PostgreSQL extension?
I work extensively with pg_stat_statements, which is a very useful extension. I also use pgstattuple quite often. Currently, I’m looking forward to exploring pg_analytics and pg_duckdb, as they hold a lot of promise for enhancing PostgreSQL capabilities in data analysis and data lakehouse environments. However, it seems they still need some time to mature.
What is the most annoying PostgreSQL thing you can think of? And any chance to fix it?
Some error messages in PostgreSQL are too generic and can be misleading. The ever present 1 GB memory allocation limit has also become quite restrictive. However, I’m not a C++ programmer myself, so I’m hoping that others in the community will work on improving these issues.
What is the feature you like most in the latest PostgreSQL version?
For me, the very important highlight in version 17 is the improvement in WHERE conditions involving subselects with an IN clause. This used to be a significant performance bottleneck in older releases, so many queries will now run much faster simply by upgrading to version 17.
Adding to that, what feature/mechanism would you like to see in PostgreSQL? And why?
Based on my experience with data analytics and data pipelines, I would like to see more advanced analytical functions, improved performance of analytical queries, and an enhanced columnar storage format in PostgreSQL. In my view, these features would make PostgreSQL even more modern and appealing.
Should PostgreSQL have a built-in connection pooler?
I have witnessed many PostgreSQL-related community projects come and go, including various connection poolers. Usually because of the rise of new technologies like cloud and Kubernetes. PostgreSQL always coexists with other technologies, so rather than adding a specific built-in feature, I believe PostgreSQL should focus on providing easy interfaces for easy creation of specialized extensions. The IT world changes rapidly, and companies have diverse use cases, so attempts to give people a one-size-fits-all solution can quickly become obsolete.
Should PostgreSQL have built-in multi-master replication?
I never saw any strong real life use case for this functionality in environments where I worked, so I personally do not see it as a priority.
Could you describe your PostgreSQL development toolbox?
I have worked with many different editors and environments throughout my career. Lately, I’ve been using Visual Studio Code and DBeaver. VS Code offers a lot of helpful extensions and simplifies many tasks, while DBeaver can connect to all the different databases I need and offers plenty of excellent features. If I do some remote repairs I also frequently use the psql interface in the Linux terminal, along with various Linux commands — and more recently, Windows PowerShell commands.
Which skills are a must have for a PostgreSQL developer/user?
I always worked with databases as a developer. So I had to learn a few practices that help me when developing database projects. First, I keep in mind that there’s always a chance some bug or error remains, so I maintain a mindset focused on uncovering and fixing potential issues. Another lesson I’ve learned is that the bug often lies in the area we least suspect, so I avoid any assumptions like “the error cannot be here.” Finally, I have noticed that the biggest bugs often happen at the end of the day, when people are eager to wrap up and go home. That mindset can lead to overlooking even very obvious errors because the focus shifts to finishing quickly rather than being thorough.
Which PostgreSQL conferences do you visit? Do you submit talks?
I love attending PostgreSQL conferences and MeetUps whenever I can. I really enjoy the creative atmosphere, and I always meet interesting new people while having inspiring and helpful discussions. I submit proposals regularly and have already delivered some interesting talks at several conferences. You can find a list of them in my speaker profile on Medium.
Do you think PostgreSQL will be here for many years in the future?
As Simon Riggs said at the European PostgreSQL 2023 conference in Prague: “Maybe in 20 years everything will be done in PostgreSQL.” I share his belief and hope that PostgreSQL is on the right track for that kind of future.
Would you recommend PostgreSQL for business, or for side projects?
In my opinion, PostgreSQL is the best option for almost any project. There are certain web-related use cases where MySQL might be more suitable due to its thread-based architecture.
Also, for mobile phone applications, developers would generally be better off with SQLite or the newer DuckDB as an embedded single-user database. But for everything else, I would recommend making PostgreSQL your first choice.
Are you reading the -hackers mailing list? Any other list?
I check PostgreSQL mailing lists when I need solutions for specific issues. Reading them on a regular basis would be too time-consuming for me.
What is your opinion on ORMs?
I do not have enough experience to make any judgments here. From what I have seen, ORMs worked well for handling small numbers of records, but I have never used it for any larger-scale applications.
SQL versus NoSQL databases?
I experienced the major NoSQL boom in the second half of the 2010s while working at a successful German startup. At the time, there were a lot of new NoSQL buzzwords, and some people saw PostgreSQL as “one of those old relational dinosaurs,” claiming it was not “sexy anymore,” even though our system heavily relied on it. Any NoSQL or cloud solutions were automatically assumed to be “much better than that old PostgreSQL.” However, that naive boom has subsided. PostgreSQL stood the test of time and is again the database of choice for many companies. These trends come in cycles. In the last 2 years everyone talked about vector databases, next year it will be something else. But just like with all other new use cases, I’m confident PostgreSQL will continue to catch up and grow.
Anything else you like to add?
Thank you for this opportunity to share my ideas and learnings.
Share: