Hacker News new | past | comments | ask | show | jobs | submit login
PostgreSQL community impact of 2nd Quadrant purchase (momjian.us)
300 points by grzm on Oct 7, 2020 | hide | past | favorite | 98 comments

Bruce Momjian doesn't mention it in the OP blog post, but the PostgreSQL core team consists of just 5 people including himself: https://www.postgresql.org/community/contributors/

Keep that in mind when you note that he says:

> the acquisition causes edb's representation in the core team to be 60%

This works out to 3 out of 5 people including Bruce himself.

The core team is kept that way on purpose.

They're a decision making group (eg project direction), and the size doesn't reflect the number of active developers on the project in any way.

eg there are a lot more active developers than there are "core team"

It makes it pretty easy to solve the "50%" issue though. One person has to leave the core team, to be replaced by a newcomer.

Or expand it to seven people.

Is this a U.S. Supreme Court joke? Because if so... well done.

Or one of the three leaves their job.

Just 6 should be fine, the rule is "not over half", so half is ok.

It's generally good to have an odd number of people on any kind of voting board so that there aren't ties.

A better solution is to have an even number of people, but have a tie-breaker vote token that is passed around between everyone in round-robin fashion.

In the event of the tie, the tie-breaker vote owner resolves it and passes the to token to the next person.

In this manner, the decision bias is averaged out between all of the board members.

Whoever schedules the agenda can game the system by arranging the token to be in a preferred holder when there is a important decision to be made. Might happen ones in ten years, but bitterness does not have half-life.

And how exactly is that worse than an uneven number of people? If there is an uneven number of people there is no bias of a tie breaker to balance out.

Conventional wisdom... But I wonder if that is really true. If a tie indicates a truly divisive issue, might it be better to be stuck with the tie, and be forced to find a compromise?

> If a tie indicates a truly divisive issue, might it be better to be stuck with the tie, and be forced to find a compromise?

If 3 people prefer the bike shed to be "pale blue" and the other 3 prefer it to be "cornflower blue", does that make the color a "divisive issue"?

Ultimately, even for an issue where people have very strong feelings on both sides, it's far more important that forward progress be made. At some point, standing around arguing is only going to be counterproductive.

I gave a talk on a particularly divisive decision we had to make a few years ago:


Sure, bike shedding is a problem in general. I've been fortunate enough to have avoided it so far in my life, so I don't have much to say about it.

Anyway, my question was meant to challenge the assumption that "it's far more important that forward progress be made". If you're trying to run a business, it's hard to argue with of course.

> Anyway, my question was meant to challenge the assumption that "it's far more important that forward progress be made".

So just to be clear, what I certainly don't mean is that action should always be taken quickly without a proper consideration. Having a discussion is obviously important for understanding all the potential pros and cons of the various decisions. Additionally, it's really important that everyone feel like their voice is heard and their needs and preferences considered.

I'm talking about once all that's done. Sometimes you have a discussion, everyone basically understands what the other people want and where they're coming from, you're pretty sure all the relevant factors have been considered, and half of the people still prefer A, and the other half prefer B. At that point, further discussion is often counterproductive.

Seems like a more accurate title for this group, then, would be "core maintainers" — or even "board of trustees."

It's 2020, why are we still telling people what they're supposed to call themselves?

They could style as The Choir of the Aztounding Relational Pachyderm for all it ought to matter.

Notwithstanding which, it's pretty conventional for the role of FOSS project core teams to be administrative-deliberative stewardship and an umbrella authority for all project activities. The overlap with membership of the developer community and concern for technical outcomes is a function of the domain, not the team purpose. The governance consequence at hand being that representational proportions matter to preserve independence and the appearance thereof.

Conventions exist for a reason. Choosing a name which is immediately recognisable and conveys the meaning you know others will glean from it is a sensible and rational thing to do. In fact, picking outlandish names purely to "buck the trend" and make some kind of statement about naming and identity reeks of immaturity and ideology.

This view isn't merely bland, conservative, and patronising. I find it downright abhorrent, being the kind of sentiment at the roots of every organisation that ever excluded/demoralised the folks that didn't talk, look, think, or behave like some cookie-cutter template.

There is no assertable "fact" that diversity of expression, or the expression of preferences and identity, extends from immaturity or ideology. On the contrary, it is a mark of organisational and civilisational maturity, and willingness to embrace ideas, that such self-expression is possible, accepted, and encouraged. The qualifiers I'd suggest instead are heterogeneity and imagination, and there is no trend to buck; the world is, and always has been, full of complicated, imaginative people.

