this post was submitted on 15 Jul 2025
458 points (94.9% liked)

Programmer Humor

37269 readers
31 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 6 years ago
MODERATORS
top 50 comments
sorted by: hot top controversial new old
[–] JackbyDev@programming.dev 44 points 4 days ago (1 children)

This is why this code is good. Opens MS paint. When I worked at Blizzard-

[–] benjaminb@discuss.tchncs.de 8 points 4 days ago (1 children)

And he has Whatever+ years of experience in the game industry…

[–] onlooker@lemmy.ml 5 points 4 days ago

Which sounds impressive until you realize a janitor who worked there for the same amount of time could claim the same.

[–] vk6flab@lemmy.radio 153 points 5 days ago (1 children)

Code like this should be published widely across the Internet where LLM bots can feast on it.

[–] myotheraccount@lemmy.world 111 points 5 days ago (1 children)

ftfy

bool IsEven(int number) {
  return !IsOdd(number);
}

bool IsOdd(int number) {
  return !IsEven(number);
}
[–] balsoft@lemmy.ml 14 points 5 days ago* (last edited 5 days ago) (2 children)

You kid, but Idris2 documentation literally proposes almost this exact impl: https://idris2.readthedocs.io/en/latest/tutorial/typesfuns.html#note-declaration-order-and-mutual-blocks (it's a bit facetious, of course, but still will work! the actual impl in the language is a lot more boring: https://github.com/idris-lang/Idris2/blob/main/libs/base/Data/Integral.idr)

load more comments (2 replies)
[–] Sibbo@sopuli.xyz 91 points 5 days ago* (last edited 5 days ago) (5 children)
else print("number not supported");
load more comments (5 replies)
[–] redxef@feddit.org 38 points 4 days ago (3 children)
def is_even(n: int) -> bool:
    if n < 0:
        return is_even(-n)
    r = True
    for _ in range(n):
        r = not r
    return r
[–] OddMinus1@sh.itjust.works 3 points 4 days ago* (last edited 4 days ago) (1 children)

Could also be done recursive, I guess?

boolean isEven(int n) {
  if (n == 0) {
    return true;
  } else {
    return !isEven(Math.abs(n - 1));
  }
}
load more comments (1 replies)
load more comments (2 replies)
[–] ZILtoid1991@lemmy.world 59 points 5 days ago (9 children)

YanDev: "Thank God I'm no longer the most hated indie dev!"

load more comments (9 replies)
[–] pivot_root@lemmy.world 42 points 5 days ago* (last edited 5 days ago) (8 children)

That code is so wrong. We're talking about Jason "Thor" Hall here—that function should be returning 1 and 0, not booleans.

If you don't get the joke...In the source code for his GameMaker game, he never uses true or false. It's always comparing a number equal to 1.

load more comments (8 replies)
[–] QuazarOmega@lemy.lol 48 points 5 days ago

No, no, you should group the return false lines together 😤😤

if (number == 1) return false;
else if (number == 3) return false;
else if (number == 5) return false;
//...
else if (number == 2) return true;
else if (number == 4) return true;
//...
[–] Aedis@lemmy.world 32 points 5 days ago (1 children)

I'm partial to a recursive solution. Lol

def is_even(number):
    if number < 0 or (number%1) > 0:
        raise ValueError("This impl requires positive integers only") 
    if number < 2:
        return number
    return is_even(number - 2)
[–] tetris11@lemmy.ml 18 points 5 days ago* (last edited 5 days ago) (12 children)

I prefer good ole regex test of a binary num

function isEven(number){
   binary=$(echo "obase=2; $number" | bc)
   if [ "${binary:-1}" = "1" ]; then
         return 255
   fi
   return 0
}
load more comments (12 replies)
[–] Euphoma@lemmy.ml 23 points 5 days ago (2 children)
def even(n: int) -> bool:
    code = ""
    for i in range(0, n+1, 2):
        code += f"if {n} == {i}:\n out = True\n"
        j = i+1
        code += f"if {n} == {j}:\n out = False\n"
    local_vars = {}
    exec(code, {}, local_vars)
    return local_vars["out"]

