this post was submitted on 18 Feb 2025
381 points (96.4% liked)

Programmer Humor

27945 readers
86 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
 
top 50 comments
sorted by: hot top controversial new old
[–] Boomkop3@reddthat.com 44 points 10 months ago (2 children)

That last one is more common than I'd like, a lot more

[–] ByteJunk@lemmy.world 10 points 10 months ago

$ cp -r src/ src.old

No sir never seen it in me life, honest to god sir

[–] pewpew@feddit.it 8 points 10 months ago

Oh I used to do it as a kid

[–] tetris11@lemmy.ml 38 points 10 months ago* (last edited 10 months ago) (1 children)
cd ~/repos/work-project27
git checkout dev
git branch new_feature
### code for a few hours, close laptop, go to sleep, next morning
git checkout dev
### code for a few more hours, close laptop go to sleep, next morning
## "oh fuck, I already implemented this in new_feature but differently"
git checkout dev
git diff new_feature
## "oh no. oh no no no. oh fuck. I can't merge any of this upstream and my history is borked."
git clone git@workhub:work/work-project work-project28
cd ~/repos/work-project28
[–] programmer_belch@lemmy.dbzer0.com 16 points 10 months ago (1 children)
[–] tetris11@lemmy.ml 19 points 10 months ago
[–] tamlyn@lemmy.zip 17 points 10 months ago (1 children)

At university there were some students that want to manage projekts in could storange. That was just stupid but i didn't know it better at that time.

[–] lesnout27@feddit.org 47 points 10 months ago (2 children)
[–] tamlyn@lemmy.zip 17 points 10 months ago* (last edited 10 months ago) (1 children)

I'm sick...that's my excuse....

[–] lesnout27@feddit.org 16 points 10 months ago (1 children)

Didn't want to be mean with the meme

[–] tamlyn@lemmy.zip 14 points 10 months ago

Don't worry, it's fun

[–] Valmond@lemmy.world 10 points 10 months ago

It's quantum stuff, I could do that, or I could not do that...

[–] bleistift2@sopuli.xyz 13 points 10 months ago (1 children)

The last is just a normal git workflow, isn’t it?

[–] Jyek@sh.itjust.works 2 points 10 months ago

I'm pretty sure it means, they copy and paste the project file and iterate the version number manually.

[–] mEEGal@lemmy.world 11 points 10 months ago (1 children)

the last one is just immutability, praised in modern JS / TS, albeit at the repo level

[–] frezik@midwest.social 15 points 10 months ago (1 children)

I "love" how JavaScript has slowly rediscovered every piece of functional programming wisdom that was developed before 1980.

[–] expr@programming.dev 2 points 10 months ago (2 children)

Kind of, though they honestly just do pretend immutability. Object references are still copied everywhere.

[–] 0101100101@programming.dev 5 points 10 months ago

All of javascript is kinda just pretend.

[–] frezik@midwest.social 2 points 10 months ago

I find you need the whole ecosystem to support immutability to make it work. Every library needs to be based around it. Elixir is about the only modern option that does.

[–] Slotos@feddit.nl 10 points 10 months ago (1 children)

Why did you mention git twice?

[–] thadah@lemmy.blahaj.zone 5 points 10 months ago

While TFS did support Git, I had to deal with the much worse TFVC for a long while, up until Azure DevOps came along.

[–] Ugurcan@lemmy.world 7 points 10 months ago* (last edited 10 months ago)

It’s actually a pretty good idea to have a full system snapshot time to time, where the project can compile successfully, for future Virtual Machine use. It’s usually easier to spin a VM than setting up the whole dev environment from scratch.

[–] brandon@lemmy.ml 7 points 10 months ago (1 children)

MyProject - Copy v2.bak new NEW (3)/

[–] lars@lemmy.sdf.org 2 points 10 months ago

And when it’s release, then you rename it to

MyProject - Copy v2.bak new NEW (3) FINAL.2-19-24/

and then at the next standup, we all ponder how we can rename it to

MyProject - Copy v2.bak new NEW (3) FINAL.2/19/24/

because the team lead needs m/d/yy names with forward slashes

