There’s a little historical baggage, but look at Windows: multiple letters for drives, and all of the paths can be modified, so you have to ask Windows where any important directory is physically mapped (like SystemRoot or Documents or Temp or Roaming AppData or many others), because it doesn’t have this nice consistent structure like Linux. Linux presents a logical layer and manages the physical location automatically. Windows makes you do the logical lookup yourself, but doesn’t enforce it, so inexperienced programmers make assumptions and put stuff where the path usually is.
That’s part of why logging in to Windows over a slow connection can take forever if you have a bunch of Electron apps installed: they’ve mismapped their temp/cache directory under the Roaming AppData, so it gets synched at every login, often GiB of data, and they refuse to fix it.
what a mess
There’s a little historical baggage, but look at Windows: multiple letters for drives, and all of the paths can be modified, so you have to ask Windows where any important directory is physically mapped (like SystemRoot or Documents or Temp or Roaming AppData or many others), because it doesn’t have this nice consistent structure like Linux. Linux presents a logical layer and manages the physical location automatically. Windows makes you do the logical lookup yourself, but doesn’t enforce it, so inexperienced programmers make assumptions and put stuff where the path usually is.
That’s part of why logging in to Windows over a slow connection can take forever if you have a bunch of Electron apps installed: they’ve mismapped their temp/cache directory under the Roaming AppData, so it gets synched at every login, often GiB of data, and they refuse to fix it.