RAW Power for MacOS

One of the power features lacking in Apple’s Photos application is the ability to tweak the built-in conversion from RAW to JPEG. The now-discontinued Aperture application allowed manual control of these RAW conversion settings giving the photographer the ability work with more of the captured data to unlock hidden detail without needing a separate specialist application.

RAW Power is a Photos extension that enables this fine-tuning from within Photos. I learned from a YouTube interview with the Developer that he is the former dev lead for Aperture, having left Apple over a year ago, which suggests to me that Apple will likely cede advanced editing functionality to third party developers as I previously speculated.

As a tool with a very specific purpose, its focus makes it simple and effective to use. The interface is clearly laid out and performance nimble, and if it becomes apparent that RAW modifications are not able to improve the photo then you can cancel your edits and return to Photos with one-click.

RAW Power currently costs £9.99, and although this is labelled as promotional pricing, it is my opinion this represents very good value.

iPhone migration: restore from backup or setup from scratch?

In moving to my fifth iPhone I decided it was time to try a fresh install instead of transferring state from my previous one. Apple’s transfer process has always worked works seamlessly but that Star Trek-like transportation of your old phone to the new makes the new one seem, well a little less new somehow. Previously I would have feared losing something small but vital by not using the transfer process but with so much now synchronised between devices by iCloud, it seemed that the most painful and important items were covered. My willingness to experiment was also mitigated by the knowledge that if it all went wrong I could still re-install the new phone from my old backup.

Without the need to wait for a gigabyte of data to be transferred to the new phone, I was up and running very quickly and enjoyed seeing what differences there are between an out-of-the box configuration and my own. With the exception of turning off the sound and vibration notifications for new email, I have customised very little to start with: I want to see if there are any settings or features I have previously overlooked because of some decision I made 7 years ago. Working through my list of apps and choosing to only reinstall those I know I have used recently was also enlightening—there were applications I had forgotten existed buried in never-opened folders, and including some that now crash on startup. I noticed others that are no longer being updated but the developers have instead issued a whole new app instead. I learned that the telltale sign for this is when you tap on the application in your “purchased” list and it fails to display anything about it.

Having chosen which apps would survive the migration and downloaded them all, the main pain point was having to re-authenticate in all of them. The reduced number of apps kept this manageable and I would guess about 50% enabled the use of iCloud Keychain which made it a two-tap process. Given the tedious and error prone nature of typing in a complex password onto a phone keyboard I am shocked that the other 50% do not enable this. Those apps which forced me to lookup and retype my password are certainly strong candidates for deletion if there is an alternative.1

By not restoring from backup, any applications that store state locally and not in the cloud would lose their data. I was a little worried about my Angry Birds progress but then realised I had not played the game in a very long time anyway, and so far I have discovered only one application which stores data I would like to keep. It is a free app and its paid for version supports data export, which seems fair enough. WhatsApp messages were restored from its own iCloud backup (which it performs nightly) but I did lose my SMS and iMessage history (going back to 2008). Recent iMessages are on my mac anyway and after reviewing the older messages they were all very temporally contextual—“I am here / outside, where are you?”—type stuff. It is noticeable how much longer messages have become recently, perhaps an inevitable consequence of removing the 160 character limit of SMS.

In conclusion, unless you have apps or games that depend on local data, setting up from scratch was not at all painful and it felt really good to have a spring clean. Deleting something always requires metal energy to assess its value, or downside of its loss, and with storage so cheap it is rarely worth the effort. Consequently we accumulate bits and bytes rather too easily, and sometimes a platform migration is a good moment to assess what is no longer required, and start afresh.

  1. Anecdotally, many of those which failed to implement keychain were companion apps from established non-digital companies, for example, airlines and hotel chains. Developers competing for users on the strength of their app alone were far more likely to have implemented it. [back]

Too Busy To… available on Apple News

Subscribing to a blog via RSS remains a niche and decidedly geeky activity. Having said that, Apple devices now come with a built-in News.app which, for all the usual Apple gloss, does use RSS. To view this blog in Apple News, visit this link on your iPhone or iPad and tap the + sign in the top right hand corner to subscribe.

If you do not use News.app, Safari’s shared links feature (the @ tab in the bookmarks pane) also allows you to subscribe to this and many other blogs.

A macOS Photo Editing Workflow

