main
Report a problem

Apple's iPhone to get .NET app development through Novell

Sam Symons   on 14 September 2009 - 08:56 · 38 comments & 8391 views

Advertisement (Why?)
When Apple introduced the App Store for its iPhone device, there was nothing but talk of financial paradise for some developers. Even a single coder could get into the game, bringing with them only an interesting and unique title, and begin hauling in literally thousands of dollars. It was great for some, though for those on the Windows side of the world, not so much. As you may know, to develop applications for the iPhone, you need to use Xcode and the iPhone SDK, which is only available for Apple's OS X operating system. To top it off, knowing Apple's Objective-C programming language is essential too, which isn't desirable for some. Luckily, the company Novell is stepping in to help out, soon providing tools to allow iPhone application development using .NET and C# instead.

The kit, dubbed MonoTouch, will be available on Monday and will harness the power of Novell's 'Mono' runtime environment that allows execution of Windows application code on non-Windows systems. Miguel de Icaza, who is the vice president of the developer platform with the company (and also leader of the project in question), said, "What's important here is that C# and .Net are considerably more productive development environments than the native iPhone language, which is Objective-C."

The software will integrate itself into Xcode to allow developers to still test their software on the iPhone simulator, or even a physical device itself, which is even handier. Al Hilwa, the program director for application software at IDC, noted, "MonoTouch brings a new option to the table. I would say that applications closest to the metal will continue to be written in Objective-C, but where developers want to target multiple platforms, including apps that cross over between desktop and mobile, MonoTouch allows them that portability. Of course, the big win with it is that it opens the door for some 5 million .Net developers to begin to do iPhone applications. The success of the iPhone and apps for the iPhone suggest that Objective-C is being well-tolerated out there even though people complain about its lack of familiarity. The average developer has to learn Objective-C to program on the iPhone, very few developers know it to start."

If you're interested in this, and you're not a high ranking member in a wealthy organization, then you're probably out of luck. The program is aimed at developing business applications, and as such, comes with a business-sized price tag. If you want a year long subscription for the Enterprise Edition, it'll set you back $999, compared to the $99 yearly fee which Apple charges; whether that's worth the saved time you'll get from not having to learn another language is up to the business, but it would certainly cost a fair bit (in terms of both money and time) to educate engineers on Objective-C.

Post a comment · Send to friend Comments · There are 38 additional comments
(3 replies) #1 BGM on 14 Sep 2009 - 09:03
this is AMAZING!!

and to think i nearly bought a mac just so i could do some dev for this...

now to convince my employer that this will be a worthy investment.. hmmm
#1.1 Pc_Madness on 14 Sep 2009 - 09:39
BGM said,
and to think i nearly bought a mac just so i could do some dev for this...


Well keep thinking it sun shine, last time I checked Xcode is OS X only.
#1.2 BGM on 14 Sep 2009 - 14:57
Pc_Madness said,
Well keep thinking it sun shine, last time I checked Xcode is OS X only.

sunshine?!
#1.3 cakesy on 14 Sep 2009 - 22:08
BGM said,
this is AMAZING!!

and to think i nearly bought a mac just so i could do some dev for this...

now to convince my employer that this will be a worthy investment.. hmmm

I hated objective-c at first, but I got used to it, and it is a nice little language. The Xcode development environment is great as well. Not so hard for someone to go from c# to Obj-C. I always think it is better to program in the native language on whatever platform you are using (java for bb, google phone, c++ windows, linu.
#2 TonyLock on 14 Sep 2009 - 09:10
I jus wish there was native support for Flash in Mobile Safari
and that Apple allowed for other POP3/iMAP eMail clients in the AppStore.
(1 reply) #3 Jugalator on 14 Sep 2009 - 09:37
Soon enough, the iPhone will be able to do as much as Zombo.com!
#3.1 m!ke on 14 Sep 2009 - 15:37
Wow, i find it amazing its still online.
(5 replies) #4 gianpan on 14 Sep 2009 - 11:16
so you write the programs in C# and just submit to app store like you do with objective C?
Still it's not very portable, as I imagine iphone SDK will have a lot of API's involving touch screen and iphone specific actions that desktops lack.. It will probably save time on some projects, but I am not sure if it's worth it. Maybe just for enterprises.
#4.1 Jugalator on 14 Sep 2009 - 11:41
gianpan said,
so you write the programs in C# and just submit to app store like you do with objective C?
Still it's not very portable, as I imagine iphone SDK will have a lot of API's involving touch screen and iphone specific actions that desktops lack.. It will probably save time on some projects, but I am not sure if it's worth it. Maybe just for enterprises.

