Returning to the Adobe fold… sort of

I remain very frustrated with my Photography workflow. No-one seems to get this right and it drives me nuts. (I’m unwilling to pay Apple lots of money for a ridiculous amount of iCloud storage, which might work quite well, but it still wouldn’t have simple features like prioritizing images that I’ve rated or looked at closely over others automagically, or allow me to rate JPEGs and have the rating carried over to the RAW later.)

Anyway, Aperture is sufficiently out-of-date that I’ve actually uninstalled it and Photoshop still has some features (e.g. stitching) that its competition cannot match. So, $120 for a year of Photoshop + Lightroom… let’s see how it goes.


I was expecting Lightroom to be awesome what with all the prominent folks who swear by it. So far I find it unfamiliar (I did actually use LR2, and of course I am a Photoshop ninja) to the point of frustration, un-Mac-like, and ugly, ugly, ugly.

Some of my Lightroom Gripes
Some of my Lightroom Gripes

A large part of the problem is terrible use of screen Real Estate. It’s easy to hide the menubar (once you find where Adobe has hidden its non-standard full screen controls), but it’s hard (impossible) to hide the idiotic mode menu “Identity Plate”. (I found the “Identity Plate Editor” (WTF?) by right-clicking hopefully all over the place, which allowed me to shrink the stupidly large lettering but it just left the empty space behind. How can an application that was created brand new (and initially Mac-only) have managed to look like a dog’s breakfast so quickly?

But there are many little things that just suck.

  • All the menus are horrible — cluttered and full of nutty junk. Looks like design by committee.
  • The dialog box that appears when you “Copy…” the current adjustments is a crime against humanity (it has a weird set of defaults which I overrode by clicking “check none” when I only wanted to copy some very specific settings and now I can’t figure out how to restore the defaults).
  • The green button doesn’t activate full screen mode. There are multiple full screen modes and none of them are what I want.
  • Zooming with the trackpad is weird. And the “Loupe” (nothing like or as nice as Aperture’s) changes its behavior for reasons I cannot discern. (I finally figured out that the zoom in shortcut actually goes to 1:1 by default, which is useful, although it’s such a common feature I’d have assigned a “naked” keystroke to it, such as Z, which instead toggles between display modes.)
  • The main image view seizes up after an indeterminate amount of use and shortly afterwards Lightroom crashes. (This is on maxed out Macbook Pro 15″.)
  • I can’t hide the stupid top bar (with your name in it). I can’t even make it smaller by reducing the font size of the crap in it.
  • Hiding the “toolbar” hides a random thing that doesn’t seem to me to be a toolbar.
  • By default the left side of the main window is wasted space. Oh, and the stupid presets are displayed as a list of words — you need to mouse over them to get a low-fidelity preview.
A crime against humanity.
A crime against humanity.

I found Lightroom’s UI sufficiently annoying that I reinstalled Aperture for comparison. Sadly, Lightroom crushes Aperture in ways that really matter. E.g. its Shadow and Highlight tools simply work better than Aperture’s (I essentially need to go into Curves to do anything slightly difficult in Aperture), and it has recent features (such as Dehaze — I’m pretty sure inspired by a similar feature DxO was very proud of a while back). After processing a few carefully underexposed RAW images* in both programs, Lightroom gets me results that Aperture simply can’t match (it also makes it very tempting to make the kind of over-processed images you see everywhere these days with amped up colors, quasi-HDR effects, and exaggerated micro-contrast).

(* Quite a few years ago someone I respect suggested that it’s a good idea to “underexpose” most outdoor shots by one stop to keep more highlight detail. This is especially important if the sky is visible. These days, everyone seems to be on the “ISO Invariance” bandwagon which is essentially not doing anything to the signal off the sensor (boosting effective ISO) when capturing RAW, in essence, “expose to the left” automatically — the exact opposite of the “expose to the right” bandwagon these clowns were all on two years ago — here’s a discussion of doing both at the same time. Hilarious. On the bright side, ISO Invariance pretty much saves ETTR nuts from constantly blowing their highlights.)

The Photos App is far more competitive with Lightroom than Aperture
The Photos App is far more competitive with Lightroom than Aperture. And its UI is simply out of Lightroom’s league (see those filters on the right? Lightroom simply has a list of names).

Funny thing though is that the new Photos app gives Lightroom a much better run for its money (um, it’s free), has Aperture’s best UI feature (organic customization), and everything runs much faster that Lightroom. The problem with Photos is it is missing key features of Lightroom, e.g. Dehaze, Clarity, and (most curiously) Vibrance. You just can’t get as far with Photos as you can with Lightroom. (If you have Affinity Photo you can use its Dehaze more-or-less transparently from Photos. It’s a modal, but then Lightroom is utterly modal.)

On the UI level, though, Photos simply spanks Lightroom’s Develop mode. Lightroom’s organization tools, clearly with many features requested by users, are completely out of Photos’ league.

I also tried Darktable (the open source Lightroom replacement) for comparison. I think its user interface is in many ways nicer than Lightroom’s — it looks and feels better — although much of its lack of clutter is owed to a corresponding lack of features), but the sad news is that Darktable’s image-processing capabilities don’t even compete with Aperture, let alone Photos. (One thing I really like about Darktable is that it applies “orientation” (automatic horizon leveling), “sharpen”, and “base curve” automagically by default. Right now this isn’t customizable — there’s a placeholder dialog — but if it were it would be an awesome feature.)