This is part of a series of posts describing my move from Apple’s Aperture to Photos.app for managing and editing digital photographs. Previous entries include a feature comparison, third party applications and extensions.

Although Aperture has not received a significant update in three years, I did not feel it was deficient in any way. Having now used a number of recently released other applications1 in the last few months I have now become aware that Aperture does lag behind the state of the art and it is time to update my toolbox. Another consequence of using different tools is that I now recognise that Aperture is in fact three products in one: RAW converter, photo manager and editor. Given the convenience and advantages of using Apple’s built-in image management, including the iCloud library for device synchronisation, it seems obvious that Apple’s Photos.app should be the starting point for a replacement solution.

When editing, for many photographs I found I could produce the same or better results in Photos.app compared to Aperture, unless I needed to tweak the RAW conversion. Photos’ superior plugin implementation also means that when it cannot get the job done alone it only takes one click to call out to another application. Consequently while Aperture has more built-in tools than Photos.app, the high quality of external applications means that Photos.app plus plugins can get better overall results with no loss of efficiency.

Photos.app handles RAW files but offers no editing abilities above and beyond what is offered for JPEGs. Given the additional time and bandwidth required to upload them to iCloud, along with the greater space consumption on iCloud storage, there seems to be no benefit to offset those costs and I have decided not to store RAW files in Photos.app. Storing my RAW files in a standard folder hierarchy without the obfuscation of a management application also makes it very easy to move these files between tools2 and platforms in the future.

I have been using Nikon’s Capture NX-D software to convert the RAW files into JPEGs. This is free from Nikon and produces lovely JPEGs which match what is shown on the camera screen, but I found too slow and too difficult to use to make even the most basic edits. I tried a 30 day demo of DxO Optics Pro 10 which produced reasonable JPEGs and was very good at improving certain aspects of a photo (noise removal and some lighting scenarios) but for the average photo is no improvement on the built-in Apple RAW conversion, and not as aesthetically pleasing as Capture NX-D.

In light of these findings, on recent shoots when SD card space has not been an issue, I have set my camera to store RAW+JPEG rather than RAW-only. I have then imported the camera JPEGs directly into Photos.app and reserved RAW edits for only those where the in-camera JPEG is not good enough. In that situation I do then import the RAW into Photos.app and use the excellent DxO Optics Pro for Photos plugin if I think that will solve the problem, or resign myself to fiddle with Capture NX-D if necessary.3

  1. Nikon’s Capture NX-D, On1 Photo 10, Polarr and DxO Optics Pro. [back]
  2. Such as the recently announced On1 Photo RAW. [back]
  3. I have on occasion also loaded the RAW into Aperture to compare the results with the other two, and in four out of five cases found Aperture could not do a better job. [back]

Pixelmator Retouch Extension

Previously I noted that moving from Aperture to Photos.app meant giving up the ability to selectively apply enhancements using a brush. I speculated this advanced functionality would be something third parties could provide via the extensions API, and the latest version of the superb Pixelmator provides all the brushes I remember having actually used in Aperture: burning, dodging, colour and sharpening. The retouch extension also provides access to Pixelmator’s very impressive repair tool for removing unwanted objects, a serious upgrade to the built-in retouch function.

Also worthy of mention is the Mac version of the Polarr Photo Editor. A slick and efficient editor in its own right, it makes the popular curves adjustment easy to apply without leaving Photos and its de-haze slider is also useful for increasing the clarity of hazy or misty photos.

Photo Editing Apps for Mac

As a follow up to my previous post, I have been evaluating some of the many photo editing apps available for Mac to see how they might fit into my post-Aperture workflow.

For the problem of comparing sets of images the best tool I have found so far is MacPhun’s Snap Select. Although it can only display two photos side by side and not the 8 that Aperture can display simultaneously, I have found it to be effective at picking a single “best shot” from a selection of similar ones, which is my usual use case.

