i did some fun metaprogramming today. i can practically hear my future self screaming.
Am electrician can confirm
I mean, I once had to explain to my electrician that the reason the dryer plug was screwed to the side of my panel box (6’ off the ground) was because the previous homeowner was the son of an electrician.
Yeah that tracks 🤣
It gets better: he also refused to restore power to the shed the cousin of the electricians son wired, because the line was buried without a conduit, and uh, was not rated for the absolutely massive drill press he had in there.
Not sure how he didnt trip the main breaker trying to use it, I have been told every electronic in the house lost power when it was on (house had a 60? amp service when I moved in).
That’s the part I hate most about being a SWE. Just shut up and do your job. I’ve seen your code. You code like you read blogs for a living.
You code like you read blogs for a living.
Do you not?
No. I code like I know what I’m doing.
*like you think you know what you’re doing. Programming experience is a continuum.
I go back and look at my old code and find it clear and beautiful, easy to understand, a pleasure to read. “Ah yes,” I’ll say to myself, “that approach was clever and elegant. Gosh, past me was pretty smart!”
I like to appreciate it in this manner. Because that way, for a moment at least, I can forget about how it doesn’t actually work.
That’s what happens when you take your code from a Stack Overflow question.
Am I the only one too paranoid to ever copy paste code from the internet and/or AI?
Code that I don’t understand feels like a dead pixel when I try to picture the whole piece of software in my head. I even search for what all those one letter flags mean for a command or function before I feel confident in using it.
No, that is a healthy thing to do.
Don’t forget AI (that scraped Stack overflow) providing a slightly different basic solution, that usually works (at least until you think about improving it).
And that is before it hallucinates a package that has been typo squatted by malware authors.
TFW you realize you haven’t grown as an engineer
But it would work beautifully, if it would work.
It can work or it can look good, you can’t have both
Just code in a fancy font

