EGGER APPS

The Egger Apps Blog

18 Jun 2013

Introducing PG Commander

PG Commander Icon

PG Commander is a Mac client for PostgreSQL databases. I made it for everyone who wants to access a PostgreSQL server: developers, database administrators and content editors. In this blog post I talk about why I made it, and what makes it different.

Motivation

As I started working with PostgreSQL, I missed one thing: a nice graphical client. For MySQL databases, there is a great app named Sequel Pro. But there was no equivalent for PostgreSQL. I tried using Navicat, pgAdmin and psql. I looked at all the options from the Postgres GUI tools wiki page. Nothing seemed to be as nice to use as Sequel Pro. There has been repeated discussion about adding PostgreSQL support to Sequel Pro, but it didn't seem to be happening.

So I decided to try write my own client for PostgreSQL. And now, several months later, I can present a beta version.

The Concept

When I work on a website, I'm always connected to a database. I spend most of my time doing these things:

These are the most important features of a database client for me. Most graphical database clients try to do so many more things, and they forget to optimize the most basic functions. The result are applications with countless features, hundreds of buttons, and a confusing user interface. My concept for PG Commander is the opposite: Limit the functionality, and provide the best user experience.

Focus is the key to a great user experience. There's no need for a client to do everything. Developers will use the best solution for a problem. Therefore I will try to make PG Commander the best at what it does. If there already exists a great solution to a problem, I will not waste time on adding a mediocre solution to my app. For example, there are many great solutions for backing up PostgreSQL databases. There's little to be gained by adding a half-baked backup function to PG Commander.

For every feature I add to PG Commander, I spend a lot of time to get the user interface just right. This means that development progresses at a slow pace. I spent days on getting the pagination to work right, and it took me more than a week to create the UI for editing fields with foreign keys. This means that I will never be able to compete on features with other database clients. But in exchange PG Commander will provide a vastly superior user experience.

Current State

I have been working on PG Commander for some time now. I've implemented basic features for viewing and editing tables, and I've implemented a nice graphical SQL terminal. The app is already surprisingly usable for many daily tasks.

I'm at a point now where I need user feedback. What works for me, might not work for others. So to make PG Commander the great product I strive for, I need you to tell me if I'm on the right track.

Therefore I have decided to start a public beta. You can download PG Commander right now! Visit the PG Commander Website to download the beta, look at the changelist, or sign up for the newsletter.

If you decide to try my app, I appreciate any comments you have. Let me know if you like the concept, if it works for you, and if it doesn't. Email me at jakob@eggerapps.at.