Archive for June 19, 2012

Tuesday, June 19, 2012

Edge Cases

Edge Cases:

A weekly podcast about (mostly Apple-related) software development by Andrew Pontious and Wolf Rentzsch.


Core Data Transient Properties

Andrew Pontious:

What I hoped they would be was full-fledged members of the database which just happened not to be saved to disk.

What they actually are is glorified instance variables. The trouble with using a custom subclass ivar is that its value is only present in the specific object you set it on. If you get a different object representing the same entity, say from another context, it won’t have that value. These can lead to lots of problems.

Netflix Quietly Smothers 3rd Party App Ecosystem


As the API program evolves with the business, we now need to make some changes. While we will continue to support third parties as they develop and offer Web sites and applications that interact with Netflix, these changes are designed to do so in a way that is aligned with our broader objectives.

Goodfilms (via Marco Arment):

What they are announcing is that from September 15th you will no longer be able to export your viewing history and associated ratings through their API. All API endpoints that expose rental history, and other parts of the API that tangentially supply that information will be removed. All they’ve said regarding motivation for that change is that they are changing their API so that it “is aligned with our broader objectives”. It appears Netflix considers what films you’ve watched and what you thought of them as their data, not yours.

MacBook Pro Retina Display Reflections


Retina display uses IPS technology for a 178-degree wide viewing angle, and has 75 percent less reflection and 29 percent higher contrast than the previous generation.

C. David Tobie:

The photo below shows a previous generation of 15 ” Unibody MacBook Pro (hereafter just “Unibody”) and the Retina Display MacBook Pro (hereafter Retina). As you can see, reflections in both screens are still sharp, and not smeared as with a matte screen. On the other hand, there is definitely a lot less reflection in the Retina screen on the left. There is also a double glazed artifact on the Unibody screen, from the extra layer of glass, which causes a second ghost image offset from the main image. This photo was shot in a dimly lit image editing studio; I’ll leave it to you to decide if this reduction in reflectance is sufficient to allow you to move to a gloss screen; but as someone moving from a Unibody MacBook Pro with a gloss screen already, this is all good from my perspective.

Raymond M. Soneira (via Jason O’Grady):

I have been making a big deal about Screen Reflectance since 2004 - all of my Mobile Shoot-Out articles include Lab Measurements of total and mirror reflections from displays. So I’m glad that Apple is now making this a marketing issue. According to Apple the MacBook Pro Retina Display does not have a separate cover glass with an Air Gap (like the new iPad 3). This lowers the Screen Reflectance (like on the iPhone 4) but it’s more difficult and expensive to manufacture (and a lot more expensive if you crack the screen). Apple is claiming a 75 percent reduction in Glare, which is one form or another of Reflectance. That is a factor of 4 reduction to 25 percent Reflectance of previous models. I find that 4:1 reduction claim hard to believe… more likely is a 25 percent reduction to 75 percent Reflectance.

Apple Shifts Its Icon Guidelines

Michel Fortin:

I’ve been reading the Icon Design Guidelines in the OS X Human Interface Guidelines today and noticed that Apple not only added one size of icon that should be created for use on Retina Macs, but they expect you to create the whole icon set twice.


PNG icons files should be put in a folder ending with .iconset and run through the iconutil command line tool to create the ICNS file. […] This sentence is interesting: “You must use iconutil, not Icon Composer, to create high-resolution .icns files.” What happened to Icon Composer? This really does feel like a last minute change.