this post was submitted on 28 Jul 2024
1305 points (99.0% liked)

Programmer Humor

19813 readers
142 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
[–] [email protected] 253 points 4 months ago* (last edited 4 months ago)

Mom, can we stop and get some Python?

No, we have Python at home.

Python at home....

[–] [email protected] 197 points 4 months ago* (last edited 4 months ago) (5 children)

What if I prefer this?

#define CURLYOPENRIGHTCLOSEDLEFTBRACKET {
#define CURLYOPENLEFTCLOSEDRIGHTBRACKET }
#define CURVYOPENRIGHTCLOSEDLEFTBRACKET (
#define CURVYOPENLEFTCLOSEDRIGHTBRACKET )
#define PERIODWITHPERIODONTOP :
#define COMMAWITHPERIODONTOP ;

int main CURVYOPENRIGHTCLOSEDLEFTBRACKET CURVYOPENLEFTCLOSEDRIGHTBRACKET CURLYOPENRIGHTCLOSEDLEFTBRACKET
  if CURVYOPENRIGHTCLOSEDLEFTBRACKET 1 CURVYOPENLEFTCLOSEDRIGHTBRACKET CURLYOPENRIGHTCLOSEDLEFTBRACKET
    asm volatile CURVYOPENRIGHTCLOSEDLEFTBRACKET
      "mov $1, %%rax\n"
      "mov $1, %%rdi\n"
      "lea message(%%rip), %%rsi\n"
      "mov $4, %%edx\n"
      "syscall\n"
      PERIODWITHPERIODONTOP
      PERIODWITHPERIODONTOP
      PERIODWITHPERIODONTOP "%rax", "%rdi", "%rsi", "%rdx"
    CURVYOPENLEFTCLOSEDRIGHTBRACKET COMMAWITHPERIODONTOP
  CURLYOPENLEFTCLOSEDRIGHTBRACKET
  return 0 COMMAWITHPERIODONTOP
CURLYOPENLEFTCLOSEDRIGHTBRACKET

asm CURVYOPENRIGHTCLOSEDLEFTBRACKET ".section .data\n"
  "message: .ascii \"wut\\n\"\n"
  ".section .text\n" CURVYOPENLEFTCLOSEDRIGHTBRACKET COMMAWITHPERIODONTOP
[–] [email protected] 92 points 4 months ago (2 children)

You can't be helped, sorry. We will put you to an asylum for people like you

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

Asylum? We have the electric chair for this.

load more comments (1 replies)
load more comments (1 replies)
[–] [email protected] 49 points 4 months ago* (last edited 4 months ago) (1 children)

You win a free trip to the Hague

[–] [email protected] 18 points 4 months ago (2 children)

They don't even deserve the trial. Straight to gulag.

load more comments (2 replies)
[–] [email protected] 28 points 4 months ago (1 children)

Can this be done with emoji?

load more comments (1 replies)
[–] [email protected] 20 points 4 months ago

Acceptable, just FYI I added a pre-commit git hook, please rebase your changes.

[–] [email protected] 18 points 4 months ago

Thanks. I hate it.

[–] [email protected] 95 points 4 months ago (5 children)

Idk why but i fell in love with this and might just use it now

[–] [email protected] 28 points 4 months ago
load more comments (4 replies)
[–] [email protected] 82 points 4 months ago* (last edited 4 months ago) (9 children)

Looks like Python, but in an editor with a weird TUI scrollbar

[–] [email protected] 85 points 4 months ago (2 children)

High chance that it's a Python programmer who is really unhappy about having to work in Java, lol

[–] [email protected] 16 points 4 months ago

Agreed. I saw this and thought it looked beautifully passive aggressive

load more comments (1 replies)
load more comments (8 replies)
[–] [email protected] 77 points 4 months ago (7 children)
[–] [email protected] 36 points 4 months ago

Literally me every time I want to program something slightly complex in Python.

[–] [email protected] 21 points 4 months ago (1 children)
[–] [email protected] 25 points 4 months ago (13 children)

YAML makes you appreciate Python's 4 spaces indentation.

load more comments (13 replies)
load more comments (5 replies)
[–] [email protected] 75 points 4 months ago (1 children)

Whitespace isn't semantically important. Ticket closed.

[–] [email protected] 22 points 4 months ago

That would be a very satisfying ticket closure

[–] [email protected] 73 points 4 months ago

Python with extra steps

[–] [email protected] 61 points 4 months ago (3 children)

Python programmer encountering a real programming language for the first time.

