Sunday, August 12, 2012

Nautilus Extra Pane Removal: Myth Busting

Since I announced the birth and the growing-up of Nautilus' extra pane in this blog I guess it's only fair to also mention this feature's silent death here.

There's been a lot of vandalism happening in the repository lately, and unfortunately, the extra pane was one of the victims. But it's in good company, joining type-ahead selection, compact-mode, and the tree sidebar into nirvana.

All these removals came somewhat as a surprise to me, as they seem to directly oppose Nautilus' mission statement. So I guess this has been superseded. Too bad that this wasn't communicated - people would have been less surprised.

So, let's have a critical look at the reasoning for the removal of the extra pane.

Starting with the bug report:

Extra Pane mode was somewhat useful before GNOME 3 had side by side window mode.
Fun fact: That's the first time that I hear a GNOME designer call it "somewhat useful". Usually, the reaction was WE ALL HATE IT (capitals are theirs, I left the double-underline out). Anyways, historically, the extra pane was introduced because of GNOME 3 (see linked mission statement above), not despite of it. Nautilus wanted to make the move from a document launcher to a file manager, because of the GNOME Shell taking over the launcher part. Now, I am not sure where it's moving. File management isn't the focus anymore for sure, looking at all removals combined. It seems the focus is to look pretty. For all those users who start Nautilus to lay back and enjoy its look, as opposed to getting work done. I wonder how many of those exist, outside of the designer world.

That brings us to the most stated reason for the removal of the extra pane: The claim that it has become obsolete due to window snapping. That is just factually wrong.

The main point of the extra pane is to have a default target for file operations. Many operations work on files in two distinct locations: Copy or move files from folder A to folder B. Or from a remote location to the local computer. Or from a USB stick into the document folder. The extra pane introduces this concept of "that other location". So it's possible to get the job done with a single menu item. Or even with a single shortcut key (functionality that was also removed but that I was allowed to bring back).

This inherent connection is the feature that the extra pane offers. It's really a lot different to displaying two random windows side-by-side. That snapping looks somewhat similar doesn't make it a replacement for the feature.

Let me give another example. The inherent connection between the two panes is also available from inside Nautilus Scripts. A have a script that just "diff's the right thing", be it two files in a directory, two files in different directories, or two directories. The script is trivial. With a shortcut assigned to it, these little things help me work. A lot.

Only after somebody showed me this "one key press diff the right thing" feature with window snapping, similarly easy to do and to set up, can he argue that window snapping obsoletes the extra pane.¹

The visual side-by-side display of extra pane is just a nice added bonus to the feature. But even visually it's way better than window snapping:
  • It doesn't need to be full screen. Last time I checked, GNOME was also supposed to be used on desktops - many of which have big screens nowadays.
  • It's easy to get that view, and to get rid of it again. One menu item or button press, instead of mouse placement origies.
  • It has less visual clutter. No double sidebar, no double menu, and so on
  • It's easier to see which pane is selected (actions are applied to the pane that isn't greyed out, genius)
Some of these side-aspects can be taken care of. By horrible hacks, though. Or by removing yet more features. If nothing is left, nothing is duplicated.

C'mon, if you want to argue against the extra pane, you can do better. I mean, if you're on a mission, I'm sure you can think of some more convincing arguments. Let's see...
The combination of panes and tabs is just too much.
And then you decide to move the feature that cannot be handled by window managers into the window manager, and leave the feature that could inside Nautilus? Interesting. In a weird way.
It is inconsistent with the file chooser
In what way? That the file chooser cannot open two panes? Sure, that's because it's a file chooser, not a file manager. By the way, Nautilus has a few features left that the file chooser cannot do either. Like copying and moving files. Or renaming. I see a bright future for Nautilus after you've made it consistent with the file chooser. Or, as has been written in eloquent newspeak: When Nautilus receives yet more "love".

and doesn't work well with touch.
What's wrong with it? And why will window snapping be better? I think it's actually easier to action a menu item than to start and drag-and-drop two windows to snap.

Do you guys actually realize that your whole reasoning consists of either false or unelaborated claims?
We would like to add a more explicit copy/move feature shortly.
I doubt you can introduce the "default target" functionality otherwise in a clearer way. And - even if you could - here's a wild idea: Strip the features out after you have a replacement. Not before.

That's basically it for the bug report and commit msg. But the blog post that I linked to before has more:
The first reason was that it was undiscoverable.
What a reason. Make it more discoverable, then? I thought you were a designer?! Of course, that would mean that you're not on a mission.
this one also stood in the way of providing a better alternative
What alternative? How did it stand in the way? Don't be so fuzzy - where is the beef?
Even if you never used the Extra Pane you always had useless Move To and Copy To items in the menus.
In fact, having these menu items always displayed was a review comment, because that's supposed to be the GNOME way. The original patch only showed them when an extra pane was open. Now, this is brought up as a reason to remove the feature? Funky.
Should we keep the feature for which we have a new and better alternative in Nautilus
We don't have that! I explained it numerous times, but my comments have always been ignored. Provided that you read comments on your own bug reports, you actually know better. Which leaves an ugly after-taste.

I'll leave the side-by-side snapping out, becaues I've covered it already. Which brings me to
and a pile of bugs getting no attention in bugzilla
Now, this is the point that really makes me furious, and that probably makes my mails and posts more explicit than they otherwise would be. The design team has always been badmouthing my work on that feature. It started with "extra pain", claimed that it was "messy code", that "files vanish".² Now, they claim that we had oh-so-many bugs (but of course secret ones, which they won't tell you about).

Of course, I asked dozens of times what's so messy about it. I love being reviewed. Receiving and doing reviews is one of the best ways to learn and advance. However, I never, ever, got an answer.

Which turns the statements from criticism into slander. Disgusting behavior.


Of course, these claims spread over the web, where you can now read all day long that the feature was removed because it was oh-so-buggy and an oh-so-bad hack on top of Nautilus instead of making it properly, and so on.

That's just not true. The extra pane patch (which consisted of about 2000 lines, by the way - for a quick hack I would probably have needed 10 or so) introduced some architectural changes that make sense even if you don't want to have the extra pane. In fact, it would have been smart to keep those, even if the feature was to be removed.

I think I've covered all of the argumentation brought up so far that led to the removal of the extra pane in Nautilus. Not a single item with substance.




1 Fun fact: I like window snapping, too. Actually, I even had a locally patched Metacity on my machine that did snapping somewhere in the middle of GNOME 2 already. It's cool to have Evince and a LaTeX editor open side-by-side, for example. If snapping could have replaced the extra pane, I would have cleaned up that patch and submitted it, instead of putting lots of effort in the extra pane. But I didn't, because snapping cannot replace it.


Edit: When hearing about the "files vanish" part, naturally, I got a bit nervous, and immediately tried to find out what that statement was about. Turned out that there was no data loss, in fact no bug. And the reaction on my inquiry was a huffy note along the lines of "can't we talk without filing bugs?", followed by "what a crappy comment". D'oh.