Don't base your judgment on assumptions. The MonoTouch API will have those iPhone specific actions supported.

MonoTouch API Documentation

... and your specific example about handling a registered touch screen event: (supports swipes and more too)
MonoTouch.UIKit.UITouch Class
#4.2 gianpan on 14 Sep 2009 - 12:05
Jugalator said,
gianpan said,
so you write the programs in C# and just submit to app store like you do with objective C?
Still it's not very portable, as I imagine iphone SDK will have a lot of API's involving touch screen and iphone specific actions that desktops lack.. It will probably save time on some projects, but I am not sure if it's worth it. Maybe just for enterprises.

Don't base your judgment on assumptions. The MonoTouch API will have those iPhone specific actions supported.

MonoTouch API Documentation

... and your specific example about handling a registered touch screen event: (supports swipes and more too)
MonoTouch.UIKit.UITouch Class

My point was actually that for most iPhone apps it's not worth to port them over any other device especially desktops. I assume it's worth it for some people though. If you could easily port your apps between iphone-android-RIM-winmo then it would be great.

"We have only tested MonoTouch with iPhoneOS 3.0 and 3.1 and we do not know if it would work with older versions."
That's worrying me a bit.

#4.3 wakers01 on 14 Sep 2009 - 13:48
I think the point of the article and the project in general may be that a lot of developers program in .Net and don't want to take the time to learn objective C, or spend the money on a mac just to develop apps on the iphone. It opens up iphone development to a large segment of developers that has remained untapped. This could be a good thing for Apple.
#4.4 Jugalator on 14 Sep 2009 - 14:17
wakers01 said,
I think the point of the article and the project in general may be that a lot of developers program in .Net and don't want to take the time to learn objective C, or spend the money on a mac just to develop apps on the iphone. It opens up iphone development to a large segment of developers that has remained untapped. This could be a good thing for Apple.

Yes, that's how I read it too. Objective C is a systems programming language like C, so it's pretty clear to me that this could be important to many people not wanting to learn a niche language used by almost just Apple alone.
#4.5 gianpan on 14 Sep 2009 - 17:23
wakers01 said,
I think the point of the article and the project in general may be that a lot of developers program in .Net and don't want to take the time to learn objective C, or spend the money on a mac just to develop apps on the iphone. It opens up iphone development to a large segment of developers that has remained untapped. This could be a good thing for Apple.

You still need a mac for it.
As I said I am sure there is a market for it but it's not that great as it seems at first. If they could make it work for other platforms too such as android then it would rock. I don't know many mobile platforms that use C# but I doubt any other than winMobile if that.
#5 agreenbhm on 14 Sep 2009 - 11:39
Just sounds kind of funny to me that Novell is helping Windows devs on an Apple product.
(3 replies) #6 _dandy_ on 14 Sep 2009 - 12:13
> it'll set you back $999, compared to the $99 yearly fee which Apple charges; whether that's worth the saved
> time you'll get from not having to learn another language is up to the business

Seriously? Comparing the time required to "learn another language" (and then becoming productive with it) vs $900?

Unless you're just a hobbyist, that'll pay for itself in developer time in less than a week.
#6.1 kizzaaa on 14 Sep 2009 - 13:11
That's exactly what I was thinking.
#6.2 cakesy on 14 Sep 2009 - 22:08
_dandy_ said,
> it'll set you back $999, compared to the $99 yearly fee which Apple charges; whether that's worth the saved
> time you'll get from not having to learn another language is up to the business

Seriously? Comparing the time required to "learn another language" (and then becoming productive with it) vs $900?

Unless you're just a hobbyist, that'll pay for itself in developer time in less than a week.


You should never be afraid to learn another language. There is a word for people who only know one language, and that word is not developer.
#6.3 _dandy_ on 19 Sep 2009 - 19:08
cakesy said,
_dandy_ said,
> it'll set you back $999, compared to the $99 yearly fee which Apple charges; whether that's worth the saved
> time you'll get from not having to learn another language is up to the business

Seriously? Comparing the time required to "learn another language" (and then becoming productive with it) vs $900?

Unless you're just a hobbyist, that'll pay for itself in developer time in less than a week.


You should never be afraid to learn another language. There is a word for people who only know one language, and that word is not developer.


Nothing wrong with learning multiple languages; I was just saying that if you can shorten your development time by spending $1000, most would do that without thinking twice--unless, as I said, you're just a hobbyist. How much developer time do you think you can buy for that?
(5 replies) #7 ZeroHour on 14 Sep 2009 - 13:27
I still cant believe Apple have not got a windows dev kit yet, fail....
#7.1 roadwarrior on 14 Sep 2009 - 15:54
Does Microsoft have a dev kit for OS X to develop Windows Mobile apps?
#7.2 C_Guy on 14 Sep 2009 - 16:26
Probably not but the difference is, Microsoft has left the door open for the vast majority of developers.
#7.3 MioTheGreat on 14 Sep 2009 - 19:50
roadwarrior said,
Does Microsoft have a dev kit for OS X to develop Windows Mobile apps?


You're legally allowed to run Windows in a virtual machine on OSX. The same cannot be said for OSX on Windows.
#7.4 cakesy on 14 Sep 2009 - 22:09
C_Guy said,
Probably not but the difference is, Microsoft has left the door open for the vast majority of developers.

Nice troll. Apple is just as open as Microsoft, and gives away the full development environment for free, not just a cut down version.
#7.5 M_Lyons10 on 14 Sep 2009 - 22:31
MioTheGreat said,
You're legally allowed to run Windows in a virtual machine on OSX. The same cannot be said for OSX on Windows.


Exactly. I hope to see that resolved at some point. Wasn't there a court case in the works by one of the companies that was installing Mac OSX on PC's? I forget which one, but I remember the judge agreeing to hear it and everything.
(1 reply) #8 dimithrak on 14 Sep 2009 - 13:31
hmmm will apple let this happen? interesting.. i just hope Novells application is not 3 times as expensive..
#8.1 Jugalator on 14 Sep 2009 - 14:21
dimithrak said,
hmmm will apple let this happen? interesting.. i just hope Novells application is not 3 times as expensive..

Why shouldn't they? It could dramatically help tearing down barriers of entry for iPhone devs who're afraid of Objective C, and someone now even did the work for Apple.

I'm not really sure what you mean, but if you're thinking this will help *backports*, i.e. iPhone .NET apps ported to Windows or Linux (with Mono) more easily, I don't think that'll be much of a worry for Apple, as lots of hardware would be missing, and the app would often be poorly fit for the new kind of user interaction itself.
(4 replies) #9 GreyWolfSC on 14 Sep 2009 - 14:25
This should actually help the iPhone as a business tool. It will allow enterprise developers to port their .NET apps without translating them into another programming language.
#9.1 +evn. on 14 Sep 2009 - 14:47
GreyWolfSC said,
This should actually help the iPhone as a business tool. It will allow enterprise developers to port their .NET apps without translating them into another programming language.

Honest question: are there a lot of .Net applications for Windows Mobile that are one-off for a business?

Given that Windows Mobile is relatively tiny so far as corporate phones go (BlackBerry ftw?) it didn't seem like something that would have a lot of irreplaceable one-off applications.

Moving your desktop software to a phone is a significant effort, as all embedded projects are. Consider something that plays back video or renders in 3D at 60 frames per second on a typical desktop (like a Mac Mini or the windows equivalent) turns into a 1-frame per second slide show (best case) on an iPhone.

Likewise 1 second searching or encoding tasks will take a minute. Then there's there's the whole UI issue to contend with.

I really hope it works out as having a .Net runtime opens the doors for even more languages (Python, Ruby, Cobol, Java, etc) but I'm doubtful about "it just works" claims when it comes to porting code to tiny platforms.
#9.2 GreyWolfSC on 14 Sep 2009 - 15:38
I don't know about phones, but I've done quite a few jobs where the client wanted PocketPC integration for remote order submission, etc. If the app could be easily ported to run on the iPhone as well it would have been a bonus for my customers. I can't think of a lot of business apps that require 60fps 3D. I think the .NET framework for OS X would be one of the best possible ports for Microsoft to undertake.
#9.3 Shadrack on 14 Sep 2009 - 15:43
evn. said,
Honest question: are there a lot of .Net applications for Windows Mobile that are one-off for a business?

Given that Windows Mobile is relatively tiny so far as corporate phones go (BlackBerry ftw?) it didn't seem like something that would have a lot of irreplaceable one-off applications.

Moving your desktop software to a phone is a significant effort, as all embedded projects are. Consider something that plays back video or renders in 3D at 60 frames per second on a typical desktop (like a Mac Mini or the windows equivalent) turns into a 1-frame per second slide show (best case) on an iPhone.

Likewise 1 second searching or encoding tasks will take a minute. Then there's there's the whole UI issue to contend with.

I really hope it works out as having a .Net runtime opens the doors for even more languages (Python, Ruby, Cobol, Java, etc) but I'm doubtful about "it just works" claims when it comes to porting code to tiny platforms.


Umm... I don't think enterprises will be porting 3d rendering apps. Most likely thin clients for databases.
#9.4 +evn. on 14 Sep 2009 - 16:22
I can't think of a lot of business apps that require 60fps 3D. I think the .NET framework for OS X would be one of the best possible ports for Microsoft to undertake.


The point was not that you'd write something that needs 3D video, but that things that are trivially unimportant on a desktop become "OMFG" performance problems on the iPhone. Video and 3D are the most simple ways to illustrate the concern.

A common example would be scrolling a table of self-drawing controls. Performance very quickly goes from "acceptable" to "unusable" and people don't take the time to limit the amount of drawing they do and end up orders of magnitude more complexity than they need until performance is an issue on desktop apps. Even on OS X in the 10.0-2 days where the graphics system was appallingly slow mac developers needed to be beaten over the head to "do the right thing".

One of the iPhone Twitter client developers had a story about the effort involved in getting acceptable performance.


Cranking out the typical "ruby on rails script/generate scaffold" app is trivial: but then any application that basic could be written in Cocoa-C/Objective-C by any half-way competent developer in a couple of days even without Mac development experience.

I'd like to see Microsoft port Visual Studio and .Net: it's the best IDE I've seen—but that works against their goals of shipping Windows/Exchange/etc. licenses. I'm not holding my breath waiting on that just like I'm not waiting on Apple licensing Mac OS X to Dell, HP & co.
#10 satus on 14 Sep 2009 - 16:05
Nice, coding in .NET is a piece of cake for everyone.
(1 reply) #11 +Echilon on 14 Sep 2009 - 18:21
Great, we can develop in .NET. Shame on them for charging $999 for it. Oh well.
#11.1 gianpan on 15 Sep 2009 - 07:13
Echilon said,
Great, we can develop in .NET. Shame on them for charging $999 for it. Oh well.

it's 399$ for one person.

999$ is the enterprise version. So it's 499$ a year and it's not that much if you are making money from app store.
(1 reply) #12 Jet Blazer on 14 Sep 2009 - 19:01
Novell (a linux supporter) is helping Windows developers to code for Apple. Now isn't that an interesting business model?
#12.1 SirEvan on 14 Sep 2009 - 19:34
money makes the world go round...wish it were cheaper, and supported vb.net, since I haven't learned C# yet.
#13 Pompeius on 14 Sep 2009 - 21:29
why on earth are some of you saying that it would be a good idea for MS to port .NET to Mac? That would be perhaps the worst mistake they could make. .NET was designed to allow for rapid development of Windows applications, so that Windows would be a more desirable platform for consumers/businesses.
#14 datarecovery on 15 Sep 2009 - 19:27
Wow, I hope this isn't true. Microsoft products don't need to be on an iphone. If anything it should be excel, word and outlook. Mac data recovery will definitely be needed.

Commenting has either been disabled on this article or you are not logged in. Click here to login or register, its free!

Note: Anonymous commenting is disabled in order to keep the quality of responses to a high standard.

Advertisement (Why?)