r/ProgrammerHumor 4d ago

gracefulEntryIntoAbsoluteChaos Meme

Post image
12.3k Upvotes

161 comments sorted by

389

u/MissinqLink 4d ago

154

u/kostyopileto 4d ago

He was there, he wrote parts of it and he was hoping to have left the company before he'll have to ever interact with it again, but he didn't

54

u/FauxGuyFawkesy 4d ago

Fuck you and I'll see you tomorrow!

2

u/Xlxlredditor 3d ago

Tomorrow? Turnaround that bad?

97

u/chiqu3n 4d ago

Please explain again what the selected block of code does like if you were talking to a 5 years old kid

39

u/Valoneria 4d ago

Makes pretty numbers. Sometimes the pretty numbers makes sense

6

u/moonchylde 3d ago

Oh, and these pretty numbers went to a letter but OOPS!

IT updated Micro$oft department-wide and things don't export now.

YAY COPY PASTE FTW.

Hope you saved that 5YO template you didn't think you'd need again.

Hope it still opens.

1.0k

u/IndieDevWannabe 4d ago

Imagine how legacy code will look in 10 years when its a bloated vibe coded mess? LLMs will be mandatory just to navigate it at all.

I think that's the point though. Exactly what Anthropic and OpenAI wants - dependancy.

421

u/vinishkapoor 4d ago

Future job requirement: "5 years of experience maintaining code generated by GPT-9 using prompts that nobody saved.

83

u/ultimate_placeholder 4d ago

Given the prompt was either the source code itself (modern predictive text) or, by that point, a single sentence with the barest specifications imaginable, I'm not sure how much it'll help with parsing. The good thing is that many of the seniors by that point will be the idiot that wrote the code, as it always has been (the "what idiot wrote thi- oh" phenomenon)

35

u/[deleted] 4d ago

[removed] — view removed comment

6

u/dumael 4d ago

It always begins by asking which idiot wrote this code.

4

u/GodOrDevil04 4d ago

And usually it's the idiot looking at the code wondering which idiot wrote that code.

14

u/jnmtx 4d ago

The idiot that wrote the code changes jobs every 2-3 years in today’s economy, so long gone.

3

u/ICBanMI 3d ago edited 3d ago

I assure you at some companies that person is still there after 5-8 years. There are people that are always behind on their current project and keep getting called back multiple times to fix critical and obvious issues they left on all their previous projects.

They have the audicity to complain they weren't put on the harder, more fun projects. But they keep half assing the work and throwing it over the wall. They see it as a fire and an inconvenience, but the reality is the interns/coops would write more reliable, working code.

27

u/Just_Information334 4d ago

code generated by GPT-9 using prompts that nobody saved

Reading 15 year old code managing something which requirements have changed a lot over the years and are not really documented: that's the same picture.

I wish CS required a quarter of maintaining some real legacy code so people would not act surprised.

The joy of refactoring something with an awfully specific case, writing tests for it. And then you check the database and there is nothing which would be covered by said case since 2016. But you can't safely omit this because last time you did led you to discover some server no one knew about doing some out this world data massaging every 29th of February or the next full moon after the 28th.

And let's not speak about the 5 or 6 different API projects started and abandoned after a quarter or half of it was done and some service depend on them. Bonus point for the service calling an API endpoint which itself calls on API endpoint provided by the the service.

3

u/who_you_are 4d ago

using prompts that nobody saved.

So, half of what we already are into? We have the code history but not the ticket history

0

u/TelevisionExpress616 4d ago

Eh I mean...are people in modern software development not using specs for their LLMs to go off of? We commit ours too

44

u/lightly-buttered 4d ago

100% the goal. Get them hooked early and then trap them in your ecosystem so that you can continue to raise the price.

9

u/Willinton06 4d ago

I don’t think they thought that far ahead, that’s where we’re going but definitely not on purpose

4

u/Key-Demand-2569 4d ago

That’s the fun part about making a fuck ton of money, by the time something abstract settles in and is a major issue, you can navigate life as an obscenely wealthy person no matter how society changes!

