Category Archives: Uncategorized

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.

10 Games You Should Have Played (but probably haven’t)

Adam Martin just posted a challenge of blogging a list of 10 games one thinks people should have played, but probably haven’t. The challenge sort of implies computer games, but simultaneously a picture posted to the challenge lists games that are not computer games, so I’m posting a list of 4 each.

It’s impossible to really put games into priority order, so here’s these lists are prioritized by relative obscurity. So, without further ado:

5 games you should have played, but probably haven’t

Dominoes

Where I mean the real game of dominoes like Muggins. Most people seem to think Dominoes is a child’s game where you just match numbers / pictures. It’s not – the real game is pure math.

The Enemy Within campaign of the Warhammer Fantasy Roleplay game

The Enemy Within is the best campaign I ever encountered in a roleplaying game, with possibly the exception of some of the classic campaigns written for Call of Cthulhu.

Mahjong

Where I mean the four player strategy game played with tiles from somewere around 500 BC. It’s a great game. Remember to get nice set of tiles if you play (for the game is also very tactile), and reserve a lot of time if you play a full game of 16 rounds (or more, depending if East wins).

Scopa

The Italian card game, a precursor of most western card games. For added fun, play the Finnish version where you don’t record the score, but instead the winner takes a shot, and you play til you drop.

Tablut

The King’s Chess, played in Northern Europe for centuries until overthrown by chess.

5 computer games you should have played, but probably haven’t

Nethack

No, it’s not a multiplayer game despite the name. Nethack is a continuation of Hack, an ASCII graphics based adventure game, but developed as a “closed til it’s released open source project”, just the same as the Android operating system. Originally released in 1987 and developed until 2003 (16 years of releases!), it’s one of the deepest adventures games out there. And harsh – playing the game through takes more than 10 hours, and if you die, you have to start from the beginning.

Starflight
It’s a classic space exploration game developed by Binary Systems, released in 1986. The game is similar to Elite in many respects (open world design, procedural content, upgradeable equipment), but I personally always thought the implementation was classier than Elite. The game’s frickin 25 years old, and still has more depth than most scifi games released since.

Bloodwych

The game nicked the base design from Dungeon Master, but added something I’d not seen in an adventure game – a two player mode. This is still rare in adventure games, as you still mostly have the option of single player games and MMO. There’s a certain depth that you get to a play experience when you play through a game with a friend sitting side by side for 20+ hours that MMOs just can’t give you.

Left 4 Dead

Left 4 Dead is by far the best crafted co-operative multiplayer game I’ve seen this far. Everyone who develops multiplayer games should play this, and aim to make multiplayer co-op at least as fun. Yes, MMO raids give you more fiero when you complete them, but the level of play experience smoothness in MMOs don’t just match L4D.

Zoo Keeper (the Nintendo DS version)

Zoo Keeper is essentially a Bejeweled clone, with one difference that changes the gameplay fundamentally – you can move tiles while tiles are moving as a result of your previous play. This allows you to build chains when they weren’t possible due to the board setup. The technique works especially well on a touch screen, so I’d love someone create a good iPhone port. The reason this game is on the list is, it’s interesting to see that a classic game can change so fundamentally (for the better) with a tiny little change.

And some other games that sprung to mind while writing this which could have been on the list, in no particular order:

  • Dungeon Master
  • Elite
  • Runescape
  • Maple Story
  • Star Control 2
  • Bard’s Tale
  • Lode Runner
  • World of Warcraft
  • Ultima Online
  • Populous
  • Pool of Radiance
  • Portal 2
  • Eve Online
  • Ultima Underworld
  • Dungeon Master
  • Archon: The Light and the Dark
  • Leisure Suit Larry in the Land of the Lounge Lizards (the original, not the shit remake)
  • Tetris
  • Travian
  • Civilization (all of them)
  • Sim City
  • Unreal
  • Secret of the Monkey Island
  • HHGTG (text version)
  • Sim City
  • Pirates!