The lack of fit and finish in Lightroom is unprofessional and embarrassing
The lack of fit and finish in Lightroom is unprofessional and embarrassing. If it’s not obvious to you, the red line shows the four different baselines used for the UI elements.
Hilarious. Lightroom's "About Box" uses utterly non-standard buttons that behave like tab selectors.
This is hilarious. Lightroom’s “About box” uses utterly non-standard buttons that behave like tab selectors. This is actually regression for Adobe, which used to really take pride in its About boxes.

At bottom, Aperture doesn’t look or feel like an application developed by or for professionals. It’s very capable, but its design is — ironically — horrible.


Photoshop’s capabilities are, by and large, unmatched, but its UI wasn’t good when it first came out and many of its worst features have pretty much made it through unscathed by taste, practicality, or a sense of a job well done. Take a look at this gem:

Adobe Photoshop's horrible Radial Blur dialog
Adobe Photoshop’s horrible Radial Blur dialog

This was an understandably frustrating dialog back in 1991 — in fact the attempt to provide visual cues with the lines was probably as much as you could expect, but it hasn’t changed since — every other application I use provides a GPU-accelerated live preview (in Acorn it’s non-destructive too). What’s even worse is that it looks like the dialog’s layout has been slightly tweaked to allow for too-large-and-non-standard buttons (with badly centered captions that would look worse if there were a glyph with a descender in it). At least it doesn’t waste a buttload of space on a mode menu: instead there’s a small popup lets you pick which (customizable) “workspace” you want to use, and the rest of the bar is actually useful (it shows common settings for the currently selected tool).

In the end, Photoshop at least looks reasonably nice , and its UI foibles are things I’ve grown accustomed to over twenty-five years.

I can’t wait until I get to experience Adobe’s Updater…

Affinity Photo — First Impressions

Affinity Photo in action

Note: if you’re interested in using Affinity Photo for processing RAW photos (i.e. its “non-destructive workflow”) you’re probably going to be horribly disappointed. See my followup article.

Affinity Photo has just come out of beta and is being sold for a discounted price of $40 (its regular price will be $50). As with Affinity Designer, it’s well-presented, with an attractive icon and a dark interface that is reminiscent of late model Adobe Creative Cloud and Apple Pro software. So, where does it fit in the pantheon of would-be Photoshop alternatives?

In terms of core functionality, it appears to fit in above Acorn and below Photoline. In particular, Photoline supports HDR as well as 16-bit and LAB color, while Affinity Photo lacks support for HDR editing. Unless you work with HDR (and clearly not many people do) then Affinity Designer is both less expensive than Photoline, and far more polished in terms of the features it does support.