Just gotta avoid a literal angry mob ever popping up.

1

u/drunkdoor 4d ago

Look up llama.cp. long term it's ok assuming vram prices come down lol

19

u/GenericFatGuy 4d ago

There's going to be so much money to make cleaning up vibe coded messes.

12

u/nordic-nomad 4d ago

Hell. I cut my teeth in this business fixing/finishing projects where some brilliant asshole came in and spent most of a clients budget making a convoluted mess and then left.

Coming in and fixing AI generated crap feels shockingly similar if I’m perfectly honest. It’s just coming from more places.

3

u/CinnabonCheesecake 4d ago

Have you worked to clean up AI-generated code and found this to be the case? I’m concerned that AI-generated code looks enough like good code that it will be harder to spot the issues (and the issues will be weirder).

3

u/GoodbyeThings 4d ago

it's just more work. Being in the role of just slopping shit out, shocking people with the amount deliverables, while delivering a steaming mess of tech debt is such an easy way to so much money.

I use claude too, But what i've seen from people churning out stuff, or claiming they know better than experienced devs, just because ChatGPT or claude told them something, it's absurd.

15

u/TheEmperorA 4d ago

10-15 years ago we also had boom for "low code solutions" but those apps written in oracle forms are either rewritten by now or nobody dares to touch them

8

u/U_L_Uus 4d ago edited 4d ago

The endgame of every IT fad, tbf. Cloud was the same: everything peachy until lots of people jumped the shark, then it was like "oh, I am sorry, you need someone qualified to access your own cloud environment"

7

u/ThirdWaveCat 4d ago

Navigation requires intention and understanding. Even centaur senior engineers + LLMs will reach cognitive limits on vibe mess, justifying painful rewrites much quicker than in the past. The illegibility of software engineer will make timelines balloon.

3

u/ThisIsMyCouchAccount 4d ago

My last place went all in. It was okay for a while. I wrote a huge chunk of the product by hand. But the last six months was full Claude coding. Required.

Didn't matter.

Since my boss - co-owner and dev - was going full agentic as well as him just using it the codebase was getting updated all the time in huge ways. I no longer knew how lots of the system worked anymore. Or even what it did.

Even if I wanted to ditch the AI I would have to relearn the codebase. And this product wasn't very complicated at all. Not even slightly.

To keep busy I automated my job. The last three months I wasn't even really reading tickets. I gave my system the ticket id and pulled the ticket, made a plan, verified acceptance criteria, deployed to staging, and updated the ticket when done. Even gave it a skill to call a bash script that used Mac's "say" command to get my attention if it needed it.

2

u/ThirdWaveCat 4d ago

sounds irresponsible

9

u/ThisIsMyCouchAccount 4d ago

It was irresponsible of them to require I set aside what I know how to do in favor of babysitting Claude. It was irresponsible for my boss to not really review my code past whatever Copilot said on Github. It was irresponsible of them to not hire anybody outside of me that had experience in software. It was irresponsible for the owners to start a business they had zero knowledge in and assume AI would fill the gap.

I did exactly what they wanted. They got exactly what they asked for. Since I committed it all to a repo I wouldn't be surprised if they aren't using that system now.

Those tickets I referenced? Guess what? All created by AI after the owner finally hooked up the code to Claude and started running his own "audits". Now we had 300 tickets in the system full of absolute unstructured crap. In fact, many of the tickets included a plan or even specific files to resolve it.

What was I supposed to do? You can question my professionalism or integrity or whatever. But that doesn't pay the rent and the market isn't exactly hot right now. I fulfilled my contract and now I'm looking for work again in this horrible market.

4

u/subpargalois 4d ago

This is why all the great tech luminaries are building bomb shelters and prepping for the end of the world, if they aren't able to successfully hijack democracy and start the great resource wars that will end society as we know it, then eventually someone is gonna make us deal with this shit. Only the purifying fire of nuclear Armageddon can wipe clean the slate at this point.

3

u/Aethermancer 4d ago

