The Shape of Everything
A website mostly about Mac stuff, written by Gus Mueller
» Acorn
» Twitter
» Maybe Pizza?
» Code
» Archive
August 24, 2017

Just because Acorn 6 is out, doesn't mean we've forgotten about Acorn 5. We've just released Acorn 5.6.6, which you can get via the Acorn ▸ Check for Updates… menu, or via the App Store updates tab.

This release has bug fixes (including specific fixes for 10.13), and accepts Acorn 6 registration numbers as well.

August 22, 2017

It's been almost a month and a half since we released Acorn 6, and while I haven't made a single post since then, I have read every email, tweet, and other piece of text thrown our way. Kirstin and I have been pretty stoked with the positive response everyone has had towards Acorn 6. So thank you!

A few minutes ago I pushed out our second maintenance release, Acorn 6.0.2, which fixes a couple of bugs that we missed before shipping (overall, I'd say Acorn 6.0 was our most stable and bug free major release ever).

However, we haven't only been working on fixing bugs in Acorn. Today's release of Acorn 6.0.2 also includes a German localization, and we're pretty excited about it.

It took a number of weeks working with a professional translator, as well as great feedback from testers, but in the end we've got a "high quality localization" as described by our friends in Germany. So if you're a German speaker and you've been waiting for this, the time has finally come.

July 10, 2017

So we released Acorn 6 today. 🎉

It's been a lot of work and it shipped a little later in the year than we planned, but we're really happy to have something awesome for everyone to use. And in addition to that, we've currently got it on sale for 50% off. Go grab it for cheap while you can.

What's new and awesome?

For a number of years, text on a path has been our number one feature request and we finally got to deliver it with version 6. Acorn has always had great text support; it handles unicode effortlessly, and you can have multiple font faces and weights in a single text block. You can even have emoji as part of your text block. All of these same features work perfectly with text on a path. Inline editing, selection, etc- it just works. And it was a ton of fun to code on as well. Buy me a beer someday and I'll spill the details on how I coded it.

We also implemented our number two feature request, clone tool improvements. You can now select any layer as a clone source (bitmap layers, a group of layers, even shape layers) and then clone to any other layer, or even another image. We also added stamping to the clone tool, which works by holding down the shift key when you click on your image.

Wide gamut images are all around us now thanks to newer iPhones and DSLRs, and we wanted to find a way in Acorn to show you where the colors in your image may fall out of the range of sRGB (which is pretty much the current standard color profile these days). We did that by adding an extra option in the web export window, which shows up when your image is wider than sRGB. When turning it on, you'll get a nice view of your image with areas highlighted that fall out of the range of sRGB. There are also options to convert your image to sRGB at that point, either by perceptually matching colors or just by assigning the sRGB profile to your image without touching the source pixels.

What else is cool? Inner and outer stroke for vector shapes! New boolean options for shapes! Smart Layer Export things! Much improved interactions when cropping, transforming, or other things that used to be modal operations. And more. Full release notes are available (actually- that statement is only partially true. There are a lot of little things we didn't include in the official notes).

And as mentioned in a previous post, we're doing something new with trials in Acorn 6. The direct version will get its usual 14 day trial, but after that's up you can still use Acorn to view your images. The only change will be that the tools are disabled if you choose not to purchase it. We're also doing this for the App Store version in Acorn 6. You can download it for free and "purchase" a 14 day trial for $0.00. When that's up you can keep on using Acorn to view your images, or you can unlock Acorn at the usual price. This will make it really easy for App Store customers to download Acorn and try it out. We're really curious as to how this is going to work out in the long run, and if you choose this option- let us know how you like it.

And finally, I should mention that Acorn improvements mostly come from ideas from our customers. So if there's something you'd like to see, let us know.

Now off to work on the inevitable 6.0.1 release…

June 20, 2017

It's been a long time since we've done a public beta of a major app release. In fact, we've never done this before for Acorn. But we feel now is a great time to open up Acorn 6's beta to the public.

So we're happy to say that we've got Acorn 6 in public beta for you to try out today.

We're introducing some great new features and refinements, including text on a path, cloning across layers and images, improvements to web export and smart layer export, and new shape stroke options.

We've also added some great new tools for working with color profiles and wide gamut images, which is becoming more important every day for iPhone and pro photographers alike. You can now load and export color profiles from the Image ▸ Color Profile… menu. And when you're exporting for the web, you can highlight the areas of your DP3 or wide gamut image which are out of the range of sRGB.

And there's more of course, so why not grab the beta?

We're doing something new with trials in Acorn 6. The direct version will get its usual 14 day trial, but after that's up you'll be able to still use Acorn to view your images. The only change will be that the tools are disabled if you choose not to purchase it. We're also doing this for the App Store version in Acorn 6. When Acorn officially ships you'll be able to download it for free and "purchase" a 14 day trial for $0.00. When that's up you can keep on using Acorn to view your images, or you can unlock Acorn at the usual price. This will make it really easy for App Store customers to download Acorn and try it out.

Finally- one of the reasons we're doing a public beta, and one of the reasons that we still love working on Acorn, is hearing about what you like and what you think needs improvement. So if you like something- let us know! And if there's something you'd like to see better- let us know! And if you hate it- let us know that too. The feedback we get from our customers is the main driver for changes in Acorn.

So go grab the Acorn 6 beta already.

Mini FAQ:
If you purchase Acorn 5 directly from us between now and Acorn 6's release, you'll be emailed an Acorn 6 license when it ships. We aren't able to do this for the App Store however (sorry).
Acorn 6 requires 10.11.4 or later, including MacOS 10.12 Sierra. Acorn will of course support 10.13 when it comes out in the fall.

P.S., I'm also using this as an opportunity to kick off our new forums, which you can find at

June 17, 2017

The folks behind Code Obsession, creators of Observatory, just put out some new plugins for Acorn to read FITS, XISF and SBIG images:

"Code Obsession’s Acorn Plugins add FITS, XISF and SBIG image support to Acorn. After installing the plugins, you can open any such image as easy as a JPEG or TIFF.

"Calibrate, align and stack your images in Observatory, export as 32 bits FITS, open in Acorn and start post-processing. Add layers, annotations, watermarks. The options are endless."

I wrote the plugin api to do this years ago, but except for a few small examples it was never really used. However, earlier this week Sander Berents from Code Obsession contacted me about it since Acorn's ability to save 64 and 128 bit images with non destructive filters (ie- curves and levels) was perfect for astronomical data. Acorn 5.6.5 was just about to go out and I made a couple of tweaks to the API for him, and that was that.

June 16, 2017

Kelly Thompson: HEIF: A First Nail in JPEG’s Coffin?

"JPEG is 25 years old and showing its age. Compression has become a big deal as we’ve moved to 4K and HDR video, and HEVC was developed to compress those huge video streams. Luckily HEVC also has a still image profile. The format doesn’t just beat JPEG, JPEG 2000, JPEG XR, and WebP—it handily crushes them. It claims a 2 to 1 increase in compression over JPEG at similar quality levels. In our tests, we’ve seen even better levels, depending on the subject of the image."

HEIF looks cool, and Acorn will be supporting it on MacOS High Sierra when it ships in the fall.

June 13, 2017

SQLite: 35% Faster Than The Filesystem

"So let your take-away be this: read/write latency for SQLite is competitive with read/write latency of individual files on disk. Often SQLite is faster. Sometimes SQLite is almost as fast. Either way, this article disproves the common assumption that a relational database must be slower than direct filesystem I/O."

I ran the tests on my machine and for SQLite blob reads I got a 47% improvement over the (HFS) file system.

Does this really matter? Probably not in the grand scheme of things, but it's nice to know about and depending on your usage this might be a win. However, there's something awesome going on here that I really want to write about:

SQLite is so pragmatic and straightforward it makes me ache. Read the post, download the sample test file and amalgamation source and run it yourself. It's so easy that you can cut and paste single line compile commands from their article and it'll just compile and run.

Did you see any warnings? Did it just compile and do its thing? Did you notice there wasn't a ./configure script with various options that you pass, hope it works, then type "make" and cross your fingers?

SQLite is the most widely used database on the planet, it's amazingly solid, and from a developer's point of view It Just Works.

I love SQLite so much.

P.S. Don't forget about FMDB. It's cool too.

June 12, 2017

There are two main reasons I like to go to WWDC. The first is to talk with Apple engineers down in the labs, and the second is to catch up with friends and make new ones if possible. Based on those criteria, I'd say this WWDC was one of the best in recent memory.

After a brief wait in line(s) for a particular lab, I was always able to get paired with an engineer on the relevant framework I had some questions about. In the past, this really only happened when I hit the Core Image labs (they know my face and name by now) but when I went down to the Metal labs with specific questions, I was hooked up with someone at Apple who had actually done what I'm attempting to do. I can remember times in previous years where I would be shuffled around from person to person as I explained my problem, only to find out that the person I was looking for was in earlier that week and "Sorry, here's a card please talk to our evangelist".

Was it because the new location was closer to Cupertino? Or did I get lucky this time around? Whatever the reason, it was a happy change from previous years. Even randomly running into engineers in the hallways happened more often and provided fruitful conversations.

But what about San Jose itself? The last time I was there was in 2000, again for WWDC. Developer Preview 4 dropped for us and we got our first look at Aqua earlier in the year. I don't have too many memories of it, but I do remember walking around with friends in the evening, trying to figure out what to do. We couldn't find much to do. It was pretty uneventful.

Most developers I talked to before WWDC were pretty worried about San Jose, but pretty much everyone I talked to was satisfied by the end of the week.

The best thing about WWDC in San Jose was that everything was so close together. The major hotels were only a few blocks away from the convention center. The Bash was a few more blocks away beyond that. There was even a climbing gym a few blocks away so I brought my shoes for a mid week break there. All the night time activities were close by as well. It was pretty awesome.

The next best thing was that San Jose isn't crowded like San Francisco is. In San Jose you had a clear view of the sidewalks and you generally knew who was a developer and who was a local. And because it wasn't so crowded, you ran into people all the time. You didn't have to organize meetups, you just kind of went out and you knew you'd run into someone to hang with.

I really enjoyed it and I hope to go again next year.

Oh, and the new Core Image stuff is pretty hot as well. I can't wait to start using that.

June 10, 2017

A couple of days ago I sat down with Collin Donnell and Marco Arment to record an episode of Collin's new podcast The Run Loop:

"Collin is joined by Marco Arment and Gus Mueller during WWDC to talk about conferences past and present, the move to San Jose, and how the conference has changed over the years."

I think it turned out pretty good and you should certainly listen to it.

June 1, 2017

On one hand, it's completely unreasonable to be posting requests for what I'd like to see next week at WWDC. Really I should have made this list a year ago. But on the other hand, it's fun to do so here we go:

New Mac Pro Teaser
It'd be awesome if we got some sort of teaser about what's coming in the new Mac Pro. This is what I'd like Apple to say: "The 2018 Mac Pro is a quiet box with room to put things in, and it's not super expensive like the last one. Sorry about the last one by the way. Also, we decided that we would leave our desire to innovate on everything to other products. This new machine is pretty boring, but it's fast and boring and we know you appreciate that and you've been waiting long enough as it is. This one has USB-C and the newest Thunderbolt though, unlike the last one. Again, sorry. But you'll like this Mac Pro for real this time. And here's a 48 bit, super wide gamut display to go with it."

Performance Tools for Core Image
I'd like to know where the bits for images I'm drawing reside, how they got there, and how long it took to get there. Also, how much memory is that image taking up on the GPU? And what's the state of the caching that you're doing for me behind the curtains? Enquiring developers would like to know.

macOS Renamed to MacOS
I know this is petty, but I can't stand seeing the lowercase M in the name. It's weak and screams of the late 2000's. Can we just pretend the lowercase didn't happen?

MacOS 10.13
It's already showing up in web server logs, so I'm sure 10.13 is around the corner. But what's going to be in it? I'd like to see stability, performance, and better Siri integration. Some sort of neat iPad integration that's been rumored for a while now would also be awesome.

I'd also like to see APFS on the Mac, but I'm scared of it to be honest. The switchover for iOS to APFS was easy because developers weren't allowed to do very much with the file system. On MacOS however, developers and users have been having their way with the file system for decades. There's going to be more than a couple of edge cases to take care of. I don't want to get burned.

Siri in a Speaker
I've got an Amazon Echo, and I love it. I'd like to see what Apple's take is in this category.

But- Apple is going to have to open Siri up a bit more. I want to be able to make triggers and actions for it. I want to be program my own commands into it, which might then talk back to my Mac or whatever else I want.

No More Cutesy Siri
I'd love to be able to turn off Siri's "witty" one liners and comments. It got old after the 3rd time, let me turn it off already.

Dynamic Swift
Objective-C has a rich system for dynamically calling methods and forwarding messages to objects. I find it incredibly liberating to use, and I really wish Swift had something similar.

Xcode Improvements
I'd like it to be faster and crash less. I don't think that's too much to ask for.

The last time I was in San Jose Apple was introducing Aqua for the first time. San Jose is a sleepier town than San Francisco, but I think we'll all have fun anyway. Hopefully I'll see you there.