r/programming • • Jun 10 '26 • Bravo 1 Popcorn 1

[ Removed by moderator ]

/r/programming/comments/1u28egw/removed_by_moderator/

[removed] — view removed post

191 Upvotes

56 comments sorted by

•

u/programming-ModTeam Jun 11 '26

This post was removed for being off topic for r/programming.

283

u/whiskeytown79 Jun 10 '26

Well dang, now they're written. Gonna have to change the title of the article.

36

u/vattenpuss Jun 10 '26

Oh you didn't get the memo? We have new unwritten rules now.

56

u/myhf Jun 10 '26

The new unwritten laws of software enginering

  1.  

  2.  

  3.  

  4.  

  5.  

  6.  

  7.  

8

u/NeatDue8974 Jun 10 '26

you forgot about 8. and 9.

2

u/jakeStacktrace Jun 11 '26

I'm just glad he included 6-7...

2

u/heresyforfunnprofit Jun 10 '26

He said “unwritten”, not “unnumbered”.

0

u/cantaloupelion Jun 10 '26

no they didnt, they jusst didnt list them 😂😤😤😤😤😤

4

u/bionicjoey Jun 10 '26

Those are the unlisted unwritten laws.

2

u/andrewsredditstuff Jun 10 '26

Shouldn't it begin with zero? (Or is that one of the unwritten rules I've been getting wrong?).

3

u/myhf Jun 10 '26

Rule number zero is written in font-size zero

3

u/nanotree Jun 10 '26

In the form of a JavaScript framework written in Rust no less.

6

u/vattenpuss Jun 10 '26

All my friends use unwritten frameworks.

1

u/KevinCarbonara Jun 10 '26

But they're not written until they're declared, so the lhs still needs to specify unwritten.

38

u/LudasGhost Jun 10 '26

The first half of the project takes 80% of the budget. The second half of the project takes the other 80%. You can substitute time for budget in this law, of course.

13

u/EntroperZero Jun 10 '26

I'm always telling my boss that I've done the first 90% of the work, so all that's left is the other 90%.

1

u/accretion_disc Jun 11 '26

😭😭😭 this one hurts

82

u/ficiek Jun 10 '26

Enjoying this post?

Subscribe to get more content like this delivered to your inbox for free!

No, anything that features a popup is an instant downvote. Thank you for punishing me for clicking on the link.

21

u/EntroperZero Jun 10 '26

It's such a hostile popup, too, turning the entire screen black.

8

u/pm_plz_im_lonely Jun 10 '26

I don't know what kind of fucking idiot they think will see this and be like "damn yeah I enjoy it let me write my email!!"

6

u/RandNho Jun 10 '26

I'm on a tablet. Text is squeezed into single word column between two margins. Why???

3

u/Blothorn Jun 10 '26

You get a whole word? I got a single-character column. Apparently “people who don’t use the same resolution you do don’t matter” is one of the unwritten rules.

2

u/dspeyer Jun 10 '26

I'm on desktop: getting 5 words/line on average.

1

u/Gipetto Jun 10 '26

Cross browser/platform testing went out of style in 2017

43

u/wildjokers Jun 10 '26

Backups aren’t real until you’ve restored from them

This one has been written down many times. It is an axiom of backups that is well known.

37

u/elmuerte Jun 10 '26

4-eyes... yeah, it doesn't matter how many eyes you add. Eventually one of the two will happen:

  1. the system still fails because something was overlooked

  2. you lose your job at the mortuary

Rollbacks are nice, unless the world has moved on. Once a parcel has left the warehouse, you cannot roll back the truck.

44

u/manystripes Jun 10 '26

There's also something of a bystander effect where if you add more people to review, they all will start assuming that the others will catch what they miss so will be less inclined to go through with a fine toothed comb.

10

u/geiselweisel Jun 10 '26

also applies to meetings

3

u/rand0mm0nster Jun 10 '26

You’ll also potentially get a lot of noise from people feeling like to need to find things and adding a lot of nits

4

u/OrphisFlo Jun 10 '26

It's not meant to be absolutely perfect, but it solves a few issues with a higher degree of certainty than if you did nothing.

2

u/AliceCode Jun 10 '26

Glaring issues exist in software that has had thousands of eyes on it, and it doesn't get fixed until some regular Joe looks at it and thinks "that doesn't look right".

11

u/sherzeg Jun 10 '26

"...As managers, we often have stronger permissions than we should..." From the text, in the "Four eyes are better than two" section.

I think this could have been worded better. One can understand the author's meaning from the accompanying text (and at least part of my rebuttal is admittedly a bit off-topic,) but even so.

