this post was submitted on 06 Sep 2024
615 points (90.6% liked)

linuxmemes

20880 readers
10 users here now

I use Arch btw


Sister communities:

Community rules

  1. Follow the site-wide rules and code of conduct
  2. Be civil
  3. Post Linux-related content
  4. No recent reposts

Please report posts and comments that break these rules!

founded 1 year ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 25 points 2 months ago (2 children)

Windows way is superior, in my opinion. I don't think there's a need for File.txt and fILE.txt

[–] [email protected] 17 points 2 months ago* (last edited 2 months ago) (1 children)

Indeed. Linux ~~audio~~ also allows control characters like backspace to be part of a file name (though it is harder to make such file as you can't just type the name). Which is just horrible.

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

Yeah, Linux can capture and playback the spoken distinction between lowercase and uppercase letters. Windows can't do that.

You're not taking advantage of that functionality?

[–] [email protected] 3 points 2 months ago (1 children)

I sense sarcasm but I don't really get it. I still can't tell if the OC had a typo or not :)

[–] [email protected] 3 points 2 months ago (1 children)

: D

I think they just fixed it

[–] [email protected] 3 points 2 months ago

I was so curious if there was some weird Linux audio system I didn't begin to understand lol

It sounded plausible kind of because every device is mapped to a file path somewhere!

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

I don’t think there’s a need for File.txt and fILE.txt

It's not so much about that need. It's about it being programmatically correct. f and F are not the same ASCII or UTF-8 character, so why would a file system treat them the same?

Having a direct char type to filename mapping, without unnecessary hocus pocus in between, is the simple and elegant solution.

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

It turns out that the easiest thing to program isn't always the best application design.

[–] [email protected] 1 points 2 months ago* (last edited 2 months ago)

I would argue that elegance and being easy to program are virtues by themselves, because it makes code easy to understand and easy to maintain.

A one-to-one string to filename mapping is straightforward and elegant. It's easy to understand ("a filename is a unique string of characters"), it makes file name comparisons easy (a bit level compare suffices) and as long as you consistently use the case that you intend, it doesn't behave unexpectedly. It really is the way of the least surprise.

After all, case often does have meaning, so why shouldn't it be treated as a meaningful part of a filename? For example: "French fries.jpg" could contain a picture of fries specifically made in France, whereas "french fries.jpg" could contain a picture of fries made anywhere. Or "November rain.mp3" could be the sound of rain falling in the month of November, whereas "November Rain.mp3" is a Guns N' Roses song. All silly examples of course, but they're merely to demonstrate that capitalization does have meaning, and so we should be able to express that canonically in filenames as well.

[–] [email protected] 0 points 2 months ago (1 children)

That's some suckless level cope. What's correct is the way that creates the least friction for the end users. Who really cares about some programming purity aspect?

[–] [email protected] 1 points 2 months ago* (last edited 2 months ago)

That’s some suckless level cope

Thanks, really constructive way of arguing your point...

Who really cares about some programming purity aspect?

People who create operating systems and file systems, or programs that interface with those should, because behind every computing aspect is still a physical reality of how that data is structured and stored.

What’s correct is the way that creates the least friction for the end users

Treating different characters as different characters is objectively the most correct and predictable way. Case has meaning, both in natural language as well as in almost anything computer related, so users should be allowed to express case canonically in filenames as well. If you were never exposed to a case insensitive filesystem first, you would find case sensitive the most natural way. Give end users some credit, it's really not rocket science to understand that f and F are not the same, most people handle this "mindblowing" concept just fine.

Also the reason Microsoft made NTFS case insensitive by default was not because of "user friction" but because of backwards compatibility with MSDOS FAT16 all upper case 8.3 file names. However, when they created a new file system for the cloud, Azure Blob Storage, guess what: they made it case sensitive.