When I am very lucky, I even get to work with them.

Sans identity, the individual is a puppet, and sans creativity, humanity is cosmically uninteresting.

There are plenty of other ways to express your individual identity, without hindering ease of communication. In this particular case, giving the group a name which does not contain information about what the group does is contrary to the goal of communicating the group's purpose.

If your only goal is to communicate what a progressive, free thinking, modern ideologue you are, then sure, give your groups whatever names you like if that's the sort of people you want to dog whistle to. If, like most other people, you simply want to communicate the groups purpose in a quick way, then there are plenty of de facto standards to follow.

Good grief, what a pernicious worldview.

Fortunately, most people choosing whimsical names for things actually do so playfully and creatively. The idea that out there some grumpy clown with a stick up their ass about "ease of communication" is going to launch into a diatribe about "dog whistles" and "ideology", doesn't enter into that process.

Rather serendipitously my next library extraction is postgresql-related. I was pondering an appropriate name. In the circumstance I think I shall name it Chorale of the Aztounding Relational Pachyderm, and if anyone asks I will point them in your direction for an explanation.

> Chorale of the Aztounding Relational Pachyderm

If you change that slightly to "Chorale of the Relational Aztounding Pachyderm", it might hinder adoption. Or maybe not. ;)

I can't tell if this is a dig at the elaborate job titles we have today (Director of Creative, Employee Journey Advisor, Sales Engineer, Chief Happiness Officer, etc.) or progressive identity politics (pronouns, etc.). Perhaps they're not unrelated.

"The Choir of the Aztounding Relational Pachyderm" is exactly the kind of group name I would have expected to see in 90s hacker circles (similar to eg the group that produces POC || GTFO - "PASTOR MANUL LAPHROAIG AND HIS MERRY BAND OF REVERSE ENGINEERS").

You got me. All I remember is, xs4all threw the best parties and the characters of Cryptonomicon all seem eerily familiar.

Because naming is important. I don't call myself Prime Minister, because I'm not the Prime Minister. I don't call my index iterators `golf_ball` either for the same reason.

And yet President of the United States, and President of Germany are completely different roles.

People are not loop variables. You don't get to name them. Their names certainly do matter, but in exactly the opposite fashion.

I suppose that a mindset capable of reducing human agency to the status of loop variables, explains some of the frankly tyrannical opinions being expressed in response to my remark.

Do you ever comment in a tone that isn't permanently offended?

My tone is not offended, Prime Minister. My tone is wearily sardonic tinged with supercilious grandstanding.

How dare you not respect my naming preference, you supercilious tyrannical bigot.

The point being, if you did wish to be called Prime Minister then I'd respect your preference. Who's to say that you're not a Prime Minister? Or perhaps that your family name is actually Minister, and your nickname that everyone's known you by since high school is Prime?

Whatever you choose, it's not my business to judge.

What is your opinion on the investigation by the FBI about the person who impersonated an FBI officer on Twitter, then? Should people be allowed to call themselves FBI officers?

I have no opinion about US domestic policy and no standing to pronounce one, so I'm unlikely to form one in a hurry just to argue the toss. As for the dumpster fire that is Twitter: the usual advice is, for all Internet denizens is never read the comments, and Twitter is 100% comments. But I digress.

The equivalent, in all my own countries of citizenship, origin, or residence, might be that deceiving someone into thinking you are a police officer is already illegal, although simple impersonation may not be e.g. for satirical purposes. Satire aside, in a country that generally trusts its law enforcement personnel, such a deception, particularly in person, may have both high capacity for harm and a high likelihood it occurs for harm's sake. Nevertheless, notwithstanding my total unfamiliarity with the case you refer to, I struggle to see how Twitter is ever anything other than satire. My own Twitter profile reflects this view.

Curiously, in Australia, it is illegal to claim an association with Sir Donald Bradman, and for similar reasons of potential harm. Impersonating a Prime Minister is not, since it is a very low occupation and any attempt to do so is self-evidently preposterous.

> It's 2020, why are we still telling people what they're supposed to call themselves?

I think if you look closely you'll see GP didn't say they should be called that, just that it would be more accurate to call them that, presumably with respect to communicating their responsibilities to others.

Will you sponsor me to rush?

How much depends on so few in tech always amazes me.

