this post was submitted on 01 Feb 2025
1455 points (99.1% liked)

Programmer Humor

20735 readers
1598 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] 304 points 2 weeks ago (9 children)

This meme is way more clever than it should be

[–] [email protected] 67 points 2 weeks ago (2 children)

Didn't realize until I read your comment. Thanks.

[–] [email protected] 46 points 2 weeks ago (3 children)

I didn't realise until I read that comment, your comment and the other comment about slash direction.

[–] [email protected] 22 points 2 weeks ago (2 children)

JFC, thank you. I didn’t realize until it was spelled out for me. I’m definitely not that kind of smart.

This is why I always sucked at games like Myst

load more comments (2 replies)
[–] [email protected] 11 points 2 weeks ago

I realized immediately, read the comment, and then went back to look for a deeper meaning. It wasn't there.

load more comments (1 replies)
[–] [email protected] 35 points 2 weeks ago (1 children)

It's not something the Jedi would tell you.

[–] [email protected] 42 points 2 weeks ago (1 children)

Only a sith deals in absolute paths.

load more comments (1 replies)
load more comments (8 replies)
[–] [email protected] 105 points 2 weeks ago (2 children)

I hate that I need to use escape characters when creating something for windows.

[–] [email protected] 29 points 2 weeks ago (2 children)

Python raw strings to the rescue!

[–] [email protected] 41 points 2 weeks ago

Pathlib is the answer.

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

Nobody is stopping you from using forward slashes. Python will translate the path for the current platform.

load more comments (2 replies)
[–] [email protected] 17 points 2 weeks ago

Try pathlib. All your problems solved.

[–] [email protected] 74 points 2 weeks ago* (last edited 2 weeks ago) (22 children)

Fun fact, though: Linux is the only case-sensitive one.

Edit: I feel silly for forgetting that it's all about the choice of FS. If anyone needs anything from me, I'll be in the corner, coloring.

[–] [email protected] 63 points 2 weeks ago (3 children)

From a technical standpoint, the windows NTFS filesystem is designed inherently case sensitive, just windows doesn't allow creating case sensitive files.

Connecting an NTFS drive to linux, you can create two separate files readme.txt and Readme.txt.

Using windows, you can see both files in the filesystem, but chances are most (if not all) software will struggle accessing both files, opening readme.txt might instead open Readme.txt or vice versa.

[–] [email protected] 33 points 2 weeks ago (1 children)

Such a microsoft thing to do.

[–] [email protected] 18 points 2 weeks ago* (last edited 2 weeks ago)

NTFS was designed back in the mid 90s, when the plan was to have the single NT kernel with different subsystems on top of it, some of those layers (i.e. POSIX) needed case sensitivity while others (Win32 and OS/2) didn't.

It only looks odd because the sole remaining subsystem in use (Win32) barely makes use of any of the kernel features, like they're only just now enabling long file paths.

[–] [email protected] 16 points 2 weeks ago

For a few years now, Windows has had the capability of marking certain directories as case-sensitive. So you can have a mixed-case-sensitivity filesystem experience now. Yeah. :/

load more comments (1 replies)
[–] [email protected] 19 points 2 weeks ago* (last edited 2 weeks ago) (1 children)

Although you can use case insensitive filesystems with Linux, and case sensitive filesystems with macOS. I believe the case sensitivity is a function of the specific filesystem


but yeah, practically, the root for Linux is always case sensitive, and APFS ~~ain't~~ is only if you ask it to be ( https://support.apple.com/lv-lv/guide/disk-utility/dsku19ed921c/mac ).

[–] [email protected] 16 points 2 weeks ago (2 children)

When case insensitivity is the default I always wonder how many apps unknowingly rely on that due to typos somewhere. I encountered this once while porting a Windows/macOS app to Linux that someone imported a module with the wrong case and nobody noticed

load more comments (2 replies)
[–] [email protected] 15 points 2 weeks ago

I once ran into a bug in an Arduino program where it wouldn't compile. The author blamed my "broken environment". Turned out, he had included "arduino.h" instead of the correct "Arduino.h".

