30 November 2011

Mac rant

OK, so as of this year, I'm a fervent Mac convert.  Dyed in the wool, drank the Kool-Aid, bought the t-shirt, dyed the t-shirt with Kool-Aid.  Whatever.  Not going back.


The way Macs do window and app management is boneheaded.  (Disclaimer:  I'm still on Snow Leopard, but I don't believe Lion has improved this stuff - I'd be glad to be wrong.)

In Windows, here's how you need to think about managing your windows and programs - opening things, finding things, managing what's eating up your resources, etc.:

1) Is the app open *or* pinned to the task bar?  Great!  You can find it in the task bar.  Always, always, always.  Doesn't matter if it's closed and pinned, open and minimized, open and in the foreground, or open and hidden behind another window.  Always in the same place, in the task bar.  If you want it, you know where to find it.  And it'll be clear whether it's open (which means its eating up resources) or not.  Hint:  if you close it, it's closed, and not eating up resources.

2) Can't find the app in the task bar? It must be neither opened nor pinned; you'll need to open it from the Start Menu or something if you want it.  If you use it a lot, you might want to consider pinning it so you only ever have to think about #1.

Here's how it works on Mac (Snow Leopard, anyway):

1) Is the app open and in the foreground?  Yay!  You can probably find it, because you're looking at it!  Also, because you're looking at it, you know it's open and using resources.  That one's easy!

2) Is the app open and hidden behind some other window?  Good luck finding it.  There's no indicator in the dock that it's open. (You might be able to tell from the little glowy light that it's *running*, but that doesn't tell you whether or not you've actually got any windows open.)  And if you try to click on the app icon in the dock, very often nothing will happen.  What??  The window's already open.  So it's behind another window.  Not MacOS's problem.  Start pawing around in Exposé or whatever, or dragging windows around.  Good luck.

3) Is the app open and minimized?  OK, *then* you get a little window icon on the right side of the dock (if you've turned that feature on).  Make sure you keep careful mental track of which of your windows are minimized and which ones aren't, so you'll know whether looking down there will be of any use to you.  And don't try clicking on the main app icon in the left-hand part of the dock to get back to something you've minimized.  That doesn't do anything, silly!  You're supposed to click on the one on the right!  Did you forget it was minimized?  You need to keep better track of that stuff, in your brain.

(I know that's because you might have multiple windows.  But if you've only got one, why not open it?  If you've got three, why not bring them up in Exposé?  Really, "do nothing" is the best you could manage??)

4) Is the app *running*, but with no windows open?  This state is visually indistinguishable from "running with a window hidden behind other windows".  So make sure you keep careful mental track of whether you've got any windows hidden behind other windows.  Also, as a special feature, most Mac apps will happily keep running (and eating up resources) even if you don't have any windows open (and even if they don't have any legitimate background work to do).  I'm always running around looking for rogue glowy lights in my dock so I can close programs that I'm not actually using right now.  On Windows, almost always, the little X means "If this is the last/main window for the app, close the app - don't just close the window and keep the app running and eating up memory."  On a Mac, the little red circle usually means, "Close the window, but even if this is the last/main window, keep the app running, because lightning-fast startup is more important than ongoing performance of the apps you're actually using."  No, it's not.

5) Is the app actually closed - no little glowy thing on the dock?  OK, then you know where you stand, and it's as convenient as Windows - open pinned apps from the dock; for other things, head to your Applications folder.  But once you open it, make sure you keep careful mental track of whether it's:

- Running (and eating resources) with no open windows, or
- Open and minimized, or
- Open and hiding behind another window, or
- Open and in the foreground.

One of the few things I miss about Windows is that in Microsofty-land, the first state mostly doesn't exist (unless there's a reason for it), and the second, third, and fourth are visually identical:  wherever your windows happen to be, you can always find them in the task bar.


Jan Nedelka said...

Learning you are, youngling. Based on fear, perceptions, and old habits are your sorrows. Change your habits, happy you will be.

Stop minimizing. We needed to minimize in Windows 3.1 because there wasn’t a better way to manage switching between apps. Frankly I don’t think minimizing has been needed in the last several version of windows, either. So don’t do it anymore. I think Apple should kill the little yellow ‘-’, but that’s me. I do think Microsoft did a great job with the Win7 task bar - I really like it, but I still don’t minimize anything.

F9 is your friend (at least in Snow Leopard - Lion’s launchpad is an improvement, IMHO). That’s the button that makes all your windows fly apart and appear on the screen at once, and then you can select the one you want. I think laptops use a different key, I forget. Since you never minimize, all your windows will always be there. Expose has a couple other modes that are less useful, and I’ve never used ‘spaces’ because I just don’t need it for my work habits. I could see where some people might, but I’m not one of them.

