> Now it's a sure fire sign that the project was probably vibe coded.

Groan. That's sad.

Compare to what happened to Python. That will cheer you up!

Hey, at least python is now extremely consistent: it's an unpleasant tarpit regardless of whether it's human or AI generated. Ruby, too, rip my native programming language.

I remember in the pre-AI era I was doing a quick sample contract employment with a company that had >200 columns in their user table and was manually enumerating them in every query, multiple times. They were using SELECT $1,$2,...$184,$185 from tablename with an enormous list of columns referenced only by offset. That's not python's fault, but I've weirdly seen it more often in python codebases.

That's a different tarpit. That's the problem with object-relation mapping, which is trying to deal with the mismatch between structs in languages and rows in SQL. There are a huge number of such schemes, and they range from somewhat annoying to awful. They're bad across a broad range of programming languages.

This is an area where LLMs might actually help. Or make things worse. We'll have to see.

I think the difference I see is with things like Prisma, where there's a type system to lean on and proper nomenclature, or Rails which, despite all the magic, more or less maps columns straightforwardly based on the labels instead of having to $123 and later in the file ensure that $123 is what you think.