The majority of other apps appear to be focussed on editing and not managing a collection. On1 Photo 10 has a ‘browse mode’ which supports star ratings but it lacks side-by-side viewing and can only display thumbnails—the main focus of the suite is editing. It includes an easy to use portrait editing as well as a versatile effects module with a flexible masking option to apply effects to only parts of an image. I originally came across them because they offered a free set of presets for Aperture which I have used quite a bit. Having purchased this app on the Mac App Store—where it is currently much cheaper than direct from their website, and apparently the same full version although this version does not integrate with applications other than Photos.app. I also found the Resize module to be very useful in making a high resolution 30×20″ print from an older photo I only had as a 16:9-ratio jpeg. I had always thought that up-scaling an image in this way was bound to lead to poor quality but it turns out there are clever algorithms that can be applied to maintain quality. Resize also supports generating an extra border for the image which is then “wrapped” around the edges of a canvas. Without this “gallery wrap” feature, an image can lose a substantial section from the edges when the canvas is 3-4cm thick.

The power of On1’s Effects can be seen in this video. I have yet to really explore this module but initial experiments showed that while using smart layers brings some file format compatibility with photoshop, the resulting files are around 200MB each. This is not relevant if the module is used as a plugin to Photos.app because Photos does not allow edits to be modified further once the plugin has exited, but for advanced work a more compact file format is needed to avoid making the user decide whether they want to ever revisit a set of edits again in future.

My favourite Photos extension so far is definitely DxO Optics Pro. It only offers a small number of enhancements, including noise and haze reduction, but the noise reduction is excellent and worth the money alone. It works best with RAW files, but I have achieved some pleasing results even with camera phone photographs. Highly recommended, and on the strength of the extension I will be trialling their full DxO Optics Pro software when I next have a good batch of shots to process.

Aperture v Photos.app, El Capitan Edition

I have been a very happy user of Apple’s Aperture since 2011. I remember spending a few months using trial versions of both Lightroom and Aperture, before deciding Aperture suited me a little bit better—I think its integrated editing tools were slightly more powerful at the time and it seemed likely that Adobe would be keen not to make the built-in tools so powerful as to compete with their premier product. I was not overly worried when Apple first announced that Aperture would be discontinued because they have a track record of introducing revolutionary new products without every advanced feature in the initial version but then iterating consistently year-on-year until the gap is closed. With that in mind there was much anticipation around this Autumn’s release of OS X El Capitan, and consequently considerable disappointment that support for external editing extensions was the only addition. However it is important to remember that Photos.app was only released six months prior to El Capitan and so this was not a full year of iteration.

Although I had dismissed the initial version of Photos, with the availability of external editors to replace any missing editing tools, perhaps it is time to start thinking about the transition. Photos already has a few features in its favour, for instance it feels faster at navigating between photos, and does not spin for 30 seconds whenever it encounters a video. The advanced tools are comprehensive once you drill down enough to find them, and kudos to Apple for building a textbook example of how to make an interface that provides such a progressive user learning experience. In a taste of what new functionality is being denied Aperture hold outs, the noise reduction in Photos appears much improved over the equivalent in Aperture.

Perhaps the most significant omission is that there is no mechanism to apply an edit to only part of a photo, an equivalent of Aperture’s brushes. This may be a gap that Apple expects editing extensions to fill although I find Apertures’s non-destructive edits much quicker and simpler to use than the layer-mask approach of Photoshop and Pixelmator. There is also no way to display hot/cold regions to see under- and over-exposed areas. Photos.app also has greatly simplified camera-data and EXIF display. These are useful when trying to improve one’s photography “post-mortem” by looking at how the camera was setup for a particular (usually unsuccessful) photograph so their removal is disappointing.

Star ratings are also no longer available. In Aperture each photograph could be assigned a colour and a flag as well as a star rating, so it is easy to see that there were probably too many options for the majority of users who will be much happier with a simple “favourite” function. But when dealing with a large library having different ways to annotate a photograph is useful, a flag can signify a photograph that needs more attention before it is “finished” while star ratings can be used when dealing with many similar photographs of a single subject to distinguish the great from the merely good, and then the 1-star, “bad but captures some unique moment so worth keeping.” Another problem when dealing with multiple exposures of the same subject is that inability to do a side-by-side comparison of two-or-more photos. In Aperture it is possible to bring up all the photographs of a particular subject in a single view and eliminate them one-by-one. This seems to be completely impossible in Photos.app and therefore a complete showstopper for me because I use this feature a great deal when deciding which images from a set to discard and which to publish here.