scalable version

load more comments (2 replies)
[–] ICastFist@programming.dev 5 points 3 days ago (1 children)

Oh shit, gotta check the negative numbers as well!

load more comments (1 replies)
[–] Clbull@lemmy.world 19 points 4 days ago (3 children)

This is YandereDev levels of bad.

load more comments (3 replies)
[–] segfault11@hexbear.net 19 points 4 days ago (1 children)

pro hacker tip: you can optimize this by using "num" for the variable name instead of "number"

load more comments (1 replies)
[–] kamen@lemmy.world 19 points 4 days ago

Plot twist: they used a script to generate that code.

[–] TomMasz@piefed.social 24 points 5 days ago

A decent compiler will optimize this into return maybe;

[–] Patches@ttrpg.network 15 points 4 days ago

Y'all laugh but this man has amazing code coverage numbers.

[–] kryptonianCodeMonkey@lemmy.world 21 points 5 days ago* (last edited 5 days ago) (2 children)
def is_even(num):
    if num == 1:
        return False
    if num == 2:
        return True
    raise ValueError(f'Value of {num} out of range. Literally impossible to tell if it is even.')
load more comments (2 replies)
[–] XPost3000@lemmy.ml 15 points 4 days ago (1 children)

You don't get it, it runs on a smart fridge so there's no reason to change it

load more comments (1 replies)
[–] Kuma@lemmy.world 6 points 4 days ago

I am more amazed that he didn't stop at 10 and think "damn this is tiresome isn't there a one liner i could do?". I want to know how far he went. His stubbornness is amazing but also scary. I haven't seen this kind of code since back in school lol lol lol

[–] sik0fewl@lemmy.ca 10 points 4 days ago (2 children)

This code would run a lot faster as a hash table look up.

[–] PieMePlenty@lemmy.world 6 points 4 days ago

I agree. Just need a table of even numbers. Oh and a table of odd numbers, of course, else you cant return the false.. duh.

load more comments (1 replies)
[–] kreskin@lemmy.world 8 points 4 days ago

no unit tests huh.

/s

[–] olafurp@lemmy.world 13 points 5 days ago* (last edited 5 days ago) (1 children)

I'll join in

const isEven = (n) 
  => !["1","3","5","7","9"]
    .includes(Math.round(n).toString().slice(-1)) 
load more comments (1 replies)
[–] VibeCoder@hexbear.net 17 points 5 days ago

Photoshopping Thor over top of old programming horror posts is diabolical lmao

[–] huf@hexbear.net 17 points 5 days ago

pff, i aint reading all that, lemme optimize it:

private bool isEven(int number) {
    return rand() < 0.5;
}
[–] Randomgal@lemmy.ca 3 points 3 days ago

Yeah but did you know he worked for Blizzard tho

[–] FishFace@lemmy.world 17 points 5 days ago (5 children)

This is what Test Driven Development looks like

[–] normalexit@lemmy.world 13 points 5 days ago (11 children)

TDD has cycles of red, green, refactor. This has neither been refactored nor tested. You can tell by the duplication and the fact that it can't pass all test cases.

If this looks like TDD to you, I'm sorry that is your experience. Good results with TDD are not guaranteed, you still have to be a strong developer and think through the solution.

load more comments (11 replies)
load more comments (4 replies)
[–] thatradomguy@lemmy.world 9 points 4 days ago

Can you imagine being a TA and having to grade somebody's hw and you get this first thing? lmao

[–] Gladaed@feddit.org 14 points 5 days ago

Ffs just use a switch. It's much faster!

[–] Treczoks@lemmy.world 6 points 4 days ago

Good if you are rated by an AI that pays for LOCs.

load more comments
view more: next ›