• masterspace@lemmy.ca
      link
      fedilink
      English
      arrow-up
      33
      ·
      22 hours ago

      Case insensitive file systems arent lazy, they’re a programmer putting in a lot of effort to try and be helpful only to realize that their helpful system doesn’t actually cover all the edge cases it needs to and thus just adds a whole extra layer of complication and annoyance to the project.

      • 𝕽𝖚𝖆𝖎𝖉𝖍𝖗𝖎𝖌𝖍@midwest.social
        link
        fedilink
        arrow-up
        5
        arrow-down
        5
        ·
        21 hours ago

        Hmmm. I doubt that, unless they were really bad programmers, downcasing (or upcasing) the file name in the file name accessors took much work, but I’ll grant it’s more than zero.

        I’ll retract the “lazy” comment.

        • AnUnusualRelic@lemmy.world
          link
          fedilink
          English
          arrow-up
          13
          arrow-down
          1
          ·
          18 hours ago

          That’s because you’re thinking in your tiny ASCII bubble. Switching case in Unicode is a hugely complex problem.

          • 𝕽𝖚𝖆𝖎𝖉𝖍𝖗𝖎𝖌𝖍@midwest.social
            link
            fedilink
            arrow-up
            2
            arrow-down
            2
            ·
            16 hours ago

            Wait… vfat supports Unicode? The filesystem that craps out if the file path length is longer than a couple hundred characters; that is an extension of a filesystem that couldn’t handle file names longer than 8.3 characters; that doesn’t have any concept of file permissions, much less ACLs; the one that partitioned filenames in 13 character hunks in directories to support filenames longer than 12 characters… that isn’t case sensitive, except in all the wrong ways - this filesystem can handle Unicode?

            I greatly doubt that. FAT doesn’t even support 8-bit ASCII, does it? 7-bit only. Unless you mean FAT32, which can optionally have UTF-16 support enabled. And it’s far easier to manage case changes in UTF-16 than UTF-8, using case mapping as MS does. The API handles all of this for you; it keeps track of what the the user calls them, but uses it’s own internal name for the file. And na’er the two shall meet, lest there be trouble.

            I do think it’s sloppy and lazy; it’s very easy to avoid doing actual work thinking about the problem and to bang out some hack solution. In the end, far more work is done, but for the wrong reasons.

            I don’t know what Apple’s excuse is, except maybe DNA. Apple ][ were not only case insensitive, they didn’t even have lower case characters at all. There was only one case, and maybe those engineers brought that mind set forward with the Lisa, and then the Mac. How it got into Darwin… is Darwin really case insensitive? I’m pretty sure on the company line - at the filesystem level, it is.

    • AnAmericanPotato@programming.dev
      link
      fedilink
      English
      arrow-up
      28
      arrow-down
      1
      ·
      24 hours ago

      Kind of the opposite. It takes more effort to make a filesystem case-insensitive. Binary comparison is the laziest approach. (Note that laziness is a virtue.)

      I’m on the fence as to which is better. Putting backwards compatibility aside, there’s a perfectly good case to be made for case-insensitivity being more intuitive to the human user.

      Apple got into a strange position when marrying Mac OS (case-insensitive) and NeXTSTEP (case-sensitive). It used to be possible to install OS X on case-sensitive HFS+ but it was never very well supported and I think they axed it somewhere down the road.

      • Raltoid@lemmy.world
        link
        fedilink
        English
        arrow-up
        9
        arrow-down
        5
        ·
        edit-2
        23 hours ago

        I can with very high confidence say that for the average computer user, case-insensitive is basically the only alternative. At least if you don’t want IT and computer support around the world to start going postal.

        As soon as someone is at least semi comfortable navigating a unix-style terminal and using a terminal based text editor to at least change config files, case-sensitive starts to become better. And often the more you get into programming, the more you get like Linus here and develop a hate.