Which of these missing features Apple will eventually bring to Photos.app is difficult to guess. Star ratings seem the most unlikely to return since only obsessive-compulsive types rate their possessions on a five-point scale, plus Apple already expended the effort to convert the ratings to keywords/tags. I sincerely hope side-by-side comparison returns since that is the raison d’être of both photograph management software and large screens. Brushes require a significantly more complex user interface, especially on an iOS, but are also an ideal use case for Apple’s new iPad Pro Pencil. Or Apple may decide that such advanced editing functionality has no place in a management app, and cede the space to third party developers via the extensions API.

OS X Notes.app and IMAP Accounts

On a fresh install of OS X Yosemite, the notes.app was unable to see the notes stored on my IMAP server. The account was working properly in Mail, and notes.app worked fine with other accounts.

I recall having this same problem with a previous version of OS X, and that it was related to the “IMAP Path Prefix” advanced setting within the Internet Accounts system preference panel. The prefix is set correctly so I was about to give up on this as being an annoying–but–ignorable bug when the very last post in this forum discussion indicated that a cargo-cultish approach of changing the prefix, opening and closing notes, then reverting the setting had fixed it. I can confirm that this solution also worked for me. I kept Mail.app closed for the duration to prevent it being confused, and observed that simply unsetting the value is insufficient, it must temporarily be set to another value, such as “none”, to work.

OS X Terminal.app, bash and UK Keyboards

On an Apple UK keyboard, the # symbol is accessed by pressing ⌥-3 (pronounced option 3). Unfortunately the terminal application is only useable when option has been mapped to the UNIX meta-key, which takes precedence over “special” characters such as #. Thanks to this tumblr post, it is possible to work around this problem:

$ cat .inputrc
"\e3": "#"

Unfortunately .inputrc is a bash-specific configuration file and this does not solve the problem for terminal-based applications.

Google Maps and iOS Background App Refresh

I am posting this to the web in case it helps anyone else trying to troubleshoot a similar problem.

Recently I noticed my iPhone’s battery was ending each day significantly lower than usual, causing me to have to charge it every night instead of every couple of days. At first I suspected the extra consumption was caused by communicating to my Pebble smart watch but quickly eliminated that possibility when turning the Pebble off for a day had no effect.

After some experimentation, the change that restored my battery usage to its previous norm was disabling background apps refresh for Google Maps. This was an application I had recently installed because it works very, very, nicely with the Pebble, sending turn-by-turn navigation directions to your wrist as you walk. This completely removes the need to take the phone out of its pocket every few minutes to double check that the road you just passed was not the one you were supposed to turn down! However I do not use it frequently enough to justify doubling my daily power consumption…

Buddy online notification in Messages (OS X Mavericks)

In the days when OS X’s instant messenger program was called iChat, I think it was possible to setup a notification when a particular buddy came online. Mostly not very useful to non-stalker-types, especially as some services logged people in and out fairly continuously, but I would occasionally turn it on when trying to get in touch with an elusive friend or family member in a timezone that offers very little overlap with my own. It appears that is no longer an option in the main interface in Mavericks, but Apple do provide the ability to run an AppleScript whenever an event is triggered.

Continue reading “Buddy online notification in Messages (OS X Mavericks)”

Encrypting filesystems with OS X Lion

Sadly some manufacturers1 of portable USB hard drives have yet to realise that there are operating systems other than Windows™ and include non-OS specific hardware encryption. OS X Lion supports software encrypted filesystems but the graphical Disk Utility application can only create new encrypted partitions. Fortunately the command line version of the same program can encrypt an existing partition without loss of data.

The drive must have a GUID partition scheme and the partition must have a HFS Journaled filesystem. You can view the partition information by typing diskutil list in a Terminal. The final column of output shows the IDENTIFIER you must use in the next command (disk1s2 in my case).

Encrypt the partition using the command:
diskutil cs convert disk1s2 -passphrase

You will them be prompted for a passphrase (do not lose or forget this, there is no way to recover the data if you do!). The drive will then be converted to a special corestorage volume and encrypted. Converting and encrypting a 1TB drive (with 500GB of data) took nearly 24 hours for me. You can monitor the process using the command diskutil cs list (the cs stands for core storage).

  1. Western Digital being one for which this is not true, their My Passport drive has been an excellent Mac citizen. [back]

Au Revoir, Internet Café

On previous trips, publishing a blog post or keeping in touch with home meant allocating some time to locate a reasonably priced Internet café and writing while watching a ticking timer. For this trip however I have been able to write at leisure in spare moments on my phone thanks to the availability of pre-pay GSM sim cards with data allowances.

