If you like my tutorials, you will love my book . It is chockful of advanced programming techniques and the only comprehensive barcode reference for serious iOS developers.
Our DNA is written in Objective-C

Urban Airship Commander 1.1.2

This is a bugfix release for Urban Airship Commander, our app for easily sending push notifications via Urban Airship.


  • FIXED: When Copy to new Message in Log was chosen the custom fields were not used in some cases.

The update has been submitted to Apple for review.

Update May 7th: Approved after 4 days.

New Blog for Tech Ladies

TechCriquette LogoI’ve been sponsoring my cousin Julia Grill for a while now. She’s a teenager that has a strong interest in technology, but never gotten much support for her wish to pursue a career in this field. So I made it my mission to help her out in these matters.

Today Julia launches her new blog which is targeted at other young tech-curious women, and she’s calling it TechCriquette. You can read about the meaning of this unusual name and what her mission statement is on her first blog post.

You are welcome to give her hints about companies or products that do an exceptionally good or bad job in talking to women. Options on how to contact her can be found on the TechCriquette About page.

Getting Glyph Paths with DTCoreText

A client wanted to have a method for producing text that has a “cut out” effect, aka Text with “Inner Shadow”. Sort of like if you take a sheet of paper and then cut out the letters, then have light coming from up and slightly to the left so that it throws a shadow into the cut out letters.

For such a scenario you have to get a CGPath that is comprised of the glyphs that make up the text. Those are called glyphs because in some languages they are letters, but in some others they are not. Glyphs are the atomic element that any written language consists of.

Because it reasonably fits with the other work I have already done in DTCoreText I added such a method to both the classes for glyph runs as well as lines. These new methods will be released in the upcoming DTCoreText 1.5 release.

Read more

Radar: App gets killed without Crash Log

The following bug report has already been confirmed by Apple. Still I am posting it for the public so that it might help somebody who is getting the same problem.

The workaround is to override the readFromURL:error: method of UIDocument instead loadFromContents:ofType:error: since the problem lies inside NSFileWrapper. While being very convenient to use on smaller documents having too many items inside an NSFileWrapper will cause the problem described in this bug report.

Filed as rdar://13586175 and on Open Radar.
Read more

WWDC Ticket Aftermath

The results the world had with Apple’s new plan where mixed. By a rough estimate over 20,000 developers where trying to storm the bastille at exactly 10 am PDT. But only a fraction was successful in winning the race, many just found a system in shambles.

Read more

AutoIngest for Mac 0.2

AutoIngest for Mac is a small app that runs in your status bar and downloads your app sales reports. This helps you keep an independent archive of all your reports without having to rely on a third party.

At present in the Daily, Monthly, Weekly and Yearly flavors. You can also activate the auto-download where it will do the downloading every 24 hours. You can put this on each of your Macs if you download the reports to a shared Dropbox folder because each instance will automatically skip report files that are already present locally.

Version 0.2 is the first version that we are distributing as a Developer ID-signed app. This is convenient for people who don’t want to build it from source code but still want to have a version they know they can trust, with a Developer ID signature.

Read more

Apple announces WWDC 2013

WWDC 2013 Logo

Apple announced WWDC 2013 on the day after the quarterly earnings conference call with analysts. The gist of which has been generally interpreted as “loosing steam”. Tim Cook seemed to imply that Apple would not be releasing any significant hardware products before the fourth quarter of 2013. This was further underlined by Apple giving guidance that sales would be slow for this current quarter.

Last year WWDC sold out in under two hours, much to the chagrin of many developers from the west coast of the USA because it was all other before many of them could get out of bed.

Much had been speculated how Apple would counteract an even faster sell out of tickets for WWDC 2013. One unexpected move had been Apple inviting a few select companies to send people to key Apple subsidiaries for design and tech reviews of their most important apps. They did that instead of doing a road show, which had served as a “WWDC Mini” for many people.

Read more

DTCoreText 1.4.2

I forgot about posting a summary of the changes and updates in 1.4.1, and now I needed to release 1.4.2 as an interim release because I am working on a few improvements for 1.5 that are also potentially breaking some usage scenarios related to text attachments.

Read more

AutoIngest for Mac

In this weeks Friday Labs session I created a Mac status bar app that I call AutoIngest for Mac. This uses my Objective-C re-implementation of  Apple’s Java-based downloader as static library.

Screen Shot 2013-04-19 at 18.07.40

This first version is as functional as I was able to get it. Now I need your help. It is on GitHub, awaiting your input.

Read more

Private Pods

You probably have looked at CocoaPods by now and found it to be a great way to quickly pull together all your favorite Open Source components for an app. After our recent move to Git I researched some more and found that it is exceptionally easy to also provide specs for your closed source private code.

Update: Updated Resource Bundle generation use the new syntax of CocoaPods 0.18.

Read more