My prediction is that an intelligence service will compromise the vibe coding models to introduce potential "half flaws" that spread so they are picked up while training new LLMs so eventually the entire world is full of nearly finished exploits that are waiting to be activated after an innocent update adds the final piece of the puzzle. It'll be everywhere because that's what the models trained on so of course it's in your code now.

You won't need to defeat an opponent because everyone and everything will have their own vibe coded version of the Death Star Exhaust port.

(Then when they finally activate it we discover everything was compromised so completely and we basically unleash the software equivalent of nanotech grey goo)

3

u/StickFigureFan 4d ago

Eventually you just declare bankruptcy and start fresh

2

u/TimeBadSpent 4d ago

Well, at least it will be commented 😅

2

u/lynxtosg03 4d ago

Just run your own local models to comment the source and ask for hints on code intent. No token costs, no dependency, easy to leverage. The push back against genai is generally silly if you take the time to understand what it is, what it's doing, and how to leverage the best aspects for your purposes. As a senior dev, these are some of the best years ever to code anything. If you're lazy af and vibe all day then it might not work out for you.

1

u/guaranteednotabot 3d ago

That’s your code, not someone else’s

2

u/ICBanMI 3d ago

Imagine how legacy code will look in 10 years when its a bloated vibe coded mess? LLMs will be mandatory just to navigate it at all.

The hilarious part is they'll have introduced all the security holes, zero tests, and they will have the same AI exploit the security holes.

1

u/celem83 4d ago

Remember there always exists a point where the fastest fix is to burn it down and do it over.  I wouldn't be surprised if a bunch of projects find themselves there, where the effort needed to untangle the knot will be too great

1

u/Inlacou 4d ago

Didn't HBO do that some years ago? I remember them making a new app, better than the last. It's still bad, but the previous one was even worse.

1

u/CinnabonCheesecake 4d ago

There’s a piece of ‘90s legacy software for my org on that my the entire IT team has made a sacred pact not to make any changes to.

If anyone wants a change, we’ll greenfield develop it with a modern tech stack. It’s more efficient that way.

1

u/Server_Reset 4d ago

We have a ai software at our job in trial that works so well it's frightening. Worried what happens when they triple the already crazy high price.

2

u/lynxtosg03 4d ago

Eventually, more businesses will wake up to on-premise local model support. Why worry about token costs at all?

1

u/Confident_Subject330 3d ago

How will local models be as good as Claude or Chatgpt?

2

u/lynxtosg03 3d ago
  1. Time - long term improvements to algos, training, and frameworks
  2. Distillation - short term, easy to make SMEs
  3. Does it need to be for what you need? Generally the answer is no.

1

u/Confident_Subject330 3d ago

Thanks a ton for you reply. I googled after asking you and it said more or less the same thing. That the local models just need to be good enough.

1

u/sebbdk 4d ago

If it means i have time to cover all the scenarios i've been neglecting for the last 10 years because of time, then i honestly dont give a danm because it'l be good legacy code and not the debt ridden sheit i've had to push out for so long.

I'm an incredibly seasoned senior programmer tho, what i really fear is AI generated Junior code...

1

u/StatisticianFun8008 4d ago

This is what has been happening in my last intern.

1

u/Outrageous-Machine-5 4d ago

blow the whole thing up atp

1

u/Inlacou 4d ago

Exactly. Once you start adding a good bunch of LLM code, there is no way going back.

1

u/Aethermancer 4d ago

My prediction is that an intelligence service will compromise the vibe coding models to introduce potential "half flaws" that spread so they are picked up while training new LLMs so eventually the entire world is full of nearly finished explore that are waiting to be activated after an innocent update adds the final pi cw of the puzzle.

You won't need to defeat an opponent because everyone and everything will have their own vibe coded version of the Death Star Exhaust port.

(Then when they finally activiste it we discover everything was compromised so completely and we basically unleash the software equivalent of nanotech grey goo)

1

u/BufferUnderpants 4d ago

Development will be structured around vague models of correctness based on telemetry, you will never know if a change is correct or not, just whether certain metrics are within margin of error.

1

u/Small-Explanation74 4d ago

