The World’s Leading Microsoft .NET Magazine
   
 
The .NET Addict's Blog

My Top Tags

                                                           

My RSS Feeds








Latest Diggs - Programming

Internet Blogs - Blog Top Sites

Site Hits

Total: 2,502,635
since: 19 Jan 2005

My take on the iPhone SDK

posted Sat 08 Mar 08

So, to start with, I need to preface this blog post with a notice: The contents of the SDK as well as the experiences that occur while using the SDK are confidential. Yes, I am one of those crazy-weird people who read EULAs and license agreements. When you agree to installing the SDK, you agree to those terms. Anybody posting information about the innards of the SDK is violating the agreement and subject to assault by massive teams of rifle-toting SWAT guys.

So, the opinions and information I post here will be based on information in the public domain, such as Steve Jobs' keynote and information you can find on Apple's website without logging in using your ADC or iPhone Developer credentials.

So, here's what it looks like you can do with the SDK on the iPhone:

  • Full access to low-level BSD sockets. I presume there are higher-level abstractions available, but... think about it, you've got SOCKET access on an iPhone. While you can get sockets on a Windows Mobile phone... what's the point? :)
  • Unix. Just about anything you can do on a trimmed down Unix kernel you can do on your iPhone. That sets off every single geek endorphin in my body.
  • Core Services. This was mentioned, looks to be some layer of services akin to Foundation on Leopard.
  • Quartz. This one requires an obligatory OMFG. Quartz, the single coolest 2d compositional rendering engine on the planet, and its available to developers on the iPhone.
  • OpenGL ES. Spore. Super Monkey Ball. On the iPhone. 'nuff said.
  • SQLite. Full flat-file database library/API right on the phone.
  • Distribution and e-Commerce. 70/30 split, you keep 70% Apple keeps 30%. Apple handles the distro for you and if your app gets approved, it shows up as a possible purchase on every single iPhone in the world.

So, let's run this down again. When developing native applications for the iPhone, you get virtually unlimited access to the Unix subsystem and networking stack (though I've been told there's no VoIP on cell net, only WiFi. Similar, quite reasonable, limitations may also exist). You get to write your applications in Objective-C and use a Cocoa-like framework library. You get access to what is, in my opinion, the most powerful 2D graphics API available - Quartz. You get access to OpenGL on the iPhone for full 3D graphics and animation at what (from the demos) appears to be an incredibly good frame rate. Any app you make that doesn't violate the list of exceptions will be held, distributed, and sold by Apple. You get 70% of the cut. If you release an update to the application, iPhone users will be able to download an update to that application directly from their phones without even having to tether with iTunes!!

When I first heard about the iPhone SDK, I was both excited and a little worried. You see, I've been using the .NET Compact Framework on and off for quite some time, and I did development for PalmOS before that (#(@)#!@# little-endian<->big-endian conversions can bite me!). Quite possibly one of the coolest things about the .NET Compact Framework is that you can create an application and deploy it to any Windows Mobile device. If you create an installer that runs on a Windows PC, it will use ActiveSync and get installed on the associated Windows Mobile device. I was worried that the iPhone SDK would create an experience that was more difficult for developers to get stuff on the phone.

I couldn't have been more wrong, and I've never been happier to have one of my assumptions prove incorrect. Instead of developers building an installer and then figuring out how to host the installer and where to put it and how to charge for it, developers just give the single App file to apple, tell them about the app and how much to charge, and that's that. Better yet, iPhone users don't have to use their PCs to download and install an app and then tether up to install it. Using the App Store (scheduled in June as part of the iPhone OS 2.0 release), iPhone users will be able to browse, buy, download, and install applications all from their iPhone without ever having to tether or involve a PC. That folks, is what a mobile "digital lifestyle" device experience should be like.

I can't wait until June to find out what kinds of amazingly cool stuff people are making for the iPhone and the iPod touch. I will predict, however, that people are going to find some insane things to do with the accelerometers and the Core Location services, as well as OpenGL ES.

tags:            

links: digg this    del.icio.us    technorati    reddit




1. John C. Randolph left...
Tue 11 Mar 08 8:32 am

I noticed a number of people griping about the 30% to Apple for apps distributed through iTunes, and it seems that very few of them know that a 30% distributor cut is typical for the software publishing industry. This is actually a better deal than most, because you're not paying additional money for shelf placement at dealer locations, co-op advertising, etc.

-jcr


2. Kevin Hoffman left...
Tue 11 Mar 08 12:48 pm

Totally agree... If you think about it, if you pay $0 up front (the one-time fee is a tax write-off for anybody making money from this venture on your Schedule C, so quit whining ;)) and then the distributor, who is handling all infrastructure, and giving you direct access to every iPhone (legal) in the world right through the App Store - that's a phenomenal deal... for once, all developers have to worry about is actually building the app and not worry about getting it safely and reliably into the hands of eager consumers.


