Thanks to visit codestin.com
Credit goes to programming.dev

  • raspberriesareyummy@lemmy.world
    Codestin Search App
    Codestin Search App
    Codestin Search App
    226
    Codestin Search App
    10
    ·
    11 months ago

    honestly - while a Mac is certainly less painful to use than winshit, putting rubbish files recursively into each(!!) accessed folder, on all thumbdrives ever inserted, that’s something Jobs deserves to burn in hell for.

    • ulterno
      Codestin Search App
      Codestin Search App
      English
      Codestin Search App
      51
      Codestin Search App
      3
      ·
      11 months ago

      You’d want that, but a lot of programs do that, both in Windows and Linux.

      e.g. The .directory files with the [Desktop Entry] spec by freedesktop.org
      Dolphin has the option to enable/disable the feature

      • lengau@midwest.social
        Codestin Search App
        Codestin Search App
        Codestin Search App
        48
        Codestin Search App
        1
        ·
        11 months ago

        FWIW Dolphin only does it if the filesystem doesn’t provide a way to add that metadata directly to the directory and you change the view configuration for that directory away from your standard configuration. Which is how the standard describes to do it. (Some file managers incorrectly add those .directory files to every directory you visit.)

        A mac will add a .DS_Store file to any directory just by breathing on it.

        • ulterno
          Codestin Search App
          Codestin Search App
          English
          Codestin Search App
          10
          Codestin Search App
          1
          ·
          11 months ago

          Well, those are different specifications. Apple(who wants everything for themselves) vs FDO(whose main goal seems to be interoperability)

        • ulterno
          Codestin Search App
          Codestin Search App
          English
          Codestin Search App
          4
          ·
          11 months ago

          I have manually made .directory files (using a bash script) to set icons on folders.

          It feels good when programs let you know what they intend on doing.

      • vvv
        Codestin Search App
        Codestin Search App
        Codestin Search App
        58
        ·
        11 months ago

        the macos file browser, Finder, lets you set a background for a folder, move file icons around to arbitrary positions, other shenanigans. in order for this to work across systems on removable storage media and network mounts, they have this.

          • FearfulSalad@ttrpg.network
            Codestin Search App
            Codestin Search App
            Codestin Search App
            9
            ·
            11 months ago

            Maybe. There are many ways to move files and directories around without using Finder, at which point all indexed data about those files and directories will be stale. Forcing something as core as mv to update Spotlight would be significantly worse, I think. By keeping the .DS_Store files co-located with the directory they index, moving a directory does not invalidate the index data (though moving a file without using Finder still does). Whether retaining indexing on directory moves is a compelling enough reason to force the files everywhere is probably dependent on whether that’s a common enough pattern among workflows of users, and whether spotlight performance would suffer drastically if it were reliant on a central store not resilient against such moves.

            So, it’s probably a shaky reason at best.

          • Natanael@lemmy.zip
            Codestin Search App
            Codestin Search App
            English
            Codestin Search App
            3
            ·
            11 months ago

            In Unixy environments like Mac and Linux the application can’t always know what the mountpoint of a drive is so it’s not always obvious which root folder to put those index/config files in if it’s a portable drive or network drive. Some mountpoints are standard per each OS, but not everything sticks to the standard.

      • Takumidesh@lemmy.world
        Codestin Search App
        Codestin Search App
        Codestin Search App
        70
        Codestin Search App
        2
        ·
        11 months ago

        Well an uppercase ASCII char is a different char than its lowercase counterpart. I would argue that not differentiating between them is an arbitrary rule that doesn’t make any sense, and in many cases, is more computationally difficult as it involves more comparisons and string manipulations (converting everything to lower case).

        And the result is that you ultimately get files with visually distinct names, that aren’t actually treated as distinct, and so there is a disconnect from how we process information and how the computer is doing it.

        ‘A’ != ‘a’, they are just as unequal as ‘a’ and ‘b’

        Edit: I would say the use case is exactly the same as programming case sensitivity, characters have meaning and capitalizing them has intent. Casing strategies are immensely prevalent in programming and carry a lot of weight for identifying programmers’ intent (properties vs backing fields as an example) similar intent can be shown with file names.

          • Saleh@feddit.org
            Codestin Search App
            Codestin Search App
            Codestin Search App
            17
            ·
            11 months ago

            I work with a lot of users and a lot of files in my job.

            I don’t remember a single case, where someone had an issue because of upper- or lowercase confusions.

            • Mose13@lemmy.world
              Codestin Search App
              Codestin Search App
              Codestin Search App
              5
              ·
              11 months ago

              Most of my frustration comes from combining cases insensitive folders/files with git and then running my code on another machine. If you aren’t coding where you have hundreds of files that import other files, I could see this being a non issues.

              • Saleh@feddit.org
                Codestin Search App
                Codestin Search App
                Codestin Search App
                3
                ·
                11 months ago

                Mostly Windows, and construction industry. So projects generate anywhere from a few hundred to up to a hundred thousand files.

                Everyone has their own filesystem, and then you often have one formal and multiple informal exchange platforms. You still have people throwing around stuff in E-Mails too.

                It is a mess. But in this mess i didn’t come acrosse people complaining they couldnt find a file because of the letters case yet.

                I see that it could be different for programmers, but i dont see that apples solution of treating upper and lowercase as identical name is the solution there, rather than working with explicit file naming conventions in the program.

        • Kissaki
          Codestin Search App
          Codestin Search App
          English
          Codestin Search App
          4
          ·
          11 months ago

          is exactly the same as programming case sensitivity

          Me working on a case insensitive DB collation 🤡🚀🐱‍🏍

        • gazter@aussie.zone
          Codestin Search App
          Codestin Search App
          Codestin Search App
          4
          Codestin Search App
          6
          ·
          Codestin Search App
          11 months ago

          If I have four files, a.txt, A.txt, b.txt, and B.txt, in what order do they appear when I sort alphabetically?

          edit: I don’t understand why this was downvoted?

          • Speiser0@feddit.org
            Codestin Search App
            Codestin Search App
            Codestin Search App
            9
            ·
            11 months ago

            Might depend on your file browser.

            You may also want to try, for example, the files “a1”, “a2”, “a3”, and “a10”. Lexicographically, “a2”>“a10”, but my file browser displays “a10” after “a2”.

              • gazter@aussie.zone
                Codestin Search App
                Codestin Search App
                Codestin Search App
                7
                ·
                11 months ago

                So if someone tells me to look for a file amongst a long list, I need to look in two different areas- the uppercase and lowercase areas.

                I get why it’s more technically correct to differentiate, but from the perspective of a human user, it’s a pain in the ass.

                • Saleh@feddit.org
                  Codestin Search App
                  Codestin Search App
                  Codestin Search App
                  4
                  ·
                  11 months ago

                  if you look for a file you type the first letters for the file explorer to jump to the matching name. Retype to jump to the next fitting entry. If you don’t know about this, you can put your string in the search field. If you don’t know about this, you can sort by metadata like file size or date of last change.

                  It is a non problem.

                  Also most workplaces tend to develop a file naming convention, either explicitly or implicitly.

                • Ferk
                  Codestin Search App
                  Codestin Search App
                  Codestin Search App
                  1
                  ·
                  Codestin Search App
                  11 months ago

                  I’m with you, and not just from a “human” perspective. Also when writing small programs meant to be relatively lean/simple it can be a problem when the user expects it to find a particular file regardless of its case (will it be DOOM.WAD or doom.wad? Doom.wad? Doom.WAD? … guess it’ll have to be [Dd][Oo][Oo][Mm].[Ww][Aa][Dd] and import some globbing library as extra dependency… that, or list the whole directory regardless its size and lower/upper every single filename until you find a matching one…)

      • Speiser0@feddit.org
        Codestin Search App
        Codestin Search App
        Codestin Search App
        20
        Codestin Search App
        2
        ·
        11 months ago

        Think the other way around: What’s the use case for case insensitive file names? Does it justify the effort and complexity for the filesystem and the programs to know the difference between lower and upper space chars?

        • mindbleach@sh.itjust.works
          Codestin Search App
          Codestin Search App
          Codestin Search App
          19
          Codestin Search App
          2
          ·
          Codestin Search App
          11 months ago

          What’s the use case for case insensitive file names?

          Human comprehension.

          Readme, readme, README, and ReadMe are not meaningfully different to the average user.

          And for dorks like us - oh my god, tab completion, you know I mean Documents, just take the fucking d!

        • Reddfugee42@lemmy.world
          Codestin Search App
          Codestin Search App
          English
          Codestin Search App
          1
          ·
          11 months ago

          The use case for case insensitive file names is all of history has never cared about what case the letters are in for a folder with someone’s name or a folder with an address or a folder for a project name.

          Use case for case insensitive file names is literally all of history. All of it.

      • Mose13@lemmy.world
        Codestin Search App
        Codestin Search App
        Codestin Search App
        11
        Codestin Search App
        2
        ·
        11 months ago

        On Mac when I rename a folder from “FOO” to “foo” git sees them as the same folder so no change is committed. In JavaScript I import a file from “foo” so locally that works. Commit my code and someone else pulls in my changes on their machine. But on their machine the folder is still “FOO” so importing from “foo” doesn’t work.

    • TedZanzibar@feddit.uk
      Codestin Search App
      Codestin Search App
      English
      Codestin Search App
      4
      ·
      11 months ago

      NTFS absolutely supports case sensitivity but, presumably for consistency with FAT and FAT32 (Windows is all about backwards compatibility), and for the sake of Average-Joe-User who’s only interaction with the filesystem is opening Word and Excel docs, it doesn’t by default.

      All that said, it can be set on a per-directory basis: https://learn.microsoft.com/en-us/windows/wsl/case-sensitivity

    • andioop
      Codestin Search App
      Codestin Search App
      English
      Codestin Search App
      11
      ·
      11 months ago

      git add . > git commit -m "initial" > git push

      Later when I git status or just look at the repo online… “oh crap I let .DS_Store in didn’t I…” and then I remember to set up a .gitignore and make a new commit to take out the .DS_Store and put in the .gitignore.

      • PartiallyApplied@lemmy.world
        Codestin Search App
        Codestin Search App
        Codestin Search App
        7
        ·
        11 months ago

        You probably already know this, but for those who don’t, git can globally ignore patterns. It’s the first thing I set up after logging in. Honestly wish git just shipped this way out of the box (maybe match .DS_Store by name and some magic bytes?) with a way to disable it. Just for the sake of easier onboarding

    • JackbyDev
      Codestin Search App
      Codestin Search App
      English
      Codestin Search App
      10
      Codestin Search App
      1
      ·
      11 months ago

      Use this so that the things you need to share do get shared.

      .idea/*
      !.idea/codeStyles
      !.idea/runConfigurations
      
      .vscode/*
      !.vscode/settings.json
      !.vscode/tasks.json
      !.vscode/launch.json
      !.vscode/extensions.json
      !.vscode/*.code-snippets
      

      Note: I haven’t checked the vs code ones in depth, the list might not be perfect.

      • kora@sh.itjust.works
        Codestin Search App
        Codestin Search App
        Codestin Search App
        16
        Codestin Search App
        2
        ·
        11 months ago

        I personally strongly advise against committing IDE junk to version control. Assuming your IDE workspace defaults are “sane” for the rest of the contributors is not a good practice.

        • JackbyDev
          Codestin Search App
          Codestin Search App
          English
          Codestin Search App
          4
          Codestin Search App
          2
          ·
          11 months ago

          If your whole team uses the same IDE, what’s wrong with commiting things like run configurations and code styles? I agree in general, but a wholesale ban on it is very cargo culty to me. There can be legitimate times to do it.

          • kora@sh.itjust.works
            Codestin Search App
            Codestin Search App
            Codestin Search App
            7
            Codestin Search App
            2
            ·
            11 months ago

            I elaborated on it below. Your team will grow and shrink. No guarantee that each developer will bring the same IDE. This is especially true for open source projects.

            If it works your team, no need to be dogmatic about it. Just be careful about what you put there and agree on a set of sane defaults with your team. Your project should build and run tasks without needing a specific IDE.

          • Eager Eagle@lemmy.world
            Codestin Search App
            Codestin Search App
            English
            Codestin Search App
            3
            Codestin Search App
            1
            ·
            11 months ago

            Absolutely nothing wrong. Their whole argument is that it delivers no guarantees about the things set in these files, but setting these presets is more about convenience than enforcing an equal development environment.

            Whoever needs to enforce things like formatting and linting at the project level should be using a CI step.

            • JackbyDev
              Codestin Search App
              Codestin Search App
              English
              Codestin Search App
              1
              Codestin Search App
              2
              ·
              11 months ago

              Sure, fail the entire build because of a formatting problem. Hey, wouldn’t it be cool if we could stop that from happening? I don’t know, maybe by also adding in IDE specific formatting files? No? Oh. I wasn’t aware we could only have formatting files OR a CI format checker. 🙄

              None of these things come at the expense of others. You can do both. Even if it’s part of the local build process I’d much rather know in my editor than on the terminal. And you may say “just have everyone do the same setup” to which I’d wonder what sort of magical land you live in where everyone always follows those rules and/or you can get buy in from management to spend that much time bike shedding and why you’d prefer either of them to just adding the damn file to version control to avoid it entirely.

      • Eager Eagle@lemmy.world
        Codestin Search App
        Codestin Search App
        English
        Codestin Search App
        3
        Codestin Search App
        2
        ·
        11 months ago

        .vscode doesn’t store cache or any trash like that, so if you’re including all settings, tasks, etc, you can probably just include everything.

        The only thing to keep in mind is to only add settings, extension recommendations, etc that apply to all your collaborators and aren’t just personal preferences. A few good examples are formatting rules, task definitions to run the project, and linting rules that can’t be defined somewhere else.

        • kora@sh.itjust.works
          Codestin Search App
          Codestin Search App
          Codestin Search App
          8
          Codestin Search App
          3
          ·
          Codestin Search App
          11 months ago

          Linting rules and scripts should never live in an IDE-specific directory. I should not need to know your IDE configuration to run scripts and lint my files.

          I have yet to come across a language that requires configuration to be stored that way. All modern languages have separate configuration and metadata files for use cases you have defined.

          As for workspace defaults, whatever IDE configuration works for you is not guaranteed to work for others. Shoving extension suggestions down their throat each time IDE is booted should not be a part of your source code, as IDE extensions should not be needed to run your code.

          • brian
            Codestin Search App
            Codestin Search App
            Codestin Search App
            4
            ·
            11 months ago

            linting config itself wouldn’t be defined there, and it would be verified in ci and such, but a setting to tell vscode which linter and extension it should use to show warnings would be.

            modern languages may have their own way for configuration but they don’t have a way to bind it to the list of vscode tasks and define how to run a debugger, which is the part that gets stored.

            it’s easy to go overboard with extension suggestions, but I don’t think adding an extension for linter used, extension for formatter used, and any languages used if there’s a definitive extension.

            My team is split between visual studio, vscode, and I use emacs. we have config for both vs and vscode in our repos since it makes working on a new project so much nicer and means we aren’t just sharing editor configs through side channels instead. it doesn’t do anything to me if I have editor config for an IDE I don’t use in the repo, but it makes it easier for someone new to jump in with a sort of same environment immediately

          • Eager Eagle@lemmy.world
            Codestin Search App
            Codestin Search App
            English
            Codestin Search App
            4
            Codestin Search App
            1
            ·
            11 months ago

            Can we stop with the absolutes?

            It’s okay to commit IDE config if your team uses mostly one editor.

            It’s also okay to include extension recommendations. While extensions may not be needed to run the code, depending on the editor and language they’re highly desirable. It’s that kind of extension that should be recommended. I’m sure there’s a setting to disable them if, for some reason, the editor keeps asking you.

          • dev_null@lemmy.ml
            Codestin Search App
            Codestin Search App
            Codestin Search App
            1
            ·
            11 months ago

            Linting rules and scripts should never live in an IDE-specific directory.

            Of course they should. Obviously it shouldn’t be the only place they are, but committing IDE code styles settings that match the externally-enforced project styles is absolutely helpful.

            Or, in our project we have a bunch of scripts that you can run manually, but we also have commited IntelliJ run configurations that make running them a convenient in-IDE action.

          • JackbyDev
            Codestin Search App
            Codestin Search App
            English
            Codestin Search App
            1
            Codestin Search App
            1
            ·
            11 months ago

            Linting rules and scripts should never live in an IDE-specific directory. I should not need to know your IDE configuration to run scripts and lint my files.

            This is what I’m getting at with it being cargo culty. You can have generic scripts and also IDE specific run configurations too.

  • Psythik@lemmy.world
    Codestin Search App
    Codestin Search App
    Codestin Search App
    25
    Codestin Search App
    7
    ·
    Codestin Search App
    11 months ago

    As much as they love to sue people, I don’t understand why Nintendo doesn’t go after Apple for trademark infringement, so that they’re forced to finally come up with a better method of storing folder attributes.