[–] [email protected] 10 points 2 weeks ago (1 children)
load more comments (1 replies)
load more comments (18 replies)
[–] [email protected] 59 points 2 weeks ago (2 children)

You can actually use / as a path separator on Windows in functions like fopen(), because it supports some ancient version of POSIX standard.

[–] [email protected] 36 points 2 weeks ago

There used to be an undocumented setting in early versions of MS-DOS that would allow the setting of the command option character to something other than the slash, and if you did that, the slash automatically became the path separator. All you needed was SWITCHAR=- in your CONFIG.SYS and DOS was suddenly very Unix-y.

It was taken out after a while because, with the feature being undocumented, too many people didn't know about it and bits of software - especially batch files, would have been reliant on things being "wrong". The modern support for regular slash in API calls probably doesn't use any of the old SWITCHAR code, but it is, in some way, the spiritual descendant of that secret feature.

Here's an old blog that talks about it: https://learn.microsoft.com/en-gb/archive/blogs/larryosterman/why-is-the-dos-path-character

[–] [email protected] 14 points 2 weeks ago

The one thing about NT was that it didn't have it's own semantics, but it could emulate any system you wanted. It's the unofficial successor of an OS that was based on creating VMs where you could run any other OS you want.

Then Microsoft decided to create their own system in it, and only really finished writing that one.

[–] [email protected] 34 points 2 weeks ago* (last edited 2 weeks ago) (5 children)

Also the internet belongs on the left.

And really, Linux/macos could be reduced to "Unix" https://upload.wikimedia.org/wikipedia/commons/7/77/Unix_history-simple.svg

[–] [email protected] 29 points 2 weeks ago (2 children)

And BSD. It's really just Windows vs. literally everything. Or is there anything else that uses backslashes?

[–] [email protected] 27 points 2 weeks ago

CP/M

Which in this context is named hilariously.

[–] [email protected] 12 points 2 weeks ago

Typical windows behavior

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

File systems aren't even real.

[–] [email protected] 11 points 2 weeks ago (3 children)

What is this "real" concept anyway?

Adam Savage famously stated on Mythbusters "I reject your reality and substitute my own"

Sure, but is reality even real then? Is anything real?

Not that I meant to get all pop-philosophical on this beautiful Sunday morning, sorry about that.

load more comments (3 replies)
load more comments (3 replies)
[–] [email protected] 23 points 2 weeks ago (2 children)

Would it be more efficient to say Unix vs Windows?

[–] [email protected] 16 points 2 weeks ago (8 children)
load more comments (8 replies)
[–] [email protected] 13 points 2 weeks ago

You mean right vs. wrong?

[–] [email protected] 21 points 2 weeks ago (1 children)

I don't really watch Star Wars. I'm a more of a Trekkie gal.

🖖

See, you can separate files both ways as long as it's logical

load more comments (1 replies)
[–] [email protected] 16 points 2 weeks ago

Duel of the fates: \//\

[–] [email protected] 16 points 2 weeks ago

Why fight when you can just do cd /mnt/c/Program\ Files\ \(x86\)/

[–] [email protected] 13 points 2 weeks ago (3 children)
[–] [email protected] 72 points 2 weeks ago (6 children)

Linux uses forward slash. Windows uses backslash. Because some dude 45 years ago wanted to make it look different from UNIX.

[–] [email protected] 17 points 2 weeks ago (2 children)

I understand pre-OS X Macintoshes used colons.

[–] [email protected] 21 points 2 weeks ago (1 children)

They did! And I weirdly kind of miss them for the entirely non-logical reason that they looked elegant.

Don't get me wrong, I adapted in about 3 seconds when I made the switch to Mac OS X 25 years ago, but I irrationally kinda miss them just a tiny bit.

load more comments (1 replies)
load more comments (1 replies)
load more comments (5 replies)
load more comments (2 replies)
[–] [email protected] 10 points 2 weeks ago (1 children)

Both works fine in Windows tho?

[–] [email protected] 23 points 2 weeks ago (6 children)
load more comments (6 replies)
load more comments
view more: next ›