Blog Post

What Makes a Mac App

One of the things that I’ve always loved about the Mac is its cohesiveness. Everything just flows. It’s the experience that careful attention to design has created.

When I open the lid of my MacBook, OS X springs back to life, just as expected. When I press CMD+I in Safari, the page I’m viewing is opened Mail in a new message, ready to be sent. When I press Shift+CMD+P in NetNewsWire, the news item I’m viewing is sent over to MarsEdit in a new blog post, ready to be quoted and posted. With Yojimbo, if I want to save a serial number, I highlight the serial number, bring up Yojimbo’s Quick Input Panel, and Yojimbo knows its a serial number and brings up the appropriate template. Same goes for passwords and bookmarks.

I mention these apps specifically because they are all very Mac like. Each of them feels right in the Mac environment. I’ve tried other email services and clients, mainly web based, but I always come back to Mail because it fits. A Mac app may not have all of the features of its competitors, but if it fits, if it feels right in the Mac environment, if it goes along with the flow of how I use the Mac, that’s the app that I’m going to come back to use again and again. It’s difficult to quantify exactly what makes a Mac app, but here’s a short list of how I judge.

Functionality

Or perhaps a better description of this category is “does what I expect it to do.” A great example of this is Yojimbo and Evernote. Evernote is a great app, and an awesome service, especially if you work with both a Mac and a PC, and carry an iPhone. The difference is that when I copy something from one of the other applications, and then press the hotkey to import whatever I’ve copied, Yojimbo brings down its quick import panel, and Evernote jumps to the front and demands my attention. Perhaps I’m doing this wrong, but if I am, it’s not obvious how to convince Evernote to do what I want.

Appearance

The Human Interface Guidelines over on the Apple Developer site say to use the standard controls and buttons that are available in the developer tools. Those are what Apple (s aapl) uses, and it’s best to keep a consistent look and feel to all the applications. Now, Apple doesn’t always follow its own advice, but if an application is bringing its own controls to the table, it stands out. That being said, there are always going to be times to break the rules.

Cabel Sasser from Panic once rewrote an entire toolbar because of three pixels of a control didn’t match up. That’s attention to detail, and the kind of polish that makes a Mac app beautiful as well as functional. I once attended a CocoaHeads meeting where much of the discussion focused around ensuring that the lines drawn by an application to separate the different areas of it were crisp and clean, while the screen was zoomed in as far as it could go. Attention to detail creates quality interfaces.

Integration

Apple has worked hard integrating the default applications that ship with OS X. They have also worked hard at making the data stored in these applications available to developers in their apps. When developers do not take advantage of this integration, I’m left wondering why. I’m sure it’s a different reason for each application, but for the most part, I notice it in apps that have been ported from other platforms. Keychain, iCal, Address Book, Mail, iPhoto, all of these services are available to tie into. A good Mac app takes advantage of this, and a great Mac app makes their data available to other apps as well. Integration makes my work, flow.

Stability

Being able to launch an application, and know that it is going to perform as expected, every time, is also one of the trademarks of a true Mac app. Without stability, none of the other points I’ve made mean anything. It’s so important, that it’s almost not even worth mentioning, if it were not for the random application that seems to have it all, but then crash three or four times in a single day.

As a burgeoning developer myself, I know how hard it is to meet the standards of the Mac community. However, developers have raised the bar again and again, and now create some of the best software for any platform.

8 Responses to “What Makes a Mac App”

  1. What makes a Mac App detail, reliability and simplicity. The Mac is know for its easy to use applications that do not sacrificing the most useful features. Mac apps are made for consumers and are great for simple use or introduction to more powerful tools. Also the fact that they work and do what you expect them to do is key in making a Mac app.

  2. @ Rupert – I agree with you, I don’t feel that Evernote is “Mac Like” either.

    @ Xairbusdriver – Thanks!

    @ johnnyc – The point I was trying to make is that when an app doesn’t do what I expect it to do, or if it doesn’t function like the rest of the apps on my Mac, it throws me off. When an app stands out, or when an app makes me pay more attention to it then I really want to, it gets in the way of me and my work, which is exactly the opposite of what it should be doing. I feel like an app should provide a service and get out of the way.

  3. Evernote feels nothing like a mac application. However, those than can even tell the difference are dwindling. As more people switch to the mac OS, it seems the concept of how a mac application should be designed is being lost.

    Even merlin mann pushes evernote every time you turn around. Sad.

  4. Could someone please explain what the “Functionality” paragraph is trying to convey?

    I’m sure there are other non-users of Evernote out there, like myself, that are having trouble making sense of a paragraph that seems to assume the reader uses the application frequently… Because of that I became slightly de-railed while reading this article.

    The remainder however, rings very true. It’s a compelling advantage that OSX has over other systems for sure, and interestingly, one that isn’t cited very often as a selling point (widows apps are notoriously unintuitive and non-standard in design from one dev to the next). Perhaps the reason for thelack of attention this advantage enjoys is as mentioned in the article, it’s difficult to identify specifics of what makes good design (in both GUI and back-end) to the end user.

  5. Xairbusdriver

    Unfortunately, few people, outside only a few Mac users and even fewer PC users (IMHO) even notice details in much of life, much less an application. :-( If all you know is poor quality, that’s all you’ll ever expect. Or maybe I’m just too cynical! ;-)

    Well written and insightful article, I’m sure your apps will be super, even if they don’t make you rich! Keep up your standards, you are your most important critic! ;-)

  6. I’d disagree th that Evernote is very “Mac like”. Their way of doing pseudo Smart folders with saved searches is not a nice “get out of my way” type of feature. First they reside in the sidebar as separate items, clicking a saved search opens the tags subtree (if part of the saved search) and highlighting the involved notebook. This is causing a change in the sidebar when there shouldn’t be any and makes the UI “jump” a lot.

    Having real Smart Notebooks (that sync properly, can be published, etc.) would IMHO really make the app more Mac like.

    Just my 2 cents on a very cool app I use a lot every day.

  7. Stan Scott

    Jon, change your Evernote settings:

    From Evernote’s menu, select Preferences, or use the standard CMD – ,

    Uncheck the third checkbox, “Bring Evernote to the front after a clip”

    Stan

  8. What also SHOULD make a Mac app is remembering where I put my windows. For reasons unknown to even our best scientists, the new iWork 09’s template files insist on being centered on the screen when a new one is opened. This is an issue for me as I have a default template created for each app, and I want that window to be in a certain place. iWork 08 had no issue with this, iWork 09 won’t play nice.

    A minor rant? Yes. Sue me. :-)