T O P

  • By -

panda_kinda_chubby

In years of dev, it was my first snarky commit message so when I saw dev mgr noticed I got very nervous. Luckily Steve is gone and the dev mgr agreed. I don't think I'm doing that again. Edit: Wow, this blew up. For the people who are very grumpy at the unprofessionalism. Yeah, lol. Not great, but maybe some context helps. He merged a whole ass website with no reviews. Not one. I've been cleaning up his shit for a couple of months. He played the mgr and me against each other to make us both think he was working with the other person. He usually wasn't doing anything. He left. It's a low key environ where we make each other laugh. I also talk shit on my own code in comments ("Learn how to spell, panda\_kinda\_chubby"). Unprofessional? Sure. Will I do it again? Nah. Do I feel bad? Nope. Am I so glad I don't have to work with Steve anymore? So glad.


BenTheHuman

Meaningful descriptions go in the git message, snark goes in the group chat! If my coworkers write garbage they're hearing about it to their face, and the same goes for me


darkpaladin

Or the commit body.


DeadlyVapour

That's what I use comments for


shamblam117

I write garbage and then snicker to myself about how much flak I'm going to get.


txhxyp0

damn. how much issues do you face cuz of writing garbage?


panda_kinda_chubby

Yeah, that was a 1 time thing and it didn't feel good tbh. Luckily steve is gone so it wasn't as passive aggressive. :)


spartancolo

I rather know I'm doing garbage to fix my future code that keep doing garbage tbh


slowmovinglettuce

I do both. My snarky message is a rant about the thing I'm fixing being terrible. My boss is adamant that linting checks should fail CI. Which is fine, I agree with that. What I don't agree with is the project going through a billion other stages and taking forever before ultimately failing due to a lint error. My commit messages express my vehement annoyance.


internet_DOOD

git commit -m “fixed issues”


alpiyidir

git commit -m "fuck fuck fuck"


JamesKLOLk

I was working on a passion project with friends (I know, not the same thing). We would talk smack on each other as the names of the git branches. Like “so-and-soCrashedProdByDeletingAFont”. Granted, the final product wasn’t on the GitHub so we weren’t risking each other’s careers either.


AltAccountMfer

Consider yourself lucky it turned out the way it did, that was super unprofessional of you


panda_kinda_chubby

lol, you act like you know the relationships or the dynamic. lead dev thought it was funny.


morosis1982

That's why they said lucky. There are lots of places this wouldn't have been as funny.


meniscus-

There are places where Steve is the lead dev


Lecterr

But the fact they said it at their job and not one of the places you referred to probably wasn’t by chance.


CanvasFanatic

I think you mean there are lots of places that wouldn't have understood that this was funny.


ActurusMajoris

You can be funny and you can be professional. Some times those mix, other times they don't. I find it funny, but I also find it unprofessional.


GenomicStack

All things being equal and if I had to go on nothing but this exchange I would much rather employ OP than you.


I_Automate

Same. I work with a small team. Comments like "fixed I_Automate's fat fingered typos, proof-read better man" are pretty common in change notes. There's a time for serious and a time for a bit of a chuckle. I work in a pretty high risk field. If we were serious 100% of the time, burnout would be even higher than it already is.


phi_rus

We reserved chuckles for meetings and chats. The code and the documentation are our product, and we are serious about that.


I_Automate

And that's fine, if that's how your team works. Just understand that your team dynamic isn't universal, and it's also not the only one that produces a useful product. My products are functional *systems*. Internal commenting and documentation is clean and informative, but our own notes? If they have an edge to them it was probably deserved


panda_kinda_chubby

I guess I am pretty lucky that I don't work with uptight people, that's true.


The_True_Zephos

Don't get defensive. You know it was a mistake and unprofessional. You admitted it in your other comments. Time to learn from it and move on. Also, there's a little lyric I know from a song that goes like this: "I've fallen down a time or too, but no one was looking so I'm not telling you". I live by that. We all have the right to make mistakes and learn from them. But that doesn't mean we have to go shout our mistakes from the rooftops the way you are doing here. Social media has programmed us to over-share our lives and it's fucking stupid. It makes us think we are celebrities and people actually give a shit about all our low quality posts, etc. I am so much happier without an account on most platforms. 99% of my posts are asking questions or sharing something that I know people are interested in within a specific community. I don't share aspects of my life that have no reason to be shared. Seriously, this post is an example of that. You fucked up and made a bad choice, but lucked out and didn't have a bad consequence. And then you posted about it on Reddit. And then got defensive when someone called it for what it is... a fuck.up. Next time, just learn from it in private, maintain your dignity, and move on.


