• Ephera@lemmy.ml
    link
    fedilink
    arrow-up
    72
    arrow-down
    1
    ·
    10 months ago

    This is kind of not really related, but last week, we’ve been onboarding two new devs into our programming project at work. Our team so far had exclusively used native Linux, while the two new folks were on Windows.

    We recommended using a VM, because we had a recollection of how much pain programming on Windows was. Unfortunately, VirtualBox had performance problems on their machines and ordering a VMWare installation took a few days.

    So, we spent those few days to see, if Windows was really still that much of a pain. They’d still need a VM for testing, but otherwise, our entire tooling should have been fine on Windows.

    Fuck me, those days were wasted. One of our dependencies dynamically pulled in C code and compiled it, which you barely even noticed on Linux, but is apparently not a thing it can do on native Windows.
    So, instead they were on WSL pretty early on, but that had all kinds of differences to a native Linux installation and they constantly had to fix the DNS config, because it kept being reset by Windows. In particular, while compiling Rust & C worked, it was extremely slow.

    Eventually, they got VMWare and we started setting up the OS. We literally completed installing Linux before a compilation run had finished. And what had cost us multiple days to try to get going under Windows, was just working within an hour on Linux. And for some reason, compilation within the VM was about 20 times faster than under WSL.

    I still assume, these are generally solvable problems and if our team had worked under WSL from the start, we would have had some of those solved.
    But even taking that into account, there were just so many nonsense problems, which we never had to fix on Linux, that I’m still left absolutely baffled that some people genuinely use WSL for development.

    • Opisek@lemmy.world
      link
      fedilink
      arrow-up
      25
      ·
      10 months ago

      WSL’s performance is drastically better when you don’t save your files on Windows’ filesystem.

      • gornius@lemmy.world
        link
        fedilink
        arrow-up
        8
        ·
        10 months ago

        That is because windows filesystem is mounted to WSL through NFS and while transferring large files through that is ok, transferring huge amounts of small files is really slow.

      • Ephera@lemmy.ml
        link
        fedilink
        arrow-up
        5
        ·
        10 months ago

        Hmm, that would fit the pattern, as it sometimes also got stuck on just downloading things, even when the DNS config hadn’t been reset.

        Do you need to partition the disk then, to place ext4 or similar into a separate partition? I’m not sure, we can partition the disk in that corporate Windows setup our company uses…

        • Exec@pawb.social
          link
          fedilink
          arrow-up
          9
          ·
          10 months ago

          Look up the difference between WSL1 and WSL2. If you’re using 2 just make sure you’re writing into /anything other than /mnt/driveletter, that should be ext4. For 1 it’s directly mounted on the ntfs filesystem and you’ll always have performance problems.

    • Ignotum@lemmy.world
      link
      fedilink
      arrow-up
      18
      ·
      10 months ago

      Our approach to newbies wanting to use windows is: “go ahead, but you’re on your own”

      They try maybe a day or two, then they install linux

      • Ephera@lemmy.ml
        link
        fedilink
        arrow-up
        6
        ·
        10 months ago

        Well, in this case, they were not entirely newbies, they’re from a different team that we’re supposed to hand over to. The project is also in cooperation with other companies, so it’s not completely out of the question that some devs are trapped in Windows purgatory.

        But yeah, we were certainly cursing at the end of the week, when we had already invested quite a bit more effort than we had hoped for, and we were still running into ever more new issues than we fixed in the same time.