Episode 31, recorded Saturday March 31st, 2012 – UDID FIre
Mach ado about UDID, jobs for iOS developers abound and my guest today is Appsfire Co-Founder Ouriel Ohayon.
Developers all around are struggling to update their ad network libraries as a reaction to rumored app rejections. It has been reported that apps which access the unique device identifier are getting semi-randomly singled out.
But, in light of recent revelations this apparently is not entirely true. Here’s a quick rundown of what is actually happening and what companies seem to be beginning to agree that the best solution is going forward.
There are some scenarios where NSString acts as a class cluster internally to optimize handling of certain strings. One such case bit me today, and so I want to tell you about it.
Class clusters work such that you think you are always dealing with just instances of NSString, but in reality the runtime goes and chooses different subclasses for certain tasks. You might have already seen some effects of this behavior when debugging and the debugger actually showing you something other than NSString as the type of a variable.
Always lovely to get Feedback for my work. Here’s a nice e-mail I got from Mustapha Ben Lechhab, a freelancer, who is successfully using DTCoreText to display arabic rich text and an embedded audio player.
DTCoreText lets you easily render HTML text (via NSAttributedString) in your apps without having to use UIWebView. The cool feature this guy used was that you can easily embed your own custom UIViews in the text, for playing an audio or video file.
In his own words …
I thought I was smart when refactoring some code in DTAboutViewController to use block-based animations. Turns out that I had not considered backwards compatibility for 3.x when doing that simple change. This caused some unlucky users (still on iOS 3.1.3) to get the update pushed via iTunes, but then finding themselves unable to launch the app.
I do plan to cease supporting 3.x sooner or later, but not like this. The proper way is to raise the deployment target when implementing features that require 4.x. This way people unwilling (or unable) to update their devices just won’t be receiving those new updates but will still be able to continue using the old version.
The update has been submitted to Apple and should be available soon.
Update April 4th: … the update is now available on the App Store.
Episode #30, recorded Saturday March 24th, 2012. “NSConferencing”
First time visit to NSConference. Apple implements design that Steve Jobs called shit 5 years ago. And they sell more than 3 Million new iPads in 3 days.
I attended my first NSConference this year after grabbing the first ticket that became available to people on the waiting list. The conference had sold out in record time before I was able to make a decision. So I jumped at the chance when they gave me a second chance.
NSConference is held annually in Wokefield Park in the middle of a golf course. Scotty, the conference host, informed us that the reason for this is simply to force the 200 attendees to network amongst each other if only because you cannot easily drive to town.
After the conference we were asked to provide feedback via e-mail, but I am a firm believer doing so publicly because this enables the valued reader to form his own opinion and whether he should attend NSConference 2013.
Episode 29, recorded Saturday, March 17th, 2012.
New iPad finally in people’s hands, exciting updates for our favorite compiler and some problems arise for developers making magazine/catalog-style apps.
From the statements made at the iPad !!! launch event we assumed that the A5X must be a beast, shattering all previous benchmarks made. There are various kinds of measurements that you can take to compare the new iPad !!! to its predecessors. For one the raw CPU power seems mostly unchanged as judged by looking at Geekbench which measures Integer, Floating Point, Memory and Stream performance.
Then there is the raw graphics performance which can be gauged with the GLBenchmark, there you see the iPad !!! shine, or at least sparkle a bit. Apple apparently optimized the hell out of that, people expect at least the same fluid frame rates on Retina when playing games as the iPad 2 had.
But when are you actually interested in raw computing power or raw OpenGL graphics power? What we are more interested in is how fast the iPad can take a file on disk, decompress it and display it on screen. We previously did a comprehensive Image Decompression Benchmark to compare all iOS devices in this regard. We now have the numbers for the new iPad, so let’s compare!
When Marco Armant talked about licensing custom fonts for use in apps I did a bit of research myself because I wanted to know the modalities available for us iOS developers.
There are many businesses based on licensing fonts for use on desktop machines as well as web apps. But just to get a general feeling about this I semi-randomly picked MyFonts.com. They also have a fabulous app called What The Font? on the app store that lets you find fonts by snapping a picture of some text.
The font business has not really cared much about apps so far, but now with a Retina display in the size of an iPad this becomes a viable target market for them, as developers are trying to get an unique look by offering great fonts for apps that you read something with.