Thursday, January 6, 2011

My Mac experience: Awesome, and occasionally awesomely frustrating.

I mentioned in my last post that I replaced my old (extra crispy) PC with a Mac. I've been using it pretty heavily for more than a week now, and wanted to post some of my initial impressions. Just FYI: I'm fairly new to this whole Apple thing, so some of my comments may be the result of ignorance on my part. If they are, feel free to correct me. (Note: "You just don't get it, it's better that way!" is NOT a valid form of correction.)

The great:

  • Out of box experience is FANTASTIC. Plug it in, turn it on. Done. Windows is physically incapable of providing an experience like this (though that's not always a bad thing. More on that later.)
  • NO CRAPWARE! The things that come pre-installed (iMovie, Garage Band, etc) are actually full, useable programs that I want to keep! What a concept! 
  • I love the program installation model. 90% of apps are "Drag into folder to install, drag to trash to uninstall." Beautiful! And it's only possible because...
  • No registry! I know that this can have it's downsides (the windows registry does address some issues) but most of the time it's just a badly maintained disaster waiting to happen.
  • Everything is... shiny! It's silly, but all those smooth little transitions make more of an impact than you know. Apple seem to be the only software company that really, truly appreciates how much a slick UI matters.
  • It's silent! At first I was upset by how load the magic mouse was dragging across my desk, but when I switched back to my G500 I realized that it was just as loud. The problem was, apparently, that this was the first time I could actually hear my mouse movements over the cooling fans. Wow. The loudest part of my computer now is the external hard drive.
  • Drivers, or lack thereof. I plugged in my printer and it just worked (didn't even tell me it was "Installing new hardware."), same goes for pretty much everything else. The most surprising so far: NO additional drivers needed to sync, develop for, and debug on my Android phone! There was one notable exception, which I'll mention in a bit.
  • I can actually let my computer go to sleep now and not have to worry that it may not wake up again. That's really REALLY nice.
The quirky (things that are weird to a newbie, but not necessarily "bad"):
  • It kinda weirds me out how programs don't actually "close" when I hit that little X in the corner. Well, most of the time, anyway. Some programs do. The inconsistency takes a bit to get used to.
  • All those little shortcut symbols used in the menus are greek to a new user. Command is easy to figure out (the same symbol is on the keyboard), and Shift can be guessed with a bit of thought, but that Option symbol is terrible. I only figured it out through careful experimentation. Same goes for Escape and Control.
  • The mouse ballistics feel all wrong to me. I simply can't get them to a comfortable point. Not to mention that the highest mouse movement speed is way too slow using the magic mouse. I'm glad I can crank it up with my G500.
  • Dual screen use is odd. It works okay, but to have the menu for all windows stuck on the main screen is inconvenient at best.
  • My nice 5.1 speaker system is useless now, since it was the "3 analog jack" type. (Yes, you can get converters. For the price you may as well get new speakers, though.) Not really Apple's problem, since they provide an optical out. Makes me sad though.
  • Had to buy a DisplayPort to VGA adapter after finding out that the DVI port on my old monitor apparently wasn't the right kind of DVI, rendering my DisplayPort to DVI converter useless. More ViewSonic's fault than Apples, but annoying nonetheless.
  • The magic mouse served to very quickly remind me of how much I depend on the middle mouse button (wheel click). It's annoying that there's no way to simulate that with some gesture. (Three finger click? I don't know.) I want to love the magic mouse, but I can't use it without going crazy due to this.
The maddening:
  • The hardware is limited and expensive. As a graphics developer and a gamer I was forced to buy the second tier of iMac hardware JUST to get a decent graphics card. I love the computer, don't get me wrong, but there's no question that it cost more than an equivalent PC (sorry, it does. You can't convince me otherwise) and that the choices are very slim. I would LOVE the ability to get a 3Ghz machine with the 5670 GPU, but I can't. I know this is part of what allows Apple to make such a stable OS and machine, but it doesn't stop it from being a major frustration. As much as Windows gets dinged for compatibility issues, the fact that they don't have such an iron grip on the hardware they are compatible with means that ANYONE can find a Windows machine that suits their needs. The same cannot be said about Apple hardware. (Nope, not even if you consider the Mac Mini.) 
  • Finder is painfully primitive compared to Windows Explorer. There's some nice touches (like playing music files directly from the thumbnail) but way too many omissions: There's no obvious way to go up to your parent folder (had to look up a keyboard shortcut). Opening an image in Preview doesn't let you navigate between any other images in the same folder. No built in way to open a terminal window from your current folder. No way to manually enter a file path. No "New file here" option. Oh, and to rename a file you press "Enter" but to open it you press "Command+O"? Really? I'm sorry, but that's just stupid.
  • What, exactly, is that stupid little green "+" in the corner supposed to do? SOMETIMES, if I'm lucky, it maximizes a window like I wanted. Other times (like in Google Chrome! Augh!) it just makes the window "a little bigger" (for seemingly random values of bigger). Is it really that weird to want a consistent method for making my window fill my screen? Oh, and on the subject of resizing...
  • Sorry guys, but the lower right corner just ain't cutting it for me. There's really no reason why I shouldn't be able to grab ANY side or corner of the window and stretch it out. Yes, Windows did it first, but that doesn't mean it was a bad idea. Suck it up, admit they did it right, and make all of our lives a little easier.
  • With all the peripherals that just works, the fact that I had to go pull a random driver built by a hobby developer off of Google Code to get my XBox 360 gamepad to work at all was a massive disappointment. I know that it's Microsoft's product, and I know that Apple isn't a big fan of games, but after everything else worked flawlessly this was a huge let down, and there's really not much excuse for it.
  • The fanboys. There's a reason why people dub it "the cult of Mac." You guys are worse than the Linux zealots out there sometimes! I'm sure that someone out there is reading this post right now and preparing to explain to me in great detail why all of the flaws I listed above are defects in ME, not OSX. You know what: I just don't care. If I'm fighting with the machine to get it to do what I need it to, it has failed. Windows failed a lot. OSX fails less, but it still fails, and it's all the more annoying because of how much they managed to get right.
Despite all my gripes however (and I didn't even list them all here) the fact remains that the thought of booting into my Windows partition now makes me cringe. I still work with Windows at my job every day, and I don't have a problem with that, but when I'm at home I stay in OSX as much as possible. Even with some real head-scratchers in the design department it blows away anything Microsoft has to offer. I love my Mac, and I'm glad I made the switch.

Now can someone give me a working "Maximize" button?


  1. A few of your points are due to not having time to discover more yet.
    The rest is 98% accurate. I switched to mac for work in 2004 and wrote a very similar list.
    Sadly the list hasn't changed much.

    ""Oh, and to rename a file you press "Enter" but to open it you press "Command+O"? Really? I'm sorry, but that's just stupid.""

    Not really stupid. I find a lot of the ways the Command key is utilized is significantly more sensible than the way Windows uses the Windows key. It gets stupid when you realize the rest of the Command key usage is equivalent to CTRL in windows even though mac keyboards have a CTRL key. Command+O maks sense. And I think there's a way to remap "Rename File" to F2 or some other shortcut key combo.

    Early in my mac experience I had to add file extensions to 300 jpg files that had no extension.
    *CMD+V (paste .jpg)
    *Down Arrow
    *--REPEAT 300 times--

    Somehow it felt a lot better than using F2.

    Finder is a primitive piece of junk.

    ""There's really no reason why I shouldn't be able to grab ANY side or corner of the window and stretch it out. ""
    Have you ever googled for forum conversations debating this. Hardcore mac users have given some really stupid reasons for why they think the lower right corner is best. The sad part is they're so stubborn about it they don't see the point in letting there be an Option for this for ex-windows users.

    ""I know that it's Microsoft's product, and I know that Apple isn't a big fan of games, but after everything else worked flawlessly this was a huge let down, and there's really not much excuse for it.""
    What's sad is with Apple's hardware consistency and nack for UI ease of use they could be revolutionizing the world of PC gaming. I mean, the hardware is so locked down they're practically consoles (with more power! (except the ones with Intel Graphics))! Yet they do nothing.

    Also over time you'll come to realize a lot of mac developers don't seem to "get" right-click context menus. Many apps have them, few have the useful menu commands you'd expect to see in them.

  2. My personal must-have apps that make using OS X more bearable.

    Default Folder X
    Little Snitch
    Path Finder
    Disk Inventory X
    FontExplorer X Pro
    iPhone Explorer
    Name Mangler

    Folder Merge (not a lot of features) (great but no longer actively updated)

    Paragon NTFS for Mac OS X

  3. I guess I should clarify my point of view on the rename bit: I do quite a bit of UI work in my job, and a very consistent rule of thumb tends to be "Press enter to perform the most obvious action". IE: on a dialog it's OK/Confirm/Submit. In my mind "Open" is a far more common and obvious action than "Rename", in that I will want to open a file often, but rename it infrequently. As such the priorities seem backwards. It would be akin to having Enter copy the current line in terminal and Command+R to run it.

    I've already acclimated to it somewhat, but that doesn't stop it from being extremely puzzling behavior, especially to new users.

  4. Yeah. I know what you mean. Depending on your workflow it varies from person to person.
    I just tried adding a custom Finder shortcut for launching applications with Enter but just Enter isn't an option.
    There are probably utilities out there you can download to let you do that.

    My boss launches all his apps from spotlight
    (cmd+space, type first few letter, it finds the file, hit ENTER)
    It's like windows Run with autocomplete(find)

  5. As for the hardware costing more. For me I think it's worth it. It's not the most powerful hardware but for some reason it lasts longer. Up until recently we still had some really old macs acting as file servers on the network. We had a hand-me-down metal mac book that's been dropped from a moving golf cart, run over by a Jeep, bounced down a flight of steps, covered in tomato soup twice and lots of other abuse before it finally died.

  6. I won't disagree that the hardware is nice, and I certainly felt like it was worth it for me too (otherwise why would I have bought it?) That doesn't change the fact that it's expensive, though. To me it feels somewhat like buying a BMW when you know you could get by with a Ford. You get what you pay for, certainly, but some of what you're paying for is just that logo on the front.

  7. ""Oh, and to rename a file you press "Enter" but to open it you press "Command+O"? Really? I'm sorry, but that's just stupid."

    Not really stupid. I find a lot of the ways the Command key is utilized is significantly more sensible than the way Windows uses the Windows key. It gets stupid when you realize the rest of the Command key usage is equivalent to CTRL in windows even though mac keyboards have a CTRL key. Command+O maks sense."

    But enter makes more sense. For claiming to put design in front Apple is dropping the ball here and there, as seen here. Pressing enter is a lot quicker, more intuitive and straightforward than having to press ctrl+o.

    My experience in trying to use a Mac has had many of these little kinds of faults, making me wonder if they put ONLY visual design in front and not user interface design. Nothing is perfect, but I honestly expect more from Apple. As it is, I have a better experience in both Linux and Windows when it comes to this.

    All speaking from personal experience, of course. And if I had to use a Mac for some time I'm sure I'd get used to its quirks, just like how there's quirks in my Linux and Windows systems. Getting used can be a trap in forgetting there can be a better design for things, however.

  8. I bought my mac about 3 months ago... and have to agree with you in every point... switched from windows/linux... but some things are just not working *THAT* well... i'm having a lot of problems with sleep, the machine just won't go to sleep unless i close the lid... and i hate that the OS just presumes that i'm a total moron...

  9. To enter the file path in Finder, command-shift-G.

    To go up a level, right-click in the title bar, on the current folder name. Works in Safari, too.

    When I switched to Mac, these things were obscure to me too; as you learn them, Mac OS X becomes increasingly convenient.

  10. "It kinda weirds me out how programs don't actually close when I hit that little X in the corner. Well, most of the time, anyway. Some programs do. The inconsistency takes a bit to get used to."

    Actually the behavior is consistent, once you have understood it ;-) Applications that may do useful background tasks (e.g. an audio player that keeps playing audio or an app like Mail, that keeps checking for new E-mail any couple of minutes) or those that may have multiple document windows (a text editor, a browser, an image editor, etc.) don't close if you close their last window. The first ones to keep doing their background work/tasks, the second ones to still be there if you want to open a new document window (e.g. if I close the last document to open a new one right after that, how frustrating would it be, if the app is gone just because I closed the last window? I had to remember to always open a new window before closing the last old one, that's rather silly). Applications that don't ever perform any background work and that are not based on multiple document windows will close completely, once you close their one and only window (what sense would it make to keep them running?)

    "The mouse ballistics feel all wrong to me."

    That is because while you think you are changing mouse speed in the mouse prefs, you are only changing acceleration in fact. That is pretty annoying to many Windows/Linux users (Mac users are somehow used to it). I can only recommend USB Overdrive. No freeware, but worth the money. The best generic USB input device driver that lets you customize all your USB input devices (mice, trackballs, special keys on a multimedia keyboard, etc.). BTW, also gamepads. If the XBox360 gamepad registers as normal USB HID device, USB Overdrive will support it.

    Regarding the Magic Mouse: I really like Macs, but I don't like that mouse, thus I don't have one, nor do I want one (and yes, I have been working with one for a couple of days... no, don't like it). Nuff said about it.

    "What, exactly, is that stupid little green + in the corner supposed to do?"

    It tells the window "You may resize yourself to become as big as necessary to display all your content or as big as my screen is, whatever limit is hit first". If a window is already as big or bigger than its content, the button may do nothing or possibly even shrink the window. It may grow the window in height, but not in width or in width, but not in height; totally dependent on the content and how the app wants to present it. And yes, it is weird, Mac users don't want apps to fill their whole screen in general, Mac users have plenty of windows from plenty of apps open at the same time and they want to see more than one of those without having to constantly switch apps. Mac users are MDI fans, Windows users are SDI fans, Linux users are CLI fans ;-)

  11. "Finder is painfully primitive"

    To go to your parent folder without that shortcut, select "Show Path Bar" from the "View" menu. Looks familiar to you? Microsoft may have improved it, but they still stole the idea :-P Double click a folder from that bar to go there. Alternatively, right click on the toolbar, select "Customize Toolbar..." and add the "Path" element to the toolbar. Click it and you'll see :-)

    You want to walk your way through images in a folder? Try displaying the folder as Icons and set the icon size indicator (lower right corner) to huge. Or try displaying the folder as list, select the first one, hit Space to open QuickView, hit down/up-arrow keys to navigate. Or Switch view to "Cover Flow", note that you can make the Cover Flow area (and thus the images inside) as big as you like and navigate with left/right-arrow key. I personally browse image folders like this: select a file in the folder, hit CMD+A (select all), then CMD+O (open) and have all of them in Preview. Then hit CMD+SHIFT+F; navigate with left/rigt or up/down, click with your mouse the multi-img symbol to get an Index Sheet.

    No way to enter a file path manually? Hit CMD+SHIFT+G or select "Go to Folder..." from the Go menu, enter the folder path (paths names are auto completed if you hit TAB, e.g. type "/A", then TAB, it will autocomplete to "/Applications/") and hit enter/return to go there. BTW, in the Go menu is also "Connect to Server...", what a lot of people seem to search for; that is if the server is not visible in the network environment, but you want to connect to it e.g. by IP address.

    There is no new file, right. But what kind of file should a "New File" create? A TXT file? Why would you first create a TXT file and open it in a text editor to provide content instead of opening a text editor, provide content and final hit CMD+S to store it to a TXT file? And how should Finder create an empty JPG file, e.g.? Just name it JPG and put nothing inside? A JPG file cannot be empty, it is no valid JPG file, unless it has a JPEG header on top. One of the most annoying things I hate in Windows is that every stupid app you ever install registers a "Create new ... BLAH BLAH File" in the context menu in Finder and if you ever go there, you end up with 200 file types, 190 you have no idea what kind of file that even could be. This function is missing in Finder, because historically Macs have not decided which app to open a file with by file extension, but by creator code. However, a file created by Finder would have Finder's creator code and thus open with Finder (IOW double clicking it would do nothing, even if the file was named .txt or .jpg or .html).

    No way to open a Terminal window in that folders? Real Mac users open the Terminal twice, maybe three times in their whole life :-P No really, if you are a Terminal user, you have the wrong system. Consider Linux ;-) I personally always have a Terminal open and if I want to go into a folder, I type "cd " and then drag the folder into the terminal. The absolute and correctly quoted folder path is added after the cd, then I hit enter. BTW, to drag you current Folder in Finder, no way to first go one folder up, just click the folder symbol in the title bar next to its name and keep mouse pressed, it will dim dark. Now drag it. You are dragging the current folder (works for copy, move, move to trash and also to paste the folder path by dragging it onto any window).
    I hope some of these tips will provide helpful to you :-)

  12. Thanks for the tips! You certainly hit on a couple of items that I didn't know. To address a couple of points you made directly:

    "Real Mac users open the Terminal twice, maybe three times in their whole life :-P No really, if you are a Terminal user, you have the wrong system."

    LOL. I'll agree with you for the most part, but I kindly ask you to make an exception for software developers! :) Since I'm a big fan of languages like python, there are days when I live and breath in a CLI. I was overjoyed when Windows added a "Open Command Line from here" option to Explorer, so I was a little sad to lose that. (I've since found an extension that gives me a button for this purpose, though.)

    "But what kind of file should a "New File" create?"

    Again, this is a request born from my programmer-ish view of the world (read: will never affect any other sane user ever.) In windows I grew very fond of a workflow for where I would open my project folder, right click to create a new .txt file, rename it to the right code type, and then open it to edit. I know that sounds like a bloated and awkward way to do things (and I won't disagree with you!) but it's what I had found worked best for me. I guess I shouldn't hold that against the OS, it's just one more little thing that I've had to re-learn.

  13. Well, if you really want to have a "Open Terminal Here..." or "Create New TXT File", I have a nice freeware tool for you:

    On My Command

    It allows you to add custom context menu entries to Finder. For every entry you can select when it is supposed to appear (e.g. only when a File is selected, only for a Folder, both, neither one, a text is selected, always, etc.), where on the menu it is displayed (top level, sub menu, etc.) and what happens when you click it.

    The action for this item is completely customizable. E.g. you can select to run a shell script and of course by putting "#!" at the top, you can select the interpreter of your choice. Want to write it in Python? Just go for it :-) You can specify additional script input (e.g. a dialog that prompts you for a value) or script output (e.g. to display status information) and within the source code of your script, you can use placeholders, that will be replaced by values just before the script is executed (e.g. __OBJ_PATH__ is the absolute path to whatever object you have right now selected in Finder).

    Even better, there are tons of ready to use commands that you can download from inside the app. "Open Terminal Here" exists even twice (two different versions) and "Create Document here..." exists as well; just search for either one in the download dialog and hit "Append to Commands". If you'd like to learn how to write your own commands that way, it is much easier to learn by example, than by reading the documentation IMHO. Download and Run the "Shell Script Example" command, then click yourself through all the config screens of this command. As a developer, I'm very sure you will understand the whole concept at once :-D

    I used OMC a lot. I had plenty of commands and usually I wrote them all by myself either as Bash or Perl scripts (or AppleScript, if I was forced to do so); not always because those were not already existing, just because I wanted to write them myself ;-)

    But then I discovered Quicksilver:

    I removed OMC again and instead used that, since it allowed me to do all the stuff by keyboard that would otherwise force me to use my mouse. Not just quickly locating files or folders (often quicker than Spotlight, BTW), but also to perform actions with them (e.g. moving them, copying them, deleting them, manipulating them, etc.) Have a look at these videos for a quick demo of Quicksilver (3 parts):

    But be warned: Quicksilver is highly addictive! Especially if you prefer using keyboard over using mouse. Once you got used to it, you cannot live without it! Use at your own risk :-D

  14. Use RightZoom to fix the green maximize button

  15. Oh and ~/Library/Preferences is kind of like the registry...

  16. remind me of how much I depend on the middle mouse button (wheel click) -> You can use better touch tool, you can also you this software to speed up your mouse.

    There's no obvious way to go up to your parent folder -> do a contextual click on the name of the window

    To get this

    For resizing your window, maybe the behaviour copied from windows 7 (drag a windows to the upper or side edges to resize) provided by bettertouchtool will be enough for you. If it is not, try divvy which will segregate your screen in a matrix of resizing pattern, see

    One last tip: when you drag and drop a file or a folder on a "save as..." window, it will move to this position. I know it doesn't exactly taste like the create a file here of windows, but if it can help :-)

    So much people will encourage you to use quicksilver, alfred or butler. I think spotlight provide me all I ask to do.

    I think you can like menumeters (for tracking your ressources), clipmenu (copy-paste history) so useful when you code, textexpander for repeated text and skitch.

    You should also give a look to plex, grandperspective and kod (even if the last one is still in dev).

    And thank you so much for GLmatrix! \o/

  17. I was very, very annoyed by that maximize button in the beginning, but by now: i'm used to it. After a year of using Mac OS X, I still don't get that button and I just don't use it.

    The result is that I never use fullscreen windows anymore. -at least, rarely. It really easy to swap windows now.

    I completely agree about finde.
    -Renaming with ENTER... it's weird, but i'm used to it. I would expect my files to open with ENTER.
    -Missing "new file here" option still annoys the crap out of me.

    However, finder does have an "Go To" option (SHIFT + CMD + G) or "Go > Go to Folder", but it's still kinda awkward not having this in the finder-window itself.

  18. Ugh, right-clicking the title of the Finder window is really awkward and inconvenient.

    The correct way to go up one level in the folder hierarchy is ..... Cmd+Up ... Tada! (And bonus points for using the column view, then you get to use the Left-Arrow key for this task as well.)

    One more thing. Of course it annoyed me as well, at first, that Enter goes into name-edit-mode in Finder. But it makes sense: "Enter" to enter a name. And especially since it only selects the name part and leaves the extension part out. Very convenient and I now hate it even more how Windows does it.

    Oh and I have long forgotten or never really realised, that Cmd+O is to open a file in Finder. I only use Cmd+Down for that, as I find the Down-Arrow key much easier to find and use.

  19. This is nice post.All this post is interesting and lovely . I like this all content. Thank,s to the writer for writing this post.
    Neck lift