this post was submitted on 23 Aug 2023
850 points (98.0% liked)

Programmer Humor

19809 readers
277 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 2 years ago
MODERATORS
 
all 49 comments
sorted by: hot top controversial new old
[–] ExtraMedicated 106 points 1 year ago (4 children)

3 months ago:

"Can you comfirm that each user account can have no more than one of these entities?"

"Yes. Definitely."


Today:

"Oh by the way, we have some users who need to have multiple entities. Can you fix it?"

[–] [email protected] 50 points 1 year ago

I eventually learned to never trust any restrictions on the user.

I quickly learned to make sure everyone had a copy of decisions made, so that I could charge by the hour for changes. I eventually learned to include examples of what would and would not be possible in any specification or change order.

[–] [email protected] 33 points 1 year ago (2 children)

I'm in the exact same boat right now.

Also this change from 1:1 to 1:n entity was like one "minor" feature in a rather larger list of feature requests. It so far has caused more work then all the other features combined.

[–] [email protected] 19 points 1 year ago

And months later you'll find out, that your change completely fucks over some internal optimizer statistic and causes the DB to turn into lava.

I definitely don't know that, because of several hour long outages and millions of lost revenue.

[–] [email protected] 7 points 1 year ago

Or worse, it was an n:1 and they want it n:n

[–] [email protected] 6 points 1 year ago (1 children)

Even worse, they'll claim it was a bug

[–] [email protected] 1 points 1 year ago

this is ongoing now. Our "creators" were supposed to be "matched" for a "job" based on "skills", not "skill". pure chaos

[–] [email protected] 44 points 1 year ago (1 children)

Jokes on them I charge by the hour

[–] [email protected] 12 points 1 year ago (1 children)

I was about to say. Rejoice! If this is a client these are billable hours

[–] [email protected] 1 points 1 year ago (1 children)

yea, but it stops being fun when they say it's a bug and it's always supposed to work like that.

[–] [email protected] 1 points 1 year ago

Then it's a valuable lesson in writing your client contracts and your work change order templates.

If you bid per project you need to have clear milestones and sign-offs. If you bill per hour then it's not issue.

[–] [email protected] 23 points 1 year ago (1 children)

It's a good thing I'm a hobbyist so that I can avoi- hmm, now that I think about it this feature could be really cool and shouldn't take too long to implement...

[–] queque31 9 points 1 year ago (1 children)

2am me: why the fuck this doesn't work anymore!!!

[–] [email protected] 6 points 1 year ago

Spouse at 7:00 AM: "Why do only some of the house lights work and there's no hot water?"

Me: "You know that quick fix I was working on last night. Well, umm, one thing led to another aaaand... Umm... Just so you know, your phone is using mobile data because the wifi is out."

[–] [email protected] 16 points 1 year ago (2 children)

In consulting, that’s called “after work”. Got to pump those billables

Honestly though, unless it’s a feature that is completely outside the domain of the application. If you have to re-write your entire app then your app was probably dog shit to begin with

[–] [email protected] 6 points 1 year ago

To be fair, it said "an enormous amount of code", not "your entire app", but yes, the ability to add unexpected new features or make focused changes without touching more than a minimal amount of existing code is a very good smell metric of code quality. The problem is that for every dev who understands how to program like that, there are at least five, probably more like ten who don't, which means most of us are working on teams that produce a blend of clean code and, as you say, dog shit, so the feature request that requires stirring up all that shit is out there waiting for us, like it or not. The best we can do, when it hits, is try to at least improve all the shit that we touch in the process. Maybe some of it can become compost, I dunno, the metaphor breaks there, gonna have to refactor the metaphor.

[–] Gonzako 2 points 1 year ago

Yeah, that wasn't a SOLID piece of work

[–] [email protected] 14 points 1 year ago

Bro that’s just Tuesday

[–] idunnololz 14 points 1 year ago (1 children)

Jokes on you, I like refactoring code.

[–] [email protected] 2 points 1 year ago

Refactoring is healthy for code.

This is a good thing!

[–] [email protected] 13 points 1 year ago (1 children)

If you do this enough you know how to design your solutions to be relatively flexible. At least for your backends.

Your frontend will always churn, that's the nature of the job.

[–] [email protected] 9 points 1 year ago (1 children)

Your frontend will always churn, that’s the nature of the job.

Yep. The trick is to be gone before anyone finds the gross stuff needed to make it all work.

[–] [email protected] 1 points 1 year ago

cries in open source frontend development

[–] ChickenLadyLovesLife 12 points 1 year ago

My favorite thing was having to rewrite an enormous amount of code to support a new feature because the original architect originally wrote an enormous amount of code in anticipation of supporting a new feature like it.

[–] [email protected] 11 points 1 year ago (1 children)

I just had to rewrite all my code for 3rd time in a row and I am the customer. Ughhhh

[–] ripened_avacado 14 points 1 year ago (1 children)
[–] [email protected] 1 points 1 year ago

I mean I am the one causing myself to have to rewrite my code. I am developing a VR Theme Park.

[–] Sigh_Bafanada 8 points 1 year ago (1 children)

We just need to change one field into an array, so that users can be linked to more than one location.

We estimate around 400 hours work.

[–] [email protected] 4 points 1 year ago (1 children)

We estimate around 400 hours work-

In order to analyze the problem, inform stakeholders and a allow for a brief period for outlining the next potential steps to be decided by the steering committee. Once there, we can talk about allocating developer hours to enabling the resolution and it's required upgraded dependencies. See my previous estimate sent 2/7/2018.

[–] [email protected] 3 points 1 year ago (1 children)

Oh the flashbacks... Do you work in healthcare or banking?

[–] [email protected] 1 points 1 year ago (1 children)

AR application development.

[–] [email protected] 2 points 1 year ago

Good lord it's everywhere. Get the flamethrowers...

[–] [email protected] 7 points 1 year ago (1 children)

Thats what end of life-ing your products is for 😎

[–] Jerkface 9 points 1 year ago (1 children)

How about end of life-ing your client?

[–] bruhduh 4 points 1 year ago
[–] peopleproblems 6 points 1 year ago

3 years and $5m down the drain for something we just got in production this year.

Could have been worse?

[–] Feathercrown 5 points 1 year ago (1 children)
[–] [email protected] 4 points 1 year ago (1 children)

You'd think this is stupid but this has surprisingly worked on more than one occasion for me.

[–] Feathercrown 3 points 1 year ago

Lmao power move

[–] [email protected] 5 points 1 year ago

Sounds like job security to me.

[–] shotgun_crab 4 points 1 year ago

Composition helps a little at least

[–] [email protected] 3 points 1 year ago* (last edited 1 year ago)

This literally happened in my meeting last week. Top position development manager was complaining the existing thing was shit. Basically means we have to build a new thing from scratch. And guess what? The deadline is 12 Sep.

If you think it was shit why did you let them do what they did in the past?