Go on any major project and see the contributors and the distribution of commits between the top 5-10 vs everyone else and it's almost always startling.

Note that the postgres core team aren't all developing postgres itself, and that there's a vastly larger number of people working on postgres than the core team. They're basically "just" a body to escalate things to.

It's always pretty shocking. You even see it at big companies where you'll only have a few engineers working on the core product and then a ton of people working on supporting infrastructure (analytics, marketing and what have you) around them.

Pareto's Principle arises everywhere.

If so, one or two companies could handle fix this problem by dedicating an employee to working on Postgres.

Unfortunately, most of the likely candidates with money to throw around have their own pet database systems, and don't have in interest in Postgres.

Maybe one of the mid-sized cloud providers like Digital Ocean would be interested?

Google the names of the committers and major contributors, and you'll see many are working for quite large enterprise-y companies ;-)

Obviously, if more companies start supporting the community, that'd be even better.

There are many Postgres forks out there. Maybe the solution will be to have someone from EDB step down, and add e.g. an active contributor from Amazon to the core team?

> an active contributor from Amazon to the core team?

That would be weird, since Amazon has no major contributors. NTT, Microsoft, Fujitsu, or another seat for Crunchy Data (among other possibilities) would seem to be more natural choices than giving a seat to Amazon, looking at major contributors.

Fujitsu is the longest standing large company.

major? More like none.

Amazon is not exactly a large contributor to postgres...

It's sort of mind boggling how few people underpin the infrastructure and software so many of us we depend on.

Keep in mind that "core team" does not mean "core developers" here. The PostgreSQL core team's responsibilities are more about governing the community (see https://www.postgresql.org/developer/core/).

When it comes to development, it might be better to look at committers, i.e. people with the right to commit stuff, recognized contributors, or even people who submitted patch to a recent commitfest:

* https://wiki.postgresql.org/wiki/Committers

* https://www.postgresql.org/community/contributors/

* https://commitfest.postgresql.org/29/

And those groups are much larger and more diverse (in terms of employers). Plus if you look the the stats published by Robert Haas, some of the most active developers are working for other companies.

Edit: That being said, I'd love to see people from other companies participating in the community, and I'm generally trying to help new contributors with their patches.

That's true outside of software as well. It's a complex world out there. Follow a thread far enough and you'll find that 7 billion people isn't very many after all.

Why does this fact make a difference? His point still stands pretty strongly in light of this keep in mind comment.

Wow, that is such a small core team.

There are a couple big things that are probably useful context here.

The first is the different between core team and committers. The core team is much more like a steering committee than anything else. The core team is responsible for various policy issues, coordinating broader release activities, and handling disciplinary issues.

In contrast, committers are the ones that determine what code goes in and does not. The list of committers is about 30 people. And there are many people that work to contribute large pieces of code but not responsible for the final leg of committing.

Edit: I've written a bit more before on all of the non-code bits of Postgres - http://www.craigkerstiens.com/2017/10/31/postgres-the-non-co...

What percentage of committers now work at EDB?

My quick count looks like it is either 4 or 5, out of roughly 30. So they may be at nearly 20%. It is on the higher end, but it's not something we haven't seen before that then changes/swings back another way.

Thanks! Agreed that's much less concerning.

Congrats on the job change to https://www.crunchydata.com/ btw! Hope you're able to continue your community-benefiting work there.

A few personal thoughts on the various points raised.

I've been in and around the community for quite some years. The acquisition hopefully was a good outcome for 2ndQuadrant and EDB. But I don't personally see it changing the landscape of providers. There are a lot of companies that offer support, consulting, and services for Postgres. 2ndQuadrant has long been one place I would refer people to in Europe, but less so in the US. While some friends do work in the US for them most of their engineering happens in EU. There is a lot of options in Europe still, from Dalibo to Cybertec to Postgres Professional. In the US you've had Crunchy Data, PGExperts, and EDB for some time (all of them in existence for longer than 5 years now). That has not changed, maybe we need more than this... but it isn't something to the scale of many other monopolies.

The percentage of concentration on core is an issue and my outside of core understanding is that such is being addressed.

For non-competes, perhaps this is a bigger issue than I realize. But being based in California I'm surprised to see this. Having worked at one place running and managing Postgres (Heroku) to then go to another to run and manage Postgres (Citus Data) to joining Microsoft to run and manage Postgres, I'm now doing similar at Crunchy Data building and running our multi-cloud Postgres service - https://www.crunchybridge.com. Perhaps non-competes are a big issue for some east coast or for European countries, but at least where I sit I'm surprised by that argument.

