Part 2: Postgres incredible journey to the top with developers.

October 19, 2025


In August of this year, I published a blog entitled PostgreSQL’s incredible trip to the top with developers which shows how Postgres has become the most used, most loved and most desired database according to the Stack Overflow annual developer survey. In that blog I said, I want to do the series in two parts. After some thought, I have decided to make it a 3 part series. It will break down as follows:

Part 1: The aforementioned blog was just the facts regarding Postgres becoming the most loved, most desired and most used database by developers according to the stack overflow survey. 


Part 2: Why Postgres survived being a very distant second to MySQL in the early days of the mid to late 90’s. (that will be the blog you are currently reading).


Part 3: How Postgres took over the top spot. I won’t make the same mistake twice and say when I believe this blog will come out.

So on to why Postgres hung around despite MySQL’s amazing popularity and success in the early days of open source relational databases. Unlike the first blog in this series which was just the facts, this blog is mostly based on my own experience and derived opinions from those experiences. Therefore a bit about my background and who I have been able to talk to over the years.

I have been  around Postgres and Postgres Companies for over 15 years. I have had the honor to speak to many folks who were involved in the project from day one as well as many of the early adopters of Postgres. I was also at Sun Microsystems when my boss led Sun’s acquisition of MySQL for 1 Billion USD.  I  had a chance to speak to some of the people who were involved in the birth and subsequent success of that company as well as many of the people who were behind the strategy of this industry shaking purchase.

Both MySQL and Postgres arrived in the mid 90’s. Much has changed since then and both databases have evolved to incorporate some of the strengths of the other.  From what I can gather from conversations, my ailing memory and various sources on the web here are the reasons MySQL raced out in front of Postgres in the early days for the following reasons:

-MySQL had a Windows offering seven years before Postgres did. MySQL’s offering came out in 98 and Postgres' offering came out 7 years later in 2005. For all youngsters out there, after Windows NT and Windows 95 came out (in 1995) the vast majority of developers  moved to Windows 95+. This operating system is what most developers used at work and on their local machines for pet projects. So for the first seven years of its existence the majority of developers didn't have access to Postgres.

-MySQL was very fast for short and simple queries. Exactly what was needed for the incredible new industry being birthed by the emergence of the World Wide Web. Postgres, at the time, was more focussed on proper transaction processing and optimizations for complicated queries and was slower and less appropriate for the typical web application. I have no performance numbers for either MySQL or Postgres for this time period so this entirely based on what I have been told.

-MySQL had an investor based company behind it early on and was able to market the technology and hold user conferences. This didn’t happen at any kind of scale for Postgres until much later. There are differences of opinion regarding exactly when Postgres received marketing investment similar to that of MySQLs. Early companies behind Postgres included Great Bridge and EDB.

-The “M” in MySQL became very visible with the emergence of the LAMP (Linux, Apache, MySQL and PHP)  brand. The stack / brand became one of the fastest growing Web development platforms as new websites and new web based businesses were coming on line every day. All sorts of books were published on LAMP stack development. In addition, many college courses and boot camps were taught for this new way of cranking out web sites and web apps.

So in its early days, why didn’t Postgres go the way of the Berkeley Unix which I believe lost much of its relevance to the “L” in the LAMP stack.


So again from what I have learned through conversations, my personal experience and things I can find around the web here is what I believe to be the reasons why Postgres developed a strong and loyal following in the early days despite these amazing advantages and head start for MySQL.

The License. Postgres had and still has one the most permissive licenses. This enabled companies like Greenplum, Netezza, EDB and many others in the early days to use it in their products. The general understanding of what Postgres does and how it works permeated these companies and their user bases.

Transactions. MySQL didn’t get true ACID transactions until the early 2000s and even then the default storage engine did not have ACID compliant. This attracted the database purist and academics as well institutions who absolutely needed these transactional properties.

The source code. From what I have been told and from what I have observed with my own eyes the Postgres source code is absolutely pristine. High end developers loved working with it. Especially people who were database academics and former employees of proprietary database companies who wanted to continue work on databases in some way. Through a very vigorous review and development process, the source code  has remained clean and well documented to this day.

The optimizer. Many applications that were coming from Oracle or other proprietary databases needed some of the optimization techniques Postgres provided. In addition, many who had experience with previous optimizers wanted to work with the Postgres Optimizer.. I have asked several long time Postgres community members, “what attracted you to Postgres?” and they simply have answered “the optimizer”.

Extensibility. MySQL was very extensible in that storage engines could be plugged in by third parties.  However, Postgres had the ability to plug in new data types. This is how Postgres became an incredibly strong offering for Geo Spatial offerings. As a result of the PostGIS extension, an entire new set of companies and use cases were brought to Postgres.

So with this foundation, Postgres survived and developed a very strong following and experienced steady growth with developers. For my view on how it rose to the top, wait for Part 3 of this blog series.



 

Share this