Bringing iOS back to the Mac: Pleasing Lion with a Chameleon?

Jimmy Ti, Queensland University of Technology

Audience: Intermediate (assumes some iOS development experience)


The success of the iOS platform draws a lot of aspiring developers, as well as developers from other platforms.  Now that they have learned how to program in Objective-C for iOS devices, the Mac platform seems like low-hanging fruit waiting to be harvested.  Yet Mac OS X is a completely different beast.  Not only do developers need to learn about the differences in platform capabilities, user interface design, APIs, as well as publishing guidelines, they will also need to re-develop a lot of the code – especially that relating to the User Interface – to port their application to Mac OS X.

Chameleon is an open source project, spear-headed by Sean Heber and Craig Hockenberry of IconFactory (Twitterific) fame.  The main objective of Chameleon is to make it easier for iOS developers to port their apps to Mac platform by implementing UIKit – the base framework used for creating almost all of the great-looking interfaces for iOS apps – on OS X.  This presentation will serve as an introduction for developers who wants to use Chameleon to port their application, as well as to integrate Chameleon into their development workflow so they can have a single Xcode project that can run on iPhone, iPad and OS X.

Speaker Bio:

Jimmy is a PhD candidate at the QUT Mobile Innovation Lab and UrbanInformatics Lab.  His research interests include context-aware technologies and mobile interaction design, as well as improving user experience of mobile computing.  His passion for well-crafted computing experiences and the nature of his research, have helped him become familiar with Objective-C, and he has created several iOS applications – most of them used for research purposes.  In addition, Jimmy has teamed up with colleagues Zachary Fitz-Walter and Tony Wang to start up a Mobile Development company named EatMorePixels.

Leave a Reply

Your email address will not be published. Required fields are marked *