In Australia, amaysim have been particularly good value although I only discovered their existence after considerable Internet research. A $10 purchase in-store sim card purchase gave us 1GB of data valid for 30 days plus $10 of pre-pay phone credit (90 day expiry). The network is provided by Optus, in common with most of the cheap prepaid sim offerings. There were a couple of issues though which I document here for future travellers.

  • We bought the sim card in a Seven-Eleven. The website claims you can buy them in post offices but the one we tried did not stock it so the availability might not be great. The same pack contains a sim that may be used with either the normal or micro sim formats.
  • Online activation claimed to work but actually failed because of my non-Australian address and credit card. You must call them to get your $10 purchase converted to a data plan. I have not tried to top up the credit yet but it makes me think that credit card top ups might be difficult. Buying vouchers works around this, but see the note above on availability.
  • The sim we bought has been used in multiple devices. I can report that despite rumours to the contrary, a sync with iTunes is not required to change the provider on an iPhone (at least on iOS5). However some devices could not access the Internet until the APN had been set manually to “Internet”, others just worked, for reasons I have yet to figure out.

Using the Terminal to restore from a Time Machine backup

I recently had to restore some Application Data from a Time Machine backup and since Finder in OS X 10.7 (Lion) now hides the Library folder in your home directory I thought it easiest to just cp the files from the mounted volume to the right place. It turned out that this it was not as straightforward as that because the restored files retained the read only permissions that prevent you from modifying a backup.

The ACL does not appear in the Finder, but can be seen using ls -le:

0: group:everyone deny write,delete,append,writeattr,writeextattr,chown

and also metadata:

com.apple.metadata:_kTimeMachineNewestSnapshot 50

The ACL can be removed using chmod -a #n filename where n is replaced by the number at the front of the ACL description (0 in this case). Applying it recursively is possible but potentially dangerous1 unless you know this is the only ACL applied to the files in the directory. The metadata can be removed using xattr, like this:
xattr -d com.apple.metadata filename

  1. and consequently left as an exercise to the reader [back]

Postfix and SMTP AUTH on OS X Lion

The standard instructions for configuring postfix to use authenticated SMTP to use authentication when forwarding to a relay host did not work for me on OS X Lion. For future searchers here is how I made it work.

  1. Create the file /etc/postfix/sasl_passwd as described in the standard docs, i.e. at least one line containing:
    server username:password
    and set the permissions using sudo chmod 600 /etc/postfix/sasl_passwd.
  2. Make the db version used by postfix: sudo postmap /etc/postfix/sasl_passwd (the new file will inherit the permissions of the original file).
  3. If you have upgraded from a previous version of OS X, particularly if you modified your postfix configs, follow the advice in the section below before continuing.
  4. To tell postfix to use authenticated SMTP, add the following lines to /etc/postfix/main.cf:

    mydomain = <<your.mail.domain>>
    mydomain_fallback = localhost
    smtp_sasl_auth_enable = yes
    smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd

    If your domain’s MX records do not specify your relayhost then you must also set the relayhost line.
  5. postfix on OS X runs “on demand” so there is no need to instruct it to reload its configuration. The log file is in the standard UNIX location, /var/log/mail.log.

Upgrading from Snow Leopard

I had previously had this postfix setup working under Snow Leopard, and the upgrade process appeared to have preserved my configuration settings so I was surprised to see that after upgrading to Lion, my smarthost was not accepting mail.

Examining the files in /etc/postfix I noticed that in addition to my customised main.cf there was also a file called main.cf.default which was modified the date I had upgraded to Lion. Comparing the two files showed a number of subtle differences but after being unable to determine why postfix was not authenticating to my upstream server, I decided to copy it over my customised main.cf and re-apply my changes.

Having done this, the mailq command gave me the following error:
postfix[17922]: fatal: bad string length 0 < 1: setgid_group =
Setting setgid_group = _postdrop in main.cf fixed that but then I hit another error:
fatal: file /etc/postfix/main.cf: parameter mail_owner: user postfix has same user ID as _postfix
Resolving this required me to change the value of mail_owner from postfix to _postfix but I don’t know if this is a bug in Apple’s supplied main.cf or an artefact of my user and group information evolving from a 10.6 install to 10.7.