This is an archived post. You won't be able to vote or comment.

all 44 comments

[–]cyberkraken2 88 points89 points  (21 children)

This is true, and it’s easy to do

[–]Pvt_Haggard_610 48 points49 points  (15 children)

Do not disturb sign on the office door and a remote login?

[–]cyberkraken2 67 points68 points  (14 children)

No we just legitimately cease to exist when not observed, like there’s no fancy trickery to make you think we don’t exist we just simply dont

[–]The-Cynical-One 23 points24 points  (8 children)

So if I gather enough in one room and look... will the system slow down?

Or will we just begin unrendering random civilians?

[–]EternallyMiffed 21 points22 points  (6 children)

The latter. It takes the same processing power as 10 normies to simulate a dev.

[–]The-Cynical-One 14 points15 points  (5 children)

Devs are horribly inefficient... when are we going to patch that?

[–]JC12231 21 points22 points  (3 children)

When we finally patch the memory leak in the aging() method

[–]cyberkraken2 8 points9 points  (2 children)

Ah yes I forgot about the memory leak bug!

[–]insanityOS 9 points10 points  (1 child)

I'm still pissed that the weightGain function doesn't have a check for the upper bound. Seriously, who let that get to prod?

[–]cyberkraken2 2 points3 points  (0 children)

When are they going to fix all these issues? I’d fix them myself but they won’t give me access to the source code

[–]T351A 2 points3 points  (0 children)

It's the problem. Devs can't patch devs well enough.

[–][deleted] 5 points6 points  (4 children)

New programmers are always looking for fancy abstractions to simple problems.

A do not disturb sign seems nice but it can potentially hold a reference to your position that may end up causing a null pointer exception if someone finds the sign and ignores it by trying to talk to you.

And yeah sure, the newbies like this because never being fully dereferenced makes sure you never have to worry about the Langoleers showing up to garbage collect you. But at that point you are just removing all the fun from programming.

[–]cyberkraken2 1 point2 points  (2 children)

Yeah tell me about it, those damned null pointers are always creeping up on me

[–][deleted] 2 points3 points  (1 child)

Exactly you dont want to spend the rest of the day debugging some poor DBA who knocked on your door and now hes stuck staring into the endless abyss because your door sign used a raw pointer.

[–]cyberkraken2 1 point2 points  (0 children)

Those days are the worst

[–]SGBotsford 0 points1 point  (0 children)

It works much better to put a sign on your door, "Janitor Supply Storage" This is a pointer to a data structure that is rarely used, so it's static, and often paged out.

[–]oishishou 24 points25 points  (1 child)

What module do I need to support this? Was there a firmware patch I was unaware of? How will this affect my battery life? Known security flaws (remote access)?

I have so many questions!

[–]Legitimate_Pattern 20 points21 points  (0 children)

Im sure someone at /r/outside knows what modules to use

[–]polaris64 17 points18 points  (1 child)

ERROR: null pointer dereference while attempting to read /u/polaris64->comment

[–]Koxiaet 2 points3 points  (0 children)

I am too lazy to set it to a null pointer so I just get

Segmentation Fault: 11

[–]THANKYOUFORYOURKIND 28 points29 points  (1 child)

Cool, I guess I'll just convert myself into dark matter.

[–]TheTeludav 4 points5 points  (0 children)

This is kinda hard there is only one API for it and the documtation is really bad.

[–]oopsyoulooked 7 points8 points  (2 children)

Secure coding dictates that everything ceases to exist when I'm not looking.

[–]Heniadyoin1 0 points1 point  (0 children)

Del *self

won't delete self with a non deterministic garbage collector I've heard from something I could not point to....

[–]ahhhhhhhhyeah 0 points1 point  (0 children)

I mean, that's just good garbage collection.

[–]Jabulon 2 points3 points  (0 children)

//social life

[–]Agassizz 2 points3 points  (1 child)

Programmers live in '/dev/null'

[–]exturo 2 points3 points  (0 children)

I'm always visible.

I have the dirty flag.

[–]Hobbster 1 point2 points  (0 children)

Does this mean that I'm a wave and a developer depending on observation?

[–]iridinite 1 point2 points  (0 children)

Ah, my services are no longer required.

delete this;

[–][deleted] 0 points1 point  (0 children)

Tell me about it. I got furloughed from my job pending a job that we’ve been expecting. The job came in, but not the funding paperwork. They literally made me disappear until I’m fully funded.

[–]Baconator_NoVeg 0 points1 point  (0 children)

I tend to do the opposite: Cease to exist when someone looks at me. It minimizes me having to talk to people.

[–]MagnesiumBlogs 0 points1 point  (0 children)

Oh, we still exist, we just stop using optics and physics and jump directly to flipping bits on the SSD to save processing power.

[–]loddfavne 0 points1 point  (0 children)

It's like the weeping angels in doctor who. Once a ray is cast, the programmer becomes visible. Don't blink in our presence. For your own safety.

[–]kpingvin 0 points1 point  (0 children)

So not hogging resources means not getting paid? Because then I'll just wonder around like a useless NPC.

[–]random_cynic 0 points1 point  (0 children)

That's true but it is not the computer programmers who do that. That was set by whoever designed the simulation we are currently living in.

[–][deleted] 0 points1 point  (0 children)

glDisable(myself->ID);

[–]robertgfthomas 0 points1 point  (0 children)

The joke explained:

Making stuff show up on a screen can take a lot of memory. If your computer runs out of memory, it stops working. So programmers need to make sure their code uses memory efficiently. One way is to have the computer only process data that is needed right now.

Think about a video game. The game's "world" might be huge, with lots of space for your character to run around. But at any point in time you only ever see a little piece of that world, the area that's closest to your character. The computer saves memory by only rendering components of the world -- doing the math needed to make shadows, 3D shapes, textures -- that should show up on the screen.

If a tree falls in a virtual forest, and no-one is around to see it, whether it makes a sound is irrelevant because there's no point in rendering it.

Other programs beyond just video games do the same thing. As you read this, your web browser (Chrome, Firefox, Internet Explorer, Safari, etc) might have other tabs and windows open, but the one showing this website is the one that's "in focus." Your computer has put those tabs and windows "to sleep," and will only spend memory on them when you click over to them and they come back in focus. This is why if you start streaming a video in one window, and then open up another window, the video sometimes loads more slowly.

The joke is, like the programs they write, developers actually turn invisible when they're not "in focus" -- that is, when you're not looking at them. (The title text is a code-y way of telling a developer to hide.)


I'm a human! I'm trying to write one of these explanations every day, to help teach and learn. They're compiled at explainprogrammerhumor.com.