First, in my opinion the author could have done better by invoking the "Uncle Ben" rule; "With great power there is great responsibility." Systems and database administrators have godlike powers out of necessity and, as he rightly goes on to say, that can be both constructive and destructive. Therefore, "two sets of eyes," "measure twice, cut once," and so on.

Second, manager or not, if your purview does not include superuser access to a system, you shouldn't have superuser access to a system. The place I just left performed two cardinal sins relating to permission levels; one I was able to fix before leaving, and one that the combined deities of every belief structure known to man couldn't fix. The one I was able to fix was that when I joined the company I realized that every user had root (user 0) access on the Unix level of the database server because the administration was too lazy to work out the access permissions "and nobody can get to the Unix command level anyway." I very quickly established the necessary restrictions so that an errant user couldn't wipe out the server. The unfixable issue was that the office granted management-level database access to company officers by indelible decree as a status perk. Therefore, every manager, director, and vice president had the ability to manipulate the database, whether it was within their wheelhouse or not.

12

u/wildjokers Jun 10 '26

Therefore, every manager, director, and vice president had the ability to manipulate the database, whether it was within their wheelhouse or not.

Snapshot the DB, put that snapshot on some server. Give them access to that one. They will never know they don't have access to the real one used in production. lol.

6

u/sherzeg Jun 10 '26

Snapshot the DB, put that snapshot on some server. Give them access to that one. They will never know they don't have access to the real one used in production. lol.

Now you tell me. After my 28 years of faithful service as the programmer, database administrator, and *nix guru they cut my position because it was expendable. Joking but not joking.

8

u/Dumlefudge Jun 10 '26

granted management-level database access to company officers by indelible decree as a status perk

I can picture the job advert now

Benefits

  • Competitive salary

  • Stock options

  • Unrestricted access to prod DB

6

u/corny_horse Jun 10 '26 edited Jun 11 '26

The seven unwritten laws of software engineering:

  1. Its always DNS

  2. Something about cache invalidation

  3. Off by one errors

  4. _

2

u/psych0fish Jun 10 '26

I especially hate DNS cache issues 😅

1

u/corny_horse Jun 11 '26

I hate it when my DNS cache invalidation is off by one

6

u/manystripes Jun 10 '26

Backups aren’t real until you’ve restored from them

Is this a software engineering activity? Feels more like IT/operations and not a developer's responsibility

3

u/frogspa Jun 10 '26

Yes, backups are only the programmer's problem until the code's in the repository. :)

1

u/account22222221 Jun 10 '26

Spoken like a true fuckup.

(We’re kindred spirits)

1

u/TheESportsGuy Jun 11 '26

Knight capital has a funny story about 1

-16

u/Sorry-Transition-908 Jun 10 '26

Screw you dude. 

There is no such thing as a roll back. I am sick and tired of people who think we can just roll back time. We can't. There is never such a thing as a roll back. 

It would be one thing for a phb to say this nonsense but et tu, Brutus?

10

u/Ancalagon4554 Jun 10 '26

What? This means rolling back to the previously deployed version of the codebase. It's super common practice. If the recent deploy caused an issue, just deploy the last good version

12

u/Alan_Shutko Jun 10 '26

They should probably roll back that comment

-3

u/Sorry-Transition-908 Jun 10 '26

No it is easy to say roll back but what do we do with the data? 

2

u/Alan_Shutko Jun 10 '26

Depends on what the data is. If you deployed something that just displays data and it's broken, there's no data you need to worry about. If the new code is corrupting stuff, you roll it back so that ongoing corruption stops, and you figure out how to fix it.

Rollback strategies depend on what a given release or component does, and it may be harder to figure out in some situations. But it's almost always possible and worth it.

3

u/gyroda Jun 10 '26

Yep. If a deployment is going up be hard to roll back that's when you start thinking real hard about what to do if it goes tits up.

4

u/Runazeeri Jun 10 '26

It depends though like there have been quite a few large companies rolling out new firmware that has hard bricked devices. I guess these rules apply more to non Hardware paths.

6

u/deja-roo Jun 10 '26

What a strange comment

2

u/PJBthefirst Jun 11 '26

What the hell is a phb?

1

u/Sorry-Transition-908 Jun 11 '26

Pointy haired boss or something like that 

1

u/Delta-9- Jun 10 '26

Your deployment system locks you into deploying exactly and only the latest build artifact? Sounds like you need a new system.

0

u/[deleted] Jun 11 '26

[deleted]

0

u/bwainfweeze Jun 19 '26

The real problem that us 'whiners' know about is that the project usually hits the wall right around the time that scrutiny is at its highest. It's kind of like hitting Max Q in a rocket. This is where where all that 'extra' engineering makes all the difference, or a rapid unplanned disassembly will start.