[–] Matriks404@lemmy.world 6 points 10 months ago (1 children)

Git is so ready to understand, that I don't understand how people work without it.

[–] echodot@feddit.uk 4 points 10 months ago

It's one of those things that's hard to really understand why it's so useful, until you actually use it.

[–] Alphare@lemmy.world 6 points 10 months ago* (last edited 10 months ago) (1 children)

As one of the maintainers of Mercurial, I take great offense in this meme. ;)

[–] nogooduser@lemmy.world 5 points 10 months ago (2 children)

It’s definitely up with Git in my opinion. I much prefer the branching in Mercurial.

It’s certainly very offensive to lump it in the same band as SVN and TFVC.

[–] bleistift2@sopuli.xyz 5 points 10 months ago (1 children)

What could possibly be preferrable to git switch -c <branchname>?

[–] nogooduser@lemmy.world 2 points 10 months ago (2 children)

It’s not the mechanism of branching that I prefer.

It’s the fact that Mercurial tags the commit with the name of the branch that it was committed to which makes it much easier to determine whether a commit is included in your current branch or not.

Also, Mercurial has a powerful revision search feature built in which I love (https://www.mercurial-scm.org/doc/hg.1.html#revisions).

[–] bleistift2@sopuli.xyz 3 points 10 months ago

I admit that I have been bitten by the fact that commits don’t have a “true home branch”.

[–] balsoft@lemmy.ml 2 points 10 months ago (1 children)

It’s the fact that Mercurial tags the commit with the name of the branch that it was committed to which makes it much easier to determine whether a commit is included in your current branch or not.

Isn't this trivial in Git too? git branch --contains COMMIT ?

load more comments (1 replies)
[–] Alphare@lemmy.world 4 points 10 months ago

Given that Git and Mercurial were both created around April 2005 to serve the same purpose by very similar people for the same reason... I'd say it's fair!

[–] parpol@programming.dev 4 points 10 months ago

Couldn't add perforce to the list because someone else was checking it out, I see.

[–] nogooduser@lemmy.world 4 points 10 months ago (1 children)

And worse than all of those options is Visual Sourcesafe.

[–] Valmond@lemmy.world 3 points 10 months ago

Fox Pro!

Shrug

[–] PoolloverNathan@programming.dev 4 points 10 months ago (4 children)
[–] magikmw@lemm.ee 1 points 10 months ago

With properly configured subvolumes, I'll allow it.

load more comments (3 replies)
[–] yogsototh@programming.dev 4 points 10 months ago (1 children)
cp $fic $fic.$(date -Iseconds)
git commit -a -m "save at $(date -Iseconds)"
# edit $fic
git commit -a -m "save at $(date -Iseconds)"
git push -f
[–] ZILtoid1991@lemmy.world 3 points 10 months ago (1 children)
load more comments (1 replies)
[–] 0101100101@programming.dev 3 points 10 months ago

I do miss the tags of SVN that would replace certain strings on each commit such as the date, a version number, etc.

[–] 0101100101@programming.dev 3 points 10 months ago* (last edited 10 months ago)

CVS is gonna make a comeback! I tell ya!

[–] GenderNeutralBro@lemmy.sdf.org 2 points 10 months ago

No love for cvs?

[–] Carighan@lemmy.world 2 points 10 months ago (3 children)

I miss mercurial and it's far more sensical flags and commands...

[–] wewbull@feddit.uk 2 points 10 months ago

Me too. It also handled some situations, like divergent lines in the same branch or obsolete changes, much better.

[–] Alphare@lemmy.world 2 points 10 months ago (1 children)

It's still here and very much alive in case you were curious.

[–] nogooduser@lemmy.world 1 points 10 months ago

The only reason that we stopped using Mercurial is that Microsoft used Git in Azure DevOps. I still wish that they’d supported Mercurial instead of or as well as Git.

load more comments (1 replies)
[–] JadeSleeps@lemmy.blahaj.zone 1 points 10 months ago

The last one can easily describe Django. Feels like depending on the code base/your mistakes/people you work with can easily turn a normal project into a project where majority of the files is just migration files.

load more comments
view more: next ›