Except that it behaves in a completely different way from CMD-Tab.
Cmd-Tab once, switch to the last activated app. Cmd-Tab again, switch back to the previous app.
Cmd-` once, switch to the next window in the current app. Cmd-` again, switch to the next window (not back to the previous one). This is incredibly frustrating, because usually when I'm doing this I want to switch back and forth between two open windows, not cycle through ALL of them! And I'm certainly not going to remember what "order" 5 windows are in.
Also, having to think consciously about whether a window you're working in is within the same application or not to decide which keyboard shortcut you should use makes the whole keyboard shortcut a frustrating experience in OSX. Windows did it right. Alt-Tab switches to the last viewed window, regardless of what application it belongs to. Simple. Elegant. Genius.
This is probably a matter of preference. Personally, the OS X way is often more elegant. When I am working with a lot of windows in a particular program (say, five text files) and have another application I want check in on (say, an instant message conversation), the OS X way is wonderful. Not having to worry about the IM window getting in the way of my documents saves me from a lot of confusion.
The OS X way definitely does add complexity to the UI, but I just think it is worth the trouble.
Usually when I'm doing work, I'm switching between different apps, copy/pasting stuff (graphics, sounds, text), moving files or just referencing something. I do this far more often than switching to an IM client (for which I just click on the bouncing icon in the dock, then alt-tab back to my work).
The problem is that I want to switch between a few windows that are not necessarily in the same application. In Windows (and Linux), it's a no-brainer. Alt-tab and I'm done. In Mac, I end up changing within the app when I want to change between apps and vice versa. I don't care if they're within the same app or not. I just want to do stuff between windows A and B and maybe C.
Example: I'm writing some code. I look something up in my browser. I also have a second window in my IDE with some more code I'm using as a template for what I'm building. In Windows or Linux, it's very easy to alt-tab between those 3 windows. Alt-tab, Alt-tab-tab. In Mac, I'm always fumbling with which is the right key combination to get the right kind of window switching and is this a text wrangler window or an xcode window? Aargh!
It's funny that they mention BeOS because I think it had a nice solution to keyboard app switching: Alt-tab switched programs (it had the same Mac-like app-centric design), and it looked somewhat like the traditional Windows. With Alt still pressed, you could use the up/down arrow keys to move within windows for that app. I wish I could find a screenshot of it.
I admit Mac OS X's behavior is unexpected if you are already a Windows user. Windows, incidentally, doesn't even have the "application" concept Mac OS X does--windows actually behave as separate application instances, and persistent applications require some type of separate status tray element to keep running without a window.
I don't think it's confusing being able to distinguish from a Photoshop window and a browser window, but I do think the cycling behavior between the two should be consistent.
Cmd-Tab once, switch to the last activated app. Cmd-Tab again, switch back to the previous app.
Cmd-` once, switch to the next window in the current app. Cmd-` again, switch to the next window (not back to the previous one). This is incredibly frustrating, because usually when I'm doing this I want to switch back and forth between two open windows, not cycle through ALL of them! And I'm certainly not going to remember what "order" 5 windows are in.
Also, having to think consciously about whether a window you're working in is within the same application or not to decide which keyboard shortcut you should use makes the whole keyboard shortcut a frustrating experience in OSX. Windows did it right. Alt-Tab switches to the last viewed window, regardless of what application it belongs to. Simple. Elegant. Genius.