Open Question: How Can We Fix Files?
schroer.ca
schroer.ca
I've mostly gotten over all the confusion in Windows and Linux, but OS X still confuses me. Specifically how to install an application. It seems like it's different with each app.
For example, I downloaded a .dmg file for the Transmission BitTorrent client. And I double clicked it. There was another icon inside, and I double clicked that.
Now I'm running the Transmission client and I can use it. But it's not installed? I can't click on a .torrent file and have it launch the client.
I try to drag the whole thing into Applications? That makes a big mess. It doesn't install it. I have to open up finder and manually remove the files.
Then I realize I have to click the .dmg and then drag the thing inside into Applications.
To me everything in OS X looks like an "icon" and there is some tenous relationship to directories/folders, and "Applications" is some special pseudo-folder. I'm still confused, and not surprised at all that end users are confused. And this is on the OS that's supposedly the most user-friendly.
1. Pressing the delete key does not delete the selected file.
2. Enter key renames the file???
3. Space key opens up some sort of fake viewer that doesn't always work.
4. There is no good way to browse a folder of pictures.
5. No way to navigate to home folder.
6. No way to see full filenames for long names.
7. Bin does not work consistently. I created a shortcut to it in the side panel, but that cannot be used for deleting an app.
It is just horrible to use.
It’s honestly the worst file manager of all the major desktop environments. And I’m including the GNOME here too.
For example; dragging home into the sidebar creates an easy way to get there. It’s also in the menu under “go”.
There are icon and “cover flow’ views that work for navigating images.
That “fake viewer” is the standard preview. It works reasonably well for most files, and you can install additional viewers.
1. macOS standard behaviour - actions require the command key.
2. Yeah, that’s strange. I’d expect a command key to be required.
3. That’s quick look. The behaviour relies on applications registering an extension, and many don’t. Still, I use it all the time for PDFs and images.
4. Nope.
5. Go -> Home. Command shift H iirc.
6. The inspector will show you. This isn’t a good solution, but it is one.
7. Yeah. NFI why it just lives in the dock.
2. I actually really like Enter to rename now that I’m used to it. Renaming is a common operation in many instances.
3. Yes, space key opens quick view. It works with most common file types and is very fast. I don’t see a problem here.
4. This is a good point. The answer used to be Cover Flow but they unfortunately got rid of that very nice feature.
5. The home folder is not commonly used in their UI paradigm.
6. I’m not sure I’ve seen this behavior.
7. This is a good point.
I’d agree that “Finder is just horrible to use for someone who expects Linux- or Windows-like behaviors.” Once you’ve learned it, though, it’s mostly fine and, in my opinion, a bit better overall than Windows Explorer.
Yes, it could be improved. They really need a better cover flow replacement for browsing a folder of images or documents, for example. And they clearly haven’t been making much of an effort over the past few years to improve Finder beyond minor tweaks here and there. But it does its job overall, and long-time users (like myself) will miss features like Enter-to-rename if they adjust them to match the conventions in other operating systems.
There are also alternative file managers for Mac OS like Commander One and Path Finder for people who want more features.
You have the trash can for that.
> 2. I actually really like Enter to rename now that I’m used to it. Renaming is a common operation in many instances.
Agreed, so give it to a key like F2. The most common operation on a file is to open it. Enter should do that.
> 6. I’m not sure I’ve seen this behavior.
If you have a file with a long name "a_file_with_a_really_very_long_name.txt" will show up as an icon with "a_file_with_a...long_name.txt". Even if you select it, the name will not show. This is very annoying when I have similarly named files with slight differences.
> I’d agree that “Finder is just horrible to use for someone who expects Linux- or Windows-like behaviors.” Once you’ve learned it, though, it’s mostly fine and, in my opinion, a bit better overall than Windows Explorer.
I think you are right in part. Most of my pain is due to unfamiliarity. However there are a few things that I feel are genuinely horrible, and should be fixed. I think File Manager in Windows is a much better designed app with a very thoughtful attention to features and detail. You can get used to anything, but you shouldn't have to.
That said there isn’t an ‘install’ as such on macOS. Applications isn’t a special folder, it’s a regular folder like anything else. Putting an application bundle on your local disk anywhere is sufficient to get file type mappings to work.
The downside of course is there’s no corresponding uninstall that removes anything extra the app dropped in to ~/Library.
> Putting an application bundle on your local disk anywhere is sufficient to get file type mappings to work.
How does this work "under the hood"?
"Bundles" and "packages" as a general concept are interesting. Lots of games from DOOM upwards use "packfiles", which are effectively lots of files in a never-unpacked container. You can't see them in the filesystem, because the intent was to avoid incurring filesystem overhead for them. MacOS bundles appear to have gone in the opposite direction: the structure is brittle (if you move anything it breaks signing), but it's unpacked into the filesystem.
Under the hood, Apple used to have a tech note on it but I can’t find it right now. Essentially the OS uses file system event notifications to watch for bundles being added or removed. It maintains a database of the mappings declared in the plist for fast lookups.
Icon for what? .apps inside dmgs have icons just fine, like anywhere else (locally). Moreover, people add background images via some special metadata files, to have those arrows telling you to drop the .app onto the symlink to the Applications folder.
For things like kernel extensions yes there’s an installer, and some more invasive apps do that as well. But for a plain app there’s no _need_ for an installer. That doesn’t prohibit them of course.
With PKGs you double click the file and it leads you through the installation process.
With DMG, these mount as disk images and you can then just drag the app into the applications folder. Sometimes they include a link inside the DMG to that applications folder to simplify that process.
With ZIP, you double-click the zip file and it unpacks in the current directory. Then you drag the app into the applications folder. These are mainly uses by individual developers or small shops who don’t want to go to the trouble of a PKG or DMG container.
Uninstall generally just means dragging an app from applications to the trash can. There is no registry and most apps don’t install helper apps. Those you usually uninstalled via the PKG.
But as great as homebrew is, I’m still left irritated that one of the most profitable companies in the world could make their flagship operating system such a fucking mess.
Why is it that free operating systems do a far far better job at managing software installs than any of the commercial ones?
Apt Dpkg Snap AppImage Flatpak Pip Cargo Homebrew Make install
And there's pacman, nix, rpm, and a bunch of other package managers for other distros.
It's actual worse now than it's ever been. Every program seems to have a different way to install it, or multiple ways and the versions in each package manager are different.
Ways most users install applications in Ubuntu - the software repo/software center.
All those other options are options that most users don't use anyway.
> And there's pacman, nix, rpm, and a bunch of other package managers for other distros.
That's irrelevant - user's on a redhat system aren't going to get confused by the options for a debian system. You present those as if a user has to navigate all of those and make a decision which is patently incorrect.
> Every program seems to have a different way to install it,
You're correct, that is a recent thing and it's because software vendors (Microsoft, etc) are trying to make their delivery system the same for all supported platforms, so they tend to default for the lowest common denominator (i.e. the platform with the worst software installation support), which is Windows.
I don't think the state of Linux package management has anything to do with Microsoft.
But for most purposes, what you'll need on a typical Ubuntu box is all available in the Apt repositories.
Giving options doesn't mean you have to use those options. With Ubuntu, you can safely assume (most of the time) that what you need is in a Apt repository. Compare this with macOS where applications does really come from anywhere and it's not safe to assume you can install application from any one place.
My counter-point to the parent is that installing software in Linux is NOT objectively better, in the sense that it's easier. Software that targets Linux almost always comes with installation instructions one must read (I'm not referring to the normal utilities, etc that have been around forever).
It is harder to install software that has not been reviewed/vetted (yet) and as a user i believe that's a very good thing. That's the only reason out of the many non-technical GNU/Linux users i know, i've never even once seen a virus like i have seen the same people get on Windows/Mac.
"Download & run" untrusted code from the Internet is very much an anti-pattern for security. I'm really glad AppImage exists for some usecases (as it does support PGP signatures for releases), but i'm really glad it's not the go-to method for releasing software.
Also worth noting, there's exactly one reasonably-secure alternative to distro packages, and that's GNU/guix, another distro inspired by nix but with much higher security standards (bootstrappability, "channel introductions", etc). Maybe some day our distros will be packaged with GNU/guix and a GNOME Software (or equivalent) backend for graphical usage?
That doesn’t strike me as Linux being particularly worse.
File management and file browsers could always improve, but let’s not get rid of files themselves please.
The concept of how the information is stored is no different. It just the amount of data that can be stored. While storing more data that can be copied, transferred and edited easier is an improvement. The fundamental concept of the file system itself is still wedded to a concept that is probably 1000s of years old at this point and by tying us to these concepts it limits what can be done with data within those files.
I think that's the crux of the problem. The concept of files should not be estranging to anyone. It's the weird mix between native GUI and online GUI that's confusing here.
Modern smartphones have abstracted files into specific names inside specific apps. Every file is in their own little app, and the idea that a document and a picture can live right next to each other is starting to look foreign.
I believe this babification of user interfaces is taking away fromtthe computer experience. The arcane menus and knowledge Windows 98 required is luckily a thing I'd the past, but the concept of "web browser or file browser" shows a dangerous lack of knowledge about the system in use. This isn't a problem for random DOCX files, but it makes phishing very easy. After all, if the user doesn't know that there's a difference between the browser and the rest of their computer, how will they ever doubt those messages about their computer being infected by a virus?
People use computers every day for many tasks, but their education seems to have halted around ten years ago. Kids are growing up solely with the smartphone model in mind, of apps and sandboxes and no way to move information with anything but the "share" button, so it's only a matter of time before that concept is also simplified.
Interfaces should be intuitive but computers should not be used without knowledge of the core concepts like "what is a program" and "what is a file". We can try to fix this by making even leakier abstractions, but what we really need is education.
If what you have is kind of like a local file but the abstraction is leakier than the Titanic, don't, because unless you can be very clear to all concerned about which operations aren't available (and here's a hint: you can't), it is inevitable that the user is going to try something that Just Doesn't Work for reasons they don't care about.
And that's a terrible user experience. Not just because they don't achieve their goal, but because it undermines their trust in interfaces that do get it right, so suddenly everything is fraught.
Mounting the cloud storage locally is probably the best solution to this. I don't access my files in Nextcloud through my instance's website, I do it through the app that lets me treat it as another directory on my computer. OneDrive and iCloud already do this by default on Windows and Mac, respectively.
I don't see "fragmentation" (as you put it) going away, because each service has its own way of authenticating users and accessing the services, and each OS has its own API for mounting or synchronizing files.
When someone sends me a zip file, having the most obvious link take me to a list of files in the zip that I can neither preview nor download seems illogical.
In the 21st century, I expect webmail providers to understand zip files.
Google drive drops a lot of features that are technically easy because there is no fast or constant time to perform the action.
Seriously though, this data exchange motif is so ingrained in computing as to be almost unimaginable to dispose of. Programs need a semipermanent method of exchanging information and we call that thing files.
We're trying to shoehorn multiple use cases into a single/unified systems, of of cause something the computer will do the wrong thing, for our perspective.
In this case Sharepoint is used as a way of transferring files, which it can do, but isn't exactly meant for.
Just nitpicking here, but a lot of people who started using GUI on a "smart" phone have no idea what a file browser looks like. They know what a one-dimensional "photo" or "document" browser is, but they have no idea both are "files" that are stored in "folders".
Technically, yes. There're protocols like FTP and WebDAW supported in pretty much all operating systems who allow users to view, download and/or upload files using any app.
Practically, no. Internet companies hate specialized protocols because they don't serve ads.
I’m not sure about Google Drive; I bailed years ago when its broken sync ate my data.
"You have two folders, with files in them, if you drag a file from one to the other, what will happen?
Depending on rules you can't be expected to remember, one of three things will happen. It might copy, move, or make a shortcut to the file.
If you right-click (the other mouse button) on a file, and drag it to the destination, you get to choose which thing you want done, every time."
This little instruction saves boatloads of time for Windows users. It's sad that there isn't a right button in the Apple world to help make things easier.The Apple mouse lets you click on the left or right side of the mouse. There just are not discrete buttons.
Third party mice have multiple buttons just like Windows.
You can always hold the Option key and click on something to trigger the right-click action.