The Shape of Everything
A website mostly about Mac stuff, written by Gus Mueller
» Acorn
» Twitter
» Maybe Pizza?
» Code
» Archive
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 https://forums.flyingmeat.com.

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.

May 31, 2017

Brent Simmons, whisky-soaked baritone and beloved Mac developer, is writing a new feed reader for MacOS called Evergreen. And it's open source.

This is awesome and I'm hoping this will be the app that'll get me to switch away from NetNewsWire 3.3.2.

May 31, 2017

I was looking for a specific Acorn image, which I couldn't remember the filename of but I did remember the folder it was in as well as the text in it ("fx"). And then I also remembered that text boxes in Acorn files are indexed via Spotlight, and since I was already in Terminal I ran the following command in that folder:

$ mdfind -onlyin . fx
stylechain-layer@2x.acorn
stylechain-layer.acorn
stylechain-layer-highlight@2x.acorn
stylechain-layer-highlight.acorn
…

And tada, there were the images I was looking for.

Doing this in Terminal is not necessary, I could have also easily done this via the Spotlight menu.

May 26, 2017

FMDB was just updated to version 2.7. From What's New in FMDB 2.7:

"FMDB 2.7 attempts to support a more natural interface. This represents a fairly significant change for Swift developers (audited for nullability; shifted to properties in external interfaces where possible rather than methods; etc.). For Objective-C developers, this should be a fairly seamless transition (unless you were using the ivars that were previously exposed in the public interface, which you shouldn't have been doing, anyway!)."

Rob Ryan did pretty much all the work on this release, so if you use FMDB in Swift, he's the guy to thank.