Here is what the apple site says:

With Snow Leopard, Mac OS X makes it easy to use scripting languages as full application development tools. Snow Leopard ships with support for the RubyCocoa Bridge and the PyObjC bridge. These two bridges give developers access not only to system APIs, but to Cocoa frameworks such as AppKit and Core Data, enabling you to build fully native Mac OS X applications in Ruby or Python. The RubyCocoa and PyObjC bridges allow you to freely mix code written in Objective-C with code written in the scripting language. You can quickly build prototypes and then optimise by implementing performance-critical pieces in Objective-C.

How could Python help in this case?

  • 2
    Knowing Python (among other relatively unique languages) would help with being a better programmer.
    – user7043
    Commented Feb 10, 2011 at 14:30

2 Answers 2


If you are already familiar with Python, it could avoid the need of learning the complexities of Objective C - you would just need to learn enough to wrap the Python.

It is generally thought to be true that working in languages like Python is more productive than doing similar things in C-style languages - so you may be able to develop faster and meet your customers needs more quickly.

I'd look at this website for information on how to develop iPhone applications in Python - since Apple don't actually support this themselves.


Python's a great language, but I do not think it is worth it to try to learn the Python language and iPhone programming simultaneously. CocoaTouch has a learning curve and 90+% of the material on programming iOS is going to assume Obj-C. There's a little out there for MonoTouch (C#).

I think the problem is that if you read a Python book you're going to get one set of explanations about primitive types (strings, for instance) and memory management and collection classes, but when you program for the iPhone, you're almost certainly going to have to use the native iOS facilities. It's difficult to "mix and match" that sort of stuff when you're learning both sides of the equation.

Having said that, I have a friend who likes Python for programming Android apps, so you aren't entirely locked out of the mobile world! ;-)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.