On occasion, professional developers will drop into the Postgresql.org mailing lists, meetups, and conferences to ask the question, “Why isn’t PostgreSQL development on Github?” In an effort to see if the demand was really there and not just anecdotal we ran a poll/survey over several social media platforms that asked a simple question:
Should PostgreSQL development move to Github?
- No, but to something like Gitlab would be good
We received well over 300 responses and the majority (75%+) chose a move to Github or to something like Github. This was an unscientific poll but it does point out a few interesting topics for consideration:
- We need to recognize that the current contribution model does work for existing contributors. We need to have an honest discussion about what that means for the project as contributors age, change employment, and mature in their skill set, etc..
- Of the people that argued in comments against the move to a service, only one is a current contributor to PostgreSQL.org core code. The rest were former code contributors or those who contribute in other ways (Advocacy, System administration, etc.).
- Would a move to Github or similar option produce a higher rate of contribution?
This poll does not answer point #3; it only provides a data point that people may desire a modern collaboration platform. The key takeaway from the conversation about migrating to Github or similar service is the future generation of developers use technology such as Slack and Microsoft Teams. They expect a bug/issue tracker. They demand simplicity in collaboration and most importantly they will run a cost->benefit analysis to determine if the effort to contribute is a net positive.
It should also be considered that this is not just individual potential contributors. There are many corporations big and small that rely on the success of PostgreSQL. Those corporations will not contribute as much directly to PostgreSQL if the cost to benefit analysis is a net negative. They will instead contribute through other more productive means that produce a net positive when the cost->benefit analysis is run. A good example of this analysis is the proliferation of external projects such as pg_auto_failover, patroni and lack of direct contribution from innovative extension based companies.
Do we need a culture shift within PostgreSQL?
There are those within the Postgresql.org community that would suggest that we do not need a culture shift within PostgreSQL but that does not take into account the very clear market dynamics that are driving the growth of PostgreSQL, Postgres, and the global ecosystem. It is true that 20 years of hard work by Postgresql.org started the growth and it is also true that the majority of growth in the ecosystem and community is from products such as Greenplum, Aurora, Azure, and Timescale. The growth in the ecosystem is from the professional community and that ecosystem will always perform a cost to benefit analysis before contributing.
It is not that we should create radical rifts or disrupt our culture. It is to say that we must evolve and shift our community thinking. We need to be able to consider the big picture. A discussion should never start as an opposition to change. The idea of change should be an open discussion about possibility and vision. It should always include whether the change is a good idea and it should always avoid visceral reactions of, "works for me,” “no,” or “we tried that 15 years ago." Those reactions are immature and lacking in the very thing the community needs to continue to grow: positivity, inclusion, vision, and inspiration.