WWDC 2011 Notes
Returning to WWDC after a multi-year hiatus I was really excited to catchup with old friends and see what’s in store for the Apple platform. I didn’t arrive to San Francisco with many expectations but left excited and with a strong desire to do some prototyping. I’d say that’s a good sign.
I won’t attempt to do a full, detailed WWDC recap here considering most of the show is under NDA but I would like to share a few things that I’m excited about.
ARC (Automatic Reference Counting)

ARC was not covered during the Keynote but is publicly documented elsewhere. In short, ARC is a memory management solution. Rather than using Garbage Collection (which cleans up memory usage during the runtime) ARC, instead, will synthesis the needed releases and autoreleases in your code during compile time. The end result, when using ARC you no longer have to worry about memory management.
It sounds too good to be true but apparently it’s working well for a few friends who have migrated their projects. The particularly cool thing is that it is backwards compatible for 10.6 and iOS 4 so it’s something people can start to use right away, even if they need to support older OS releases.
iCloud

People have long wanted an iOS companion app for ProfitTrain and while I’ve spent the last year learning iOS I sadly didn’t see the point of an iOS ProfitTrain until I got the syncing problem settled. I tried to roll my own solution and it just didn’t work as well as I needed it to. I investigated other options but never saw something I liked. Now with Apple doing iCloud, there is a new hope.
Being able to be at this specific WWDC was great. I got to ask some hard questions in the labs regarding iCloud and while I won’t be able to give a firm conclusion until I get some prototyping done I am at this point hopeful. The only better thing would have been to have had access to iCloud pre-WWDC so I could have approached the labs with real code but oh well.
I also really like that there is a free 5GB account as well as a hinted paid options. There were some past sync solutions built on MobileMe but I didn’t want to put that subscription burden on my users.
Game Center

The final public topic I wanted to share my enthusiasm for is the improvements to Game Center coming in iOS 5. Overall these are great and are going to continue to help people expand their friend list and find new games. For developers it’s going to let us create asynchronous multiplayer games without the need to build and manage the server infrastructure to run them. The only down side to this is a complete lack of any Mac availability. I was really hoping to see this come as a late Lion addition but sadly it is not the case. I still hope to port TwizShow to the Mac in time but removing the Game Center leaderboards and achievements will be a bummer if not available.
Final Thoughts
Overall WWDC was a blast and totally worth it. I’m actually excited to maybe attend a few more conferences in the coming months. What can I say, this community is intoxicating.
Posted on: June 15, 2011 – 8:42 PM

4 Comments
One small nit: We can’t “use it right away” because ARC is only really fully available in in LLVM3.0 which is in Xcode4.[redacted], which will not be available until iOS5 ships.
Any comment on ARC vs. GC and which we should use on Mac OS X? Of course if you were sharing code between OS X and iOS apps ARC would be the way to go, but what about OS X only apps? No one seems to be able to explain why this technology was developed rather than further optimizing the garbage collector.
I think its pretty simple: when GC came out for MacOSX in Leopard, Apple had not yet had much experience with CLANG. Over time they discovered though the use of the static analyzer that there was a way to keep all the benefits (read: speed, lack of app pauses, etc) of managed memory allocations without having to force the programmer to do all of it and at the same time the side benefit was removing the most common source of bugs under both iOS and OSX.
@David True point. At least iOS 5 is targeted at Fall 2011 release. So it’s not way off.
@Jon I agree with David. A huge part of the change in focus is due to the advancement in the LLVM project. It going to enable Apple to do a lot of low level language things over the next few years. When the videos come out you can catch up with the ARC sessions. From those I think you’ll get a sense that ARC is the future and GC is the past.
Post a Comment | Comment RSS feed