Affinity Designer supports non-destructive import of RAW files. When you open a RAW file you enter “Develop” mode where you can perform adjustments to exposure, curves, noise, and so forth on the RAW data before it gets converted to 8- or 16-bit RGB. Once you leave Develop mode, you can return and second-guess your adjustments (on a layer-by-layer basis). This alone is worth the price of admission, and leaves Acorn, Pixelmator, and Photoline in the dust.

In essence you get the non-destructive workflow of Lightroom and the pixel-manipulation capabilities of Photoshop in a single package, with the ability to move from one to the other at any point in your workflow. Let me repeat that — you can “develop” your raw, go mess with pixels in the resulting image, then go back and second-guess your “develop” settings (while retaining your pixel-level manipulations) and so on.

This feature isn’t quite perfect. E.g. you can’t go back and second-guess a crop, and vector layer operations, such as text overlays, get reduced to a “pixel” layer if you go back to develop mode. But it’s a big step in the right direction and for a lot of purposes it’s just dandy.

This is just my first impressions, but there are some things that could be better.

Affinity Photo provides adjustment layers, live filter layers, filters, and layer effects — in many cases providing multiple versions of the same filter in different places. Aside from having functionality scattered and in arbitrary buckets, you get several different user interfaces. This is a mess, and it is a direct result of copying Photoshop’s crazy UI (accumulated over decades of accumulated functionality) rather than having a consolidated, unified approach the way Acorn does.

At first I thought Affinity Photo didn’t support layer styles, but it does. Unfortunately you can’t simply copy and paste layer styles (the way you can in Photoshop and Acorn), so the workflow is a bit more convoluted (you need to create a style from a selection and then apply it elsewhere — often you just want to copy a style from A to B without creating a reusable (or linked) style so this is a bit unfortunate).

I really like the fact that the RGB histogram gives a quick “approximate” view but shows a little warning symbol on it. When you click it, it does a per-pixel histogram (quite quickly, at least on my 24MP images).

I don’t see any support for stitching images, so if that’s important to you (and it’s certainly very important to landscape photographers) then you’ll need to stick with Adobe, or specialized plugins or software.

It also seems to lack smart resize and smart delete or Photoshop’s new motion blur removal functions. (Photoline also does smart delete and smart resize.)

Anyway, it’s a great first release, and definitely fulfills the promise of the public betas. It seems to me that it’s a more solid overall effort than Affinity Designer was when first released, and I’m probably a more demanding user of Photoshop-like programs than I am of Illustrator-like programs. I can understand the desire to provide a user interface familiar to Adobe products even at the cost of making them unnecessarily confusing and poorly organized, but I hope that sanity prevails in the long run.

Bottom line: a more complete and attractive package than either Photoline or Acorn (its most credible competitors) and better in some ways than Photoshop.

Creating UI Atlases in Photoshop Automagically

A little over a year ago I was working on a game engine for a successful toy company. The project never ended up being finished (long, nasty story which I’ll happily tell over beers), but one of the interesting things I did for this project was build a Photoshop-to-Unity automatic UI workflow. The basic idea was:

  1. Create UI layout in Photoshop, with one “root level” layer or layer group corresponding to a control.
  2. Name the groups according to a fairly complicated naming convention (which encapsulated both behavior and functionality, e.g. how a button might change its appearance when hovered or clicked and what clicking it would do).
  3. Press a button.
  4. Select a target folder (which could be inside a Unity project’s “Resources” folder, of course).
  5. And point a script at the folder.

This worked amazingly well and allowed me to adjust to changing client requirements (e.g. random UI redesigns) very rapidly. But along the way I decided there were significant design issues with the concept, one of them being that the images needed to be texture-atlases (b) for performance reasons, but more importantly (a) because you needed to adjust import settings for each image (you can’t even select multiple images and change their import settings all at once — maybe this is fixed in Unity 4).

Another obvious problem was the embedding of behavior in names — it was convenient if you got it right the first time, but a serious pain in the ass for iterative development (either change the name in Photoshop and re-export everything or change the name in Photoshop and then edit the metadata file, and… yuck).

Anyway, I’ve had the “perfect” successor bouncing around in my head for a while and then the other day it struck me that someone probably has written a Photoshop image atlas tool already, and I might be able to rip that off and integrate it with my script.

