Helping companies communicate better with their customers through the use of weblogs and smart user interface design.

Apple Aperture and Designing Software Interfaces With CSS

Monday, December 12th, 2005 by MR

When Apple released Aperture, its new professional photo editing application to compete with work alongside Adobe Photoshop, it really turned my head more than most software does. The interface is just beautiful, the features are amazingly thoughtful, and I honestly don’t think I’ll be able to use it to it’s full potential but I’ll probably still buy it. Now how often does somebody say that about a software purchase?

After the application launched, we spoke with our friend and designer [name removed] who happens to work in the Aperture software group at Apple. He/she didn’t tell us much detail about the specifics of his/her part in the software, but he/she did tell us that some of the interfacing uses Apple WebKit, Apple’s open source web rendering framework. Besides Safari, Mail, and now Aperture, there are a ton of other applications out there using HTML/CSS rendering inside their desktop-based software on Mac OS X or other platforms. That makes CSS geeks like me happy. Very, very cool.

CSS As An Interface Language

Prior to Firefox taking off as a browser, not many people really dug into the innermushings of how the Fox puts its pixels on your screen in a cross-platform manner. It may or may not be common knowledge, but every single button, image, and text element that comprises the chrome (FF user interface, everything outside the HTML render box) is actually a combination of XUL and CSS. XUL (XML User Language) is a specialized XML dialect that lets people define semantically-rich user interface widgets, which then allows the CSS to completely style them.

If you’re thinking about writing a Firefox extension, it’s really not that difficult because the extension’s interface can be designed using CSS and XUL. Last February (for my final college class) I did an independent study where I coded and designed a sample Firefox extension that lets the user lookup words in a dictionary. Not very complicated, and it’s already been done before, but I thought it would be a good exercise. I wrote about the process and it became a nice little tutorial for Googlers looking for Firefox extension how-to articles.

Aperture

Apple Aperture is gorgeous, absolutely stunning. I started thinking about how amazing it would be if more than just a small part of this software’s interface was designed in CSS, like, if the entire thing was. Imagine Cocoa or C API hooks into an XUL interface, that could be easily designed using CSS. Interface Builder could be modified so that all the interface widgets you drag into your application would write out XUL code, and then you can apply stylesheets to different sections just like you would with the FF chrome or a website. Right now Interface Builder writes out XML to NIB files but I’d like to see the proprietary (I believe) NIB file format moved over to XUL, and then we could have some really sexy cross-platform stuff coming out.

CSS-Based Designers

Right now, most CSS coders/gurus get work to code websites, but what if software engineering teams started hiring them to design desktop application interfaces too? That would really bridge the divide between “engineers” and “designers” that we know all too well.

Reader Comments

4 Responses to “Apple Aperture and Designing Software Interfaces With CSS”

Sam Sugar Says:

Mike, Aperture seems too highlight a classic (increasingly imagined) Apple problem by proving it’s still sometimes true. For all its gorgeousness, Aperture sucks.

They seemed to spend all their attention on slickness and forget the basics - speed and quality. Aperture’s RAW conversion is abysmal (far worse that PS RAW and not even close to Capture) and the speed of basic operations, even on fast machines, means 20-40 minute waits are common. Additionally, key features are missing entirely. Everyone I know who’s bought it thinks it’s a waste of money in its present form (and these guys are the core audience, tier-1 professionals who get paid silly money to put covers on magazines).

For all it’s visual beauty Aperture handles like a fat man on roller-skates and does what it does worse than the products it’s trying to compliment or replace. Save your dollars for now, it’s the kind of product someone should get fired for approving.

Joshua Blankenship Says:

Ditto. It looks beautiful, but it performs terribly.

I, for one, hope that this 1.0 will be the equivalent of the Apple Cube and now that its been released and scrutinized, we’ll eventually get to see the G5 Aperture equivalent. It’s got potential, but it’s more pretty than useful right now.

Reed Says:

That’s really interesting. I had no idea that anything but websites were done in CSS. And whether or not Aperture performs well, it’s a damn big program to be skinned with CSS.

Denis Somar Says:

You may want to rethink the purchase of Aperture, Ars Technica has some lengthy reviews of the product and finds one or two glaring flaws, despite the KICKASS UI and sluggish performance.

Search Ars Technica or check out my post over here.

cheers!

Add Your Comment

Comments are moderated because spam's not tolerated.

Splashpress Media

Look Professional with FreshBooks!

Blog Archives

  • Categories
  • Friends

  • Blogroll


  • Performancing Metrics
    Become a blog host

    Performancing Metrics

    ©2004-2008 Business Logs. All rights reserved.