BuySellAds.com

My book Barcodes with iOS is nearing completion. Buy it now to get early access!
Our DNA is written in Objective-C
Jump

ABC Testing Banners

Recently we announced that we are starting pre-registrations for developer accounts for our Product Layer project. We bought a few thousand impressions on Ray Wenderlich’s well-known tutorial website. Different banner slogans produced different conversion results.

Read more

Google Analytics Alternatives

We use Google Analytics in some of our apps, but lately some people have grown dissatisfied with it. In particular non-technical people find it confusing how data is being presented. We iOS engineers had to wait for a long time for Google to finally add arm64 support.

So I asked on Twitter for recommendations.

Read more

Urban Airship Commander 1.2.0

After a very long time we are able to release an updated version of  Urban Airship Commander (with iOS7 support), our app for easily sending push notifications via Urban Airship. So people and developers out there: Please buy Urban Airship Commander so we can add a lot new features to the app or even create an iPad version!!

Read more

From Barcodes to ProductLayer

One fine day, late summer 2013, I noticed that Apple had added a ton of new functionality to iOS, in particular related to barcodes. This set a train of thought in motion, the fruits of which are just now beginning to show.

Read more

Radar: Aztec and PDF417 Core Image Generators documentation missing

While researching for my book “Barcodes and iOS” I was looking at the CoreImage generators for barcodes. iOS 7 supports generating QR, Aztec and PDF417 barcodes via CoreImage generators.

But for the latter two the documentation appears to be missing, making those – technically – private APIs. I believe this to be something that was simply overlooked, since those generators seem to work just fine.

Filed as rdar://15989297 and on Open Radar.

Update: An Apple evangelist responded to my inquiry and confirmed that those CI generators are indeed private API and should not be used.

Read more

Mysterious Sudden Twitter Fame

Monday afternoon, in the Cocoanetics offices. Colleague René is discussing with us an approach how to centralize some code without inheritance and is drawing on the whiteboard. Suddenly my iPhone begins to vibrate.

My first thought was that this must be the silent ringing when there is an incoming voice call. It didn’t stop even though we tried to ignore it for a few seconds. Then I glanced at the phone and noticed that I was getting a flash flood of push notifications from Tweetbot.

Update: JustUnfollow posted an interview with me.

Read more

DTMarkdownParser 0.2.1

This bug fix release fixes a few minor issues on DTMarkdownParser.

Read more

Passbook Event Ticket Relevancy Issues

While experimenting with PassKit I found some weird behavior which I believe might be a bug, or two.

Passes can have a date and locations where they are relevant.  For event tickets – according to the documentation – the locations are optional. You expect to see passes to appear on the iOS lock screen from some time before the event until it starts.

Read more

Q&A: Seconds Since my Birthday

Julia asks:

How do I get Objective-C to display the number of seconds since my birth?

When you often gnaw on complex and frustrating questions – like I often do – it is rather refreshing to work out a good answer to such a simple question.

Read more

Assuring Documentation Completeness

For your open source projects you want to make sure that pull requests you merge don’t destabilise the project. Having a large number of unit tests in combination with a Continuos Integration platform like Travis-CI helps greatly. With this setup each pull request or new branch sent to your repo triggers a build and Travis-CI will let you know if all tests pass or not.

If you annotate your headers with appledoc then you can build nice class documentation viewable that integrates with the Xcode documentation viewer or can be put on a web server as HTML.

Now what about pull requests which add new functionality but which are lacking some documentation annotations? This blog post looks into using Travis-CI for making sure documentation is also complete on pull requests.

Read more