Interview with iOS Hacker and Cydia Dev Ryan Petrich

iFans had the opportunity to touch base with Ryan Petrich, an iOS hacker and leading developer in the jailbreaking community. Petrich has created dozens of useful tweaks for the iPhone, iPod touch, and iPad, all of which are obtainable through Cydia, and is perhaps best known for developing the insanely popular jailbreak tweak Activator. You might also know Petrich for ContactPrivacy, his temporary solution to the Path app privacy controversy, or for running the successful TweakWeek project on Cydia last year. Everything you could possibly want to know about Petrich, including his interesting stance on piracy in the jailbreaking ecosystem, can be found ahead in our exclusive interview…

Provide a short biographical introduction of yourself for the iFans members that perhaps haven’t heard of you.

I’m a software developer from Edmonton, Alberta and make software for Cydia. I am a tea aficionado and enjoy downhill skiing.

Which iOS devices and other Apple products do you own?

I own a MacBook Air, MacBook Pro, iPhone 4, iPhone 3GS, iPhone 3G, iPad 2 and iPad.

List and describe some of the jailbreak tweaks that you have released on Cydia. Which one took the longest to develop?

An incomplete list includes Activator, DisplayOut, Rich Text For Mail, DisplayRecorder, HapticPro, Action Menu, OverBoard, FullForce, RetinaPad, Rotation Inhibitor, WiCarrier, Color Profiles, NoNewsIsGoodNews, MathAlarm, SuperScroller, DietBar, untrackerd, IconRenamer, SplitMail and Pull to Dismiss. I’ve also collaborated with other developers on their packages. DisplayRecorder took the longest to get the first release out, but Activator has received the most attention by far.

Which programming languages do you know? How did you learn them? Are there any languages that you wish to gain a better grasp of?

I got started on TI-BASIC back in junior high school and quickly got pulled in to. From there I migrated to Delphi and C as primary languages, with brief detours into C#, JavaScript, Lua, NQC, Java, SQL, bash, Scheme and Erlang. When the iPhone 3G came out, I dove in head first and learned everything I could about Objective-C, ARM assembly and everything iOS. Currently I’m learning Haskell, Prolog and Ruby.

Let’s talk about TweakWeek. What made you think of the idea to host this event? Do you think it was successful? Did other jailbreak developers enjoy participating?

TweakWeek was a reaction to the declining volume of new free and open source packages for Cydia and the lack of simple open source examples. I received an overwhelmingly positive response from both the community and other developers.

How can the jailbreaking community support you? Do you accept donations?

The best way to support me is to evangelize jailbreaking in general. Developers do well when the community is vibrant and growing.

Is programming and development something that you consider as a day job, or do you have another career choice?

I am employed as the primary iOS software engineer for a mobile advertising startup based out of NYC. We’re looking for smart mobile engineers to join us.

Have you ever been contacted by Apple regarding your tweaks? Would you ever work for the Cupertino-based company?

I have not been contacted directly by Apple, but am not opposed to working with them.

As we asked fellow iOS developer Filippo Bigarella, what is your stance on piracy in the App Store and Cydia Store ecosystems. Have you taken any initiatives to reduce the amount of piracy?

I certainly don’t condone it, but piracy isn’t something software developers should be focusing on. Time is better spent on marketing, support, and on improving the product. My products include a basic antipiracy system primarily as a means of reducing the support burden from non-customers. The best way to reduce Cydia piracy would be to make the payment interface simple, easy to use and support more payment processors.

As for App Store piracy, I believe jailbreak enthusiasts should be strongly opposed to it as it weakens the argument for jailbreaking as a legitimate user choice.

Are you good friends with the founder of Cydia, Jay Freeman (@saurik)?

Jay has done amazing work fostering the community’s growth and I am honored to have collaborated with him. He is very friendly and approachable if you can get his attention.

Talk about Activator. This is one of the most successful and useful jailbreak tweaks available on Cydia. What inspired you to create this tweak? How long did it take you?

After I released the first version of OverBoard, I received numerous requests from users wanting to be able to pick and choose the various activation methods. When developers started asking if they could reuse the code to hook into the home button and pinch gestures, it was clear a common library was necessary. Activator grew organically from there to become one of the most popular packages on Cydia. Activator has had continuous development since its launch and it’s not possible to estimate how much effort has been put into it.

Are you currently working on any new jailbreak tweaks?

As usual, there are at least a dozen new projects that I am currently experimenting with. Most of them won’t ever make it out to the general public though.

Talk about the technical details involved in getting your jailbreak tweaks to work properly with the iOS platform.

Jailbreak software development is a lot like developing for other platforms, but has a few unique challenges. The first is the ever changing nature of private APIs and maintaining compatibility across iOS versions. Some developers only support the latest major iOS release, but I take pride in never removing support for an iOS version. The second is sharing a single address space with other developers and dealing with all the sometimes unconventional things they do–with Objective-C or MobileSubstrate hooks, basically any system API can be replaced with an implementation that has completely different behavior.

Is it difficult to port a tweak from an older version of iPhone OS to newer versions such as iOS 5?

If the subsystem that the tweak modifies has changed substantially, it can be–DisplayRecorder required a near complete rewrite of the encoding kernel to support iOS5, for example. If not, it’s usually a matter of identifying the small changes that developers at Apple have made between iOS versions and adding an additional codepath for the new iOS version. For really simple tweaks it often happens to work out of box on the new iOS version.

Do you believe you would have the required skills to assist or aid in a future jailbreak exploit?

This base is already well covered by other hackers and they do fine work as is.

What is your stance on the jailbreaking community?

There is no single community, only many fragmented sub-communities. I enjoy interacting with other smart developers and supporting users that are polite and courteous. As the ecosystem continues to grow, I fear those elements will become a smaller part of it.

Which iOS developers do you know or work closest with? Do you know the prominent developers such as MuscleNerd, planetbeing, pod2g, chpwn, and such?

Most of the top-tier developers are friendly, but I’ve only collaborated with a few of them. I’ve worked closest with chpwn.

What are your thoughts on other mobile operating systems such as Android, Windows Phone, and webOS?

I don’t use any of those platforms on a regular basis, but having them around [motivates] Apple to continue innovating on iOS. Google is employing a big tent strategy with Android that is proving very effective with both carriers and consumers. Windows Phone and webOS both have interesting takes on UI design that make for unique experiences–I think if the carriers would actually promote them and get them in front of users, they’d gain a lot more traction.

Do you have any final words or remarks to say about yourself and the jailbreaking community as as whole?

Check out my website at http://rpetri.ch/ or follow me on twitter as @rpetrich – I’m always interested in getting feedback from fellow jailbreakers :)

I would like to sincerely thank Ryan Petrich for allowing iFans to drain his mind, since we asked him quite a few questions. If you liked this interview, please support Petrich by using his Cydia tweaks and avoiding piracy. Thanks again, Ryan.

Post a response / What do you think?