[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Ayatana] What are the advantages of an application-centric interface?



On Sat, Apr 23, 2011 at 5:55 PM, Ed Lin <edlin280@xxxxxxxxx> wrote:
> In Unity applications and windows largely behave more like OS X while
> the "classic" desktop is more like Windows.
> There is a dock which represents applications as opposed to windows.
> It focuses windows of a running application instead of launching a new
> window and there is a single menubar per application, not per window.
> This is what I call the application-centric interface.
> I wonder why it was chosen as the preferred interface design because I
> can only come up with reasons why the "old" window-centric model works
> better:
>
> Multiple Desktops:
> The window-centric interface is a simpler mental model for the user as
> it is more predictable. No matter what applications are running on
> other workspaces or monitors a taskbar based interface will always
> behave the same way. It's less noisy and disruptive because you never
> get automatically switched to another workspace just because
> coincidentally another instance of an application is already running
> there. This particularly applies to such applications as file
> managers, terminals and text editors that are opened frequently and
> are used in different "work-flow contexts" say your "admin", "coding"
> or "personal" workspace.
>
> Window Management:
> The taskbar requires one click to switch to any window in the current
> desktop, in Unity switching to another window usually requires at
> least two clicks.
>
> Opening a new terminal/file manager window
> Again, takes more clicks if launcher icon and active application icon
> are the same. Keyboard shortcuts alleviate this for me but many people
> never use those.
>
> Menubar:
> The menubar "outside" of windows is probably the most visible aspect
> of the application-centric design. The main  problem here is that 3rd
> party Linux applications are all written for the "classic" model. It's
> not just LibreOffice and similar cases though. GIMP and Firefox
> already have integration in Unity yet it's not perfect: If the toolbox
> or download window is focused the menubar is empty and keyboard
> shortcuts don't work. This is nothing that can't be solved as native
> OS X applications show but my question here, is it worth it? Apart
> from the netbook user case with maximized windows I can't see any
> advantage of the global menubar. (If it was speed of access you
> wouldn't have made hover only.)
>
> My question to you: What are the reasons behind moving Ubuntu from a
> window-centric to an application-centric interface? What are the
> advantages and are they worth the trade-offs?
>
> I want to like Unity, there is much to like about it, the launcher
> keyboard shortcuts, the compiz integration, the dash, lenses and more
> but please help me understand why app-centric should be better for me.
>

Some update on this... I took the liberty to bump this as it is
probably more suited for the discussion going on in another thread.
>From [Ayatana] Idea for improving visibility of running applications:

On Wed, May 4, 2011 at 3:43 AM, Evan Huus <eapache@xxxxxxxxx> wrote:
>I disagree with a window-centric model by
> default. Although I have no studies to quote here, it seems to be
> gospel among interface designers (ie Apple, Canonical Design Team)
> that an application-centric model is better for most. I'm fine with
> that, and anecdotal evidence supports it fairly strongly. So an
> app-centric model by default.

I'd love to hear more on this. Gospels without evidence obviously
isn't good enough ;)

Let's take a step back:
I'd argue the perfect interface reduces itself to only content and the
user, the technical details should be abstracted away. The goal of a
computer isn't to run applications as it's been pointed out so often.
The point always was to enable the user to do "things". User-centric
is and always has been the only valid answer. From this point of view
partitioning what a user can do into different separated applications
isn't an end-goal. It's a limitation of current software and design.
Strictly adhering to an app-centric model is preventing progress
(let's not forget the app-centric model of Mac OS interface is 3
decades old, written for a single task computer with a screen
resolution of a modern smartphone).

The integration of collaboration and the "web" into modern desktops
further blurs the line between previously simple and clear separations
of user, OS, applications and network. If Chromium OS is an indicator
of anything it's anticipating the death of the concept of
applications. There is only one application and it does everything.

What does a "modern" app-centric desktop look like?
Take GNOME 3, brand new and in some ways more app-centric than OS X
(the icon-free desktop and the proposed but not yet implemented
application menu in the top panel
http://live.gnome.org/GnomeShell/Design/Whiteboards/AppMenu)

Windows are a function of their parent application. Everything a user
does begins by clicking on the Activities button and then selecting an
application. Documents are contained within the nautilus
"application". A lot can be argued about the pros and cons of desktops
but it's the most document-centric interface element I can think of.
No particular "application" is providing the content. It's just
"there", the underlying mechanism is abstracted away.
The abstraction is working so well that some people to this day still
haven't grasped the concept of a file system and a file manager
despite having used their desktops for years.

A good counter-argument to all criticism of app-centric interfaces is
to remind of the success of the iPhone. The only user facing OS level
interface of the iPhone is a thin bar at the top with some info
elements. Everything else is an application or an application
launcher. Everything is done through an application and the user is
made aware of it. People are trained to click on this and that
application icon to do certain "things".

One could argue that Apple has an interest in promoting application
centric computing that goes beyond providing a good UX: They want to
sell loads of apps on their market and particular applications (like
iTunes) are used to create and increase their brand image.

On the other side of the coin we have the window-centric interface.
But where does it actually differ? Let's look at Windows XP (I think
everyone is familiar with it) and OS X (I'm not using G3 or Unity
because as mentioned they are still in a progress of implementing an
app-centric model).
The main difference between the two is that in Windows there's the
concept of having multiple instances of an application open at a time
but in reality it's one application with multiple windows. This is an
abstraction that increases flexibility in terms of window and monitor
management but has some unintended logical problems. For example: Why
does changing preferences in window A of application X also affect
window B of application X? OS X is more simple: The application *is*
the icon in the dock, one, more or even no window can be associated to
this application/icon. The preferences are in the menubar, outside the
window. G3 is even more consequent and logical in this regards.

This isn't really a fundamental paradigm difference and as the Win7
taskbar shows you can combine both, retaining easy window level
switching via a taskbar AND providing a more logical multi-window
application presentation. Have I missed anything worth mentioning? I
can't think of anything else.

There is yet another *centric model: a task or document centric one.
Besides Chromium OS a partial implementation can probably be found in
KDE: the KParts as well as aspects of the plasma desktop.
http://en.wikipedia.org/wiki/KDE_Platform#KParts
In some ways also the old UNIX philosophy of the command line, text
streams and pipes, is a task centric environment. "Apps" are just
parts of a bigger concept: creating an environment that empowers the
user to do whatever he wants, not what an application allows - as long
as it's text ;)

The KDE desktop provides a lot of functionality without opening a
single application and with the use of KParts you have all the
important application level functionality available anywhere you want.
The goal is to provide the user with the best tools without having him
worry about opening or switching to a certain application.

Now compare that to iTunes: Apples sole goal is to lock its user into
using this application for everything music, video, app, device
management related. This isn't because of interface or user experience
considerations. The reason is vendor lock-in!

I think the discussion of window or app-centric isn't really that
interesting. Essentially both are doing the same thing, for decades on
the desktop and now on smartphones too. There isn't anything radical
or revolutionary about it. Given the current state of Unity I also
doubt there's room for starting anything radical or revolutionary at
this stage. For now I'd be looking at improving window management and
app launching of Unity on large/multiple desktop monitors. I've made
some suggestions in
"Ideas for Unity 2.0 (no global menu, no panel, improved info area...)"