In an eerie turn of events, my ex-, ex-, ex-employer Ingres Corporation has been resurrected by, of all people, Terry Garnett, one of Oracle’s early marketing vice presidents, now of Garnett & Helfrich Capital. They have bought Ingres back from Computer Associates, open sourced it, and are building a RedHat-like, open-source business around it. To boot, they have built quite an executive team, including the recent poaching of well-respected vice president Bill Maimone from Oracle.
The whole episode reminds me of my favorite bad sci-fi movie, Escape from New York, where lead character Snake Plissken is consistently greeted with: “Snake Plissken? I thought you were dead.” The same could be said of Ingres.
For those not familiar with RDBMS history, Ingres was one of the first relational database management systems (RDBMSs) and was created at UC Berkeley. I worked with Ingres at the Center for Computational Seismology at Lawrence Berkeley Lab while I was in school. (We let them use the tape drive on our VAX 11/780 and were given a free license in return.)
After graduating, I went to work for the vendor, Relational Technology, Inc., then run by CEO Gary Morgenthaler with brilliant visionary Michael Stonebraker acting as de facto CTO. When I joined Ingres in 1985, it was one of the “big three” relational vendors.
- Relational Software, Inc., makers of Oracle, founded by Larry Ellison and Bob Miner
- Relational Technology, Inc., makers of Ingres, founded by Michael Stonebraker, Eugene Wong, Larry Rowe, and (I think) Jon Nackerud and Gary Morgenthaler.
- Relational Database Systems, Inc., makers of Informix, founded by Roger Sippl.
Both Ingres and Oracle were approximately $30M in size in 1985. Informix was a bit smaller. (For those wondering “where’s Sybase?” they entered the market approximately 5 years after the big three.)
Ingres placed me in the bizarre situation of experiencing great success and great failure, simultaneously. On one hand, during my 7 years there we went from being a $30M company to a $250M division of a $400M company, and I went from first-line technical support rep to director of product marketing.
On the other hand, in the same timeframe, Oracle went from $30M to $1B, won the second largest opportunity of the 20th century (the first was PC operating systems), and left the broken “People’s Republic of Ingres” in its dust.
Others have written the Ingres epitaph. Here is my version. Ingres, in my estimation, failed for the following reasons.
At a product level:
- The wrong query language. Ingres bet on Quel. Oracle implemented SQL. While many (including the notable Chris Date) felt that Quel was “better,” it didn’t matter. IBM had stated its intention to implement SQL, making SQL a de facto standard. This was a huge difference and it’s often forgotten. As late as 1990, Ingres was still selling a native Quel engine that preprocessed SQL to Quel on the front-end. Differing semantics between the languages and the echo-back of Quel from the server when SQL was sent to it, all sent smart customers running in the other direction.
- Page-level locking. Oracle had row-level locking. Ingres had page-level locking. Oracle effectively rammed this difference down Ingres’s throat in virtually every sales situation. Later, Sybase would suffer a similar fate, particularly with applications vendors like SAP who refused to implement on Sybase until it had row-level locks.
- Lack of read consistency. The only way for readers to not block writers in Ingres was to set “READLOCK = NOLOCK.” (This was about as poorly chosen a piece of syntax for marketing purposes as SET SERIALIZABLE = FALSE in early Oracle versions.) Oracle offered read-consistent snapshots, leveraging timestamps and the logging systems’s before image file, that enabled a consistent view without blocking updates.
- Lack of connect by. Oracle added connect-by to SQL enabling the transitive closure of a table, most commonly needed in bills-of-materials and other “parts explosion” type queries.
- Portability strategy. Oracle did a much better job of porting not only to more platforms, but keeping the product the same across them. Ingres attempted to optimize more for each platform (e.g., squeezing the product into 640K on the PC by dropping functionality) which, while perhaps counter-intuitive, was a mistake.
At a business level:
- Failure to understand the tornado. The tornado refers to Geoffrey Moore’s metaphor for the hypergrowth phase of a high-tech, infrastructure market. During that phase, Moore argues that vendors should “just ship” in an attempt to gain as much market share as possible so as to pop out of the tornado as the clear market leader. During the tornado, increasing returns happen — the more clear your leadership, the more customers want to buy from you. The 3-5 year tornado determines who will lead the market for the next decade. Ingres missed this, was timid when it needed to be aggressive, and lost.
- Failure to understand the “best product” doesn’t necessarily win and that best product is defined in the mind of the customer. I joked that my job in 1989 was to explain why you didn’t need row-level locking when you had a 2K page size, but that didn’t matter. Customers wanted SQL, if inferior to Quel. Customers wanted row-locks, if somewhat unnecessary given a small page size. Customers wanted read consistency, which was indeed absolutely necessary. Product marketing literally begged R&D and the company for these features, but they were (1) deep architectural limitations and thus “hard” to fix, (2) deemed somewhat unnecessary at a technical level by engineering, and (3) generally viewed as sales and marketing problems that should be sold-around.
- Failure to understand sales and marketing. The company generally didn’t “get” either sales or marketing, underinvested in both, and in marketing’s case had a revolving door of executives of all ilks (e.g., engineers, alliances people, consumer marketers) except those who understood the products and the customers. I had something like 10 bosses in marketing in 4 or 5 years.
So every year, Oracle planned to double and Ingres planned to grow 50% or so. Every year the execs told us this was the year that Oracle would get its comeuppance. Every year, Oracle doubled, or more than doubled. Ever year, we found it harder and harder to make the 50% growth target.
The laws of compounding took effect and across some 7 years Ingres went from being 100% of Oracle’s size to 25%. Oracle, indeed, hit the wall around 1990, but it was too late. Ingres had lost. So many people were so invested in Oracle that it literally couldn’t fail. Larry Ellison got about $100M from the Japanese (NTT), restated revenues for all the bricks that had been shipped over the years (as I recall removing an entire Sybase from its books at the time), and turned the company around.
Ingres was bought by ASK in 1990 and sold to Computer Associates around 1992. I thought it would rest in peace in the CA cemetery for eternity, until I learned of its recent spin-out.
To say that Ingres had a strong corporate culture is an understatement. In fact, it lives on today at the Ex-Ingres website, complete with one of my favorite slogans: “Ingres corporate culture without the corporation.”
Many successful companies sprung from Ingres. Documentum and Forte are two of the bigger successes. The Forte crowd lives on today at AmberPoint. John Newton, one of Documentum’s two founders, is trying his luck at open source with Al Fresco. Lesser known but quite successful, Perforce, was founded by lab-coat-wearing Ingres engineer Christopher Seiwald who, after reading Positioning, learned that a company should try to own one word in the mind of a customer, decided to build the fast configuration management tool, and quite successfully did just that.
Will the new Ingres be successful? They have quite a team, but one never knows. The whole open source vs. subscription/ASP vs. traditional enterprise software licensing battle is in reality just beginning. How I think it all ends will be the subject of another post.