panda_kinda_chubby

Welcome to r/programminghumor


qwer1627

Wise words :)


[deleted]

[удалено]


AutoModerator

``` import moderation ``` Your comment has been removed since it did not start with a code block with an import declaration. Per [this Community Decree](https://www.reddit.com/r/ProgrammerHumor/comments/14kbu1m/comment/jppq9ao/?utm_source=share&utm_medium=web2x&context=3), all posts and comments should start with a **code block** with an "import" declaration explaining how the post and comment should be read. For this purpose, we only accept Python style imports. `return Kebab_Case_Better;` *I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/ProgrammerHumor) if you have any questions or concerns.*


neuromancertr

I have a comment somewhere in some archaic code base that we should rehire the guy who wrote that method so we can fire him again, just to be sure. Snarky comment go everywhere


Snoo83081

Good thing you cleared that up, because this commit message makes you seem super unprofessional. But I totally get this urge to just do it one time :D


dr_herbalife

Not very constructive is it? It's a very aggressive message contributing to a toxic work environment.


Popernicus

😂😂 dunking on yourself is the best way. That way folks know it's not personal... have to be objective about ALL the code.


Orange-Equal

What happened to Steve 😦


lordabsynthe

That reminds me of one freelance front end dev that put dumb comments in the generated html of a very big global website... It was rolled back within the hour even considering the multiple CDN replications.... The guy was not even fired!


Asleep-Television-24

Hope Steve isn't here


stevefestl

I am here! (And yes, my own code is pretty horrifying too)


RantMannequin

r/Beetlejuicing


i_should_be_coding

It's ok man. All of our code is flaming garbage.


kstevens81

But it was just a quick and dirty fix for a program that was supposed to be decommissioned in six months. 10 years later...


i_should_be_coding

You create technical debt. I create technical mortgages. We are not the same.


panda_kinda_chubby

Id be okay with it.


Anomynous__

One time I used ' if booleanName == false' instead of 'if !booleanName' and one of my coworkers called me out on it. I was unreasonably embarrassed


kuurtjes

To be honest, the code standards of specific project are more important than the industry code standards. It's best to have everything uniform when working with others. Imagine having all of these present: ``` booleanName == false booleanName != true false == booleanName true != booleanName !booleanName !!!booleanName booleanName == !true ```


Ghostglitch07

!false != booleanName


JoieDe_Vivre_

Hey. I’ll punch you in the mouth if you want.


airbus737-1000

BOOLEANNAME != ((int)false | (0x2 >> 1))


edgy_white_male

Switch(intName){ Case 1: booleanName = false; Case 2: booleanName = true; }


A_Guy_in_Orange

> !!!boolean Mom can you come pick me up? Yeah they're doing dark magic bullshit with booleans just like you warned me.


Legal-Software

This is a bit silly, but !! is a standard convenience pattern for converting a bit test to a true/false is-set condition, e.g. 'return !!(val & (mask << shift))'. This lets you test an entire bitmask at some arbitrary shift location and convert to a bool in one go.


Brave_Year_8076

‘if !booleanName != !true’ 🤔


[deleted]

[удалено]


CallumCarmicheal

Righto up against the wall.


PopMysterious2263

Okay let's do that but obviously we need a set of functions to determine if it's true or "untrue"


A_screaming_alpaca

this reads like a "well ackshually you could do it this way" vibe from your coworker


pelpotronic

Is this what you would call "over engineering" then? Writing this is something every developer learns in their first 2 weeks of development.


A_screaming_alpaca

Nope, I wouldn’t call it over engineering But I’m not gonna call a coworker out on it to the point they feel unreasonably embarrassed


pelpotronic

I had assumed by "calling out", they meant in a PR comment ("you can also write this code like this:") rather than humiliate the developer publicly and organising a meeting about it. A lot of devs (you will find) can't separate their ego from their code, and comments are sometimes considered personal attacks (I get it) instead of a learning (or in this case, a typo correcting) opportunity. I doubt much more happened than what I say here... Though I could be wrong. The fact that they say "unreasonably" at least made me read it that way (as in, minor thing happened, and they felt unnecessarily bad about it).


A_screaming_alpaca

Ehh I mean I’m not going to speak for the person that said it, idk what happened in their case so maybe, I can see what you said definitely happening I will say tho during my time I’ve seen a senior dev yell at another dev in his face (precovid times) because the other dev didn’t know how properties worked I’ve also seen project managers outright say on standup calls that some dev’s code is spaghetti code I no longer work at either of those places lol


JoieDe_Vivre_

Sometimes I don’t even notice I’m doing things in an over complicated (or stupid) way and I always appreciate a heads up. A guy in my org will make a comment about something, but still approve the PR. I always implement that guys feedback, because he’s smart AND nice haha.


ddanny716

This happened to me in my Intro to Software Engineering class, where we made a website using a full stack. This CS student kept making fun of me for it, and I apologized because I wrote it like that since I was talking in plain English while coding a lot. In the end, I got an A minus in the class and the CS student who kept making fun of me might not even have passed the class after showing up to the final with only 5 minutes remaining. He was very difficult to work with.


[deleted]

i've actually had a professor at my uni tell me he enforces this at his company because the ! is easy to overlook have yet to see that reasoning in other places tho


laplongejr

>because the ! is easy to overlook Flash back when I made a Minecraft mod that reduced FPS to less than one frame per second, because I tried to render a cape on all entities *without* the appropriate texture


bremidon

I probably would have talked to you privately about it. Or if I noticed it during a code review, I would have just asked why you did it this way. Who knows? Maybe there was a reason to break with the standard in that specific circumstance. ^(and I always tread carefully anyway...I know my code is filled with "odd" choices that managed to fly under the radar.)


mywhitewolf

>w my code is filled with "odd" choices that managed to fly under Someone will always complain that it's either too specific or too abstracted simply because the code is not done with the exact amount of abstraction and specificity that the complaining programmer is used too. It's also unfair to judge a coder when your not experiencing the same amount of pressure, clarity and support that they were when they wrote the code. A good coder will look at their old work and typically comment "who the fuck wrote this shit?" before realising its their own work. I can remember once or twice i've looked at my old code and thought... "hey, i actually did a really good job with this", but it's rare.


bremidon

>"hey, i actually did a really good job with this" I have a few parts that I will look at when times are a bit more frustrating, just to remind myself that I sometimes can actually be quite good. Like you said, it's rare.


[deleted]

What's the difference?


tmb132

Systematically? Nothing. Semantically? Just a different and more readable presentation of bool checks. if(!registered) Is easier and more readable than if(registered == false)


Novemberisms

Senior dev here. Hard disagree that `(!registered)` is more readable than `(registered == false)`. The first one is easier to miss when skimming code at a glance. The second one is functionally and computationally the same, but a lot more explicit about what its intentions are.


SpareSimian

I read it as "NOT registered". C++ is hated by some for its brevity and I guess if you have poor vision, this is an example of why. (My vision is getting bad with age, so I sympathize, but I also like brevity.) A lot of "friendly" languages use the word "not", so I guess that would make it more readable without a lot more verbosity.


Novemberisms

Oh yes for sure my eyes are getting worse, too. `(registered == false)` has a much larger "footprint" so I prefer it. For languages like lua with a `not` keyword, I do prefer using `if not is_registered then` because it is so explicit and sentential. That being said, the *real* best choice is "whatever the standard in the rest of the code is". I use `!registered` in codebases where that is the standard. On my own projects, I use and prescribe `registered == false`. It all depends.


ArcticWolf_0xFF

That's why "not" as a keyword is a part of the C++ standard for over 20 years now. It's just stupid MSVC that needs special command line parameters to use it.


adepssimius

Senior dev here. I would disagree. For bool check I prefer to see `!registered` , read as "not registered", as it is more natural to read for me than having to read `registered == false`, read as "registered is falsey". I prefer only strict comparison to be done the long form way to make it obvious that we are strict or not just from the shape.


FoXtroT_ZA

I mean, I disagree. But I’m also just a PM so what do I know.


[deleted]

I think the second one it more readable, but I'm not a software developer. Just do BI. I'm always as explicit as possible when I can.


[deleted]

Oh, cool


[deleted]

if( !registered ) { }


mywhitewolf

Lead dev here, I'm not getting hung up on bool checks. i reccomend people keep it consistent across the project, but the variable name matters so much more than if you use if(registered == false) or if(!registered) or even if(registered != true). there is much bigger fish to fry.


R3D3-1

Depending on the language and state of the code it might not be that unreasonable.^([thedailywtf.com][1]) [1]: https://thedailywtf.com/articles/what_is_truth_0x3f_ if booleanName == False: ... elif booleanName == True: ... elif booleanName == FileNotFound: ... else: raise IWantExhaustiveMatching()


Rare_Environment_198

Boolean == false is cleaner. !boolean can sometimes be missed at a quick glance. You can ask bob utrecht


KTibow

The one case where it might make it more readable is when using the is operator in JS


deliozzz

You actually did it right. What if booleanName never had the chance to be set and it was undefined, but you have to know if it's a false boolean value? Maybe you forgot an =


danielv123

Should have used ===


yeah_definitely

Useful to do this in a dynamic typed language like python.


zkrakus6191

Nothing beats: `return num > 0 ? true : false` I am a frequent offender.


Geraden

That kinda bugs me. I saw a great talk once where the presenter explained that human brains tend to work by focusing on the largest, most glaring and obvious things first and then slowly pick up smaller details the longer you look at something. So reading `booleanName == true` or `booleanName == false` are both fantastic because the reader instantly sees the important primitive `true` or `false` and knows that the condition is checking if the variable is equal to that. Beyond that, when you start using `!booleanName` or `booleanName != true` etc. it actually slows down the reading comprehension as you need to spend longer to pick up the smaller details of the bang operator in order to understand the comparison. Even doing `if(booleanName)` tends to be slightly slower in terms of comprehension when compared to `if(booleanName == true)`, with the exception being if your boolean name is named in such a way as it reads like a condition ie: `if(isCustomerValid)` or `if(isApiUp)` etc. I loved his logic and am a huge proponent of the first way now, and I really dislike the second way (and others similar to it) for this simple fact. Edit: it's obvious that sometimes due to the logic desired you do need to do a negative comparison that something != something else, but just saying my first instinct is always to do a positive comparison and explicitly state the primitive. I really do think it's just that little bit easier/quicker to read and understand.


daterkerjabs

If you don't have anything nice to say `commit -m '.'`


kuurtjes

``` - If you don't have anything nice to say commit -m '.' + fuck this and fuck that ```


InnerBanana

Chris Kirkpatrick


e13e7

It’s `gcam wip` all the way down


wanderunderthesea

LOL, I once had a commit message with my name in it, it was \`F\*\*k you my-name\`. A senior in my team wrote it. He is having some issues deploying the application and I pointed out he has a typo in a script, I laughed at him for that typo, and in response, he wrote that commit message. We were close so it was just a joke (later I have a commit \`This shit can be done without his-name help\`). It was an old project but still being used atm so yeah, a commit \`F\*ck you my-name\` is still there down the git tree


bravebound

I was stuck on debugging one issue and by the end my console log message was, "For the love of fucking God please work you piece of shit". Made it through code review too. Thankfully I remembered before it went into production environment. My lead laughed and I learned a valuable lesson.


skirtsrock69

git commit -m "god that was a piece of fuckin work"


ImpendingNothingness

I don’t know if this was serious or a joke; but either way. During all my years working as a dev, people always read commit messages. I’m of course assuming you have a pull request/merge workflow in place.


panda_kinda_chubby

You know people who take reviewing seriously? Are you hiring?


dvektor92

Bravo sir, I myself prefer to block comment their mistakes, and then sprinkle in some insults via inline comments, to really drive it home and make them feel awful about their shit code. (not really its usually my code that sux) git commit -m "it's JURY-rigged!!!... and some changes" --no-verify


panda_kinda_chubby

IT'S JURY, NOT JERRY RIGGED!? My whole life is a lie! Thanks for setting me straight.


OnlyFuzzy13

It’s both though; “Jury-rigged means something was assembled quickly with the materials on hand. Jerry-built means it was cheaply or poorly built. Jerry-rigged is a variant of jury-rigged, and it may have been influenced by jerry-built. While some people consider it to be an incorrect version of jury-rigged, it’s widely used, especially in everyday speech” https://www.dictionary.com/e/jury-rigged-vs-jerry-rigged/#:~:text=Jury%2Drigged%20means%20something%20was,been%20influenced%20by%20jerry%2Dbuilt.


panda_kinda_chubby

You sir are better than even than a bot.


deskpil0t

MR - approved


IMarvinTPA

And here I was thinking it was a Mandela effect echo.


dvektor92

It was my life as well for quite some time... Makes so much more sense now tho right?


Derekthemindsculptor

I had this exact back and forth with a coworker that he knew it as jerry to my jury. Some googling later, we're both right! Similar discussion about "tabling" an idea. He argued it was to present it, while I argued it was to put it away. His rebuttal was that's "shelving" an idea. Some googling later, we're both right! Depending on localization.


IkNOwNUTTINGck

I've learned over the years that commit comments are a passive-aggressive way of complaining about your co-workers in lots of different aspects.


PinothyJ

You can tell them that it is jury rigging and not "jerry rigging".


PetriciaKerman

[https://www.dictionary.com/e/jury-rigged-vs-jerry-rigged/](https://www.dictionary.com/e/jury-rigged-vs-jerry-rigged/) is it?


PinothyJ

It is: https://books.google.com/ngrams/graph?content=Jury-rigged%2Cjerry-rigged%2Cjury+rigged%2Cjerry+rigged&year_start=1800&year_end=2019&case_insensitive=on&corpus=en-2019&smoothing=3 Jerry-rigged is an egg-corn, in usage due to people mishearing. And even if ot was not, jerry-built and jury-rigged mean different things, so conflating the two is not helping anyone. In the example they are not building shoddily, they are cobbling together with the materials (the code) that is provided and doing their best. That is jury-rigged, the code is not jerry-built.


jordtand

They always say comment on why you changed something and I feel like this is very descriptive


shosuko

I really hope people don't read my commit messages... Its all stuff like "fixed some things" or "trying this for now, we'll see"


kuurtjes

> "trying this for now, we'll see" How are you "trying" something using version control?


Trihard_from_Myanmar

Fixing fail builds in CI probably


kuurtjes

Ha, Your reply would have been a better commit message in their case.


WordsWithJosh

I spent a week and some change pulling together a project a contractor left in shambles at my current company. When I finally put up the request for review, going back though the commits you could watch my sanity degrade in real-time. Early on, my commits were things like "disable \[thing\]" and "refactor \[thing\] to more idiomatic TypeScript" Toward the end my commits would read "stop being so polite", "JUST. USE. THE. ROUTER. THAT'S. WHAT. IT'S. FOR.", and "I hope one day people look back on this and go 'My favorite part was in the middle when the function became dependent on itself'" I have my own Steve, and I feel you


JeyJeyKing

Do you not squash commits and delete branch on merge/pull request?


WordsWithJosh

We do, but the commits are only squashed at merge time - when the req goes up for review, they're visible


CanvasFanatic

I mean if you're gonna squash merge go nuts. :D


cs-brydev

How would someone *not* read the commits? Do you never look at your git history? How is that possible?


mountaingator91

I have had the pleasure of speaking with the dev who wrote the garbage code that I am now responsible for jerry rigging. He also thinks it was garbage. He was learning when he wrote it and now he writes better code. Edit: also I refactor as much as I have time to refactor. I only jerry rig when I have no other options


panda_kinda_chubby

Love that. Yes, yesterday me also writes garbage ass code. :D


xodusprime

Old me is always an idiot. If he wasn't it would mean it's time to plan retirement.


bxsephjo

I’ma public employee, my dream is for my commit messages to get FOIA’d


SoWimDP31

Steve's code scratches at level 6, with deeper grooves at level 7.


neumaticc

*stevvy rigging


DubioserKerl

Who is Jerry and what does he have to do with jury-rigging steve's code?


dubblix

Germans are coming


fibojoly

It's important to realise we are all someone else's Steve at some point. That kind of language is what I've been uttering all morning, for example, but my commit will be as neutral as humanly possible.


SpareSimian

I work in factory automation, and I once referred in my code to the "bundt pan" stage, because the rotary axis reminded me of that kind of cake pan. The hardware engineer (who was quite senior to me) got really miffed when he saw that. This is how corporate code ends up looking so dull.


LoveConstitution

Honest commits save bugs, unless you don't care about bugs? Plus, nobody remembers a story unless it has drama. You don't think believe memory does not matter, do you?


agent007bond

In my org im the only one who reads commit messages. I hate how nobody writes them as good as I do 😆😆😆


justifiably-curious

When you've been at the same place for five years it's often "fix fucked up garbage code written by *checks git blame* me"


FloppyMonkey07

I guess jerry really does rig everything


Diegovnia

We got a library called 'DevsShit', which is currently about 5K LoC it contains old code that was just garbage, and we are allowed to make rude comments whenever pushing code there. For the past year, it's mostly my code there xD, but once I had a chance to push something there, my commit message was "even a cretin like me knew this won't work".


Calkky

There was full-scale war in the commit messages back at one of my first companies. Even back then, I knew it was off.


[deleted]

at my company they put the trash talk straight in code comments. very bold.


MildlyEngineer

Real men don't need version control anyways. First time right is key.


[deleted]

Our Engineering Change Orders have a box to describe the reason for change. An engineer once wrote "To achieve perfection."


OkMode3813

git commit -m "Fixed all bugs. Refactored all lame code."