English is not my first language. Unfortunately, it is the essential language for app business and tech community, and so many entertainment and learning materials are provided only in English.

When I decided to make myself a programmer, improving my English–reading skill was very important. Extending my vocabulary was one of the key things to do. I read written English contents mostly on the iOS devices and Mac. And they have excellent built–in dictionaries. I did constantly look up a new word only to find that it was not a new word, and I just forgot that I already looked it up before. I need to collect and keep track of new words I have looked up, so I made an app for that.

Whether I’m reading something on iPhone, iPad, or on the web, I can easily collect a new word using iOS app or recently created web app. CloudKit keeps everything in sync in background. Wordio complications for Apple Watch forces me to be exposed to those words whenever I glance my watch face. The app has been very helpful for me to improve my reading1.

For a casual life–long english learner like me, managing already-looked-up-words could not be overemphasized. If you’re interested and ready to pay $2.99 to see if it’s for you, you can buy Wordio on the App Store.

  1. not much for writing as you can see at this point

Metapho 2.1.2 Release Note

Version numbering could be arbitrary sometimes. Many things have been changed under the hood for this huge point update.
Download on the App Store

Memory footprint

Memory usage for an app extension is very constrained. For an app extension handling images like Metapho, it is easy to be killed by OS and fail to launch, unless the app extension manages memory usage carefully.
A JPEG file stores its metadata in the head. If Metapho Action extension gets the location of the file, there’s no reason to load entire image data into memory. Just reading head section for metadata would be sufficient. By doing this, Action extension can show a very large image like this. Similar stuff also applies to sharing. Now, Metapho exports metadata modified file in a memory efficient way so that you can Safe Share a huge image in Action extension.

Film Mode

Cameras made by Fuji Film have special custom metadata, Film Mode. It seems like that dozen of film simulation modes are valuable metadata for Fuji Film camera owners. After digging into custom note section of the photo and studying camera manuals, I could extract Film Mode and put it on the camera info section.

RAW and iCloud Photos Library

Apple says iOS and RAW are not very friendly. In the host app, Metapho tries to get RAW assets if they are available locally or on the iCloud Photos Library. In the app extension, iOS Photos app sometimes gives the app extension RAW, sometimes JPEG. If only JPEG is available in the Photos app, the app extension uses provided JPEG and will not try to retrieve underlying RAW.

DNG support

iOS 10 lets capable devices capture in RAW. The result is DNG, Adobe digital negative file format. Unfortunately, iOS does not have DNG decoder and just treat it as a small thumbnail. Metapho reads DNG metadata and at least shows original pixel size of the image. It’s not possible for now to edit or share an original size image directly from a DNG file in Metapho. If you really want to handle DNG in iOS you should convert DNG into JPEG first, using DNG develop apps like Lightroom or Camera+.

Small changes and fixes

  • Metapho ignored a photo’s orientation when it showed pixel dimension info. For a portrait photo, EXIF width is actually height. Now the app swaps height and width for rotated orientation.
  • Sometimes Map View got confused and gave us wrong compass icon. Not any more.
  • Reports 0.303030303 shutter speed as 1/33s not 1/30s.

Introducing Free Trial For Atelier

Free Trial on the iOS App Store

Atelier is updated to 1.2, and the app is changed to free (to download). Upon the first launch, you can choose between paying full price upfront, or making $0 In–App Purchase for 7 day free trial. With free trial, you can try all the features of Atelier for a week without paying regular price—currently $4.99.

After years of underwhelming sales, I found out that paid app model is not the best way to sell a simple and focused drawing app like Atelier. Or is there any good way to sell an app like this? We’ll see. You can try it on the App Store.

Bug Fixes

  • Fixed brush width slider percent bubble misalignment
  • Fixed visual glitch sometimes created by closing main menu
  • Fixed a color composition bug caused by layer opacity

Atelier 1.1

This is a big update. Atelier: Draw, Sketch, Paint is updated for iOS 10.

Apple Pencil

I know I’m late to the game, but I finally managed to buy  Pencil and iPad Pro last summer. With real hardware for development, I could make Atelier support Apple Pencil natively. I’m happy to find out that Pencil is much more precise than I thought and it is better than any other stylus on iPad by far margin. Atelier has been faking brush pressure with touch velocity. It is necessary feature to make a smooth line with crude touch samples — hardware limit for old devices. However, thanks to Pencil’s superb sampling rate and pressure sensitivity, the app translates your intent quite well into painted lines with less “magic” behind the scene. With Apple Pencil, painting in Atelier is more accurate, faster, and smoother than ever.

