this post was submitted on 12 Mar 2025
711 points (98.5% liked)

Programmer Humor

21680 readers
229 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 48 comments
sorted by: hot top controversial new old
[–] [email protected] 112 points 1 week ago (1 children)

...this is so much more cursed than it needs to be. If you want to bash in C just system("echo hello world");

[–] tempest 57 points 1 week ago (2 children)

That wouldn't necessarily be bash though

[–] [email protected] 57 points 1 week ago (1 children)

Fine, system("bash -c 'echo hello world'"); then!

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

Now print "¯\_(ツ)_/¯" with the quotes

[–] [email protected] 3 points 3 days ago

my best guess: system("bash -c 'echo \\\"¯\\\\_(ツ)_/¯\\\"'");

which will get parsed as: bash -c 'echo \"¯\\_(ツ)_/¯\"'

which will run: echo "¯\_(ツ)_/¯"

and since echo just prints whatever was given to it, it'll print "¯\_(ツ)_/¯" with the quotes

[–] [email protected] 15 points 1 week ago

I decided to throw my PC in the composter and become a gardener

[–] [email protected] 3 points 1 week ago

That was actually the first line of C I've ever written so there's no way I'm guessing the right number of escapes, but I guess I'd cheat by finding the value of each char and printing those one at a time.

[–] [email protected] 21 points 1 week ago

Fair, should've just said shell

[–] [email protected] 66 points 1 week ago

Tsk tsk... forgot to clean up your temp file!

[–] [email protected] 41 points 1 week ago

For shame. They forgot to make a script to make a tmp script using mktmp, so they can store their tmp script in the tmp script and have proper cleanup

[–] [email protected] 40 points 1 week ago (1 children)

That emoji annoys me more than I would like

[–] [email protected] 24 points 1 week ago (1 children)

As if someone's telling a joke and saying "This is where you should laugh"

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

It's the meme version of a laugh track

[–] [email protected] -2 points 1 week ago

Laugh tracks have a purpose though. I understand they're not to everyone's liking - and that's fine, but they work for some comedy shows - and usually they're from the live audience that sees things performed in front of them.

[–] [email protected] 34 points 1 week ago

Always follow best practices, make sure you cleanup by deleting the hello world bash file!

[–] [email protected] 28 points 1 week ago

My coworkers could learn a thing or two from this. For one, it actually works.

[–] [email protected] 24 points 1 week ago (2 children)
[–] [email protected] 9 points 6 days ago

Okay but 🍒 shouldn't output 🍉. This is inconsistent and confusing. We have standards.

[–] [email protected] 9 points 1 week ago

Picking emojis that make sense actually made it easy to read.

[–] [email protected] 20 points 1 week ago (1 children)
[–] [email protected] 14 points 1 week ago* (last edited 1 week ago)

It violates oh so much including that.

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

Now call that C program from some other program in another language.

[–] [email protected] 27 points 1 week ago* (last edited 1 week ago)
with open('program.c', 'w') as f:
    f.write(
"""I'm not actually going to copy down the program... 

But you get the idea of the joke.

Right?""")
[–] [email protected] 24 points 1 week ago (1 children)
[–] [email protected] 15 points 1 week ago (1 children)
[–] [email protected] 1 points 1 week ago (1 children)

Ah yes now I can... dereference a raw pointer (yes that's essentially the only thing unsafe rust actually enables you to do, it doesn't disable the borrow checker or anything else, it just allows you to play with pointers)

[–] [email protected] 1 points 1 week ago
unsafe fn<'a, T>(p: &'a T) -> &'static mut T {
    p as *cons T as *mut T as &'static mut T
}

It is a bit more than just dereferencing raw pointers.

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

It's..... Beautiful.

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

why would you hurt me like this

[–] [email protected] 17 points 1 week ago

Fucking brilliant

[–] [email protected] 11 points 1 week ago

Thanks, I hate it.

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

Who says C isnt mem safe?

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

Some time ago I wrote a program in COBOL and half of it was just CALL "SYSTEM" BY CONTENT in the end.

[–] [email protected] 4 points 1 week ago

I did the same with python once lol.

I didn't know enoug python or bash so i mixed both with os.system

[–] [email protected] 4 points 1 week ago

Dave is not here.

[–] pedz 3 points 1 week ago (1 children)

That's me with TCL.

I've had an eggdrop for years (obviously) and I'm very bad with TCL, so any new script that I want to add is a bash script executed by the TCL script.

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

TIL people still run eggdrop bots. I don't think Ive touched one since maybe 2003. was probably the last time I messed with tcl

[–] pedz 2 points 1 week ago

I still have an IRC server but the eggdrop's usefulness has pretty much been reduced to fetching YouTube titles and the URL of images on tenor. Its main use was to fetch titles for all URLs pasted on channels where it is, but because me and most of the users are now using TheLounge as a client, there is no need for that anymore, except for a few exceptions. At one point it was also displaying all the things my friends upvoted on reddit, but since reddit closed its API and I came here...

IRC with TheLounge is still very useful though.

[–] [email protected] 3 points 1 week ago

I C what you did there!

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

subprocess.run()

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

reinventing shell scripting. Though I am guilty of this, I do something like this (more complex) but essentially a shell script in rust just because for some application, reading files is slower that way

[–] [email protected] -1 points 1 week ago (1 children)

Apologies for being off-topic, but the domain name, "swg-empire.de", does the 'swg' part 'Star Wars Galaxies' by chance?

~This~ ~comment~ ~is~ ~licensed~ ~under~ ~CC~ ~BY-NC-SA~ ~4.0~

[–] [email protected] 5 points 1 week ago (1 children)

No. It was for a Star Wars roleplay but not a video game. It started life in the newsgroup de.rec.sf.starwars and I played the role of Emperor.

[–] [email protected] -1 points 1 week ago (1 children)

No. It was for a Star Wars roleplay but not a video game. It started life in the newsgroup de.rec.sf.starwars

Ah, ok, nice! Was that the old D6 version, or the newer D20 one?

and I played the role of Emperor.

You dark person you! 😜

~This~ ~comment~ ~is~ ~licensed~ ~under~ ~CC~ ~BY-NC-SA~ ~4.0~

[–] [email protected] 8 points 1 week ago (1 children)

No set rules, just goofing around. When we got too annoying for the rest of the newsgroup we moved to a mailing list and met up in real life a bunch of times.

First time my father flew me there in a small sports plane. They had gotten the permission to greet me on the air field with a limousine blasting the Force Commander remix of the Imperial March and a black carpet. All the Jedi, Sith and in-betweens were waving Emperor-flags and greeted me as was befitting a man of my status.

Did I mention that I was 14 at the time and everyone else about 30?

Good times.