Popping Off About Mobile App Development: Q&A with PopCap's Plamen Dragozov
PopCap's director of mobile engineering talks about the pros and cons of developing its games for the three top smartphone platforms: iOS, Android and Windows Phone 7.
If there's a superstar in the world of mobile application development, it has to be PopCap. Its games are legendary: Bejeweled, Zuma, Plants vs. Zombies and Peggle are a few of the mega-hits PopCap has developed. There's scarcely a smartphone owner who doesn't have at least one PopCap game on the device, and millions of PC and Mac users as well.
Given this, it's fair to say that PopCap has deep knowledge when it comes to development on mobile platforms. In an e-mail interview, Plamen Dragozov, PopCap director of mobile engineering in Dublin, Ireland, shared some insights on developing for the iOS (iPhone), Android and Windows Phone 7 devices.
Keith Ward: How do you like developing for each platform?
Plamen Dragozov: While mileage can vary and some are more mature than the others, I find all three platforms to be a huge improvement over the mobile technologies of the past. They provide well designed APIs, excellent IDEs and tools, on-device debugging, decent emulation and plenty of documentation.
From a developer's point of view there are a few areas where I would pick one platform to be better than the others, but in the end it will all depend on the business requirements and personal preferences. For example, I find the iOS' and Android's approach of letting you integrate existing C and C++ code and libraries more productive than the Silverlight-only, rewrite-all model of WP7.
iOS is the one with the least hardware fragmentation and the easiest for testing and optimizing the user experience. WP7 is very close (for the moment) and has the advantage of no legacy hardware to support.
Android is somewhat of a nightmare in that respect, both on the software and the hardware side. While we work with most manufacturers and will embed our games on many phones, we are still scratching our heads about how to release a high-quality game for all devices on the Android market.
The SDK and the APIs for iOS are probably the most mature and offer tons of out-of-the-box functionality like in-app purchases, in-app advertisement, Game Center integration, etc., but there is also a huge choice of third-party services, libraries and game engines.
Android is close, but you can only rely on third parties or do-it-yourselfs in many cases. WP7 is still very new, so it will take time to catch up; however we are very excited about the Xbox Live integration.
Probably of least importance, but worth mentioning, is that Android is the only cross-platform solution and makes it easy to use your favorite OS and tools, while iOS and WP7 require OSX or Windows, respectively.
KW: Which platform is the fastest on which to develop?
PD: At the moment I'd give iOS and Android a point for letting us use legacy code, but I'd expect this to be introduced to WP7 in the future. Other than that, I wouldn't say that there is a clear winner at the development phase.
Acquiring, testing and optimizing for the various devices is a completely different story, and here Apple's model really shines. With a large number of models with varied specifications and different availability across countries and operators, keeping the quality bar high for all customers will be expensive and time-consuming for WP7 and extremely challenging for Android.
KW: Will you be porting your games to Windows Phone 7? If so, when do you expect to have them done?
PD: Absolutely! As a matter of fact Bejeweled Live, which is a Windows Phone 7-only version of our flagship title, was one of the first (if not the first) games released in that market. We are very excited about the platform and hope to announce more good news shortly.
KW: What unique challenges does each platform present?
PD: On iOS we are limited by the performance and the memory of the first models and have to be very careful when adding new content. Later iterations of the OS also tend to degrade the customer experience with older hardware, and we have to test and fix every possible combinations after every new release.
Android is very fragmented and even keeping a list of all available devices is a challenge. The lack of any standardization means that we are dealing with a large number of combinations of screen sizes, memory and performance characteristics, OS versions and hardware-specific bugs and quirks.
Windows Phone 7 is very new. There are libraries and tools that will be missing or buggy, finding information and help online will be hard and hiring people with experience will be a challenge for a while.
KW: Do you normally develop for iOS first? If so, do you see that being the case into the future?
PD: Popcap's roots are in the desktop and, until now, all our games have been developed for the PC and Mac first, but we've been very successful in adapting them for every imaginable platform out there -- from mobile, Web and Facebook to in-flight entertainment and arcade machines. On the mobile side, iOS has been the lead platform until now, but we don't have any rules against targeting something else first or doing something original if there is a good business reason behind it.
KW: Is the iOS platform more restrictive than the others? Does Apple's recent relaxing of its rules forbidding the use of non Apple-approved-tools make your life easier?
PD: For the business we are in, casual games without any adult-related content and no implications for people's security or privacy, we haven't had issues with any of the policies. We always target the platform natively and use our own internal libraries and tools, so the banning of conversion tools has not been a problem either. We have excellent relations with Apple's team and find them extremely helpful, in any occasion.
KW: Moving forward, does PopCap see more profit potential in iOS, Android or Windows Phone 7?
PD: We believe that much of the future of gaming lies in a combination of mobile and social and our expectations are that the profit potential from all smartphone platforms will only grow. Popcap has been investing in the space over the last several years and is very well positioned to benefit from this growth.
Keith Ward is a writer and editor for 1105 Media
Keith Ward is the editor in chief of Visual Studio Magazine.