Bug Fixes and Improvements

  • Keyboard Shortcuts: ⌘+z for undo, ⌘+⇧+z for redo, hold down ⌘ on a hardware keyboard to learn more
  • True Tone Display loses power over Atelier’s precise color reproduction
  • Slightly smoother Atelier thumbnail image scrolling
  • Fixes an issue that caused incorrect color after merging layers with very low alpha
  • Fixes one pixel misalignment of iPhone 6 size canvas on 100% zoom level

When you’re using Atelier, you don’t need to fiddle with brush flow rate, pressure curve, or other complicated things. Just draw, sketch, paint and create something beautiful. Atelier 1.1 requires iOS 10 and now available on the App Store.

Metapho for iOS 10

Metapho 2.1 is mostly for editing of Live Photos.
Download on the App Store

Live Photo Edit

iOS 10 lets you crop, filter, enhance, and rotate Live Photos without turning them into stills. Thankfully, Apple opens up this feature to third party app like Metapho. Now you can change or remove metadata of Live Photos and they remains live after editing.
And Safe Share feature is completely rebuilt to support these Live Photos. It gives you more control. For example, you can Share without Metadata a Live Photo, select Save Live Photo to get a new metadata stripped live photo, then delete original for destructive but storage saving workflow.

Bug Fixes

  • Fixes an issue that showed incorrect file size just after downloading a photo from iCloud Photos Library
  • Better handling of metadata edited by Photos for Mac, for sharing with metadata
  • Fixes map issue in Metapho extension, caused by Photos for Mac assigned location

Requiring Latest iOS

Metapho requires iOS 10. Live Photo Editing and Sharing was non–trivial features to implement and I wanted to keep the codes as tidy as possible for future updates, so I bumped up minimum requirement iOS version. I highly recommend all users to update to the latest iOS. For older devices, Metapho 2.0.1 will continue to work for iOS 9 and available for download on the App Store’s purchased section.

Metapho 2.0 release note

Metapho 2.0 is a substantial update with new features, improvements, and bug fixes.

Download on the App Store

Date Edit

The stock Photos app on iOS and macOS shows pictures sorted by creation date. Some photos from a dumb camera without GPS clock, or old scanned images often have incorrect timestamps and falls into inappropriate places on the Photos grid. Fear no more. Using Date Edit, you can modify creation date of the photo and “move” it to the right place.

The biggest hurdle for date editing feature was time zone. Here’s how Metapho handles it. EXIF infamously does not have concept of time zone. By default, Metapho uses system time zone for location–less photos. When a photo has location metadata, the app could obtain time zone info using reverse geocoding, then use it to calculate date offset for editing. Metapho also uses time zone info when it is writing date related tags with “Rewrite Date Tags” options turned on.

A digital photo typically has multiple date related metadata. Date original, date digitized, TIFF creation date, GPS timestamp, and so on. In addition, the stock Photos app keeps its own database for metadata. When date is modified, Metapho just changes date metadata in the Photos app’s database. However, if “Rewrite Date Tags” is turned on, Metapho changes all date related tags, makes re–rendered photo with modified metadata and saves it in addition to the original photo.

Batch Operation

I’ve always wanted to implement selection gesture handling just like that of Photos. Tap–and–side–drag gesture lets you select multiple photos easily without breaking your thumb. After selection, you can edit or delete multiple metadata of selected photos at once.

Other New Features

  • Photo file name. In Metapho and action extension.
  • Quickly find a photo by filtering Photos Library with location, favorite, and photo type.


  • GPS accuracy tag sets Map zoom level if available.
  • Pixel dimension reports actual image size, instead of value in metadata.
  • Metapho Action extension is more stable and faster.
  • Metapho Action extension: Open in Metapho, now works for Metapho–edited–photos.


  • Some images were not showing for 3D Touch Peek.
  • The first–ever app launching via action extension inappropriately asked for Photos Library permission. Well… I did not think of that it is possible to launch app extension before main app.
  • One could produce an image contains image direction without location.
  • Accessibility escape gesture did not work for going back to photo grid.

Hello, Zininworks blog

This is Zininworks company blog. Stories about new apps and app updates will be posted here.