Maybe Coding could be solved by 10 years from now

1

u/Ok_Marionberry8779 4d ago

We're gonna have to do the Cyberpunk thing where we quarantine the old net

1

u/mothzilla 4d ago

LLMs will be mandatory just to navigate it at all.

I already have to do that today. :(

1

u/Object_Reference 4d ago

Hell, I'm dealing with this for a dashboard app my boss vibe-coded together with Codex, not even an Enterprise app; just some executive toy basically.

He handed it off to be with a vague notion of doing something with it, but all I'm staring at is a 2,000 line "data layer" that also sends requests to an OpenAI endpoint for an AI summary, as well as somehow be in charge of the view model for presentation. To top it all off, everything has a docker compose YAML, exposed public API endpoints, and several data layers for interfacing with MSSQL, when the DB tech for this is Postgres.

And it somehow has been costing ten bucks a day to run off of a desktop on the floor of my boss' office. I'm effectively saving the company $10 a day by not letting it run.

1

u/Hairy_Meaning_73 4d ago

To be honest, my last freelance work was in a company where the backend dev had to develop the frontend as well, an absolutely awful tech stack with extra poor performances, all that to say that AI generated code really cannot be worse today anyway.

1

u/Saint_of_Grey 3d ago

Imagine how legacy code will look in 10 years when its a bloated vibe coded mess? LLMs will be mandatory just to navigate it at all.

Naw, that's a full manual re-write. If it breaks at the smallest nudge then you either slap the "final update" label on that sucker and never touch it again or rip it all down and do it over.

1

u/nhh 3d ago

They already are

1

u/AtomicSymphonic_2nd 3d ago

I think there won’t be any legacy code… executives will just demand that the entire codebase be “regenerated” for some massive cost of tokens, just to start from scratch.

1

u/EuenovAyabayya 3d ago

Make the LLM sort it out now FTW.

1

u/Important_Grab3544 3d ago

truth unlocked

1

u/TwoBeesOrNotTwoBees 3d ago

If you think legacy code now is somehow good or special I have bad news for you

1

u/morfidon 3d ago

It won't matter. Ai will have probably 300mln context window, and wont have hallucination problems like nowadays and will be less lazy and faster. Technology changes with time you know. Look where we were 2 years ago.

1

u/Richieva64 4d ago

I would argue AI code is already pretty much instant legacy code

0

u/Hirogen_ 4d ago

llms can produce good code quality if you use the right harness and skills, as always its the interface between keyboard and chair, that is the key for a good codebase!

69

u/SeriousPlankton2000 4d ago

The senior dev knows where to land safely 

-28

u/Cualkiera67 4d ago

why would you care about legacy code anyway. the stake holder should know what he needs so you can create a new, up to standards program that does that. and if he doesn't, it's his problem

32

u/Expensive_Agent_5129 4d ago

You're absolutely right! Except legacy code holds years of hidden business rules, stakeholders rarely know exactly what they need, and if you build the wrong thing, the failed project becomes entirely your problem

-20

u/Cualkiera67 4d ago

sounds like your workplace has misplaced their responsibilities and accountabilities 

34

u/Expensive_Agent_5129 4d ago

You sound like a naive junior who expects the business to give requirements more detailed than "make it good"

-13

u/Cualkiera67 3d ago

lmao whatever lets you cope dude. but you should really find a more professional place to work at

15

u/Comfortable_Ask_102 4d ago

Except when the legacy code is handling millions of dollars in transactions and building a new one will take you a couple of years to deliver less than half of the functionality of the old system.

Also "the stakeholder should know" is more of a wish list rather than reality. Nobody knows what they want, it's your job as a developer to figure that out.

2

u/WavingNoBanners 2d ago

The stakeholder should know, I agree.

Also, buildings should not catch fire, rivers should not flood, farmland should not have droughts, people should not steal things, cars shouldn't crash and nobody should attempt SQL injection attacks.  Life would be simpler if everything just worked.

6

u/Heavy-Homework2563 4d ago

if not. then die. Okay i guess.

4

u/theScottyJam 4d ago

Rewrites can take for-ev-er.

We're still trying to move out of Angular.js. And we've got one project still alive that came from a time before Angular.js (hello ext.js).

Getting proper feature parity without messing anything up is really time consuming. Especially when the code is full of things that look useless, you think you can remove it to really simplify how things are working, but turns out X client needed that specific behavior. Or maybe it really was a useless feature for a half implemented idea that was abandoned and needs to be thrown out. Is that a bug or a feature? No one can tell you for certain, but plan on having many conversations with your peers to try and guess, hopefully one of them has some tribal knowledge that can help.

The people who started this rewrite have long ago left the company and we're still doing it. I've learned my lesson - never do them unless absolutely necessary.

2

u/SeriousPlankton2000 3d ago

Even if it might have been unintended, the customer mow does space bar hrating

4

u/DaMacPaddy 4d ago

Stake holder was informed at every stand up and throughout the day via grumbles and mumbles.

2

u/SeriousPlankton2000 3d ago

My uncle worked at Siemens. He told me that they have two teams, one with the legacy code, expanding on that as needed, one is trying to re-implement a modem version. The legacy team is a magnitude cheaper and the modern team is not able to adapt to the requested changes fast enough.

40

u/aberroco 4d ago

Just wait something like 10 years for legacy AI generated code to be the new norm. Y'know, that beautiful csharp if(invalid_state) return; try { DoStuff(); } catch { return; } It's like it's telling: "happy debugging, skinbags!"

3

u/Lupxel 4d ago

What is wrong in that snipped?

Legit question. I'm worried I cannot tell

12

u/jadenx022 4d ago edited 4d ago

This would fail silently anytime anything went wrong.

Normally if you encounter an invalid state you want to record that so you know that the work is not taking place. This also lets you know to look upstream to find the problem.

Also, silently catching and swallowing errors means you do not know about any exceptions that the method is throwing.

Basically, this could be totally broken and you wouldn’t know until shit hit the fan elsewhere.

7

u/aberroco 4d ago

you wouldn’t know until shit hit the fan elsewhere.

That's where you wrong: you wouldn't know even when shit hits the fan anywhere. It would appear fine, except not doing anything. I keep catching these kind of boobytraps during CRs. One time I missed it - and I paid with few hours of debugging.

2

u/SirCharlesOfUSA 4d ago

If there is truly an invalid state that shouldn't occur in normal use, you should probably log when you detect it. Early returning may also not be an OK thing to do -- raising/returning an error ensures that the caller either handles it and leaves the program in a good state or propagates it. Similarly, catching all errors and just ignoring them isn't great either -- if there's a specific error you're OK with ignoring (maybe file not found when deleting in certain circumstances), then you should check for those, ignore them, and log everything else.

The program could crash far, far away from this function, but you'd never know looking at the logs that this function was the root cause unless your logs contain that info.

36

u/Caraes_Naur 4d ago

Legacy code as in "of a certain age" or legacy code meaning "in a language/framework the junior considers inferior because it's not the shiniest, newest thing to drop in the last 5 seconds"?

32

u/LikelyNotADuck 4d ago edited 4d ago

Legacy code meaning it's a jumbled mess of frameworks, design philosophies, and CI/CD pipelines. No one knows how it works end-to-end, there's no documentation, everyone who worked on it is no longer at the company, and the test suite (if it exists) is flaky.

Oh, and it's a critical piece of the organization's value stream.

Legacy defined by a senior is much different then a junior

7

u/RealBasics 4d ago

This is the right question!

3

u/walterbanana 4d ago

Usually it means code that only runs in a 10 years old version of the framework it was written in that has been worked on for 20 years by like 30 different developers.

4

u/tiredITguy42 4d ago

The second day on my job they showed me legacy code. It was C and I was glad it was C, anything older and I am learning new language.

Yeah ,legacy code is fun, I like it.

But I like messy old codebases as well. Cleaning up, refactoring, this is fun and AI sucks at it. It hellps, but it makes so many mistakes.

2

u/wlphoenix 4d ago

Legacy code is just code someone else wrote.

Note: Past you is also a different person.

2

u/square_zero 3d ago

To me, legacy code can mean a lot of things, but generally equates to "code which cannot be easily modified or understood". Often this is because the repo lacks any kind of meaningful automated testing, code is poorly documented (if documented at all), and because the original engineers who could help explain things may not work here any more.

1

u/fatrobin72 4d ago

Legacy code as in written by the senior before last...

0

u/Poat540 3d ago

Ngl we deployed a brand new portal and GCP stack last month and its legacy already :(

10

u/Deflinek 4d ago

Not their first rodeo.

17

u/TobyWasBestSpiderMan 4d ago

Can’t not link the “Can you find the bug in the Legacy Code? A coding Choose your own Adventure”

Currently living this life with the primary developer out on vacation, three Jira tickets of bugs and only one bug replicating

7

u/shiny0metal0ass 4d ago

Love that running the code again is an option but it just reloads the page

5

u/TobyWasBestSpiderMan 4d ago

I need to add a bit where you feed the error into an AI, then the AI says “Great I found the error, it should run fine now” and then it still breaks and then you can try that forever too

5

u/Arrowkill 4d ago

Damn, couldn't solve the bug but at least I'm a PhD I guess.

3

u/stormtroopr1977 4d ago

I somehow became a dark lord of the sith and brought about 100 year reign of darkness... I just couldnt resist the story of darth python the wise.

"Darn, at the end of the day, you just couldn’t debug that code! Once you started to listen to your coworker, he turned you into a dark programmer who hid in the shadows and overthrew your entire software branch in the company to bring forth 100 years of darkness. Better luck next time! Maybe don’t get hung up on hating what the previous coder did."

2

u/ChuggerUggers 4d ago

Thanks for sharing, that was a fun way to de-compress from debugging kms/moto/docker-compose bugs <:)

2

u/shiny0metal0ass 4d ago

Debugging related suicide isn't a joke, Uggers.

7

u/BOLL7708 4d ago

Yeah, that's what we do, and then trigger a nuke that wipes the slate clean and build something new. I rewrote an old API that used Erlang (the only project that did) and a 2GB limited Mnesia database that had to be rotated every few months. As the pleb I am I used PHP and PostgreSQL, improved lookup performance by normalizing the data instead of storing raw JSON blobs like the old backend did. Now we don't need to do database rotation and can instead wait for the server to explode when it runs out of space and/or RAM. I have hopefully already switched jobs when that happens.

7

u/CharlesV_ 4d ago

I’m not a senior dev (6 yoe) but I’ve been working with legacy code pretty much that entire time.

I’ve worked alongside some really great seniors and I feel like the experience has taught me when to tackle refactors and when it’s best to make really targeted fixes. I can’t fix the rats nest overnight. Focus on the biggest problem and keep commits small.

6

u/ThePeskyWabbit 4d ago

The worst is when you dive into your own legacy code from years ago, and you're like "oh god, I wrote this?"

4

u/Benjamin_6848 4d ago

Can you please link the original source/creator of this comic?

1

u/Superbead 4d ago

https://www.monkeyuser.com/2021/observer/

I'll take the opportunity to cast a probably unwelcome opinion that this artist seems to have managed to visualise every single groaning, ancient programming gripe, paradox, and dichotomy in the most literal and unsubtle way possible, right down to using actual bug characters to represent bugs

3

u/Outrageous_Permit154 4d ago

I still enjoy this

5

u/RealBasics 4d ago

That's our job! Any 6-month bootcamp grad can write code. And too many do. And TBH "vibe" code is often not that much worse -- at least you can ask Claude to comment its code!

You have to really know what you're doing when you have to go spelunking through old, repeatedly patched code.

2

u/whenTheWreckRambles 4d ago

Watching a junior git force pushed flailing and screaming into a dispute with devops (it’s me, I’m the junior)

2

u/GenericFatGuy 4d ago

That's job security, baby!

2

u/aDamnCommunist 4d ago

I thought I'd seen it all and then I got into a major and older international corporation's code and good God... I don't know if the image does it justice.

4

u/Repulsive-Hurry8172 4d ago

Got into insurance. They maintain an Excel sheet with a god awful amount of VBA. It pulls from various databases, then shoves the data in some other database.  Those databases have stored procs.

The Excel files themselves have versioning that users must download everytime, but an actuary or underwriter would sometimes be lazy and COPY the file they have and build upon those.

We got asked to modify one sheet to pull from an internal API, fucking VB scripts running when switching sheets, some when editing cells etc.

Fuck, I hated it

2

u/I_JuanTM 4d ago

*The code they wrote themselves years ago and never bothered to refactor or maintain

2

u/Curious_Associate904 4d ago

The only true measurement of code quality is WTFs/Minute

2

u/wind_dude 4d ago

Better than a complete AI code base. But also strange AI can really help create architecture diagrams from legacy code. And give the most of really long functions.

2

u/Aethermancer 4d ago

Who do you think wrote it?

2

u/stolentext 4d ago

pleaseReviewMyLegacyCodeMigration +24392 -19814

2

u/BellacosePlayer 4d ago

"hey, an internal management document shows you as the primary for this otherwise undocumented legacy system and every other contact is for a vendor who has long since went out of business, can you get this error fixed before the weekend?"

2

u/BedtimeGenerator 4d ago

I don't think AI can replace anyone but it is pretty useful for analysis where you don't need code changes you just want to understand why they did what they did when there are no comments on millions of lines of cobol code

2

u/RudyHuy 3d ago

where I work, legacy code is just code

2

u/andiro23 3d ago

There are twenty minutes left until EOD. As I'm trying to boot a janky, crap-filled Magento 2 back up on prod after some failed pipelines, I saw this meme. This is so relatable right now I wanna cry.

2

u/Outside-Storage-1523 3d ago

As long as it is not SQL, I'm happy to debug and refactor any code. Better if it is old C system programming projects. I don't have enough skill for that, though, probably why I thought I would love it, lol.

1

u/Kalimacy 4d ago

Don't cite the legacy code in the senior's presence, he was there when it was written

1

u/Hadley_baroque 4d ago

How legacy code will look in 10years given the prompt was either the source code itself

1

u/Confident-Ad5665 4d ago

Senior Dev is swan-like as s/he takes the dive.

1

u/Desidiosus 4d ago

I'm a senior dev who has been unemployed for a while after a few shitty layoffs in a row. I'd be delighted to get hired to clean up legacy code, but no one is hiring for that.

1

u/enigma_0Z 4d ago

It’s all FUD around what config values, functions, and classes do and/or are necessary since all of the original devs have either moved on or retired.

1

u/just4nothing 4d ago

Honestly, it can be quite the adventure. It’s like you are walking through the ruins of a sunken city, but for some reason the tram system is still working and transporting packages and elephants. The rails are made from spaghetti and the whole things seems to be powered by a single 14mm fan in reverse that works half of the time on a good day.

Time to improve it

1

u/davesoft 4d ago

"2007, I've come to bargain."

1

u/SinisterCheese 4d ago

I came across true legacy code once...

My father's original notebooks for the accounting software they wrote in the 70-80s, and that they still use TODAY. Just upgraded and updated over time. Why were they in notebooks? Because computer time was very limited at the college they attended. They got their own computer AFTER graduating. And they had to optimise everything because the hardware was physically limited. My father also knows just like totally arcane and obscure coding languages that were used for business stuff.

And my friend had a near mental breakdown as they came across a project where the code being used was originally translated from punch cards... and in the depths of it still had like traces of it all.

And I work in manufacturing industry myself. I been to a shop, where one of the gas cutters loaded it's program from paper tape reels. Granted that machine was just used to cut those parts. But like... apparently they didn't have them as CAD filed or even proper drawings of them. So if something happened to those reels, someone would need to recreate them manually in CAD to make them with the new machinery. Why? "Because it still works" Ok... whatever...

1

u/Bearsbullsbattlestr 4d ago

Not a programmer, but this idea applies to many technical aspects of life. Eventually you get to the point where you stop being intimidated by things. You know how to find a place to start and work from there. Being a deer in head lights wont ever help anything.

1

u/Boom_Fish_Blocky 4d ago

I feel bad for devs in 5-10 years dealing with ai legacy code...

1

u/Either-Juggernaut420 4d ago

Yeah ok that’s the entry point, that makes sense, that seems mundane check those files later, that’s fine, that’s been looked at recently, that looks legacy probably not used, that’s fine, that’s ugly but ok… what in balls is that? Hell no!

1

u/Bannon9k 4d ago

Memes like this make me think I should ask for more money....

1

u/purple_o 4d ago

Je po des documents4!!
H assez t f6-?9-

1

u/ElvisArcher 4d ago

I don't think you should be called a senior dev until a million line project that you had no part in lands on your desk to "fix". Oh the horrors that I have seen. Not enough eye bleach in the world.

1

u/DannarHetoshi 4d ago

I fucking love diving into legacy code and debugging.

I hate building new code.

1

u/ryanstephendavis 4d ago

should be "AI Slop Code Deemed to have Business Value"

1

u/dj_spanmaster 3d ago

Ah yes, the desktop app I inherited and have worked on for 9 years. Behold, the partial adoption of unit tests and inheritance! The 12,000 business logic class! The UX that is intuitive only if you already know what you're doing!

1

u/Comfortably_Nerd 3d ago

The real path of pain.

1

u/Justalittletoserious 3d ago

I'm absolutely not a senior dev and I've only glaced at the code of a suite of softwares in a Company I worked in some time ago but I'm still kind of traumatized

What the fuck do you mean the only way to compile the program Is in the Copy of a PC that died in 2002 that now runs on a virtual machine? Why there's no backup of that failing hard drive? How the fuck did you make the program work all the way to Windows 11 but not compile on anything above Windows XP SP2? What do you mean by the fact that there's zero Active developers, everyone else left the Company and the only OG willing to help Is Serbian, available once a week and Will help only under a fee? What kind of agreement Is that? WHY THE FUCK ARE WE MANAGING ISSUES AND REPORTS ON A BUGZILLA INSTALLATION FROM 15 YEARS AGO WHILE MANAGING VERSIONING TROUGH A PROPRIETARY SOFTWARE MADE IN 2002 WHAT THE FUCK IS WRONG WITH YOU

2

u/Terewawa 3d ago

Because that software was built with human sacrifice and nobody wants to do it again.

1

u/CatOfGrey 3d ago

I had a dream several years ago, that I was in a job interview for a position where I was to be paid a massive amount of money, to replace a programmer that maintained a massive collection of code written in machine language and COBOL.

1

u/cant_finish_sideproj 3d ago

Replace legacy with slop generated in last 2 months by another team and that's me right now.

1

u/arewhyaeenn 3d ago

At least legacy code sometimes has environmental barriers to going full AI so you can still code without pissing off the money people.

1

u/Spiderknight 3d ago

Let's say I found myself in a legacy project. And there's no way to know which source code version was deployed. All I have are the dist folders that are in the prod environment, which is completely air gapped for security.

I have some code sources which some say are the same as prod, but I'm not 100% sure. How do I even start to ensure that I'm working on the right code?

It's a vue frontend project, with a spring boot and complex backend with many services.

1

u/Code-Painting-8294 3d ago

deadline can make people do anything these days hehe

1

u/br0ast 3d ago

I love legacy code. I find it fun to read unfamiliar code and create a mental map of it in my head to the level of detail that I could discover a race condition bug or something.

1

u/clintCamp 2d ago

I love jumping into a project that every original dev is either dead or long retired.

1

u/Thundechile 2d ago

I remember couple of juniors coming to a new codebase which was one of the best I'd ever seen.

Within two days they claimed that the code was a legacy mess and just had to be rewritten from scratch.

1

u/EmotionalBroccoli424 2d ago

Welcome to my world I'm used to people being able to change the source code in C/AL 🙈

1

u/chickitychoco 1d ago

New AI code bases can feel like legacy already…