Wow, no discussion on Hacker News about this yet? This is a pretty big change in the PostgreSQL world!

Someone did post the announcement, but it didn't get any attention.


This is def worth paying attention to, psql is one of the few genuinely good examples of well balanced business-private participation. Most enterprise open source is a shit show in some way or other

It sounds like a pessimistic outlook. I can name a few high profile OSS projects with proactive communities around them, but not one with the typical toxic office drama. Can you share some examples please?

Oracle’s ownership of MySQL AB seems to have negative impact on its development. My concern, which is also raised in the article, is whether similar things will happen to Postgresql.

I doubt that's possible, for a number of reasons.

1) Neither company owns any part of the PostgreSQL code / docs. We do have various proprietary tools, of course, but so do other companies.

2) The companies employ quite a few PostgreSQL hackers, but if you look at the development stats (e.g. http://rhaas.blogspot.com/2020/05/who-contributed-to-postgre...) you'll see there are many committers and developers in other companies.

That being said, I agree with the concerns expressed by Bruce in his blog post. Or more precisely - I do understand why people in the community have those concerns, but I believe (hope) it's not going to harm the community.

This is why I am thankful that Percona [1] is already involved with PG.

Percona created their own mysql distribution [2] with a number of improvements, which was quite helpful while awaiting (very long) release cycles from Oracle, for MySQL community.

1 - https://www.percona.com/software/postgresql-distribution

2 - https://www.percona.com/software/mysql-database

This is off-topic, but I wound up on 2nd Quadrant's website while reading this. Isn't their logo indicating the 1st Quadrant? Or is there an alternative cartesian labeling I'm unaware of?

I think I have read somewhere that it refers to the "leaders" quadrant in Gartner's magic quadrant.

Yes, logo marks the first.

I was not aware (my ignorance) that there are such great companies built around PostgreSQL support and development and that so many core engineers of the product work there. I assumed the engineers are from much more diverse set of companies.

Given how PostgreSQL has been growing, what is stopping more startups to build around this? The reason I ask is this is HN, which is part of YC - so many of us are (possible) founders. This looks like a growing B2B/Enterprise opportunity, or am I wrong?

Support and consulting services generally aren't a good startup business model. Your revenue scales linearly with headcount which generally prevents hockey stick growth and massive revenue per employee numbers. It's why so many OSS based startups are doing SaaS models right now.

Support and consulting services are great startup business models. Low cost of entry, generate revenue early in lifecycle thus a strong basis for bootstrapped/organic growth, relatively straightforward sell cycle, lots of opportunity for growth and new market exploitation (e.g. expand from consulting to managed services or SaaS once revenue supports it). I've started several such companies, and it was fun and profitable.

The only people who call a business idea "bad" solely because it doesn't enable "hockey stick growth and massive revenue per employee numbers" are people who's business world view is so constricted that the only possible "good" business is a SV ideal, VC funded, growth at all cost model. That isn't the only way to do it.

A "startup" (according to Wikipedia and most others) is essentially a business in search of a business model (see Steve Blank's work in particular).

A small consulting business is not a startup, it's a small business that already has a perfectly fine business model. As soon as the founder picks up the phone and makes a few calls it's out of the "startup" search phase and is now started as a real business.

It's probably because I'm just a poor, unsophisticated non-SV type, but I never thought I was out of 'startup' phase in the consulting biz until I got my first invoice paid. But even if 'startup' is the hours or days between quitting your day job and hanging out your shingle, I don't see how it invalidates anything I said.

Lots of people (on HN and elsewhere) define "startup" to mean exclusively "SV ideal, VC funded, growth at all cost" companies.

Companies that actually make profits but will never go public for a billion dollars are derided as "lifestyle" businesses.

I mean, the word "startup" as referring to a business literally wasn't in use until it was used for silicon Valley electronics companies in the 70s. So yeah, it's got a specific meaning and has had it for the last 50 years.

Some people want to co-opt it to refer to lifestyle businesses and small businesses and whatever else because it gives them better marketing. Most people find that silly.

Most people find that silly.

Sad thing is, I have no problems believing you actually believe that.

Your head is going to explode when you find out how we've co-opted the word "computer".

That was exactly the point I was making.

Meanwhile there are a number of products emerging in the Postgres space that are focused on SaaS business models.

- https://pganalyze.com/

- https://www.crunchybridge.com

- https://www.pgmustard.com/

- https://supabase.io/

The Postgres consulting/support services landscape may be consolidating some, but I'm not even sure that is a broader trend. Meanwhile there are more tools and services popping up regularly.

Yeah, that's true.

That being said, there are various other companies providing this type of services around the world, although most of them are more local (but hey, anyone can be global with a zoom meeting now).

There are also quite a few other companies doing other stuff, employing great PostgreSQL hackers and contributing to the community.

I don't disagree that's it's a viable business model but just saying that it's generally not the kind of business model that the startup crowd (YC, venture funded, etc.) is looking for.

"Yet", I think you mean looking for yet. Ideas change. "Starting up" is the most basic phrase I was used to as a teenager, dreaming of businesses. Then some SV folks reimagined the word to make it mean something super niche.

I am seeing a trend toward sustainable businesses nowadays. I am happy starting up a sustainable business, no matter what you might call it.

The Oxford English Dictionary traced the use of the word "startup" for a budding business to a Forbes article in 1976 where it referred to the Silicon Valley electronics companies.

So, no, the term "startup" wasn't co-opted but has meant a fast growing silicon valley type company for the last 50 years. Before that it was not used to refer to new businesses.

As a note, "starting up" is not the same as "startup."

There's for example Aiven, which is offering managed Postgres in cloud [1]. They also have similar managed offerings for various other open source tools. They raised $40M earlier this year.

[1] https://aiven.io/postgresql

They also had a major incident last year where customers suffered data loss. As I heard a bug made their systems think that customers didn't pay so it terminated their instances.

> Given how PostgreSQL has been growing, what is stopping more startups to build around this?

Support doesn’t scale, and startups (of the VC sponsored kind) need to.

The success story of PostgreSQL is usually around extending it. See: Greenplum, AWS RedShift, Timescale, and Citus.

I have increased respect for a project which can call this stuff out. Its good to see. I was disheartened when MySQL folded into states of being I didn't like (as a pure consumer)

I use PG. I like PG. I like how the PG core self-police.

It's the first time I see an open source project publicly letting the world know about this kind of issue. This is boring and hard but important work, and it happens in the open and in a very professional way. Thanks, postgresql.

So now it's just a matter of Oracle buying EDB? Does EDB have a poison pill clause and/or are the contracts of the core team free from non-competes and non-disclosures?

If Oracle did buy EDB, then attempt to meaningfully screw the PG Community...

... then the PG Community would very likely fork to a new group of people and continue on growing just fine.

See OpenOffice -> LibreOffice, Hudson -> Jenkins, (etc)

And it would suck if non-competes locked the former EDB people out for a while, and it would take some reconstituting of governance, but it looks like a huge portion of contributions are outside of EDB even with the acquisition) so I suspect it would be rough patch that the community would weather, not an existential threat.

MySQL’s licensing model gave MySQL AB (and thus it's purchasers) a privileged role that no one has with regard to Postgres.

And even there, MariaDB is a thing...

> First, there is an unwritten rule that the Postgres core team should not have over half of its members from a single company, and the acquisition causes edb's representation in the core team to be 60% — the core team is working on a solution for this.

What solutions are they looking at?

I have no idea what options are being considered by the core team, but I'd imagine the most likely one is replacing one of the people now working for EDB with someone else.

Presumably, they're either looking into adding more members from other companies, or reducing members from EDB (or both).

Discussions within the core team are done on a private mailing list, so we'll know the status of things with a public announcement. Committers and contributors have no view of what gets discussed there, except if you are of course directly attached in CC of a given thread, and of course except if you are a committer also part of the core team. Four members of the current core team are committers.

A bit of topic, but bear with me please :-) does anyone knowif EDB plans to (or already has) open sourced their Postgres Oracle compatibility layer?

This post feels, to me, like a call for new postgres service companies to spring up.

Not SaaS startups, but services-first products-second consultants who know postgres inside out and can solve hard problems that development teams don't have the time or expertise to.

Sounds like a fun way to go for many needs seeking independence and continued human interaction (as opposed to one-person-saas).

The biggest news to me is EDB acquired 2nd Quadrant. Which somehow didn't hit the HN front page.

Would there be more features coming to Open Source Postgre, or is Postgre now a Postgre Core where Enterprise features get moved to EDB?

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact