Haiku has come a long way and lately it caught enough of my interest to make me do various things with it - even some programming. By trying to use Haiku closer to what I normally do with an operating system, I bumped into unexpected usability things.
1. Alt and Ctrl are treated the opposite way compared to Windows/ReactOS/GNU-Linux/BSD/QNX/etc. That bothered me a lot, and I have no idea if it’s configurable but I assume it isn’t. I just moved along.
2. As a result of #1, task switching is done with Ctrl-Tab instead of Alt-Tab, which is yet another thing I had to constantly keep in mind, but if it worked as I thought it would I wouldn’t have been bothered by its functionality. I expected the OS not to switch programs until I release Ctrl, but as soon as you release the Tab key, you move to the next program. And the switching window displaying the program icons in order for you to see to which task you switch to… it’s different as well, compared to many other environments - starting with Windows 3, a loooong time ago. You have to long-press Ctrl-Tab to make that little window show up, or you won’t see it. And if you only press Ctrl-Tab shortly, even if you don’t release Ctrl, you just switched to another program. In other operating systems, as long as you haven’t released the main switching key (Alt), you see that task switcher window and you can press Esc to cancel the switching - which is a very nice feature. This makes you feel like Haiku assumes the users always knows what they want to do next and they never change their minds.
3. But then there’s the manual program switching by using your mouse on the deskbar. Click one program’s button on the deskbar and instead of switching to it instantly, you get an option menu so you can choose what you want to do with the window. That’s only done with right-click in the operating systems I mentioned, and I haven’t found a way to immediately switch to the program I want - I looked through all the preferences.
4. Apparently there are two categories of “things” you can start from the deskbar: (1) the programs, demos, applets and preferences inside folders/directories, and (2) everything else. The first category will get buttons on the deskbar, while the second category will only show up in the Tracker - which cannot be closed and takes up space on the deskbar.
5. Talking about closing up stuff, clicking the icons in the system/replicant tray shows an option menu immediately under the mouse cursor, as opposed to the one you get by clicking the Tracker and application buttons on the deskbar. This is a bad idea for people with laptops working with touchpads, because you can easily tap the option under the mouse cursor if your touchpad acts a little bit strange or you accidentally tap more than once.
6. Talking about clicking/tapping, my first (recent) experience with Haiku was inside VirtualBox, and the mouse acts quite differently than on a physical machine. The cursor movement is plain weird, out of place, the clicks are not always listened to… so you just have to be patient with it. This deserves a warning on the downloads page, so people know that VirtualBox offers a different experience in as many ways as you already know it does. Just warn the people, because with the keyboard differences mentioned earlier, people will surely use the mouse more often than usual.
7. Closing a window doesn’t always switch the focus on another window. You can end up with no focused window at all, which forces you to either use the mouse to close all the windows or use Ctrl-Tab to manually switch to them to be able to close them. It feels weird, and along with the way task switching works, it’s a bit cumbersome - to say the least.
8. Resizing windows feels just as cumbersome, a thing you have to do a lot when working on a low-resolution display, such as my 1024x576 netbook. But even the default 1024x768 resolution in VirtualBox forces you to resize windows sometimes. As far as I know, it is currently possible strictly from the windows’s bottom-right corner. Now if all you want is to fill the screen with that window, maximizing it is the quickest way to handle it, which is only a click away. But other than that you’ll have to move the window to a position that puts the bottom-right corner in a visible spot. That, or maximize the window and then resize it and move it where you actually want it.
There are two things worth mentioning here: (1) in other operating systems and with most window managers you can resize windows from all four corners, which is great even with all of them in sight, because you can resize a window directly towards the position you actually want it, so you don’t have to also move it afterwards, and (2) the mouse pointer changes shape to a cursor symbolizing the resize operation. If you think that switching the mouse cursor is not worth doing considering you already have a marker on the bottom-right corner, which marks the area you can click to resize the window, consider the way other window managers handle this aspect, and you’ll easily understand why everyone expects the resize cursor to show up. And when it doesn’t, people are more tempted to assume that the cursor is not supposed to change than they’d be assuming that the window cannot be resized other than by its bottom-right corner. So on a small resolution, with a window bigger than the whole screen, clicking on any other corner than the bottom-right one you’ll think you resize your window, but instead you simply move it and you don’t even know. And until you figure this out, you won’t move the window to a position that allows you to manipulate the bottom-right corner because you’ll instinctively try to resize the window from the closest corner relative to your mouse pointer.
9. About Desktop (right-click) Clean up: until you know what it does, you can only speculate what it might do. Does it move shortcuts that haven’t been used for a long time, as Windows does? Does it delete anything? Does it align the existing icons? Does it do something else? I think a more descriptive name would be appropriate, to eliminate guessing.
10. About Desktop (right-click) Mount/Add-ons. If you click those options, the contextual menu closes and nothing else happens. Considering you can click other directory/folder menu entries (Applications/Demos/Deskbar applets/Preferences) and they open up a window with their containing items, this feels out of place because you’re left wondering if a window with those options is supposed to show up or not. It’s an inconsistent behavior, which can easily confuse people.
You can take this as a story, or as feedback, even as things you might consider tweaking, but the bottom line is there are a lot of things (some little, some big) that Haiku does very differently compared to most operating systems out there. Not even the differences between Mac OS X and Windows/GNU-Linux/BSD/etc are this big. And on top of these, there are some “unique” features which feel like inconsistencies or can be considered as such.
However, instead of telling you want to do, I’d rather like to know if it would be possible for these things to be configurable in the future from a UX setting application that allows the user to switch the environment’s behavior to the one they’re used to. While for some people it can be hard to adjust to so many different ways of doing things after 20 years of doing them mostly the same way throughout a number of different operating systems, some people also use multiple operating systems regularly, which makes it extremely easy to mistakenly use Haiku’s workflow on another operating system and vice-versa.
And two more questions:
- Does this all come from the way BeOS did things?
- Do you think it’s worth reconsidering some of this behavior and permanently align it with the way all the other operating systems do it?