This font is begging for some long s love
for (conſt item of imagetagſ)
I recoiled in horror. Thanks.
Yeah, JavaScript is a true nightmare
lmfao
I love when someone opens a bug in my code and I get to “how the hell did this ever work?”
Electrical engineer: “what was that other guy thinking?”
Software engineer: “What was I thinking?” (It’s code from last night)
Electrician: “what was the engineer thinking?”
We went out for drinks one night after work. Upon stumbling back to the office, I remembered I had forgotten that I signed up to make a tool page to mange some data ingest. It was due first AM. I was three sheets to the wind. Fired up LAMP stack, took the samples and made an ingest function. Wired up a textbox, tested it and went home.
Next AM, I turned it in, there was a minor bug. No problem, I’ll just find the issue and they’ll be good to go.
cracked the scripts open…
I could read it. I could see what a lot of it did. I could NOT figure out what some of it was there for. I spent 30m trying to figure out what I was doing. it was only a couple hundred lines. It wasn’t even a copy/paste job. Eventually I ran out of time and just leaned into phpdump, and breakpoints to find the exact error. One function hit a bonefied php bug that caused the debug to go silent. large swaths of the code were unreachable due to essentially a couple of typos. The only reason it worked as well as it did was because their sample data was as simple as imaginable. I put on some Nine Inch Nails and just remade it in about 30 minutes (10m before it was absolutely needed)
I’ve learned that my buzzed self has less inhibitions when writing code. But those inhibitions are there for a reason.
What was I thinking?-after every interruption that could have been an email
god, this code is awful. Who wrote this?
git blameOh
Past me was a moron sometimes.
Still am. But I used to too
Been writing the same software for 20+ years now, don’t even need git blame to figure out what asshole wrote this shit.
Why is it always me? Haha
Yup there are certain patterns that I can just tell
These days I see so much AI slop that my reaction when I see code I hand-wrote myself is “hey, that’s pretty good”.
My team’s code is great, but we use a lot of shared code written by other teams, with varying levels of quality.
I love that they called it “blame” lol. They knew what it would be used for.
Isn’t it alias for git praise?
Not sure if was there from the beginning but it was originally developed by Linus Torvalds and he can be quite harsh to the Linux contributors.
Subversion tried to call it “annotate”, but that didn’t stick ;)
That exact chain of events happened to me at my last job and I audibly laughed realising it was my own code. To my own credit though, it was a file I had written four years prior which at that point was more than half my whole career in the past
If you aren’t ashamed of your work a year ago, you’re stagnating!
Sometimes you don’t even recognize your own trash, 6 weeks later.
I have lately jokingly guessed when I see the particular style and confusion: it’s you isn’t it? And so far I have been right. The particular author’s magic as expired, and I see the same fault replicated everywhere he has been.
One of my coworkers is fond of using ternary expressions instead of “if” blocks. Even ones without an “else”. So I see things like:
condition ? someVar = "blah" : null;or
condition ? doSomething() : nullWhich should both just use “if” statements. Or my favorite:
condition ? someVar = "foo" : someVar = "bar"which should really be
someVar = condition ? "foo" : "bar"Removed by mod
I haven’t seen him do it lately in any code I’ve reviewed but I do change it whenever I see it if I’m doing work nearby lol
UUUuuuuuh, I am not a programmer (you’re going to say “thank god”), but…
I sometimes even chain them. You can put yet another ternary operator in the else and keep going. You know, else-if.
So anyway, I can get ternary operators spanning 2 - 3 lines.
Oh, I also often have issues thinking of proper loops, so you’d see a few terribly usedgotostatements.Although I do remove ones that are obvious brain fart.
For example, quite obviousvoid example(bool true_or_false){ if(true_or_false){ //code if true } else{ //code if false } //other code }Well, I’ve already had my brain goof up even that once or twice. “How the fuck”, you’re asking?
void example(bool true_or_false){ if(true_or_false){ goto if_true; } //code if false goto end_false_if; if_true: //code if true end_false_if: //other code }The brain-fart if-else.
You need another goto end right before the end_false_if:, otherwise the false code will always run
I tested it, it works as it is.
#include <stdio.h> #include <stdbool.h> void main(){ bool true_or_false = true; if(true_or_false){ goto if_true; } printf("This code runs only if false.\n"); goto end_false_if; if_true: printf("This code runs only if true.\n"); end_false_if: printf("This code always runs.\n"); }If true, it jumps to if_true, then runs other code. If false, the if gets skipped, if false code gets run, then it skips over if true code.
I totally did the thing where I commented without reading properly before. Sorry!
Dear lord lmao
I mean, admitting you have a problem is the first step to a solution…
Not if the author was your boss.
Oh, man. Can you tell what the second step is? I’d really like to learn that.
Working to fix it… (which of course varies wildly based on the problem!)
“Which idiot would do that?”
* looks at git blame for the section and promptly shuts up *
Man past me should have done a better job
//Crappy hack to make this work immediately so management will stop breathing down my neck
Oh wait nevermind lol
Should have checked the
blamebefore running clang-format himself.
i hate when it’s not one person’s fault but like, ten years of bloat. who do i hate for that
Pray to the Omnissiah and light some candles.
Management
Manglement as I call them.
Two red flags for trades and swe and other work:
1 - never saying that they would have done it differently if not outright roasting the work 2 - letting someone else take over their project, willingly, and not because they’re busy. Assuming it’s not a pile of shit they don’t want to do.
Fun trick with Markdown. Put a double space at the end of a sentence so it formats the lines correctly.
- Double spaces
- allow for lists.
I watched a team invent a new language to get around updating some eccentric code.
They could have sat down and commented it and made their changes
They could have refactored what was there.
They could have scrapped it and wrote fresh
Instead, they designed an entire natural language system so that non-programmers who were writing in XML could just write in English.
They ended up making so many required keywords as helpers that the non-programmers kept using the old system because the XML was easier for them work with.
Note: wasn’t my code, wasn’t my dept, when I heard the plan I went to check it out, the old system was functional but like C- work at best. At some point, they wrote a compiler for the new system.
In the 80s. If you look at what your examples have in common, you’ll notice you’ve heard it in the 80s.
Too bad 80s nostalgia is all the hype nowadays, but at least this seems to be passing in other subcultures. I really hope it passes in software development too.
only one of the ones i linked is from the 80s. i think you’ll find the majority are from the 50s.
inventing a new language is almost never the right solution. there was a guy at my last job who tried to do this pretty much every time he ran into a problem with some shitty legacy software he had to work with. rather than take the time to fix it to do what he needed, he took ten times longer to slap another layer of custom bullshit on top of it. ultimately it came down to him being a really shitty engineer too afraid to change existing code, too lazy to do his due diligence, just clever enough to implement a shitty workaround, but not clever enough to realize how shitty it was. everything he made barely worked, was way overcomplicated, and no one else even wanted to try to learn his arcane bullshit syntax.
We do all look at code, get immediately annoyed that it doesn’t just make sense. most of us at least have the wherewithal to stick with it and work on the engine as it sits :)
inventing a new language is almost never the right solution.
The time it is correct is so you can be a certified (employer gimic word) developer.
Want to be a certified rockstar developer? https://codewithrockstar.com/
I’ll bitch and moan about my own work from a few months ago “before I knew better”.
In each of us, not two, but three. Paraphrasing Superfast matt, “that was done by past baahb, and he’s an idiot, but it matters more to future baahb, and that guy is an asshole.”
I wrote code today I know I will have to touch in 2 weeks. I’m already dreading it. that shits a mess.
especially your own code.
“This is obvious” I said. “Surely I won’t need to comment this,” I said.

That comes with experience. I rarely find things I wrote anymore where I could add or remove a comment.
The worst part is when I leave comments and still wonder wtf I was thinking.
My comments are written to be understood by the stupidest person alive, and I am thankful for them.
As the sole programmer of a certain project, I often leave rant comment on what the previous programmer was thinking.
I was complaining to my friends about how bad the programming was on a project I was wrapping up and then they asked, “Isn’t this a personal hobby project?” yes it is.
I like to structure my comments as song parodies and see if anyone notices.
"Is this a real object, or just an interface?
This gets caught in a pipeline, no escape from transformations.
Any way the data goes doesn’t really matter to this service.
…"
Also, the previous engineer was me.










