PGXN Language Poll Result
Back on March 28, I asked the Postgres community whether new services for PGXN v2 should be written in Go, Rust, or “some of each”. I went so far as to create a poll, which ran through April 12. A month later you might reasonably be wondering what became of it. Has David been refusing to face reality and accept the results?
The answer is “no”. Or at least I don’t think so. Who among us really knows ourselves. Since it closed, the poll has provided the results since it closed, but I suspect few have looked. So here they are:
Candidate | Votes | % All Votes |
---|---|---|
🦀 Rust | 102 | 60.4% |
🐿️ Go | 53 | 31.4% |
🐿️ + 🦀 Some of each | 13 | 7.7% |
🦀 Rust is the clear winner.
I don’t know whether some Rust brigade descended upon the poll, but the truth
is that the outcome was blindingly apparent within a day of posting the poll.
So much so that I decided to get ahead of things and try writing a pgrx
extension. I released jsonschema on PGXN on April 30. Turned out to be kind
of fun, and the pgrx developers kindly answered all my questions and even made
a new release to simplify integration testing, now included in the
pgrx-build-test
utility in the pgxn-tools Docker image.
But I digress. As a result of this poll and chatting with various holders of stakes at work and haunting the #extensions Slack channel, I plan to use Rust for all new PGXN projects — unless there is an overwhelmingly compelling reason to use something else for a specific use case.
Want to help? Rustaceans welcome! Check out the project plan plan or join us in the #extensions channel on the Postgres Slack.