[Usability] The Pathetic State of the GNU/Linux Desktop



The Pathetic State of the GNU/Linux Desktop


  1.

     Accessibility


Let me start this by saying that at least KDE puts Windows to shame. I'm not going to speak so much for GNOME, although I find GNOME to be easier to configure with its very limited functionality. I will also be mentioning Apple a lot in this letter. Still, the accessibility of a Linux desktop frankly sucks. It's not so much that people aren't programming a lot of very functional applications. It's not so much that people aren't programming good things. It's that our programmers aren't keeping everyone in mind. There is no excuse for a blind person not to be able to use a mouse, it's just that nobody has made this available to them. There's no excuse that a blind person has to use a long-winded screen reader when they're tabbing through a panel or their desktop.

I would say that the most usable application for a blind person on any platform to be instant messengers. Why? Because they are capable of blaring out annoying sounds to make us extremely aware that some event just happened. The surprising thing is, that the event is usually easy to identify from the sound used. Notification is a great tool for accessibility. I don't see it used enough.

I also mentioned long-winded screen readers when tabbing through a panel. I would find it annoying to use a screen reader to tab through a panel for the same reason as I would find it annoying to have text without an icon for every element on the panel. Why hasn't anyone made a field for iconic sounds instead of using solely iconic images? A person with a blindfold on would love it. It would save them a lot of time.

What is the best technology that has come out for people with accessibility problems? The wonderful concept of the podcast. Wow, Apple actually helps accessibility? That's news. However, a few people I know are deathly afraid of the impact the iPhone could make. Why? Because nobody has developed technology for the blind community to use touch screens, and in the same sense it could be said that nobody has developed a successful technology for the blind to be able to use a mouse. They've been scared of the desktop environment pioneered by Apple since the beginning. It doesn't have to be that way. I mean, how can my friend Karl pwn everyone in Counter-Strike being blind? The primary cause of fear for touch screens is that they don't provide tactile feedback. I don't believe that tactile feedback for touch screens in a practical sense is in the immediate future. What can be done about this? Can't we still exploit the use of audio feedback? As well, the scenario can always be mimicked by the use of a mouse. Accessibility is a killer app.

Another thing that comes to mind with accessibility. I recently stumbled onto a Slashdot article about Linus telling the GNOME people that Metacity is very limiting. It's true. Not being able to independently map I/O functionality (such as right-click actions being hardcoded) is something that limits accessibility.


  2.

     Interoperability


Now I will go on to mention interoperability. Let's see, I have like a gajillion applications that use tabs now, whereas before Opera and Firefox came out, the only applications that I could note using tabs were used with spreadsheets (a favorite tool of the blind, I might add). One thing I notice about all of these applications using tabs, usually they have varying functionality. Some let you drag and drop a tab and have it create a new window, or drag a tab to another tab bar of the same application and it will merge into that window. Some have X buttons, some don't. Some applications like hiding the tabs if there's only one open. Tabs can be easily compared to window lists. I'll tell you what I see with this, a huge potential gain for functionality and interoperability.


First, since tabs with X buttons on them have proved usable and successful, why not have the functionality to add the -[]X stuff to the task bar? The only difference between the task bar and a tab bar is that the task bar generally handles multitasking whereas a tab bar generally organizes several things that aren't all being used at once. I must say, this would seem more like a KDE concept than a GNOME concept, because I've already submitted this to GNOME's BugZilla to have it canceled as they said that people usually use the windows list to cycle through applications and it might get in the way. That doesn't mean it wouldn't make a good optional feature, and I very much think it would make a great default feature.

Secondly, why in the world haven't all applications come together on the dragging a tab out opens that tab in a new window, and dragging a tab back in merges it into the current window, and closes its own? One reason that people generally don't like tabs is that it gets into the way of their multitasking, where this kind of feature overcomes that, giving more power to the user. This is where I'm going to start into interoperability as well. Let's say I have an HTML document open. I think it would make sense to be able to drag and drop a tab hosting an HTML document into another application that can handle HTML documents (ex. a text editor). However, there would be certain challenges for this. Most applications with tabs, you can save a tab as multiple file types. Having a drag and drop capability would have to be aware of the file types it can open another application's file in. It's still a good idea to offer interoperability via tab bars.


What I must state is that accessibility ought to be taken into account before everything else. If adding functionality will improve accessibility, one must always take that functionality into account. This is something that hasn't been taken into account very often in the development of most desktop platforms, and yet it's very important to a lot of people.


Yours Truly,

Jacob Beauregard


P.S. And now I will mention that this entire letter is stream of consciousness, so good luck reading it.




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