I took a slight hiatus from writing the past few months and during that period a few milestones passed.
· I purchased a new iBook and Mac OS X was the default operating system.
· I witnessed the year marker from when Mac OS X became my daily working environment.
· We passed the anniversary of the commercial release of Mac OS X.
During this time I began to reflect on where I initially intended my column to go and realized that my original goal of providing technical guidance for Aqua was not the direction I wanted to continue pursuing. I've received a majority of my feedback email from people who weren't asking technical questions. Specifically, they wanted to know about the philosophy of designing an Aqua UI.
This got me thinking, was there such a thing?
Sure we've had guidelines and a UI handbook from Apple, and while it was useful, it wasn't strong enough. It lacked many key elements. More than anything else, I really felt that Aqua was too new to have a clear philosophy. UI design philosophy is something that evolves and changes along with the evolution of the tools we use. But I wanted to try to define what that philosophy might be.
I have my own Aqua philosophies; however, I really wanted my column to represent more than one opinion. I want to give a balanced representation of ideas and theories. So I felt the best resource for designing Aqua applications would be the developers who have already released Aqua compliant products.
Each column I will highlight a different Mac OS X application, talk to the developers who built them, find out the challenges they faced, share some trivia, and show you some elements of their applications. At the end of each article, I'll give you the opportunity to ask the developer questions and gain insight into the problems that you may be facing. This way we all get to learn from each other. In addition, Iíll still continue to throw in a tutorial now and again.
This month we are talking to Ivor St. John Clarke of Simple Factors. Before recently starting his own UI design firm, Ivor was a Microsoft program manager in charge of guiding the transition to Aqua. Ivor was one of 15 people who worked on designing the UI changes (not to mention the testers and developers).
Without a doubt, Microsoft faced a great challenge in converting their suite of applications over to Mac OS X. This project was one of the most difficult achievements any company could expect to accomplish. Let's face it, while we tend to think of Office as a singular product, it's really six different applications that had to be converted to reflect the look and feel of Aqua, and they had to release them at the same time. The fact that they accomplished this, and were one of the first major releases of a commercial application for Mac OS X, was nothing short of phenomenal.
Alan: What was the biggest challenge in bringing Microsoft Office over to Aqua?
Ivor: Without question, the biggest challenge was the sheer size of Office. With 800 dialogs and literally thousands of icons, Office presented a challenge simply in paying attention to all of the details.
We wanted to make sure that our dialogs used controls that drew with Core Graphics and that they conformed to the new layout guidelines. So although we started by looking at overall look and feel of the applications and the icons in the main toolbars, we quickly turned to the task of redesigning the dozens of custom controls that exist throughout Office while searching for a way to let us re-layout all of the dialogs.
Alan: What would you consider your greatest triumph/achievement with Aqua?
Ivor: Office applications have been around on the Mac for over a decade, so it was important that the move to Aqua didn't startle people who had been using the product for a long time. That said, we really wanted to create a new look and feel and to take advantage of some of the great technologies and features that Aqua offers. Being able to strike that balance and still have something that Steve Jobs called "...the poster child for what a Macintosh application should look like," was very satisfying.
Alan: What advice or tip would you give other developers looking to build an application under Aqua?
Ivor: Keep it clean and simple. Many developers see the stunning new look of Aqua and the new graphics, and they get caught up in trying to create a really shiny, graphics-laden user interface. However, what Apple has done really well with Aqua is to use these new graphical elements sparingly and to avoid shoving it in the user's face. Users will respond much better to a clean, simple interface than they will to something that is cluttered in an effort to show off the skill of a graphic designer.
Alan: As you look forward, what elements of Aqua excite you for the future of your application/developments?
Ivor: I'm really excited that Apple is starting to take accessibility features seriously. The improvements that are coming in this area promise to move Apple to the front of the pack when it comes to delivering an outstanding experience for users with special needs. Most importantly, the small amount of extra effort that developers will have to invest in creating an accessible UI will only serve to improve the experience for all users.
Alan: What is the most important element you consider missing from Aqua?
Ivor: There are a handful of polish issues that Apple is working out, but I think that what is really missing is a mechanism for supplying system-wide utility tools. Although the UI was a little awkward, the control strip in OS 9 provided some really cool functionality. Dock utilities still don't get the job done, and Apple isn't making it easy for developers to add tools to the menu bar.
Alan: What do you think Aqua does well?
Ivor: A significant part of what Aqua does well is to tie user actions to the computer's response. Some people have complained about what they see as "gratuitous animation," but I think that Apple really has the right idea in reinforcing process through animation. Sheets and the genie effect are two strong examples of this and we wanted to make sure that we realized the advantages they have to offer.
With the formatting palette, we had learned from Office 2001 that many users would close it at some point, only to hunt around later on to figure out how to open it back up. We realized that the genie effect would be a great mechanism to show users the toolbar button that turns the formatting palette off and on. The problem was that, unlike sheets, Apple provides no API to allow third-party developers to implement the genie effect.
One of my teammates then took the time to videotape the genie effect in action on Finder windows (sadly this was before Snapz Pro was released), print out a whole bunch of the images, and figure out the algorithm used for the transition. Our development team then used the information to generate a custom version of the genie effect that Office could use. Of course, as soon as we finished that work, Apple added the scale effect ...
The elements that required changes in the transition of Office to OS X included:
Note: Since I wrote this piece, Microsoft announced an update to MS Office X, which includes Quartz Text Smoothing (when combined with Mac OS X 10.1.5 or newer), FileMaker Server integration, ODBC integration, and improved performance and stability. The genie-effect performance in the Formatting Palette in Word X, Excel X, and PowerPoint X has been improved significantly. For more information visit http://www.microsoft.com/mac/.
Alan Graham is the creator of the Best of Blogs book series and is a frequent writer on the O'Reilly Network.
Read more Designing for Aqua columns.
Return to the Mac DevCenter.
Copyright © 2009 O'Reilly Media, Inc.