Lastly, an app DOES have the little blue marker under it on the dock if it’s open. If the app is open and you don’t have any windows, then it’s because you’re not using it. So close it. If this is really a problem for you on a regular basis, then either 1) learn to close the application when you’re done, rather than closing the document window, or 2) Buy more RAM. Or do both, because nobody has ever been sad because they have ‘too much RAM’. This is a windows to Mac transition thing, because pretty much ALL applications can be open without any documents open, unlike in Windows. In Windows, if you close the last Window of an app, the app goes away. In OS X, the window is independent of the menu bar - this is the hardest thing for we switchers to get used to. If you’re using an app so much and with so many documents that you don’t remember if this is the last of 17 excel sheets you have open, then just leave the app up - you’re clearly using it a lot anyway.

So if you develop good habits - no minimizing, and close an app, not the document window, you will have only two states:

Open with a window in front of you
Open with the window behind something

Easy to manage via Expose (my preference) or the dock on the bottom combined with the ‘window’ menu (clumsy, IMHO)

Things get a little stranger in Lion, in powerful but creepy ways. Lion-designed apps retain their state, so you can close the application at anytime, and when you re-open it all documents will magically appear with it. I’m diggin’ Lion so far, and approve of Apple’s gesture use (but then I was a real Fingerworks fan, using their keyboards at work and home for a couple of years. I still try and close Mac objects using the Fingerworks gestures).

Now, if you want things to complain about, let’s talk about how lame finder is (I like PathFinder, but sometimes it’s slow for my taste - but lets you do some nice stuff in a much cleaner way, though occasionally programs demand finder be running, and then things get messy. FTFF FTW.) Or my personal pet peeve, the single input queue, which I find MADDENING. I know it’s a big deal to change, but c’mon, it really hampers multitasking sometimes with constant popups from some applications, or when I leave one application that’s opening a massive document to go do something else, and then the document stomps in front of me and starts taking my keystrokes. I switched away from the app for a reason - do force me into another one. Grrrr.

Reading John Siracusa’s OS X reviews and articles over at Ars are a great way to see how OS X has evolved and some of the architectural changes (good and bad) Apple’s gone through (like resolution independence and flirting with ZFS), and you can actually go all the way back to OS X 10.0 if you want.

Mike Croghan said...

I think your "never minimize" advice is wise. Coincidentally, I was just experimenting with that myself and coming to the conclusion that it's probably the way to go. But you know what I'm then realizing? That means that all three of Apple's little stoplight buttons, as shipped, are practically largely useless. The yellow one: just don't use it. The red one: well, maybe sometimes it's what you want if you actually do want to leave an app running in "hidden" state, or to close a single window when you have multiple ones open, but mostly you actually want to hit splat-Q. The green one: Oh, yeah, apple, I really want a "zoom" button that makes a tiny window slightly larger, as opposed to a maximize button that makes it actually fill my screen. Because I thrive on carefully positioning windows next to each other, and resizing them with that little tiny thing in the lower-right corner. (I installed an extension that fixes the green button.) I hear they've fixed some of this with a full-screen bias in Lion.

I understand all that stuff about apps being open without any windows- it just annoys me. If there are no windows, and there's nothing it needs to do in the background, then go the hell away! Don't make me have to remember to splat-Q you. I already have 8GB of memory, but the apps I run - like XCode, Eclipse, and (God help me) Parallels to run freaking Visual Studio or (God please, please help me) IE eat HUGE amounts of memory. Not to mention Chrome. I know I can manage this, I know how, and I do it. There's just no value in leaving these apps open until I manually quit them. It's a bug, not a feature.

And Expose is great. But with the Windows taskbar, that kind of control is right there on the screen I'm working on, without having to summon up a new one.

Yes, Finder is lame. I figure their refusal to put useful things in the right-click context menu is the successor to their refusal to add a second button to a freakin mouse. It's a pain in the ass to have to "root" the Finder window on a folder before I can do things like create a new folder, open a terminal window at that location, etc. Just put them in the right-click menu.

Windows is no better re: the single input queue.

I mean, I mostly love it, but I still think the window manager is crap. I've used lots of window managers on Linux and other *nix boxes, where they've been experimenting for years with different metaphors, and the ones like Windows, where there's a central dock of some kind that gives you immediate control over *every* running window - no matter what state it's in - have always been my preference.

Jan Nedelka said...

Yeah, the little window controls ARE showing their age. I use the red close button frequently, because I often have several Pages or Excel documents open, and it's useful to manage my work. The little green 'maximize' button is only useful sometimes - since its purpose is to maximize the window to display the entire document, it isn't that useful in an era where content is designed to dynamically reformat based on window size. Lion's little full-screen thing is nice, and while I haven't used it a lot, I do like it in iPhoto and to a lesser extent Pages.

You can add lots of functionality to right-clicking by using Automator - you can add your scripts to the menu list, which opens the door for pretty much anything. I confess I only use it for file info, deleting files, and copy/move.

Hello There said...

I think that you may have missed a very important point in computing. The question is not so much "is the user interface logical and convenient?" as it is "does it run SETI@home faster than any other available platform??"