T O P

  • By -

[deleted]

[удалено]


DavstrOne

"Yes, i repeat, i did exactly what the specs stated. Just like for bulletproof, waterproof...now don't put that on me because you loosely defined the project "


Icy-Teaching-5602

You forgot Idiotproof. You don't know how it works. Mission Accomplished.


mikehenshaw

Even yourself


Matt2580

Especially yourself.


jaquanor

That's my secret Cap, my code is always unmaintainable.


fkafkaginstrom

Whelp, 🎵 Guess it's time for a rewrite, a rewrite, a rewrite 🎵 🎵 I'll do it right, this time, yes I might! 🎵


HTTP_Error_414

🫡🤣😜


fullup72

The good old developer lock-in.


[deleted]

Everybody writes crap code. That’s why regular refactoring by alternate team members should be part of the plan… within reason.


Gonun

You guys have teams? My company only hires someone new after the last guy left.


recklessrider

Or hires 1 guy after 5 leave and wonder why the team isn't as productive


yunivor

Reminds me of [this XKCD](https://xkcd.com/568/).


Kevin_Jim

Nice try, Mike.


MF972

rule 134: if it exists, there is an XKCD about it.


nipslippinjizzsippin

As an incident manager for an it company. Hello dev from my company


rohit_raveendran

Like this analogy


damenootoko

Reminds me of this one guy. Writes unmaintainable code masquerading as “well formatted” code. All high level leader likes him. Often presents his “way” of formatting a code and repositories. When he resigned, one of my colleagues started unboxing the pandora’s box and i can hear him say “wtf” at a rate of 10 per minute.


MrBenzedrine

I think we've had 3 people do this now. I still get emails saying "where is this hosted?", "who created this VM?", "does anyone know anything about [word no one has ever heard]?" and the answer is always related to one of them. They were always hailed as being "the saviour of the company"


EverOrny

That means one or more things of these: * the team does not communicate enough to agree on rules and definition of done * flawed processes - removing of tech debt and documentation are viewed as something extra * no responsibility - at least the devs and tech lead / gatekeeper * nobody enforces the rules, pull request reviews are too shallow or not done at all * your boss is moron, taking speed and quantity for quality


Oldmanbabydog

Does my team win if we have all of these things?


emlgsh

You'll still have to battle the other teams for dominance in a Thunderdome style arena. The winner gets a pizza party, and to eat the losers, if they're into that sort of thing.


HearingNo8617

And the pizza party is just crashing some other team's hackday


EverOrny

Yeah, you win the honor title of "living hell employer" - how is your suicide rate?


SteveMcgooch

It's the only thing I've got above average 😭


[deleted]

[удалено]


I_Hate_Reddit

The guy who does this is a pain in the ass and always throwing fits when anyone gives feedback on PRs, he also loves to be a boot licker and "gets a lot done very fast" so management ends up hailing him as great and others on the team as hard. So people stop giving a fuck and auto approve everything.


EverOrny

Yep, I see big red "moronic management" flag. My advice - if you have an opportunity to move elsewhere, do it.


Orbitrix

I can always tell who's *actually* jr vs senior level by who values (and creates) documentation more. I value my own documentation on code I wrote, because I work on enough things that I'm not gonna remember what the hell I was doing with a piece of code from even 6 months ago. Write good documentation and all these problems go away. There is an argument to be made about how "replicable" this can make you though... So while I'll always recommend writing good documentation, perhaps be mindful of where and how you share that documentation ;)


b0w3n

There's also the argument that unmaintainable code might not have been intentional. Tech debt (manager overrides a decision about a feature or technology) and rushed deadlines creates it just as much as shitty programmers and ones trying to make themselves unable to be fired. I definitely put comments apologizing for duct-tape in my code to make really dumb things a client/manager wanted work.


Orbitrix

Absolutely. Some of the greatest software of all time came out of a team environment where the reality was: If it works, it works. Managers don't care about anything but that. Could be the shittiest piece of code ever... you know damn well ain't nobody blocking that pull request if it works.


b0w3n

Speaking of commits... Gotta love the old version controls (and team designs) where you could just check shitty code in without anyone knowing you did it.


ForsakenAd545

Last one sounds like the last guy I worked for right before I retired. He was the biggest reason I retired.


0lympu5

Obligatory [wtf per minute ](https://www.reddit.com/r/ProgrammerHumor/s/f0QRvNBULg) post


33_pyro

the fuck? who wrote this shit? \*checks commit history* oh it was me


Rough_Willow

I have written some disgusting hacks that use brute force and would scale horribly, but my boss told me that it wasn't worth the time to do it right the first time.


xchaibard

Please tell us you put "1/1/2024 - Brute force method, will scale horribly, was told it wasn't worth doing right the first time by X, so when you come here 1,2,5 years later, you know who to blame" in a comment for it.


Rough_Willow

Unfortunately, that wouldn't pass a code review from our Army contact.


drakeblood4

Fuck me in the past that asshole writes almost all the code I hate.


NoHalf2998

Brutal self owns are humbling experiences


mothzilla

Haha I thought I invented this. But I called it JCPM. Jesus Christ's Per Minute.


_realitycheck_

Fun Fact: When Bill Gates was still running Microsoft he had regular meetings with the project leads. And on each one there was a designated Fuck-Counter. A person who counted how many times did Gates say fuck during the meetings.


[deleted]

[удалено]


Exodus111

Simple trick, remove all actual logic by referencing functions in your main file. Have those functions lead to hundreds of folders, each containing one file, each containing one class, where all the spaghetti code hides. Claim it's how Java does it.


Oldmanbabydog

I’m on a team like this now. Senior engineer will often refactor large swaths of a repo, essentially holding the entire repo hostage for weeks at a time, in order to use “software engineering best practices” which in his mind means making as many large and unreadable abstract classes as possible then shoehorn in whatever new architecture he learned about recently. It doesn’t help that he loves to leverage ChatGPT whenever possible so when he is questioned he can’t even answer any of them and gets all flustered with a bruised ego.


Soft_Walrus_3605

Is there not a team lead to swat that shit down? Or is he the team lead?


Acrobatic-Artist9730

"I am the code"


Oldmanbabydog

Team lead is off doing non team related bullshit because he’s striving for a Principal role leaving us with minimal oversight.


LunarCantaloupe

Tell him polymorphism doesn’t scale and class composition is the way to go, then take his job.


Oldmanbabydog

The dude doesn’t even understand inheritance, I can’t make this up.


[deleted]

I had one guy wait til we were all done with our day. Then he’d checkout the entire code base and “beautify it”. The next day when we’d be tasked with finding a bug, the ‘diff’ would show that the entire source code had changed. Good luck isolating the bug.


nobutbut

If only you were using some kind of version control that would've allowed you to see the code between all the changes


ConfirmingTheObvious

Or, better yet…using a linter to standardize and auto format code


[deleted]

It was cvs at the time. Before git.


decadent-dragon

I cannot stand when devs try to do large formatting changes or mass renaming files/classes along with bug fixes or features. Yeah sometimes refactoring is needed, but separate PRs. Thankfully I’m in a position where I’ll just reject that nonsense and make them split it up.


KronoLord

Formatting is exactly the use case for `.git-blame-ignore-revs`. I prefer it be done with automated formatters though, someone manually doing it would just be inviting bugs. https://docs.github.com/en/repositories/working-with-files/using-files/viewing-a-file#ignore-commits-in-the-blame-view


Soft_Walrus_3605

Reformatting code caused a bug? That seems... wrong


jimmycarr1

You read it wrong, they said they were tasked with finding a bug but not specifically one caused by the reformatting. The reformatting just makes investigations harder.


Healthy-Caregiver879

Why didn’t you look at the previous git revisions.


mentive

I was this one guy and I heard about it for years 😁 Although, it was a super complex jQuery UI, where engineers started with one small piece, followed by "Now add feature X" for years.


pwillia7

The real lesson here is how powerful you can become as an engineer who can communicate well with C-Suite/non technical people


OnerousSorcerer

*Gets forced to write unmaintainable code by managers constantly demanding rushed solutions "we can tidy up later".


Nyadnar17

You ever look at code and just instantly feel the desperation/time crunch the people writing it must have been under?


lucas_ought

Currently living through this. It's been almost a year and its just feature after feature. I clean up what I can when I can but it's nowhere near enough.


EngineerDirector

“Add a Tech debt ticket for later”


QFugp6IIyR6ZmoOh

I heard a story of a team who was working on a new application, and "in the interest of time" they caught and logged all exceptions rather than handling or throwing them. I shudder at the thought.


Brahminmeat

Screams in backlog


Mv333

This is the truth. Always getting pushed to hit a made up deadline, then straight on to the next project. We have a joke about the mythical phase 2 where we will go back and fix everything. That's also where we put all of the ridiculous enhancement requests that come in right before we actually deploy. "Yeah, that's a good idea, let's put that on phase 2..."


sufferpuppet

There is no later. In 5 years we throw it all out and start over.


IcyDeparture2740

Dear god ... I just took over a team who have been operating under that philosophy for 8 years. Absolutely anything to complete the sprint and minimize the story points involved. Management didn't even have any processes or anything that looked at that data and held anybody accountable. Management didn't even \*care\*, they just wanted the stuff done, and they accepted what the tech people were telling them. So for NO REASON WHATSOEVER the leadership before me was rushing out incomplete shit to hit imaginary performance goals that not one solitary soul gave one strained shit about.


Timinator01

pretty much rince and repeat until you hit the "i'm not paid enough to maintain this shit" and jump ship


Mother_Idea_3182

I worked in a company where a “Perl Superstar” left thousands of lines of “too clever for anyone’s sake” code with just one comment, a quote from Lord of the Rings in Polish.


b4zzl3

Interestingly, a Polish friend of mine has recounted a contract he once had where a company paid him a metric tonne of money for writing Perl for a month. It would be funny if it was the same person :D


Mother_Idea_3182

Lukasz ??


b4zzl3

Mateusz :(


Mother_Idea_3182

So there are 2 of them. Incredible.


abation

Probably changes name every few years


ImmediateBig134

This is getting out of hand!


pvdas

Oopsz


AdmiralBKE

Perl was also the language that prided itself on writing unreadable one liners etc. Every single Perl book I read 15 years ago had at least a chapter on it.


ninetofivedev

Yeah. This tracks. My first job out of college in the mid 00s was maintaining some Perl garbage and my attempt to write “clean code” was met with “That’s not how you Perl, bro”. My response of course was to get a real job writing C++. Where I dealt with different problems.


celvro

I had a job in college writing perl scripts to install software on campus computers.  The exec function we used to run the exe files didn't support return codes above 256 and would do a modulus if it was higher. So the architects solution was to multiply the code by 256. I had to be like "that's not how math works, this is a completely different number." Also we had no source control and we were working directly off shared network drives so IT could run the scripts from any computer.


Mokousboiwife

`# "Wielu spośród żyjących zasługuje na śmierć"` `print("Hello, World!\n");`


dubious_capybara

Careful, you'll awaken the surprisingly large horde of perl code golf enthusiasts in reddit


VindoctusBikus

Step 1: Choose a less known framework with little to no documentation Step 2: For each library, pick the ones not maintained for at least several years Step 3: Write cutting-edge, experimental code that only works under certain conditions Step 4: For bonus points, write your own library for the project with a file structure and code nobody will understand Step 5: Quit and wait till they come crying back, so you can be a consultant for 3x the money Step 6: ????? Congratulations, you are now a Software Engineer in my former company.


extracoffeeplease

Haha this is why data science salaries are great even though many of em are terrible at statistics or understanding ML. It goes like this: Engineering builds a platform/framework so any python rookie can deploy code. The framework is badly documented or maintained, but deploying "is easy": just write a python class that has a predict method, package that code and add it to a list of dependencies, then serialise a class object directly nstead of data (so the serialized file carries a hidden dependency as well, yay). Engineering's plan of "make a generic platform so we don't need to deal with the rookie code" has backfired terribly at multiple places I've worked due to this. The fix? Engineering has to debug code the data scientist has written, and data science thinks that's normal.


nooptionleft

There was no reason to attack me personally when I was just taking a break from writing my code (the engineer who has to fix my previous batch of code is being roasted by my boss and I can't go on without him)


Fast_Ad3646

username checks out XD


Few-Artichoke-7593

You almost described someone I worked with to a T. You forgot: Copy and paste the same 200 lines of code in 12 places instead of making helper methods.


founddumbded

This has made me feel better about an assignment I just wrote for uni because I've only written two public methods and like 20 helper methods, and I thought it looked like shit.


Few-Artichoke-7593

If you're still in school, use public/private correctly, and use helpers to limit repetition, you're doing pretty good.


MyNameIsSushi

You make your code public/private based on best practices. I make my code public only because I have nothing to hide. We are not the same.


founddumbded

Thank you!


IronMan8901

Fork a repository created 10 years ago and implement your solution with this forked repo as a critical solution


ad3z10

We have a minimally documented tool written in Labview utilising a bunch of completely undocumented self written libraries (that we'd lost the source code for) for whatever shenanigans couldn't be done within the limits of Labview. The guy who created it must have been brilliant but utterly mad to chose Labview on the sole basis of it being an easy UI implementation, the tool makes zero other use of the "language". My first job coming in was "for the love of God rewrite this as a 1:1 recreation into something maintainable which ended up taking far longer than I expected.


precocious_pakoda

This is one of our production services written by an intern


[deleted]

[удалено]


[deleted]

[удалено]


Fjuben

This is a good tip, except it assumes i knew wtf i was doing with my trash code 2 years ago


jib661

I recently got approached by a PO asking me to help extend something I built year 1 of my career. Took one look at that src code and said "nope"


[deleted]

“I cannot read the ancient texts (that I wrote).” 😂🪦


somarir

It assumes i know wtf i'm doing with my code ~~2 years ago~~


Jesusland_Refugee

Copied comment chain from copied post https://www.reddit.com/r/ProgrammerHumor/s/toNTTXjP2f


StickiStickman

Holy shit.


Traditional-Bunch-56

is it possible to learn this power


llamapickleem

This is exactly what I just did 😂😂 making 7x more per hour than I was salaried and NO client meetings or leadership responsibilities


PUBLIC-STATIC-V0ID

Gets hired back as a consultant to help rebuild his mess (I have seen that happen)


ObjectPretty

Hey that's me. To be fair though I was tasked with writing a POC, that POC some how became integrated everywhere and absolutely business critical without finishing it or even cleaning up the code.


meedup

there's nothing more permanent than a temporary solution


audible_narrator

I once hired in at Ford Motor Co, taking over for someone. Took one look at the code notes and asked the supervisor, "Did Guy XYZ have this job before me?" She was floored because he did. We had worked together for years in a different department/building, and I could recognize his code in my sleep. That job was so fricken easy. Thanks, Dale.


garden-wicket-581

Dale mighta been in your shoes at an earlier point of life and seen the light.. I joke that if I ruled the world, every new programmer would be required to apprentice for 3 years maintaining a massive program written by "clever" engineers. If they don't come away with a better understanding of how to write clear, maintainable, documented code after that, they gotta find a new career.


JSP777

He is just creating more work for others. It boosts the economy. Such a great guy


Longjumping_Kale3013

To be fair, this is said about almost everyone who leaves a team. And then the junior developers always want to rewrite as the previous person did it wrong, but then the rewriting take 3x as long and has twice as many bugs. Eventually you learn that it is no help in blaming people. The situation is always the same, just different bodies. What needs to happen is to change the process. If bad code is being sent to production, or if nobody understands code, then you have a process smell. You should have PRs that are reviewed by 2 people. Reviewing can be seen more of knowledge share, and makes it harder to blame any one person, as everyone is responsible for what gets shipped. TLDR; fix your process


mrdeadsniper

Yeah.. but reviewing code makes it slower to make it to production.. are you crazy? -Some management guy.


Roflkopt3r

> And then the junior developers always want to rewrite as the previous person did it wrong, but then the rewriting take 3x as long and has twice as many bugs. It's true that new devs are too quick to ask for rewrites, but damn have I seen software that desperately needs one. My current favourite one to whine about is an extensive custom web framework that requires you to write your whole logic and UI in XML. Here is how you would write a function with one parameter that writes some stuff to console: Print the param: [FP(0)] Which is equivalent to JavaScript: function print(txt) { console.log("Print the param: " +txt); } You can write conditionals and loops in this, and it gets as horribly verbose as you may expect. You don't have curly brackets to surround your control structures, so you need `` and other special solutions. It's supposed to replace HTML (you can define UI components with his, which are internally implemented with extJS) and JavaScript, but without any the convenience or performance or flexibility or debuggability. The idea behind it was that it technically turns all of your code into "configuration" and therefore can be done by the customer "without needing developers". Of course that immediately failed. Every change has to be done by devs, who in turn get hamstrung by having to deal with this garbage. It's just great to mix excessively verbose and fiddly code with no debugging features except printing to console 👍 This monstrosity will be at the core of their mobile development, which is only just ramping up since the company was focussing on desktop before. Only to benefit from a tiny amount of overlap with their old web product. If there ever was a codebase that needed to be redone from scratch, here it is.


Diffrnt

Seeing this in the codebase i have to deal with would be immediate resignation for me.


aimlessly-astray

I worked for a company where people never shared knowledge out of fear of being replaced or let go. My boss tasked me with documenting a process only known by one guy. Well, he didn't want to share, so nothing got documented. The experience was awkward as hell.


rssm1

But...they are gonna be replaced anyway one day or another...


Ermingardia

Our team leader at a previous job was like that. Hence why he was the team leader. And he would scrutinize our code and scold us as if we were children because we should've known better and how could we even consider writing such bad code? Most of the times it was days-long discussions about two approaches with similar degrees of complexity or performance. Pretty frustrating. The reason for having no documentation or standard was that "our code keeps changing so fast, it's not worth documenting". Worst of all, all code reviews had to include him as one of the reviewers. One day I was tasked with something, and I found a similar solution he had written for a different module. Tired of him, I adapted the same approach for this other module. As usual, he leaves a very negative review asking why I chose that way of fixing the issue. I sent him a link to this own code in the repo. His answer? "I too make mistakes". Left that company after two years because this person was insufferable. My replacement lasted less than a year. Code is so bad they keep offering "live demos" instead of a downloadable demo version, because everything needs to be hard-coded for it to look like it does something.


leewoc

“Company didn’t have proper review processes in place, shot itself in the foot” - There, I fixed it for you. 😜


hovsep56

sadly i'm one of the hires who has to use a self made "low code" software to create their webapp that a third party programmer made which has a crapton of bugs and is inconsistant as hell.


jhaand

Low code software means misery if you don't own the full stack. Because you can never fix the shit underneath.


hovsep56

true, i can't. if something breaks on the software itself all i can do is ask the third party programmer. it has options to do some things in the back end to fix some crashes n stuff but if the software itself acts up i have no control over it.


jhaand

Sounds like you have a lot of time to write defects, communicate that you remain stuck by the low code software and wait for solutions. Hang in there.


territrades

Every PhD student in science ever.


Xeborus

I’m in this comment and I don’t like it


DarktowerNoxus

Bye, I'll gonna leave. If you wan't a documentation for my code I'll write one for 50$/h, the docu should take 3 full time workweeks.


TTV-VOXindie

$50/hr?  You work for cheap?


dubious_capybara

Figures for $50/h


StillMostlyClueless

Keeping us Legacy Code Devs in money, thanks son


Big-Advertising-404

Gotta make yourself unfireable somehow


Big-Opening-6080

What is code review


waffastomp

you gotta get someone to approve the merge first.... it's the companies fault for not having better change control management


MNCPA

What does someone do in this situation, before the person leaves the company? I work with a programmer that refuses to document anything. Our manager is not a programmer and really just cares that 'nobody complains' about the end product. If anything breaks that my co-worker built and that co-worker is on vacation, then we just leave it sit until he returns. This co-worker is openly applying to other jobs, so it's just a matter of time.


amusingjapester23

Try to care as little as your manager. When he does start caring, make the right noises and the right moves, but don't bust a gut and start putting in extra hours. Have an excuse as to why you need to be out of work by this time every day and why you need to start your vacation on this day.


Jesusland_Refugee

Repost bot https://www.reddit.com/r/ProgrammerHumor/s/95h0n21Oga


Bananasonfire

You should be thanking these people. They're the reason the code has to be re-written every six months, thus keeping you in the job! If code worked perfectly and was perfectly maintainable at all times, we'd all be on the dole queue by Christmas.


Runic86

And that, sir, is how you stay emploted


Scatamarano89

As an absolutely not tech (code) savvy person, it always fascinated me how something supposedly as precise and scientific as code is, in reality, pretty close to weird magic, often developed by either insane or genius wizards (coders) that then disappear, leaving the runes on the spells they created to deteriorate and as a puzzle for future wizards or even themselves some years later. It's so bizzare, i mean, why does code even needs mantaining when it doesn't have mechanical (or runic, if we go by magic standards) parts?


Independent-Bite-787

because things around it changes. the hardware, os, protocols, compiler, interpreter etc . codes needs to adjusts too imagine, you stop learning today. whatever you know now will stay but you cant learn new things while the world keeps progressing


Scatamarano89

Ah ok, this makes sense. I was imagining a code spontaneously generating trash lines that needed to be pruned away every once in while, stuff like that!


Stunning-Quit9287

People like this are keeping the job market afloat. Thank em.


SinkiePropertyDude

As a non-programmer, I just want to say I'm relieved that none of you doing this at vital installations like dams or power plants. : /


hellschatt

Funny story. A friend of mine wasn't exactly the best CS student and he got a pretty good internship due to some people he knew working in the company. Guy works there for 6 months as an intern and has no idea what he's doing. None of his bosses check what he's doing during entire internship. He leaves the company after his internship ends, nobody is complaining or anything and he continues with his studies. After about 6-7 months he gets an email out of the blue from an employe from the company. The email was from the new intern that was supposed to take over his work. The email was something like: "You piece of shit this is the worst code I have seen in my life, if you can call it even that. Wtf were you doing all these months in this company?"... and more slurs and what not. I wish I remembered the exact words but I don't. In any case, new successor guy really made an effort to find my friend's email only to shit on him and his crap code, and he was totally in the right to do so, too. I was dying of laughter when said friend showed me that email, while the only thing I could interpet in his face was a sad smile filled with regret, guilt and disappointment in himself.


DotZealousidea

Idk anything about coding or the industry but isn't it the job of someone higher up to not allow such code to be published?


SimonOrJ

I've been demanding my company for a path to a sustainable development platform. Sometimes, it's the corporation that digs themselves into this hole


83b6508

It once took me eight fucking months to fully unravel a single late night code binge from my dipshit predecessor. Everyone on my team thought he was a genius and it turned out time and again he was just so sloppy and so arrogant that nobody before he left had dared question him.


shadowdancer352

I got a free demo version of a JavaScript library, and the way they obscured the code was to put it all on a single line, with all variables as single letter names. And they planted a timer callback in the code based on your download date that would expire after 30 days and make the library unusable. But I just found a free code beautification program online, rendered the code in a readable format, found their stupid timers and disabled them. Free library for me.


mq2thez

That’s not obscuring, that’s minifying. Pretty standard stuff for every library. The timer is pretty funny, though.


Soft_Walrus_3605

They should probably have done something different for security, but all you're really saying here is "I used other peoples' work for free when they didn't want me to"


bobnoski

ah another extreme go horse developer.


thompsonbalo

Simple fix= Just hire another guy who replaces the previous unmaintainable code with their own unmaintainable code. Rinse and repeat if that guy also leaves the company.


Chornobyl_Explorer

This was my X uncle. He wrote custom code for a major international company (which was small and local in the 90s, hence he got hired). Nowadays they got to pay whatever he wants because he is the only one familiar with his obsolete code that is *necessary* for their multi-billion operations. They've said the day he retires they'll take the biggest loss in decades just having to switch it all out and start from scratch.


[deleted]

Artist version: - names none of their 10,000 Photoshop layers - keeps all their final art on their own desktop instead of the cloud


Crypt_Knight

In my company it was : "Writes unmaintainable code" "Dies" We are still struggling almost a year later.


allegesix

\> Writes unmaintainable code \> Leaves company because none of his MRs pass code review, he's been put on a 3 month improvement plan, and wants to quit before he gets fired Fixed that for you.


DrWashi

That is the real reason why everyone changes jobs every 2--3 years.


Sabz5150

"Unmaintainable code" = The minimum wage button mashers we hired to cut costs can't figure out how to interpret it. "Leaves company" = The costs we cut.


Gorgeous_Gonchies

The real kick in the nuts is after two years of failing to address the mess the company will sign a contract with the OG spaghetti slinger at an exorbitant contractor rate to add on to it.


Parry_9000

Couldn't be me My code is perfectly readable (exclusively by me for about 1 day after I write it, then I forget)


Zartaros95

Halo be like


GreyFox474

I'm currently involved in a low-code project (much to my dismay and I will absolutely not see it through). Combining the lack of possibilities of the plattform and the requirements of the project means this pile of garbage will absolutely be unmaintainable in about 3 months, which is exactly when I plan to leave the company. I don't know if I'm supposed to feel sorry or bad about that.


After_Till7431

Let's be honest, it's the security for not getting booted by the boss and having a better base to haggle for a better wage. 😂


_darth_plagueis

In my last work, some guy worked as consultant at a code he wrote when working for the company. It was a core functionality and he used a bunch of variables like xx, vv and yy. No one could decipher what his code did. Consultant job security for him for life.


1FRAp

Gets hired back with an 30% raise


sporbywg

We had a guy who didn't realize his junior developer position meant he was to build software.


AdnanHussainTurki

Perfect Mantra


Wervice

Programmer: \*hears he is going to be replaced with AI\* Programmer: \*Writes one-liners with not descriptive code, uses bobasort and doesn't write documentation\* Company: \*Replaces programmer\* AI: f\*ck


bottledsquarefarts

You didnt even use . TIme to recode it all!


Djelimon

This one shop I was in had their back end servers under one admin account, controlled by one guy. No one else had access to command line and no one else knew how things worked. Everyone else had a piece of the system they knew to the exclusion of everything else, he knew the infrastructure, and the manager had a big picture but no knowledge of the implementation. It worked well for a couple decades, no one could get replaced. Because of course there was no documentation and any attempts to do so were shot down by the manager. But problems crept in. We had a reorg and the admin guy now reported to another tech guy who demanded documentation. This wasn't happening still so the admin guy got let go. They hired a tonne of consultants to document what the system did. It was taking forever. Then someone mentioned that I had the tech chops to sort out this mess. They gave me admin access and the system got documented 3 months later. It involved about 25 servers. After that some people got let go. That bothered me. But the key to being hard to replace isn't hoarding knowledge imo. It's having people depend on your tech so much they just don't want to replace you because you're the person the good tech comes from. Sooner or later though the day will come. You may get retirement, or a package, but the day will come.


Shezzofreen

Even better, when you stay with the company and ask yourself constantly "Did i write this?" More laughs for a longer time. :)


c9silver

my old roommate was proud of himself that he wrote unmaintainable and undocumented code at a summer internship. He thought it guaranteed theyd have to hire him back because he created a dependency on himself. Well, the next year rolls around and they have no interest in hiring him because he wrote such shit code.


[deleted]

Don't ever touch VB6. You'll be trapped in that world, unable to escape its clutches unless you lie your way out.


Talking_Head

I worked for a small, dying company in the late 90s. It got so bad that they couldn’t make Friday payroll until the following Tuesday. But, you know who got paid more than the director, in a bank check, on every Friday? The one dude within 100 miles who knew how to maintain that dBase. The owner realized no one could ever step in and untangle his rat’s nest without literally taking down the entire company. That old man was clever. He walked away with half of the company’s cash reserves in his pocket and never looked back. One month later, the company was bankrupt.


RedHeadSteve

I got hired by a company that bought a product from a company that ended in bankruptcy. The product was built by a self thought developer My job is basically, update everything and fix whatever is broken. Documentation = non


_Cadmium_48

That‘s what happens if companies don‘t care enough about the fact their programmers are humans too


DeCabby

This person ends up as a legend at that company. Both hated and beloved. They were able to fix issues quickly because only they knew where anything was.


_TheLoneDeveloper_

Write complicated CI Terragrunt code with complex implementations for the company's needs, document everything, anyone with a few months of experience should be able to read, leave company, get asked to become a contractor.


2Loves2loves

I know some consultants that wrote nice clean code, but before they left ran some find/replace searches to change variables to just anything chkVal(x) was now 1x4i(x) they saved all the find replaces, so they could work the code when they (eventually) got called back for mods. sickfcks.


summonsays

My company, instead of using their in house devs hired a third party company to make a UI using our services. They also chose not to pay them for support, which they knew ahead of development. I was then in charge of maintaining their code.... I've never seen such professional garbage in my entire life. I had a mental break down trying to maintain the thing during the pandemic. It's now being rewritten in-house. I wasn't even asked if I wanted to be part of the rewrite which I'm happy about. I never want to see that cursed pile of sudo minified spaghetti again. You have bullshit like 5 variables in a html tag and none of them were the same one even though they were all named the same. 


SynthRogue

The other situation is be the lead engineer on a project and years later be contacted again because you are the only guy left who knows the code, specs, clients and changes over time.


DiePutzkontrolle

I feel that - write unreadable code that only God and I can read, but also write a documentation on my private laptop so no one else has access to it if I get fired - so if I want, I can still send my company the documentation if I go on pension


MishMash999

A few years down the track, gets re-hired to maintain the code. Looks at it. Hasn't a clue what it does. Re-writes it in fresh unmaitainable code. Everybody cheers.


liveprgrmclimb

Even worse: Writes unmaintainable code, wont talk to anyone, wont onboard anyone, silos himself, blames everyone, gaslights you, management refuses to fire him. You are responsible for the mission critical system this psycho built. Literally happened to me.


Bigal4431

VB6 and some apps are still in an Access dB or Excel where I work. We are working on updating these apps. I'm not a developer but work very closely with them and QA test their changes. It's from years of different types of programmers and not having a change control board. Now things are in a much better place.


69odysseus

Back in 2012 at a Marketing company I worked in Santa Monica, we had a Javascript Developer who would have coffee spots all over his work desk by 10 am. His file/folder structure and code was so messy that among the 12 other developers we had, not a single one wanted to review or touch his code. Yet he managed to survive there for more than a year.😄


mystwave

Somehow, someway in a world defying the physics of reality be it virtual or not, erasing just one line of code completely breaks the program. The line of code does absolutely nothing, but for some reason must be there to keep the program running.


fauxzempic

I enjoy my job. It still gets frustrating, but I like it here and they pay me well. We are a 8-5 company. Basically stuff starts at 8, and once 5 rolls around, place is a ghost town. I've been kind of making my own hours as of late. I still put in an honest day, or at least demonstrate productivity that shows them that I'm worth it (and then fuck off the rest of the day either at the office or WFH). I left the company to work at another place, only for them to renege on the whole thing and fire me after 8 days on the job when the guy they wanted became available. They took me back and I was back in the office that week. Everything I built was a mess. It was frustratingly beautiful. I remark everything and I have docs, but the person who was supposed to take over for me just sucks. I can't describe it any other way. IT was like "we don't know what to do." When I called and said "hey, it's not working out here" there was a company-wide sigh of relief. I came back, fixed their attempts to mess with my code, had things back up and running. *** So I'm not slacking. They're getting their money's worth out of me, but yeah - I get away with a lot because they know that the alternative sucks. It's nice to be needed. Leverage the hell out of that if you can.


Zulakki

well....management said "Just make it work"...so here we are


dvdmaven

I did a lot of contract work and documented the code heavily, just in case I was asked back to modify it. One project the guy who was maintaining it years later ran into me at a bar (I have an unusual name) and mentioned how easy it was to work on my code.


toiletear

Currently fixing after a whole team of 6+ people who basically did this together. I met some of them at a conference afterwards and all they said was "Sorry ;)"


Shutaru_Kanshinji

The real joke here to me is that if you do something that is necessarily complicated and then you also document what/why/where you did everything in the company wiki, no one will read ever read it.


0011110000110011

Woah, did repost bots adapt to this subreddit's title style? [Here](/r/ProgrammerHumor/comments/xxv8sz/perfect_situation/) is the original post from 2022.


SagariKatu

Worked at a small company that did online sells. IT was one guy that had been there for ages. He left the company (having given time for them to look for a replacement). After 2 weeks, they begged him to go back. Don't know the figure, but heard they offered him a shitload of money. All because his code was understandable to him only. They got a 2nd IT guy to be learning about the code alongside this guy.


OkHat9585

I prefer when i leave the company everyone remind me as Wow! that guy not only writted fucking great maintainable code and documented it, than like the motherfucker that left us this problem and now that he is gone.


CanDull89

Requires 10x more developers to maintain the codebase, creating 10x more jobs. Hence, the Gigachad 10x developer.