Turns out that (a) someone has written an image atlas tool for Photoshop and (b) that the key component of that tool was a rectangle packer someone else (sadly the link is defunct) had written, implementing an algorithm documented here.

So that’s what I spent New Year’s Eve doing, and the result — Layer Group Atlas — is now availble on github.

Screen Shot 2013-01-01 at 7.00.46 PM

For the more visually-minded, you start with a UI design in Photoshop. (Stuff can overlap, you can have multiple states set up for controls, etc.) The key thing is each “root level” group/layer corresponds to an image in the final atlas (and yes, transparency/alpha will be supported, if a group/layer’s name starts with a period then it is ignored (as per UNIX “invisible files”) while a group/layer with an underscore will only have its metadata exported.

Screen Shot 2013-01-01 at 7.02.47 PM

For every layer (other than those which were ignored) metadata about the layer is stored in a JSON file. (One of the reasons I didn’t take this approach with my original tool was the lack of solid JSON support in Unity. I — cough — addressed that with another little project over the holiday break.) The JSON data is intended to be sufficient to rebuild the original Photoshop layout from the atlas, so it includes both the information as to where each element is in the atlas, but where it was in the original layout.

Screen Shot 2013-01-01 at 7.01.36 PM

Finally, the script creates and saves the atlas itself (as a PNG file, of course).

Aside from the CSS sprite support I mention in the comments in a TODO — an obvious thing for this tool to be able to do would be to export a bunch of CSS styles allowing the images in the atlas to be used as CSS sprites — there’s one more missing thing: a Unity UI library that consumes the JSON/atlas combination and produces a UI.

That’s my project for tonight.

GraphicConverter 7

Out with the old, in with the new
Out with the old, in with the new

GraphicConverter is one of the great shareware apps on the Mac. I’ve been using it since 1.4 or so (I actually paid for a disk when I registered, so I have a floppy disk with a home-made printed label on it somewhere). I remember way back in the days of 8-bit color you had a choice between DeBabelizer and GraphicConverter for converting images from 24-bit color to display on 8-bit video cards with an optimized palette and high quality dithering. For a short time DeBabelizer had an edge because it supported some exotic dithering algorithms, but GraphicConverter was simply better in every significant respect, including costing $35 when DeBabelizer sold for $700.

All that said, GraphicConverter always had a horrible user interface (note that DeBabelizer’s was even worse), and despite being ported to OSX very early has been Carbon until now. The main problem for GraphicConverter though has been the standardization of image formats (almost any program can deal with PSD, TIFF, JPEG, and PNG files, in large part thanks to OS-level support in OSX, but in no small part thanks to the appearance of cross-platform open-source graphics libraries such as ImageMagick and GraphicsMagick), the death of animated GIFs (for which GraphicConverter was an excellent tool), and the disappearance of indexed color displays. So, what does GraphicConverter offer in an era when a solid bitmap editor like Pixelmator or Photoline supports scores of different bitmap file formats (and really, who cares any more?), Acorn supports Python scripting (and offers a pretty capable free version), and all three allow batch processing in one form or another?

The Ugly

Everyone's got a welcome screen these days
Everyone’s got a welcome screen these days

Unlike most of the revisions GraphicConverter has offered over the years (and it seems to get updated every week or two), this is a paid upgrade. In fact the upgrade to version 7 costs almost as much as a whole new program.

While the new icon is, at long last, not a hideous embarrassment (leaving Photoshop CS5 and Photoline 16 in the running for “worst icon for a serious graphics app ever” title), the transition from Cocoa to Carbon weighs in at just under 140MB (226 vs 78 MB for the previous version). I guess we get 512×512 icons for every file format, or something. (Actually I just checked and nope, that’s not it.)

The Good

When I got the email notifying me that GraphicConverter 7 was out, my immediate reaction was to check to see if it was a paid upgrade. There haven’t been many but every previous paid upgrade has been a no-brainer. GC was simply indispensable. But today, when I saw that it was not only a paid upgrade but, relative to its “new” cost, an expensive one, I was ready to dispense with it. After all, last time I checked Photoline actually supported more file formats!

The new image window looks good, works well, and lets you "walk" a directory
The new image window looks good, works well, and lets you “walk” a directory

First of all, the new user interface isn’t merely “not bad”, it’s spectacularly good. GraphicConverter has never even been average-looking, but now it’s ahead of Pixelmator (equally attractive icons, fewer gimmicks, better HIG adherence) or Acorn. Bear in mind, GC isn’t trying to compete with Photoshop or Pixelmator — e.g. it has no layer support. It always has been and remains a product focused on workflow. As such, it’s more of an iPhoto or Aperture replacement.

Core Image filters are very well implemented (not as clever as Acorn but quicker to work with)
Core Image filters are very well implemented (not as clever as Acorn but quicker to work with)

With workflow in mind, Acorn’s tools are focused on the kinds of things you’re likely to need to do in a hurry, like magic wand select things and delete them, or setting a transparent background color. GC does a good job of supporting shortcuts from other applications where it makes sense, so M for marquee select or Command-L for Levels (from Photoshop) or Command-1 thru 5 for image ratings (from iPhoto) work as expected.
One of the first things I check when I first use any image editor is the precision of its selection and drawing tools.

Ever since I first used MacPaint (which was pixel perfect in every way even in version 1.0) I’ve been stunned at how many programs make bonehead mistakes in simple things like marquee selection. GraphicConverter has, until now, always been an offender in this respect, but at least based on quick testing finally seems to be able to consistently selected what you expect.

The Bad

As stated above, GC still has no layer support.

The new Batch dialog is lovely (and well-integrated with the Browser window), and the new tool for building batch scripts looks good and is a marked improvement on the old dialog, but the main annoyance of the old dialog (it’s not easy to navigate to your desired source and destination directories) is actually worse because you can no longer drag a folder from Finder into the dialog to set the source or destination (and the Browser doesn’t support this either). The basic interface is better, it certainly looks better, but it’s probably less convenient to use. And it takes ages to bring up the dialog (on an Mac Pro with 8 Cores and 8GB of RAM).

While you can browse inside iPhoto events (which is great) iPhoto’s rating and GC’s are as two. Ugh. (It’s a real shame, since GC does support iPhoto’s shortcuts, which may means it’s a bug).

Image export dialogs show incorrect previews of translucent images
Image export dialogs show incorrect previews of translucent images

Global adjustments are handed via a slick interface which makes it much clearer than many rival programs when you’re committing a change, but the controls are unresponsive when making global adjustments to large images (a common failing in apps when they first adopt Core Image support and don’t do any real UI optimization).


GraphicConverter 7 is, overall, a marked improvement on its predecessor. The core functionality is still there (and the menus are as cluttered as ever) and almost everything looks better and works at least as well as before (that I checked), but I’ve probably launched GC less than ten times in the last year when five years ago it was a program I used almost every day.

As an image manager, GraphicConverter is and remains a failure. It isn’t well-integrated with Finder (e.g. you can’t drag a folder to its batch converter to set a destination, it doesn’t offer quick access to your Desktop or Pictures folders) nor with iPhoto (e.g. ratings don’t carry across). As an image editor it’s merely adequate in a world where adequate image editors (such as Acorn’s free version) are free. It doesn’t support layers, so it can’t compete with serious layer-based image editors like Pixelmator, and it doesn’t do redeye reduction or healing, so it can’t compete with iPhoto, Aperture, or Lightroom. It’s really not in the running any more.

If GraphicConverter’s batch conversion capabilities are something you need (and you know who you are) then it’s possibly GC7 will be a compelling upgrade (personally, the long launch time for this dialog and having to navigate its dialog to set a destination folder are each deal breakers for me right now, but both may get fixed).

My initial reaction to seeing that GraphicConverter had received a major (non-free) upgrade was that it was time, at long last, to give up on it. After using it for ten minutes I was greatly impressed at the attractive and well-thought-out user interface improvements and long overdue micro-usability enhancements. After another half hour I was back to my first impression. GC has seen its day.

Farewell old friend.

Affordable CS5 Alternatives

The best affordable Adobe CS5 alternative is the academic version — e.g. CS5 Web Premium costs $1799 retail, $599 to upgrade from CS4 (more from earlier versions), and $549 brand new at Academic prices. Design Standard is $1499 vs $449. (There are even cheaper “Student & Teacher” options, but they can’t be upgraded and shouldn’t be used for commercial work.)

To understand how good a deal this is — Web Premium includes Dreamweaver, Fireworks, Photoshop Extended, Illustrator, and Flash. Coda, Photoline, and Intaglio would cost $280, and this doesn’t give you a Fireworks or Flash replacement. And to say that Photoline and Intaglio aren’t full replacements for Photoshop and Illustrator is a huge understatement.

If you aren’t eligible for an academic discoun, then things get more complicated.

The core components of Adobe CS5 are:

Photoshop: there’s no real alternative to Photoshop if you use Photoshop’s high-end capabilities. If you don’t use any of them then you can get away with a much cheaper program, such as Photoshop Elements, Photoline, Paintshop Pro, Acorn, Pixelmator, or even The GIMP. If you want natural media style painting abilities, Photoshop is actually not the best choice, and you should look at Painter or Art Rage (or Sketchbook Pro if you’re using a Tablet PC).

Illustrator: there’s a very good free alternative to Illustrator if you’re willing to live with an X-11 app, and that’s InkScape. Despite being X-11, it actually is very usable (more usable in some respects than Illustrator). Otherwise, there’s Intaglio, Lineform, Zeusdraw, VectorDesigner, and EasyDraw among others. (Sorry, but I’m not familiar with Windows alternatives, and Googling didn’t really help — ah Macs, so starved for software.)

Flash: while there are third-party Flash development tools (SWF is a pretty well-documented format), most are jokes or one-trick ponies. If you want to do serious work with SWF, you’ll need Flash, and you’ll probably need Photoshop and Illustrator since no other graphics tools are well-integrated with Flash.

After Effects: there are lots of alternatives to After Effects, but they’re all in the same price ballpark. If you’re a Final Cut Studio user, Final Cut Pro and Motion pretty much match After Effects’s feature set and are well-integrated. Similarly, if you’re an Autodesk/Avid user then why are you reading this paragraph?

Premiere: there are no good free video editing packages that I know of, although if you don’t need Premiere’s capabilities there’s iMovie and Final Cut Express (on the Mac).

Soundbooth: many, many alternatives, including the free and quite good Audacity.

On Location: there was a really awesome program called On Location, way back, that was essentially like Spotlight only over ten years earlier. This isn’t it. This is essentially a utility for capturing, adding metadata to, and otherwise managing digital footage when on a shoot, and I don’t know of any obvious alternatives (certainly no cheap ones).

Dreamweaver: if you’re not a hardcore Dreamweaver user (or, for example, a Cold Fusion developer), chances are you don’t need it at all. There are plenty of free and cheap web development tools out there. I’d recommend Coda for technically-savvy Dreamweaver users who are looking for an alternative and would like to give up their training wheels.

Contribute: I haven’t used Contribute, but from what I understand it’s a simplified web content editor aimed at people who essentially want to populate templates created by someone else. I don’t really like any of the desktop web development tools aimed at non-technical types, but if forced to pick one I’d probably pick Rapidweaver. Personally, I think this kind of thing is best handled using web-based content management tools such as WordPress.

Fireworks: Fireworks is a strange product. On the one hand most of its functionality is superfluous and it has a truly terrible user interface. On the other hand it has a number of — for UI designers — almost indispensable functions, notably pixel-centric vector drawing tools. If you need it, you need it.

InDesign: the only real alternative to InDesign is XPress (which, if anything, is more expensive and comes from a far more obnoxious vendor), unless you’re not using InDesign’s higher end capabilities, in which case your word processor (notably Pages) is a great alternative that you already know how to use.

Acrobat: again, if you need it you need it. Otherwise, not. Personally, I can’t stand Acrobat and don’t even want Acrobat Reader on my computers; for Mac users there’s Preview and the Print-to-PDF function both of which are far more pleasant to use than Acrobat (until you get technical). There are many better alternatives to Acrobat Reader, until you need to do something complicated, like fill in forms.