Wednesday, June 13, 2007

Why Safari On The iPhone Is Awesome

For a quick recap: Last Monday (June 11th) at WWDC 2007 (Worldwide Developer's Conference), Apple announced that the iPhone will not have an SDK (Software Development Kit). This means that developers will not be able to write software that runs natively on the iPhone.

Apple announced that instead of an SDK, they've brought Safari to the iPhone. Safari is a Mac Web Browser (recently Safari was released for Windows). This means that developers WILL be able to write software that runs in a browser, that will in turn run on the iPhone.

This announcement was met with a plethora of boos, like this post from Gizmodo:
Fast And Furious: No iPhone SDK Means No Killer iPhone Apps

The Digg article referencing that Gizmodo post has several comments expressing the Digg crowd's sentiment:
"Thank you Mr. Steve Jobs for helping me make my decision to buy a PS3." [link]

"That 'SDK' for the iPhone is a slap in the face to developers." [link]

[Steve Jobs] showed a lot of disrespect to all those people who came out there hoping to hear something exciting they could work on. He basically told a bunch developers waiting to build great apps to go build a html page. [link]

Steve Jobs should have listened to Ballmer. "DEVELOPERS! DEVELOPERS! DEVELOPERS!" [link]
It's clear that many people were expecting Apple to release an SDK like Microsoft does for the Windows Mobile platform.

Months ago, when I first heard that Apple would not release an SDK, I agreed with these quotes. I thought the iPhone would be a joke, that it would flop, and that it would be undeserving of being called a "smartphone."

But after learning that the iPhone's Safari will be able to run full-fledged Ajax applications, I've completely changed my mind.

Honestly, why is it such a bad move on Apple's part? As a developer, I am much more willing to write a web application, which I have been doing for a living for the past two years, than learn another programming language so I can write applications that run ONLY on the iPhone. If you are a developer, which would you rather do? Perhaps Steve Jobs is thinking about "developers developers developers."

Software can be written right now that would run on the iPhone at release. Dozens of existing web applications will run on the iPhone at release.

My only gripe with Apple's decision here is this: I've always been reluctant to purchase a mobile data plan (they're too expensive). If all my apps must be web apps, and I don't have access to the web, it would seem that I'd be completely unable to run anything. So I'd be forced into a data plan.

But wait.

Didn't Google JUST release a product that helps take web applications offline? Yes, Google Gears promises to do just that. Currently, Google Gears is available for Firefox and Internet Explorer. But if you look at the fine print:


You can see that Safari support is coming soon. :-)

With Google Gears, it will be much easier to develop web applications that don't require a constant internet connection. I think this will be an awesome partnership that helps broaden the possibilities for mobile applications (at least for those of us who might be without an unlimited data plan).

Just one example is Google Reader. I've always wanted to be able to use Google Reader on my mobile phone while offline. Then after reading some of my feeds, to be able to sync back up, marking as read the feeds I'd seen, starring the feeds I'd starred, and keeping unread the feeds I hadn't yet seen.

With iPhone Safari + Google Gears, things like this don't seem too far off.

Labels: , ,

6 Comments:

Blogger Plum said...

Now if only Apple didn't release Safari for Windows with 4 major DoS and more Execution Injection flaws....

But at least a device will finally have full browser experience!

6/13/2007 07:59:00 AM  
Blogger CJ said...

You said it Plum. It's kinda sad that Safari had all those security vulnerabilities revealed almost immediately, but in all honesty, it could've been much worse. For the first-time release to a new OS, I'd say Apple did pretty well!

6/13/2007 08:01:00 AM  
Blogger Kent said...

I think you're being over enthusiastic. How will Google Gears be implemented on the Safari iPhone without a native SDK? I think that it simply won't. Remember that Google Gears in itself isn't a web application.

6/13/2007 03:26:00 PM  
Blogger CJ said...

We shall see, Kent. :-)

6/13/2007 04:14:00 PM  
Blogger Florent Thiery said...

Why would an AJAX app need to be online ? Why not embedding a light webserver and backend ? Yes, the app code will be on the phone, so what ?

I think they'll do it : a mix of webapps and local webapps...

Google gears is just sqlite wrapped in a webbrowser...

6/15/2007 03:57:00 AM  
Blogger CJ said...

Florent,

What you're saying makes sense in that it would enable AJAX apps to be run offline, but only AJAX apps that are downloaded and run locally.

Embedding a light web server and database on the iPhone wouldn't enable existing web applications to work on the iPhone.

Google Gears is more than just sqlite wrapped in a web browser. It's an API that individual web app developers can use to bring their web apps offline, and that's what needs to happen.

Unless of course, data plans for Internet on the mobile device becomes ubiquitous (or Wi-Fi etc). This seems to be the ideal end. Instead of making all the existing apps work offline, empower each user with a constant connection.

6/15/2007 05:48:00 AM  

Post a Comment

<< Home