Tag Related Posts

MobileMe vs. Live Mesh Throwdown - Round 1

Wed 16 Jul 08 10:33 A GMT-05

Building Model Classes in C# and Cocoa

Sun 15 Jun 08 3:13 P GMT-05
tags:            

MobileMe vs. Live Mesh - Round 1

Wed 11 Jun 08 12:20 A GMT-05

My Macbook Air is masculine, dammit!

Mon 17 Mar 08 6:59 P GMT-05
tags:          

iPhone Developer Summit

Sun 16 Mar 08 8:39 P GMT-05

iPhone Underrated as a Gaming Device?

Fri 14 Mar 08 1:50 P GMT-05
tags:        

My take on the iPhone SDK

Sat 08 Mar 08 1:39 P GMT-05

Jobs says "not likely" to Flash on the iPhone

Thu 06 Mar 08 1:39 A GMT-05
tags:          

My Macbook Air Review

Sun 02 Mar 08 4:20 P GMT-05

iPhone Roadmap March 6th

Fri 29 Feb 08 10:41 P GMT-05
tags:        

Video of the Macbook Air in Action

Wed 20 Feb 08 3:04 P GMT-05

Macbook Airはきれいですよ!

Sun 17 Feb 08 2:38 A GMT-05

Why is O'Reilly Condoning iPhone Hacking?

Mon 11 Feb 08 3:55 P GMT-05

Evaluating my next laptop purchase

Wed 06 Feb 08 8:40 P GMT-05

The iPhone SDK key has been leaked! Oh Noez!!!1

Tue 29 Jan 08 11:36 A GMT-05
tags:        

Why Geeks just don't "get" the Macbook Air

Thu 17 Jan 08 2:30 P GMT-05

Popcorn + TiVo + Macbook Pro + iPhone == Hell Yeah!

Tue 15 Jan 08 3:11 P GMT-05
tags:          

How my ADC membership changed my life

Mon 31 Dec 07 3:57 P GMT-05
tags:      

Leopard Code Sample : Sprinkling in some Bonjour

Tue 27 Nov 07 2:32 P GMT-05
tags:        

Will Google's Android sink or swim?

Fri 16 Nov 07 7:08 P GMT-05
tags:        

Celebrity Death Match: iPhone vs. gPhone

Tue 06 Nov 07 1:52 A GMT-05
tags:    

Leopard Sample: A Bound NSCollectionView

Mon 29 Oct 07 1:41 A GMT-05

Leopard is out - let the code samples begin!

Fri 26 Oct 07 10:09 A GMT-05
tags:          

My life is complete : iPhone SDK is CONFIRMED.

Wed 17 Oct 07 6:38 P GMT-05
tags:          

Leopard Shipping October 26th!!

Tue 16 Oct 07 4:59 P GMT-05
tags:        

Editorial : My thoughts on iPhone Hacking

Tue 25 Sep 07 6:10 P GMT-05
tags:      

$4800 iPhone Bill for International Data Roaming

Mon 10 Sep 07 1:15 P GMT-05
tags:    

iPhone Apps are now also iPod Touch Apps

Sat 08 Sep 07 7:33 P GMT-05
tags:    

Using the iPhone Keyboard

Fri 31 Aug 07 2:08 P GMT-05
tags:      

Meebo on my iPhone - a useable IM client!

Tue 24 Jul 07 2:56 P GMT-05
tags:    

My iPhone Review

Mon 23 Jul 07 1:09 P GMT-05
tags:        

Wil Shipley Discusses the lack of iPhone SDK

Mon 09 Jul 07 1:50 P GMT-05
tags:    

OMFGWTF iPhonez0rz!!1!one!!

Fri 29 Jun 07 5:45 P GMT-05
tags:  

Microsoft Codename Acropolis - Unwrapped

Wed 20 Jun 07 3:22 P GMT-05
tags:              

A .NET Developer's Take on the WWDC 2007 Keynote

Mon 11 Jun 07 8:35 P GMT-05
tags:    

4th row back at the WWDC 2007 Keynote

Mon 11 Jun 07 4:51 P GMT-05
tags:    

Waiting for the WWDC Keynote to start...

Mon 11 Jun 07 3:49 P GMT-05
tags:    

Exploring the Delegate Design Pattern

Mon 14 May 07 6:30 P GMT-05

Core Data - Almost too Easy?

Wed 18 Apr 07 2:23 P GMT-05

An experience with the Leopard beta

Mon 26 Mar 07 7:45 P GMT-05
tags: