How to run .NET apps on the iPhone
Yes, that's right, on the iPhone. Not only there, but on the Wii and the Android phone as well.
Side note: I got to look at an Android phone at CodeMash. It was ok. It felt heavy for it’s size. The UI was confusing for me, but the GMail interface was very strong.
Anyway, I was browsing ArsTechnica this morning and came across this article, “Open source Mono framework brings C# to iPhone and Wii”. What really piqued my interest was because I just got back from CodeMash, where we had an iPhone development workshop.
In it Ryan Paul discusses how developers have been getting around Apple’s restrictive policies on not allowing interpreted and runtime based platforms on the iPhone. If that isn’t directly aimed at .NET, Java, and other really popular languages right now, I don’t know what is.
It seems that people are using Mono (from Novell, the brain child of Miguel de Icaza) to generate binaries. Mono provides the ability to skip CIL in the compilation process, and go straight to binaries. This bypasses the need for the runtime environment on the phone. There are other tricks they use to make this all work (pre-linking in all the other assemblies is an example).
There is also a full fledged 3-D game development platform called Unity, which was developed on Mono. You can use it to build games for the iPhone or the Wii.
This just goes to show that this is indeed the second Renaissance, as people are using these tools in ways their creators could not have imagined. These tools are following the same thought we have had with our tools. We want you to be able to migrate your skills and knowledge into other scenarios. Know .NET? Then you can use 90% of those skills on Web, RIA, Windows desktop, services, integration, XNA, the cloud, mobile, and now iPhone and Wii. To squeeze more ROI out of the investment you have in your tools and skills, you should look for more avenues to leverage them. And heck, I bet these people are smirking just a little bit by finding a way around the restrictions in the iPhone SDK.
“Let a thousand poppies bloom.”
One thing that Apple is forgetting in their policies, in their zeal to control the whole platform, is that true adoption and love comes from letting people do what they want with what they own. Think of kids with cassette tapes, and CD’s. Or the people with PSP’s, or Honda Civics. Those are examples of both industries that have restricted what you can do with what you own and paid for it in the long term, and some that are open to people doing what they want.
Sony at first restricted what people could do on and with their PSPs. Fortunately, they backed off, and even started supplying extra tools and access for home brewers. Now the PSP is a very strong mobile device segment.
Comments