ZH version is available. Content is displayed in original English for accuracy.
Advertisement
Advertisement
⚡ Community Insights
Discussion Sentiment
95% Positive
Analyzed from 2199 words in the discussion.
Trending Topics
#file#menu#files#app#actions#don#log#application#thing#isn

Discussion (51 Comments)Read Original on HackerNews
Opening a calendar application, clicking on the "Event" menu, and being given options to make a new calendar makes as much sense as opening the "File" menu and seeing the same options.
If you split it up so any menu item that verbs a noun, had a top level menu named by that noun, you'd end up with New/Delete/etc actions being split into many menus, which feels just as wrong.
"File" works because of inertia, and people have a feeling of what should be in there:
It's vaguely related to the file/container you're looking at, but I wouldn't even say that's hugely important to most people's use of the file menu. It just has to have those things in it because honestly, it's pretty consistent. Other than a few examples in the article (Find My with it's always-disabled options, Reeder clearly having already moved all of it's menus into Account/Subscription/Item nouns) the file menu lines up with what I expect to be in it. Maybe that's me stuck inside my own bubble?But the obvious example of what op is talking about is Pidgin, an instant messenger. The first menu is called "Conversations". It has actions for operating on conversations. The application can't open files, or save files. At least not in the same sense as Notepad, Paint, Audacity, etc.
I guess my point is "File" is just consistent, not that it accurately represents the way the application functions. A lot of UX conversations come down to the naive-user experience, but truth be told, you're only a naive user for a short amount of time. Maybe a week into using macOS for example, I think you'll just mentally map "File" to that list of actions I have in my comment, and you're golden.
Yeah maybe conceptually it's weird that "New Tab" in safari is a File action... but also that's where every application puts its "New Thing" actions. If I want the application to give me a blank slate, I will look for File > New *. "File" is just a word.
If every application had it's own place for those actions that were named for the noun they act on, sure, the naive user touching a desktop OS for the first time is going to breeze through tasks a tiny bit faster, at the expense of the location/name/grouping of menu items now requiring relearning on an app-by-app basis.
There's an alternate history where the file menu is actually labled "Do" or something, and I would make the same argument. "I know what's in the Do menu."
See:
https://en.wikipedia.org/wiki/Chip_log
https://en.wikipedia.org/wiki/Logbook_(nautical)
In the modern computing context, "logging in" does involve adding entries to a kind of (digital) record-keeping tool.
https://www.logicalfallacies.org/fallacy-fallacy.html
Did you log in (space: split verb)? What is your login (no space: noun)?
Do you have a backup (noun)? Did you back up (verb)?
Um, there is, actually.
On the etymological front, "log" was originally an actual wooden log, dragged behind a ship. It then became the book in which measurements of the log's speed were entered.
The UCLA Computer Club had a log -- a book with dated entries. Someone augmented that with a wooden log ... an intricate culture developed around this pairing. Traces of this are preserved: https://americanhistory.si.edu/collections/object/nmah_69051...
(That drawing is a pretty good representation of the actual log. And there's another memorialized pun: MUS stood for machine unit second, which was the computing center measurement unit -- the Computer Club had a quota for submitted jobs [card decks].)
- Messages: message
- Passwords: password
- Reminders: reminder
[...]
Most of propositions are restatement of the app name or theme thereof, and thus do not seem to be very helpful (everything in a notes app has to do with "notes" one way or another). Plus, having naming conventions change per app is confusing. The "file" menu is usually about "(primary) actions" and "I/O", so I would rename all of this as "actions". However, "file menu" has been associated with these kind of actions, and it is fair to consider a liberal interpretation of the word broadly referring to organisation of data (wherever this lies) and creation of new data structures within the app (not just filesystem level).
Notes New Note New Folder Quit Hide
Apple guidelines for example, which have been in place for 40ish years:
> Best practices: Support the default system-defined menus and their ordering. People expect to find menus and menu items in an order they’re familiar with. In many cases, the system implements the functionality of standard menu items so you don’t have to. For example, when people select text in a standard text field, the system makes the Edit > Copy menu item available.
https://developer.apple.com/design/human-interface-guideline...
Example: a bunch of JRE apps on OS X. Circa mid-2010s, many didn’t follow the standard menu layout and were a little jarring (pun intended) and unsettling to use when you tried to navigate features.
You could also say it pierced the metaphor and no longer refers to files on a computer, but to the concept of filing that computer files were named after.
https://developer.apple.com/design/human-interface-guideline...
> If your app doesn’t handle any types of files, you can rename or eliminate this menu.
This seems really weak. What's the benefit to the user of changing "the menu for saving and editing items" on a per app basis?
Most apps don’t deal with Files as the controlling metaphor.
Word would do well so call it “Documents”
I think eventually (~decades) the concept of the menu bar will go away, but until it does, File is a fine name for the first menu on the bar. I don't know what it will get replaced with, but it will go the same way as the Save icon—a relic that was a good design at some point, but no longer has much basis other than inertia, and will slowly get forgotten as it becomes obsolete.
I always appreciated the rare times when an application would use something other then "File", such as "Game" or "Room" for chat apps.
While I don't agree with some of the suggestions I appreciate the author took the time to at least propose solutions.
In the "File" menu you are doing something that has the potential to fundamentally alter the app you are using, by tampering with (typically a large portion or even all of) the data files it contains, or by resetting the state of a running session (file > new window in browsers)
"Edit," semantically, is the same but for a subset of that data, often only a single piece of data. Here I'll sustain that the "create a singular new password/event" button could be under Edit, not File, since those are not actions scoped to the whole app or to the filesystem, instead only to individual records in a database.
"View" is read-only and actions under here should not write anything anywhere. And so on.
Please do not abandon decades of UX tradition in favor of inserting tautologies into your programs.
(1Password/Passwords, Automator/Automations, really? might as well put a pictogram there rather than duplicate the word - I already know what the app does, I want the UI to signal what scope my actions are applying to)
"Project" for DaVinci Resolve makes sense, probably because it's a synonym lol
Not just the File menu, but also MVC is one of many examples of decades-old UX tradition that should not be treated as sacred merely because generations of programmers have copied it.
The irony with MVC is especially rich: people are still cargo-culting terminology from Smalltalk-80 decades after the Smalltalk world itself moved on from that original UI architecture.
"Things seem to hang on in computing just because they work a little bit." -Alan Kay
That was his reply when I asked him about his thoughts on MVC:
https://news.ycombinator.com/item?id=8841428
>nobody can agree on what a controller is, anyway, except that it's the dumping ground for all the brittle junk and dependencies that none of the other well defined classes wanted.
https://wiki.c2.com/?WhatsaControllerAnyway
Maybe the real fix is to consider if you need a File menu at all, and whether most of what has been shoved in there should go under the app name menu bar item instead.
A benefit of that system was that all documents and data could be easily treated as files - and moved organized as you pleased.
Somewhere along the line someone clearly decided that this was too simple and made storage opaque - and now you never know where anything is stored - and how or where to organize it.
I'm not sure I consider that an improvement.
Imagine if you move the file menu to the middle. Will you still be quickly able to find it "because it's a standard" or instead click the new first menu (and then spend several minutes trying to find where the "New window" option is)?
There should be a positive case for any change. Some reason the new name is better, more useful, more intuitive. But I haven't seen anyone describe this yet, here or in the blog.
It isn't a hard drive. What's being driven, your mom? It definitely isn't a hard disk in most cases, either, because SSDs are so common.
It isn't a screen. What's being screened out? Is it a monitor? I don't know, is it? Are you monitoring things? If not, then it isn't.
It isn't a mouse. Mice have tails, and also are small living mammals with respiration and without buttons.
It isn't a touch pad. It is touched, but it's also stroked and tapped, so calling it merely a touch pad is inaccurate.
My point, of course, is that language is purely convention, and trying to nitpick all of those conventions quickly leaves us with nothing. There's polysemy and semantic drift and as long as there isn't confusion there also isn't a problem.