'We Ran Out Of Columns' - The Worst Codebase Ever

preview_player
Показать описание
Recorded live on twitch, GET IN

### Article

### My Stream

### Best Way To Support Me
Become a backend engineer. Its my favorite site

This is also the best way to support me is to support yourself becoming a better backend engineer.

MY MAIN YT CHANNEL: Has well edited engineering videos

Discord

Рекомендации по теме
Комментарии
Автор

I don't know why, but this codebase has post-collapse cyberpunk vibes.
Like, just mashing together highly complex and extremely sophisticated machines to create a desk fan.
It's beautiful.

Volvith
Автор

"I want ten year old production code to be open sourced and fed to LLMs for training."

Sounds like poisoned training data. XD

xCheddarBbx
Автор

If you want an insight into the quality of corporate code, you only have to look at the scandal of Fujitsu's POS system for the Post Office in the UK - the cause of the greatest miscarriage of justice in our history. At the public enquiry, multiple witnesses have attested to the shambolic development process - no proper specs or docs, no coding standards, inept developers and no effective testing. And yet the company doubled down and allowed hundreds of postmasters to be bankrupted and even imprisoned for cash shortfalls caused by their bugs.

tullochgorum
Автор

I am genuinely scared by the fact the database the guy is talking about is eerily similar to the database of a company I've worked on before

metroid
Автор

I worked for a pretty big gambling company and they stored javascript, html and css in columns in a MSSQL db. Before that i had never had a panic attack during a project overview meeting.

bukem
Автор

Legit. The cleanest code I've ever seen was written by students at school, it's all be downhill from there. Every single thing you learned not to do is what you find done in corporate. xD

mikicerise
Автор

I manage a database for my company that was designed by the guy who came before me. No joke. That guy stepped in front of a train. Anyway, there is a table in this database where the primary key is integers 1 through 36. The values associated with each of those primary keys is also integers. 1 through 36. That's the table. And if you delete it, it breaks the whole database.

terryjophlin
Автор

How JSON showed up in our production database?
"I'll dump this here for convenience until I write a generator. People will use the method to retrieve this anyway."
Two weeks later: "Nice, it is done."
Two minutes later still: "Kill me, please. How is this column already called from over 100 places in the code? Why didn't they use the method?"
The name of the column? never_use

apefu
Автор

I once worked in a company where I learned there's a hard limit on how many elseif statements you can have in C++, since they are essentially just differently formatted nested if statements, and they have a limit too. There were multiple files where they hit the limit. The solution? Just start a new if statement and pray to god it works. Of course, I spend days just figuring out this was the cause of a bug I was hunting. I never thought that somewhere in those thousands of lines the else-if just stopped and started with a new if.

kyda
Автор

I cant wrap my head around the calendar table. Running out of columns is one thing, poor design and all, but be unable to login if you ran out of calendar entries? What am I even reading, how?

steffennilsen
Автор

Fun fact: the original Relational Model (the basis of relational databases) did not use names for columns, but index numbers. That was 1969 (nice) - by the 1990s Codd had found people who were using over 128 columns, so he decided using names was better than remembering that column 36 was the surname of a user.

NostraDavid
Автор

When someone says "its Year X, you should use Y already", I don't think they had lots of longstanding customers. I want to see them how they argue, that the customer should switch to a new database and transfer 10+ years of medical, finanical, structural data.

PapstJLU
Автор

I work as a support engineer for a company that manages the infrastructure of at least 200 companies. A couple big ones, _and a whole lot of truly sketchy shit._
We have a lot of legacy customers as well, that got rolled over from other tiny support companies we ate. (we's a growin' boye)

Let me just summarize how horrible it can get in one sentence: _I genuinely think we've found more bugs in Microsoft's code than any other company on the planet. And it's not even our job._

I love my job, but God bless the soul of anyone picking up the phone for a customer that nobody recognizes. Because either they just got rolled over from some tiny shit creeck company we took over from, or even worse, _it's the first time in 6 years they called, and you're about to meet the end-boss of DIY legacy code._

Volvith
Автор

It’s 2024 - one of our system uses a table “calendar” and we had a production bug that stopped all our analysis because the script that was responsible to renew the “calendar” was crashing for a couple of months and no one knew and the analytical queries depended on it…

We also have the CSV thingy. It’s anecdotal, but companies run like this even now.

Shogoeu
Автор

"Squeal" instead of "sequel" is triggering.

theftking
Автор

The beaty of over the top solutions is more that it's more of an "art" rather than engineering. It should be place in gallery for software engineers so they could reflect on their life, while looking at this art.

Divus
Автор

I work for a supermarket chain and this video has made me realise that the POS machines freezing every 2 minutes or so is probably not the fault of their ancient hardware

Don’t even get me started on when a technician working on the self serve registers told me the error we were having was caused by the register getting stuck in a while loop and the only way to break it out was to cause another error by physically removing the receipt roll from the printer.

Cxntrxl
Автор

0:20 Actually by default it's max 2000 columns for sqlite, but you can bump the limit to 32767 if you compile the library with custom config

MatthijsvanDuin
Автор

Corporate code vs. hobby Don't assume corporate means better. It's convoluted, hotfixed, non optimized, ... But that's since you used 100 times more time on your hobby code, than any manager will allow an employee.

deenaxic
Автор

A bunch of people are essentially trying to reproduce this practice across the industry, only the name of the guy who gets the crappy CSV file and presses the button that may or may not import business critical changes to the database is named Devin. Making your core business processes unknown magic is sometimes necessary, but long term inexorably leads to terrifyingly fragile stacks of "just make it work" quick fixes.

EvanEdwards
welcome to shbcf.ru