logoalt Hacker News

sdevonoesyesterday at 9:18 PM16 repliesview on HN

Don’t understand these rewrites.

- typically they are behind a single person. That’s usually bad because of spf

- typically they are achieved in a very short amount of time, so the author hasn’t acquired any discipline in creating the project. That means it’s unlikely the author is going to stick to the project in the mid and long term

- anyone that wants to contribute to the project needs to pay. Needs to pay tokens because it’s increasingly difficult to maintain these projects without AI

So, who wants to put something like this in production? Doesn’t make much sense


Replies

scottlambtoday at 2:09 AM

I'd be interested to hear the author's answer to your question, but I see it as an interesting proof-of-concept. It's testing the viability of not only rewriting PostgreSQL in Rust (and their choice of deps) but also in switching the threading model and other architectural changes. LLMs shine at pumping out prototypes insanely fast, and a working prototype can put an end to a lot of speculation.

I likely wouldn't use a rewrite of such a huge project if it doesn't have the backing of the original team (or a significant fraction thereof) and a believable story for having matched/exceeded the original code quality and maintenance. I also think in general using an LLM for license-laundering is legally and morally hard to defend, although this case is different in that they chose a more restrictive license. Not a lawyer, but my understanding is that you can just download PostgreSQL, do s/MIT/AGPL/ and release it, legally. (The original MIT-licensed version still exists, so no reason anyone would prefer yours until you make another release with some compelling new feature.)

davedxtoday at 9:50 AM

This is very critical of an open source project that the maintainer didn't even post here?

"Status:

pgrust is not production-ready yet. It is not performance optimized yet."

The maintainer is not suggesting you use this for anything yourself. So why do you care about spf or (lol) his "discipline in creating the project"?

show 5 replies
Blahaguntoday at 5:58 AM

It's a very interesting phenomenon in recent years and most of the discussions about "why" are immediately blocked by the "memory safety" argument, as if it's a silver bullet for all things that are considered "bad" in software implementations. No matter how good the language is, and I consider Rust a very good language, it's practically impossible to replace years of experience and tested code, most of it contributed by a ton of brilliant programmers, no matter how you look at it. And if we take this as the truth, then logically there's still an unanswered question - why? Lets take an undeniable fact - rewriting an existing project give you full control over the new implementation. You can do whatever you want with it, you can't be sued. The only thing now you have to hope for is for your implementation to gather a good enough user base and from then on you can practically hijack the original project. And this is me speculating - rewriting stuff in Rust isn't about the greater good for that magical "memory safety" argument, but at the end it's an attempt to hijack popular software projects.

show 3 replies
anonzzziestoday at 5:09 AM

It's not just a rewrite ; it has improvements. I did the same thing for fun for the same reason; I wanted to see if I can improvements on some of the legacy design stuff and, especially, the stuff PG people have told us that it cannot be done differently. It can. I would not put it in production, but it thought me a lot about the internals of databases. To keep my brain happy in the age of LLMs, I implement database things on our (also old but many times refactored/rewritten) production db without an LLM. I'm sweating through Flexible Paxos now; probably we will just keep using raft as it's old and stable and simple but it's interesting anyway.

show 1 reply
whacked_newtoday at 1:26 PM

I'm really happy to see these rewrites. It shows what's possible, especially as the projects get more and more complex.

And maybe Remacs will get reactivated https://github.com/remacs/remacs/wiki/Progress

Maybe even I'll be able to do it when I wait for the bus!

Jean-Papoulostoday at 6:52 AM

It's useful to show the actual team that it's possible. From there, they can make the decision of whether to go the bun route with more information.

show 3 replies
mawadevtoday at 1:52 PM

I guess it is cool to have it around but it comes off as a popular useful case for AI which it really isn't, unless you have a very good test suite to throw the agent against, it is practically useless for rewrites of decades old badly documented code riddled with technical debt. That is where the real value and challenge would be. I see it as marketing and social clout stunt

pier25today at 1:38 AM

> it’s increasingly difficult to maintain these projects without AI

It's pretty much impossible in a project of this size. IIRC Postgres has over 1M loc.

show 1 reply
pyrolisticalyesterday at 9:34 PM

It’s open source. You take ownership of it for your deployment and stop relying on continued free work.

You can use llm to pull in updates as they are released. It’s not gpl, so you don’t need to publish your port

show 3 replies
SuddsMcDufftoday at 1:15 PM

> So, who wants to put something like this in production?

I don't think anyone suggested deploying this to production - the author is quite explicit that it's an experiment.

andaitoday at 6:42 AM

>typically they are achieved in a very short amount of time, so the author hasn’t acquired any discipline in creating the project. That means it’s unlikely the author is going to stick to the project in the mid and long term

Lindy effect! The longer something has been around, the longer it probably will be.

https://en.wikipedia.org/wiki/Lindy_effect

seb1204today at 4:27 AM

Not the same but it is much faster and easier to re-create a 3d model of an existing set of drawings than from scratch. This is because a lot of the decisions have already been made.

kirubakaranyesterday at 9:30 PM

Everything has to start somewhere

show 1 reply
joriswtoday at 8:32 AM

spf meaning...

show 1 reply
itomatotoday at 10:34 AM

This year, not me.

In five? Everybody but me.

yasaheblasayesterday at 9:47 PM

If you were a token burning company a project like this seems like a solution to this: https://xkcd.com/2347/

that hits your metrics without the problem that your contributions are not welcome.