iOS 5 Core Data change

This will only be of interest to you in case you’re an iOS developer and you’re using Core Data. Anyone else – you can safely stop reading.

I’ve made the assumption in the past that NSManagedObjects persisted with Core Data return the same instances of their contained Mutable objects after the NSManagedObject has been deserialized and instanced. This seemed to be a valid (even if wrong) assumption under iOS 4, but is patently false under iOS 5. The NSManagedObject memory allocation scheme has apparently been changed in iOS 5 so that objects are stored in serialized form and deserialized on demand, so that you’ll now get a new autoreleased instance of each object on every accessor call. Hence you cannot ever check for pointer equality between copies of an object returned by Core Data on separate accessor calls – you’ll be getting a new instance on each call.

So, for example:

@interface DateHolder : NSManagedObject  {}
     @property (nonatomic, retain) NSDate *aDate;
@end

@implementation DateHolder
     @dynamic aDate;
@end

DateHolder* aHolder;
NSDate* aDateInstance = aHolder.aDate;
NSDate* aDateInstance2 = aHolder.aDate;

Under iOS 4, aDateInstance == aDateInstance2 (even if this is not apparently guaranteed), but under iOS 5 aDateInstance != aDateInstance2. The values are still obviously equal so ([aDateInstance isEqual:aDateInstance2] == TRUE).

Most apps and developers won’t notice, but there are instances where pointer comparison has been handy, but this is a total no-go route now. I suspect the change was motivated by the iDevice CPUs getting faster so the deserialization process for the devices is getting faster and faster while simultaneously the object graphs in apps is getting richer, and the change allows the device to hold more data in memory.

Makielab!

As you might or might not have heard, I’ve departed Sulake in favor of a new exciting startup – Makielab. Leaving Sulake was not easy. I worked there for over 10 years (10 years!!!!), so the company and Habbo will be part of me for the rest of my life. Having said that, it started to feel like it was time to let go, so here I am. Habbo is in good hands and there’s cool stuff in the pipeline to come out, so I’m confident the Hotel will live on for more than 10 years to come.

Makielab is still partly in secret mode and building the first product, but the site has a video clip that tells quite a bit on what we’re about. I’m super excited about the company, and very happy about the other founders – Alice, Jo and Luke are all awesome, and we’re planning to do beautiful, exciting things.

Makielab announces final founder lineup; Sulka Haro joins from Sulake (Habbo Hotel)

28.06.2011

Makielab, a new digital toys & games company founded in Q1 2011, is announcing its lineup of founders as the last founder joins from Sulake, the makers of Habbo Hotel.

Makielab is building a system of social & mobile games that create customisable toys and collectibles from the same dataset. Founded by ALICE TAYLOR (previously commissioning editor at Channel 4 Education) after 3 years commissioning award-winning and innovative games and media for the UK broadcaster. Makielab will take elements from the founders’ passions and blend them into an exciting new system of play, 3D printed toys, and customisable content.

The three co-founders are:

LUKE PETRE (CTO), who built the tools backend for both Little Big Planet 1 & 2, joins Makielab from Bitminion, a Facebook games developer. Luke brings a deep understanding of user generated content, as well as extensive tools and technical experience from both LBP and his MMO development background (Lord of the Rings Online, Dungeons & Dragons Online).

JO ROACH (COO), cross-media director and talent scout, with award-winning playful and social media experiences under her belt for Somethin’ Else and Channel 4 (Routes, SuperMe, Linkem, Skins & Misfits).

SULKA HARO (CDO), Lead Design from Sulake, the maker of global virtual world phenomenon with over 200 million registered players. Sulka brings extensive knowledge of virtual goods, virtual economics and metrics, as well as design experience in creating products for massive online audiences (Habbo Hotel, Virtual Magic Kingdom).

Makielab’s first (as yet unannounced) product will be a dolls & action figures property, including games and customisation tools, and is due to ALPHA Q4 2011.

www.makielab.com

Twitter: @makielab

Told you so

I posted a bit of speculative commentary on the iPad and cloud in February 2010, before the device came out. And here you have it, the iCloud. From what I can see, it works exactly like I wrote, except maybe for the fact that you need to wait for a moment for the data to sync. Good thing those Apple Stores have a fast wireless network.

The next thing Apple will have to do is enforce all official Apple points of sale to have similar, great, wireless experience, so that the process works wherever you purchase an iPad.

Apple’s plan to take over the console

Kotaku’s E3 news had an interesting article about Real Racing 2 HD getting support for Airplay streaming in the fall when iOS 5 comes out.

I think this is pretty big.

AFAIK the change that iOS 5 brings along is, a TV connected to an iDevice over AirPlay will become just another screen for iOS apps. It’s not just for streaming videos anymore, it’s now a screen, where you can draw things as if it was the main display on the device.

So what does this mean for consoles? Trouble! For $329, you can get an iPod Touch and an Apple TV, and play easily available, affordable, games on your TV, using a wireless touch-screen controller with sophisticated motion detection and video capabilities.

This is effectively what Wii U promises to do, except it’ll be available in the fall. And probably be cheaper. With cheaper games. And more titles. And an existing, large set of devices out in the market, where most people just need to plunk the $99 for the Apple TV, rather than purchase a whole new console.

Most people won’t even need to purchase multiple controllers, since if you have an iTouch, it’s quite likely your friend has one in his pocket when he comes to visit. And his save games and player profile are in his device as well, so there’s no data portability issues, as with current generation of consoles.

If this wasn’t enough, your games will tweet high scores as well, for maximized virality.

Apple is also expected to update iTouch in early fall with significantly higher graphics performance, and Apple TV to include Full HD support – both perfect for this type of games.

As a game developer, this is going to be SO awesome.