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

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



On Wed, May 4, 2011 at 21:50, Ed Lin <edlin280@xxxxxxxxx> wrote:
> 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...)"

Before reading the recent threads i had no idea that I can be labeled
as a windows-centric user ;)

I think that it's not good to go into the direction of this so-called
"application
centric environment"  just because it's supposed to be the modern sexy
way to implement a desktop interface.
The first thing I did in W7 was to enable the classic theme , get rid of
the dock and re-enable the quick launch.
I've never had a mac , so I can't comment about it  .


It all depends on each application.  For some applications there
is no need to start multiple instances . But there are some applications
that are frequently started multiple times : terminals , office suites ,
editors (gvim) .

If I have 2 monitors i really want to take advantage of them and run a
program in a terminal,   while watching the logs in another terminal
on the second screen. I need separate terminals , not multiple tabs
in a single terminal .

A desktop environment that restricts this is seriously flawed ...


Unity should allow the user to start additional instances of an already
running application rather than be "smart" and decide_by_design that the
user doesn't need to do that.

I am suggesting that right-clicking on running application has a
menu option "Start new ...".

Switching to a particular instance of an application should of course be
possible :    for example if there are 3 terminals open it would be nice
that when hovering the mouse over the icon would open a small
window or menu  so that the user could click on the desired instance.


So I believe that it is possible to please both application- and windows-centric
users if there is a bit of good will and no fixation on the idea that
application
centricity is the ultimate solution.



--
Adrian M