load more comments (3 replies)
[–] [email protected] 60 points 4 months ago* (last edited 4 months ago) (14 children)

Growing up with C made me assume semicolons and braces were needed to avoid subtle bugs, but experience with more recent languages showed me that it's possible to reliably parse the same semantic cues that humans use: indentation, parentheses, and other such context. (Perhaps this was less viable when C was invented, due to more constrained hardware.)

I was skeptical at first, but in practice, I have never encountered a bug caused by this approach in Python, Nim, or any other language implementing it consistently, over the course of a decade or two using them. Meanwhile, I have seen more than a few bugs caused by brace and semicolon mistakes.

So nowadays (outside of niche & domain-specific languages) I see braces and semicolons as little more than annoying noise and fuel for religious arguments.

[–] [email protected] 34 points 4 months ago (3 children)

In Java it’s quite difficult to forget semicolon and still have a syntactically correct program.

I think braces are incredibly important. With Python it can be confusing which indentation is correct when copying code between files. Different indentations can easily be still syntactically correct, but the outcome is vastly different. It’s often I have to double and triple check to verify I copied the code with correct indentation.

load more comments (3 replies)
load more comments (13 replies)
[–] [email protected] 55 points 4 months ago (1 children)
[–] [email protected] 46 points 4 months ago (1 children)

.... whitespace is whitespace.

load more comments (1 replies)
[–] [email protected] 45 points 4 months ago (1 children)

I low key love it. It's unconventional, but it's not hard to read

[–] [email protected] 28 points 4 months ago (2 children)

it's not hard to read

Until there's missing brace somewhere

load more comments (2 replies)
[–] [email protected] 43 points 4 months ago (4 children)

I was like, "where are the braces?". Then, I turned to the right

load more comments (4 replies)
[–] [email protected] 43 points 4 months ago* (last edited 4 months ago) (2 children)

This looks like a python programmer that is mad they have to write ~~C#~~ Java…

load more comments (2 replies)
[–] [email protected] 40 points 4 months ago* (last edited 4 months ago) (1 children)

My credo on this kind of thing is never do something that will make your successor so mad that they find out where you live and post parts of your body to Interpol.

load more comments (1 replies)
[–] [email protected] 40 points 4 months ago (1 children)

This should be its own language. Pyava.

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

Or Jathon (pronounced like Mike Tyson would pronounce JSON)

[–] [email protected] 19 points 4 months ago

Or we can round out the confusion and call it PythonScript

[–] [email protected] 38 points 4 months ago

I kinda like it, easy to see unbalanced braces

[–] [email protected] 36 points 4 months ago (6 children)

Last day at the company, pushed over 5,000 commits. Just style changes, still passes all the checks.

load more comments (6 replies)
[–] [email protected] 34 points 4 months ago (11 children)
load more comments (11 replies)
[–] [email protected] 34 points 4 months ago (1 children)
load more comments (1 replies)
[–] [email protected] 32 points 4 months ago

Pseudo-python

[–] [email protected] 23 points 4 months ago

bro what the fuck

[–] [email protected] 23 points 4 months ago

Honestly, looks neat, might adopt this

[–] [email protected] 23 points 4 months ago

That would be very cool to have in a code autoformatter

[–] [email protected] 20 points 4 months ago

Damn. That’s tidy to the point of inconvenience.

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

I'm not a coder, and.... Well... Thanks, I hate it.

Even I know this is horrific. Where the fuck does this statement end? Which of these brackets refer to this section of other brackets. Idfk.

I could give a shit less if it was just for a single block per or something but ";}}}" hurts me.

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

Well the code indentation explains that, like python. The issue is not reading it. You would rather quit your job than edit this.

load more comments (1 replies)
[–] [email protected] 15 points 4 months ago (2 children)

Auto formatter as part of the expected language tooling is Go's greatest move, even if their formatter doesn't go far enough.

load more comments (2 replies)
[–] [email protected] 14 points 4 months ago* (last edited 4 months ago)

I’m more concerned about that poor stack with all those recursions.

It’s also ~~O(n^2)~~ O(n!). I’m not sure what they’re trying to do, but I’m sure it can be done in O(n) (or at least polynomial).

Reject.

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

The braces need indentation, of course.

load more comments (1 replies)
[–] [email protected] 13 points 4 months ago (4 children)

Automatically enforced deterministic formatting is the best, there's nothing that beats it. The productivity in just being able to format on save knowing that the code will be in the ideally formatted state, along with the anti-bikeshedding properties of this strategy, makes it unbeatable.

load more comments (4 replies)
load more comments
view more: next ›