Hacker News new | ask | show | jobs
by KronisLV 1615 days ago
> It's a complete mess. I sympathise now with the people who keep every file on the desktop.

The UI in regards to navigating files in Windows is indeed a mess. A personal gripe that i have with it, that's even worse than some of what you named is the file open/save dialog - there's not just one (that would let you write the file path in the bar and thus allow you to copy paths from Explorer to it), but many different ones for different programs! This essentially makes it so that using some software like GIMP and navigating around the filesystem with it is needlessly annoying!

Add on small annoyances like Windows search by default trying to look into the contents of many files, thus making search needlessly slow and also things like it not supporting mounting remote directories over SFTP (which should get at least a bit of attention) instead of always having to use SMB or whatever, and you have a somewhat problematic daily experience.

Of course, there are also things that it does better than some other systems/configurations, like having the whole recycle bin concept, with ctrl+Z allowing you to undo file deletions, file moves or even renaming files, which makes dealing with user error on your part more easy! Just checked on Linux Mint - the recycle bin works as you'd expect, but there is no ctrl+z to restore the last deleted file automatically.

> Every time I go back to Linux, I feel a wave of relief: I see my files in a single dir tree under /home, searching works predictably.

About this, i'm also somewhat torn. The filesystem structure on most Linux distros also just feels weird, although it's for historical compatibility reasons (not quite as bad as Windows having two oddly named Program Files directories, but still). I doubt that we couldn't structure things in a more reasonable manner, than having all of the following for just executables, for example:

  /bin/
  /sbin/
  /usr/bin/
  /usr/local/bin/
  /usr/local/sbin/
In case anyone wants to learn more about these, here's the Filesystem Hierarchy Standard document, which is actually pretty well written: https://www.pathname.com/fhs/

Throw in /opt and /usr/share and whatnot and it's a recipe for different bits of software out there using different configurations because of differing opinions about what would be suitable for their use cases. The same mess actually extends to what's in the /home directory - sure, in most cases you can back it up and restore it, but once again every piece of software will have its own opinions about how to structure its data, be it in a visible/hidden config file, a visible/hidden folder for the application itself, or something else.

Of course, Windows also has a similar mess going on with Program Data and AppData folders, as well as Documents and whatnot, so Linux isn't the only problematic system here.

In short, i think that all have their advantages and shortcomings, here's hoping that things improve in the following decade!

4 comments

> not quite as bad as Windows having two oddly named Program Files directories, but still

At least three, if you inclde "Roaming\Appdata" (or is it "Appdata\Roaming"?), which is also a program files directory nowadays.

As for Linux, yeah... Either stick with the Filesystem Hierarchy Standard, or -- if it's time to revolutionise the directory structure -- maybe something like what GoboLinux (et al?) are doing.

On my Guix systems, I've gone full obstinate idiot:

- / is on tmpfs

- the OS is mounted on /gnu

- system data is mounted on /var (and /etc is populated from /var/etc)

- user data is mounted on /usr

This way, I can avoid the plethora of separate tmpfs filesystems on most distro's (at least /dev, /run, /tmp, /dev/shm).

But I'm not running any desktop systems on Guix right now, just service containers. I'm would expect there to be plenty of Linux desktop software that can't handle /usr being for user data.

I went the Everything way and gave up trying to remember what is where. Not a perfect solution but a huge productivity bump for me: https://en.wikipedia.org/wiki/Everything_(software)
> The UI in regards to navigating files in Windows is indeed a mess. A personal gripe that i have with it, that's even worse than some of what you named is the file open/save dialog - there's not just one (that would let you write the file path in the bar and thus allow you to copy paths from Explorer to it),

Note that even in the older-style file dialogs, that don't have that new (relatively speaking) breadcrumbs-style file path display at the top (like in Windows Explorer), you can still paste a path into the file name input box and it'll navigate to that folder. Relative paths also work. The only drawback is that the file name will then be reset to whatever it was when the dialog was initially opened, but other than that it works nicely.

> but many different ones for different programs! This essentially makes it so that using some software like GIMP and navigating around the filesystem with it is needlessly annoying!

The problem is a) backwards compatibility – programs can customise the file open/save dialogs to quite some extent, so they need to explicitly opt into using the new dialogs. Plus software that wanted to support older Windows versions (pre-Vista, so these days it's probably not that relevant any more, but during the Vista/7-era it definitively mattered) then needs to have code to handle both kinds of file dialogs. b) as far as I can tell, some cross platform frameworks use completely self-written file dialogs, which 1) usually mimic the older (Windows XP and older) style of Windows' dialogs and b) usually don't manage to copy all the features of Windows' native file dialogs, and instead often get some things subtly (or less subtly) wrong.

My personal gripe with the breadcrumbs file path navigation is that the breadcrumbs dropdowns don't support keyboard navigation like the main explorer window (or the file list in the file open/save dialogs) does, so when you have a folder with lots of subfolders and want to use the breadcrumbs to change the path, you then need to do lots of scrolling instead of simply being able to press a key.

Agreed that Linux directory structure is kind of a mess. The extent to which it's a mess varies from distribution to distribution, though. For example, on Arch, /bin, /sbin, and /usr/sbin are all just symlinks to /usr/bin.