Ammo Navigation Weblog Company Support Store Rogue Amoeba
Rogue Amoeba
Mon, 11 Jun 2007

Dear Apple,

What a WWDC 2007 keynote! We developers are a hard bunch to please, but this year you came through.

Ever since the iPhone was announced back in January, we've been making requests for the ability to take part in this revolutionary product. And it looks like you've heard our requests, and taken the initiative to fulfill them! For this we must thank you.

We know that making SDKs is not easy, and so it boggles the mind that you were able to create a complete iPhone SDK so quickly! So much access, provided so seamlessly - it is really quite amazing.

With this new SDK, we can create something neither of us could possibly have done alone, and make the iPhone platform the mobile platform to develop for.

Anxiously awaiting his copy of the iPhone SDK,
Sarcastic Developer

Update (6/12/2007): See our follow-up post for more.

Posted by Quentin | Permalink | View/Post Comments (95)

Comments


Rory
Mon Jun 11 15:42:50 2007

Amen to that. What a huge disappointment.

Jonathan LaCour
Mon Jun 11 15:57:35 2007

Dear Developers,

I know you aren't excited about having to learn HTML, CSS, JavaScript, and any of your choice of web frameworks (Ruby on Rails, Django, TurboGears, Seaside, etc.), but really, its about time you jumped on this whole Internet bandwagon.

Sincerely,

Steve Jobs

Casey
Mon Jun 11 15:59:59 2007

Not just disappointed, but insulted. Of course web apps can be deployed on the iPhone, it has a browser doesn't it? They can also be deployed on pretty much any other smartphone.

Michael Dupuis
Mon Jun 11 16:01:45 2007

So well said. Apparently if we want to develop for the iPhone, we have to be web developers, and develop web apps. Saying we can develop "Web 2.0 apps using AJAX" is just a nice way of saying "No 3rd party apps and no 3rd party widgets." sigh

Nick Yang
Mon Jun 11 16:15:02 2007

Seriously. What's wrong with web apps? It's like saying "OMG, google sucks and useless. It's just a damn web page."

I have a Nokia symbian phone and I have nothing but trouble everytime I try to install some apps. When I have to pull out my battery and restart my phone to remove the app, I blame the stupid app, but I also curse at stupid Nokia.  I don't think Apple wants that.

Mike Shields
Mon Jun 11 16:26:40 2007

So everyone is complaining that Apple, who initially said that there would be no third party apps, but later said they'd allow something, is allowing widgets.

Hell people like Gruber have pointed out that applications are coming - quoting SJ at the D conference "We’ve got good ideas, and sometime later this year, we can open it up to third-party apps, and keep security".

This is step 1 in allowing real apps on the phone. Maybe once it Apple gets a real API that's not changing all the time (and causing even more whining to happen) and maybe LLVM implemented and running well enough to allow for sandboxing of the C-based apps and processor swaps with no problems we'll see "real" development.

In the mean time, stop being whiny crybabies.

Sebhelyesfarku
Mon Jun 11 17:09:47 2007

Maybe maczealot Gruber will write a Skype client as a web app in html and javascript LOL

mark
Mon Jun 11 17:14:02 2007

When you get over feeling as if you were insulted and disrespected by Steve, then you'll realize this is a good first step and better than nothing.  I don't know why anyone expected a good SDK so soon (the iPhone hasn't even been released).

The iPhone will present the web better than any cell phone out there, so if you design a neat capability in a good looking web app, it will work just that way on the iPhone.  That said, I wish Apple would release guidelines or an example of how we can better utilize the iPhone touch screen and keyboard in the web app.

I'm hoping that over time Apple will release more iPhone software as a more versatile front-end to any web app.

Paul (Rogue Amoeba Staff)
Mon Jun 11 17:35:13 2007

Jonathan: Web frameworks are nice and all, but they're not useful in creating real apps. Plenty of developers can do great web design, but it's not the same as creating real apps.

Casey: Insulted is not a bad word to describe it. If they'd said nothing, sure. But this is saying "Hey, look! Webpages!" as if somewhere, someone thought Safari would have a whitelist.

Nick: Web apps are fine, but they're not real applications, with real access to things like the hard drive or the OS. Even Widgets on OS X can do much more than a web app can.

Mike: Whiney crybabies? I hardly think so. We just don't like being BSed, and that's what this is.

These are NOT widgets, they're web pages. You can do plenty of neat things with web apps, but it's not a true app, with real access to the hard drive and the rest of the OS.

Developers want in, Apple doesn't want to let them in currently. That's fine - just say that. Feeding us lines about "bringing down the west coast network" is insulting enough, but saying "Hey, look, here's your access - via the web" and touting it as a major breakthrough is just ridiculous.

I don't need to be given an SDK immediately and let it. I would like Apple to be open and say "Not for 1.0, maybe later", instead of feeding me this load.

Mark: That's just it - this isn't "a first step". This is exactly where we were yesterday (unless you somehow believed Safari wasn't going to load all web pages), but now Apple is trying to claim they've done something for us.

We didn't expect an SDK yet, but to claim that this is some big thing for developers is just plain wrong, and that's what Apple's done.

TjL
Mon Jun 11 18:05:12 2007

The use of web apps makes things nice for Apple, but unless there's some way to load (cache) them onto the phone, there's not much you can do with them when you're not somewhere with a web connection.

Which, you may be surprised to learn, includes some pretty good sized of this place called Earth.  Like airplanes.  And hospitals.

Sure my Treo ain't nearly as cool as an iPhone, but I can use DocsToGo to edit/view files pretty much anywhere, without having to rely on a network connection.

That said, the browser on the Treo sucks.  Having Safari on an iPhone is going to be much, much, much better than the browsing experience most people have on a smartphone.

One piece of good news: assuming iPhone runs the necessary technology, you can use http://aimexpress.aol.com/ until there's an iChat client available.

There's a thriving 3rd party business for Palm apps that replace/supplement the calendar/addressbook/todo lists which are built into the Palm OS.  Web apps aren't likely to be able to do that.

If they weren't going to say anything more than "Hey look, webpages!" I really would have liked to have heard Apple say something about various plugins, etc.  Can you fire up Safari and view QuickTime movie trailers? YouTube? etc

pauldwaite
Mon Jun 11 18:16:46 2007

What I'm not yet clear on is whether Safari on iPhone gives you any iPhone-specific JavaScript (or whatever) hooks, or whether it is just literally like developing a web app that works in Safari.

If it's the latter, mentioning this at the end of the keynote is a bit of an insult to a room of developers, because it contains no new information. It's like saying "Hey, don't you realise? Web apps work on iPhone!" Developers say "Well, DUH. So what? Should we make all our desktop Mac apps web apps too? Now that Safari runs on Windows, we don't need any of that Cocoa nonsense! AJAX all the way, baby!"

I guess Apple had to say something. The one repeated iPhone question I've heard since it was announced was "can we write apps for it"? This was the best they could do. Sadly, it kinda sucks. I reckon developers want to explore the UI potential of multi-touch, not muck about with trying to figure out mobile web apps. Cos rest assured, Facebook (for example) on iPhone is not going to be optimal, UI-wise.

Stéphane
Mon Jun 11 18:36:19 2007

Seems everyone is focussing on web pages, after they read Apple will allow us to use only Javascript/HTML/CSS to add apps to the iPhone.
Working offline isn't possible? Why not? Google just released their GoogleData API which allows their apps to work offline - and the latest build of WebKit does support that, maybe even Safari 3beta does.
Javascript API is only limited to manipulate HTML and CSS? Completely wrong. Firefox Javascript runtime, for example, allows javascript to access system resources (files, etc), as long as the javascript is in a bundled signed jar. Apple says that the API will allow access to iPhone features (voice, etc). Excellent!
You want to access the whole Cocoa API, as well as all the Unix part? Really, this is just a phone, not a computer!
So please, don't feel insulted and don't whine before having tried to play with that SDK. No doubt we will see stunning apps, written 'only' in javascript/html/css.

Gen Kanai
Mon Jun 11 18:56:39 2007

"Plenty of developers can do great web design, but it's not the same as creating real apps."

So Gmail is not a real app?  Google Docs/Spreadsheets is not a real app?  All of these new online applications are not real apps?  Just "web design"?

David Demaree
Mon Jun 11 18:58:06 2007

Okay, speaking as a web applications developer and a Mac zealot, I'm officially on both sides of this argument.

First off, Paul: web apps are, in fact, about more than just "web design." I'm not going to say that having full JS/Ajax support on the mobile version of Safari is any substitute for an open iPhone SDK or Widget API, but web apps can do serious work, and for the kinds of things people would want/need on their iPhones might turn out to be an entirely decent stopgap until the real API finally shows up one day. Let me put it another way: I can handle not having Sudoku on my iPhone, and I don't even want to mess with Skype or even iChat until the thing goes to 3G. But I'm really looking forward to having web-based apps like Highrise in my pocket.

I think the real boneheaded aspect of Apple's "hey look, the Web!" thing isn't that they're sticking it to their developers, but rather the implication that Safari being able to link phone numbers, e-mail addresses and physical addresses to the iPhone's phone, mail and GMaps clients is somehow a notable feature. I've had some crappy phones with some crappy mobile web browsers in my day, but every phone I've ever had has allowed me to click on a phone number in the browser to initiate a call. Frankly I'd have been shocked if Mobile Safari had not had this feature.

And to everyone wondering/saying that the iPhone's API will allow "access to iPhone features" -- sorry, that wasn't my impression at all. I think what they're saying is that you can somehow (maybe through a custom URL handler) create hyperlinks in your web app that'll trigger built-in iPhone features, like the phone dialer or Mail. Which is nice, yes, but it's like saying you can create special links to other web pages and touting that as a feature.

xrissley
Mon Jun 11 18:59:30 2007

Guys,

Please can you stop talking about web apps and hit F12 on your Mac.
We are talking widgets here. Dashboard widgets.
Or for those not familiar with it, think Konfabulator.

Applications (yes,clunky and javascript, not ideal, but applications all the same) running in the sandbox of a web browser environment. Who would have thought Safari would be the JavaVM for the 21st century, really.

Nobody said it is only WEB APPS as you seem to focus on. It is web apps if you want, or local apps, in html+css+javascript fro the design and code...

Agreed, developping widgets is a pain, and less than ideal, and not so much fun (no niceties from Cocoa, no frameworks or UI goodies, no effects etc), but such widgets still can be self contained applications, just like Dasbord ones are.

So let's hope one day real platform development is available, and in the meantime,let'ssee  what can we do with what we have.

xrissley
Mon Jun 11 19:05:26 2007

... The above being said, I agree I found it quite amusing to see how Mr Jobs pulled this out.
But then I had seen it coming at the moement he anounced Safari:Windows.
It is already a progress from a position we had before where only Apple widgets would be installable on the iPhone.
But sure, for a WWDC announcement, I fully understand scarcastic developer tongue-in-cheek note!

Pedro Melo
Mon Jun 11 19:10:22 2007

I think its still early to judge this "Safari is your SDK"-thing.

If you only get the current Safari DOM, they it pretty much sucks.

But if they extend the DOM to have core JS objects to interact with the rest of the phone, special HTML widgets for some of the cool controls the iPhone seems to have, and (this is the killer feature for me) some sort of Google Gears-like API, then its a very very good first step.

Best regards,

John Muir
Mon Jun 11 19:18:39 2007

"Safari is your SDK" … now I see why they put Safari on Windows. It's the freakin' SDK. Crossplatform iPhone development tools! Even better than Cocoa.

Sarcastic commenter.

David Demaree
Mon Jun 11 19:19:20 2007

xrissley: I'm sorry, but you're way off base here. If they'd announced a Widget API for the iPhone this morning, it would be another story. The iPhone's Widgets, just like Dashboard Widgets, are powered by WebKit and run sandboxed. That's not what they announced. They're talking about web-based applications that run entirely in the browser, not Widgets.

There might be some iPhone-specific JavaScript hooks that people can use, and that would be cool. But I really don't think that's what they're saying here. There is no special iPhone DOM. There is no special iPhone API. And when they're talking about "building apps with Web 2.0 standards," they're not talking about Widgets (even though Widgets are also built using Web technologies).

They're saying that if you want to run any non-Apple-developed apps on your iPhone, they need to be web-based apps available over the public Internet that will run exclusively in the browser.

Again, I think folks can do a lot of interesting things with web apps, and that most of the third-party app stuff I'd want to see in my first-gen iPhone would involve web services integration anyhow. But let's not give Apple any undeserved credit here -- this isn't an SDK and it's not a Widget API. This is just them saying that the iPhone supports web apps. There may be some way to optimize apps for the iPhone, and if that's the case I'll surely look into building such apps. But I think they're talking about a custom "phone://" or "maps://" URL handler, rather than anything that requires actual programming effort.

Rich
Mon Jun 11 19:19:35 2007

This is complete BS...  my crappy Windows Mobile Pocket PC will run crappy ajax web apps in it's IE browser.  He made it sound like AJAX and web apps made having an SDK and lower-level access to the phone unneeded.  With that logic, why would I use a Mac?  He's contradicting EVERYTHING that the Mac stands for.  The reason the Mac rocks is the incredibly cool apps and the platform that supports said apps.  Casey is right - it's insulting.  It would have been better if they had said nothing. 

Bah.  I'm trying to etch the pile of steaming doo he tried to foist on us during that five minutes from my mind, so I can think about all the awesome Leopard goodness he showed.

Viswakarma
Mon Jun 11 19:46:49 2007

IPhone application development announced at WWDC 2007 is based on Web 2.0 and open standards. Before you guys go off please review the following web page for exactly Web 2.0 is all about --

http://www.oreillynet.com/pub/a/oreilly/tim/news/2005/09/30/what-is-web-20.html

Paul (Rogue Amoeba Staff)
Mon Jun 11 19:49:24 2007

"Well, DUH. So what? Should we make all our desktop Mac apps web apps too? Now that Safari runs on Windows, we don't need any of that Cocoa nonsense! AJAX all the way, baby!"


TjL: Indeed - only having access to these "apps" when online will really set them apart from the true apps on the iPhone itself.

pauldwaite: As far as I can tell, it's the latter. Safari has the ability to recognize phone numbers and turn them in to "links", but that's it. As for email, that's just a mailto link

As far as Apple "having to say something", I'm inclined to agree. However, saying "Here it is" when they're just showing us Safari is worse than saying nothing.

Stéphane: "Apple says that the API will allow access to iPhone features (voice, etc)."

This appears to be nothing more than mailto links and a recognizer for phone numbers. That one little bit will help a few apps, but it's not "access to iPhone features".

"You want to access the whole Cocoa API, as well as all the Unix part? Really, this is just a phone, not a computer!"

Really? "Just a phone"? Because Apple's sure pitching it as, well, a computer. From the iPhone site:

"All the power and sophistication of the world’s most advanced operating system — OS X — is now available on a small, handheld device that gives you access to true desktop-class applications and software."

The point is, there is no SDK to play with. If Apple doesn't want to let devs in, fine. But to say "Hey, we're letting you in. Via the web!" is just weak.

Gen: Does Gmail work offline? No. Can it access local data? No. Web apps are great, but they're not the same as true applications.

I certainly wasn't attempting to trivialize by saying "web design". "Web development" would likely be a better choice of words. But whatever you call it, making a web page, no matter how complex, is not the same as creating a desktop (or handtop) app.

David: As noted above, I wasn't attempting to trivialize. But as you not, web apps aren't a substitute for true access. As a solution, it will work for all sorts of problems. But it's not news, and again, they're pitching it as some sort of concession to developers. In reality, they haven't done anything yet.

xrissley: That's just it. We're not talking about widgets. We're talking about web apps. Apple is not providing the level of access that widgets have on Mac OS X - they're just letting web pages load. Widgets have much more power than that, and widgets would certainly be a step in the right direction.

Pedro Melo: We can only go off what we've seen, and what we've seen is nothing more than web pages. If there's more, Apple certainly should have said so.

John Muir:

As noted in another comment above,

"Well, DUH. So what? Should we make all our desktop Mac apps web apps too? Now that Safari runs on Windows, we don't need any of that Cocoa nonsense! AJAX all the way, baby!"

David Demaree: You've said it as well as I've heard so far 8).

Rich: Also well put, particular this:

"He's contradicting EVERYTHING that the Mac stands for.  The reason the Mac rocks is the incredibly cool apps and the platform that supports said apps.  Casey is right - it's insulting.  It would have been better if they had said nothing."

Viswakarma: I'm not sure what this link is supposed to show. Web 2.0 and web apps are both great. They're also not the same as a full-fledged application.

Joe
Mon Jun 11 20:11:59 2007

"Web frameworks are nice and all, but they're not useful in creating real apps. Plenty of developers can do great web design, but it's not the same as creating real apps."

The very definition of arrogant and clueless.

Nevermind that, you were so busy feeling insulted you never noticed that Apple is giving javascript access to APIs to receive calls and integrate with the UI as was shown in apple directory example.

By the way, gmail could work offline- to the same degree that Mail.app can work offline-- Google Reader already does.

If you were a Real Applicaiton developer, you wouldn't be whining about web apps not being real apps.

I'm really surprised and dismayed to see such utter cluelessness from an official representative of Rogue Amoeba-- makes me wonder if you aren't a bunch of kids throwing together half assed "Real" apps after all.

Yes, its true, building a great web app is more challenging than building a nice app in cocoa-- ask anyone who's done it-- but your inability to tell the difference between a web application and a web page does not sell your argument that apple is wrong here-- it just reflects poorly on you.

Anyway, where I come from, developers like to solve problems.  I guess in Roge Amoeba land you're not interested if its too hard.

Joe
Mon Jun 11 20:13:45 2007

"These are NOT widgets, they're web pages. "

Beyond clueless... what do you think widgets are?  Little javascript applications.  the iPhone gives them access to the iPhone UI in a way that they wouldn't have in a typical web browser... and you are complaining?

I think you're just ignorant and got your panties in a bunch because you think a web app is a web page.

John Muir
Mon Jun 11 20:33:03 2007

Joe: I think what's wound people up is the context. WWDC … before an audience of budding and eminent Mac developers … a presentation which seems more of an answer to the media's questions about the iPhone being "a typical Apple closed platform" … only in front of that particular crowd.

Web 2.0, Ajax, Google, yes all cool and all immensely promising on the iPhone. But somehow I think Apple knew that they were twisting a few arms by making this part of the WWDC keynote.

We're really talking about the spin, not just the substance. And that spin was suffixed with an unspoken "on this" to the Cocoa devs in the room. Of which there were an extraordinary number.

David Demaree
Mon Jun 11 20:34:42 2007

Joe, you wrote:

Nevermind that, you were so busy feeling insulted you never noticed that Apple is giving javascript access to APIs to receive calls and integrate with the UI as was shown in apple directory example.


Really? Is that what they're doing? Did you see anything in those photographs/blog posts/press release that indicates that the iPhone has a special JavaScript API?

This is Paul & co.'s house, so I'll leave it to them to smack you down for implying that despite the fact that they build Mac apps for a living they're, in your estimation, too stupid to know that Widgets are specialized web pages.

The bottom line here is that while nobody really knows how Apple's "directory" web app example works, there's nothing we've seen yet to indicate that it's anything more than a normal web page formatted to fit the iPhone's screen and designed to mimic the iPhone's UI. But even absent any more specific details, Apple did say in no uncertain terms that this "innovative new way to develop third-party apps" is dependent on the browser. Not on WebKit, but on the Safari browser app specifically. In other words, they are web pages. If we agree on nothing else, let's all at least agree that we're not talking about Widgets here.

Tonio Loewald
Mon Jun 11 20:37:22 2007

Apple didn't make out like it was a huge thing, although some reporters did. It came after the one last thing.

The point is, what kinds of apps do you think belong on an iPhone? Can't they all be done (best) using web pages? I think so.

Does this mean the iPhone needs the ability to (a) load and view local pages (possibly served via Apache with PHP and Perl)? (b) the ability to cache/archive pages so they're always available? Well (a) would be nice and (b) you bet.

There's very little you can't do pretty well using a web apps. I'd argue that google documents offers better Office document support than the crippled versions of Office found in PocketPC variants.

Yes -- this isn't a huge announcement, it's been obvious from the day the iPhone was announced. I think the folks howling for an iPhone SDK are really more put out that they were stupid enough to think the iPhone needed an SDK than have any real objections to the flexibility offered by the iPhone. Why do you download stuff to a Phone today? Because its browser sucks ass and its internet connectivity sucks ass.

Quentin (Rogue Amoeba Staff)
Mon Jun 11 20:52:05 2007

Sorry Joe, we aren't intersted in "solving problems", we interested in providing our customers with solutions to -their- problems. The better the development tools we have, the better we can meet their needs, and that is all that counts in the end.

When we say WebApps aren't "real" applications, we mean, do they match the level of excellence and quality of what Apple provides on the iPhone? Can we click on them on the main menu? Can we access the same pieces of hardware that built-in iPhone applications do? The answer is simply: no, and thus, they are not real applications on the iPhone. Apple can make real applications, 3rd parties can not.

The reason we are so frustrated, is that Apple is trying to pull one over here. Instead of talking honestly with developers, they keep troting out distrotions. "You'll crash the network", "You'll crash the phone", "Safari is just as good".

If you don't want 3rd party developers, or aren't ready for them yet, be honest and say so. We'll respect you far more for it. Markets are Conversations after all.

Phil Aaronson
Mon Jun 11 20:54:46 2007

Reading between the lines, there's a reason we don't have a "real" SDK. I suspect it's the same reason iChat is suspiciously missing. The reason: cover AT&T's arse.

AT&T is terrified, and rightly so of Skype or some audio enabled IM running on the iPhone. After all, with Wifi support users might be making what amounts to calls outside their network. No! The horror! Competition!

So what's the difference between Widgets and Applications? You can't write a phone killer in a widget. As soon as Apple figures out a way to deliver an SDK where you couldn't write a phone killer, we'll get one. Not sure how you do that exactly. At least in the short term.

If and when Apple dominates the market in phones, or the market for a wifi based phone surpasses that of your standard mobile phone then we'll get a full SDK. And oh yeah, iChat.

doomlaser
Mon Jun 11 21:05:07 2007

If web apps are such a great thing, how come Apple doesn't use them for other parts of the iPhone interface, other than Safari itself?

Google Maps is already a highly popular web application.  Why then build a custom iPhone application around it?

oomu
Mon Jun 11 21:09:05 2007

I think I don't want developpers to be able to make "real" applications into the iphone.  it will soon become a total mess as smartphone and java/windows mobile installation stuff and battery emptied

I do think the iphone is a web thing, you have to embrace the web for god sake !

and "widget" are "html page", they works thanks to webkit who can complex thing.  there are some widgets with cocoa code, Okay, bu it's not at all so important.


when you say "developpers want acces to the hard drive and operating system" I shrugged.  it's frightening.

it's a tiny device to do fast and reliable things. the last thing I want is to have again a "pocket computer".

no I want exactly as the ipod : efficient, simple, stable, controlled.

and I do think apple want the same for people.  to avoid people think "the iphone crashes as every stupid geek phone".

oomu
Mon Jun 11 21:10:26 2007

to summarize my point :

the iphone is NOT a mobile platform.

it's a phone+ipod+web. NOT a "mobile platform to do mobile computing".

Not clairvoyant
Mon Jun 11 21:12:00 2007

>When we say WebApps aren't "real" applications, we mean, do they match the level of excellence and quality of what Apple provides on the iPhone? Can we click on them on the main menu? Can we access the same pieces of hardware that built-in iPhone applications do? The answer is simply: no,.

Actually, you don't know the answer to any of those yet. Amazing how smarmy people can be about a product that isn't even shipping yet.

Could you at least wait until you see and try the webapp/iPhone development process before you begin telling us all what's wrong with it?

Paul (Rogue Amoeba Staff)
Mon Jun 11 21:14:36 2007

Joe: I'm not sure there's any need to be so vitriolic nor engage in such name-calling. Anyhow...

"Nevermind that, you were so busy feeling insulted you never noticed that Apple is giving javascript access to APIs to receive calls and integrate with the UI as was shown in apple directory example."

The JavaScript access appears limited to mailto:// and maybe phone:// links (or similar). We've not seen anything else.

As for widgets, they're more than web apps/web pages. They're not just "little javascript applications" -you can write code in Cocoa, Carbon, or whatever you like, then call myWidgetPluginWhatever.doSomethingNeat(). With WebApps, you can not.

Look at the 19 bundled widgets that come with OS X - 12 have Cocoa plugins, for accessing system APIs and functions. World Clock uses a Cocoa plugin to function. Widgets have the ability to work with system. WebApps do not.

As Quentin notes, however, the real test is "Do these match what else is on the iPhone?". They don't. If this is the way to go, why the custom Google Maps app? Heck, for that matter, why don't we all just make web apps all the time? Why write for OS X, when we could write for the web?

John Muir: Indeed, the context and manner of this presentation are definitely key, and what make this so irksome.

Tonio Loewald: Apple closed with this, and I think it's fair to say they promoted this pretty loudly. It wasn't an off-hand comment, it was the closer. A second "One More Thing", really.

For as trivial as this ultimately is (opening a web page in a browser), it certainly didn't need to be mentioned. As noted elsewhere, this is already a given - of course we can load web sites in the browser, and yeah, you can make web apps that way.

Again, web apps are great. It seems like some people (perhaps webdevs?) think we're insulting webapps, and that's not the case at all. I use Google Maps and many others all the time. But they're not the same as an app, on the phone, instantly accessible. They don't have the same power, nor accessibility, and for Apple to pitch this as a great way to develop for the iPhone is simply wrong.

Hostile Monkey
Mon Jun 11 21:14:53 2007

Come on - for those saying "Oh look! It's the web!" Has anyone tried to USE web apps on smartphones? Really? This isn't major news?

Okay, it's not an SDK. Who was expecting one? Who promised one? Frankly there's a lot of people crying 'cos Santa didn't deliver a Mercedes, and only gave them this crummy pony.

I'm shocked at the number of crybabies. Maybe Apple made "too much of it", but look at all these people fanning the flames!

Remember, Google had to write their own GMail App so that Gmail would work on cellphones. GMail - the poster child of the web app! Works anywhere! Except on your cellphone - to get it there we have to spend a ridiculous amount of time writing umpteen different variants to accommodate all the quirks in the different phones. Why? Because NOBODY's mobile browser handled web apps.

Apple may be pointing out the obvious if you believed their "not the sorta, kinda internet" ads, but come on, these are ads. Now we have official confirmation that Basecamp, Google Apps, Joyent Connector, Flickr etc will "just work". This is huge, and is surely just the beginning.

Have fun in Java land, boys.

blogjunkie
Mon Jun 11 21:19:30 2007

Yeah guys, keep in mind that it IS only version 1.0 of the iPhone. You can't expect Apple to launch it successfully with no bugs and also provide a stable API and mature SDK for developers all at the same time. Chill.

Paul (Rogue Amoeba Staff)
Mon Jun 11 21:22:28 2007

Phil: The "keeping Skype out" theory is certainly a compelling one, and one we've seen elsewhere. It seems ridiculous though, something that will ultimately be impossible to prevent. But hey, old industries trying to use dubious methods to protect dying revenue streams? That's nothing new.

Also, these aren't even widgets, they're webapps 8).

oomu: If you don't want third party apps on your iPhone, don't install them. But to not want them, period? That's just silly. That's like saying you don't want free speech, because it will result in things you find offensive. Sure, it will - ignore those, stick with what you like.

"there are some widgets with cocoa code, Okay, bu it's not at all so important."

As noted, 12 of 19 bundled widgets use cocoa code. That's far from "not at all important".

If the iPhone is running OS X (it is), then an app crashing won't bring down the iPhone itself, just the crummy app. Apple is pitching this as a computer in your hand, as a mobile platform. To say it isn't one goes against exactly what Apple is promoting.

Not clairvoyant: We know what we've seen, from what Apple has shown us in the keynote. They said, in short, "You can ship an app for the iPhone release. Just make a webapp!". That promotion rings quite hollow. That's pretty much all we've said here.

duncan
Mon Jun 11 21:22:58 2007

actually web apps can access hard drives, work offline, etc...

flex/apollo if you want flash RIA
gears from google if you want standard html/css

as it currently stands i don't think either is going to run in iphone, however to say web apps can't do certain things is inaccurate.

doomlaser
Mon Jun 11 21:26:39 2007

Yeah, so how are you supposed to use the multitouch interface within a web application'?  Do you think it will even be possible to implement something like the pinch/pull zoom?

Obviously there are a lot of reasons Apple wants to keep the platform more closed.  It runs on an ARM, you'd have to cross-compile, who knows if there's an emulator or special debugging hardware, to say nothing of contractual obligations with AT&T.

Woulda strategy closer to the modern game console would be preferable, where devkits costs $2-10k and you're  under NDA from Apple, and they have final approval over shipping...?

will
Mon Jun 11 21:27:14 2007

> it's a phone+ipod+web. NOT a "mobile platform to do mobile computing".

That argument might have some weight if Apple wasn't so intent on pimping the iPhone as a complete, mobile computer that runs OS X. As it stands, trying to market a device as 'OS X' then BSing your developers at WWDC is in poor taste.

Paul (Rogue Amoeba Staff)
Mon Jun 11 21:29:29 2007

Hostile Monkey:
What's not major news is that Safari on the iPhone is a real web browser. Apple already told us that - see the "Watered Down" ad:
http://www.apple.com/iphone/ads/ad4/

It's the Internet (by which they actually mean "Web", but that's a different argument), not watered down. So sure, it can run webapps.

"Frankly there's a lot of people crying 'cos Santa didn't deliver a Mercedes, and only gave them this crummy pony."

Nah - Santa came down the chimney, pointed at the pony we already had, and said "Here, I brought you a pony!".

We weren't expecting an SDK (though we may have hoped). We just weren't expecting a bogus "You're in!" statement like this, when they've given us nothing new.

blogjunkie: Absolutely, and things will change. But once again, Apple could have, and should have, said "No third party apps for 1.0. We'll consider it for the future". Instead, we've been treated to FUD about wireless networks, and now

Troy Dawson
Mon Jun 11 21:41:07 2007

As someone who got published in MacTech last year describing how to bundle a web app on the desktop, lemme just say that I actually prefer the DHTML approach to native Cocoa.

The iPhone is, theoretically, an alway-connected platform, mitigating the need for GoogleGears stuff.

The diff between widgets and DHTML is pretty small, really.

Abbi Vakil
Mon Jun 11 21:45:26 2007

I can't believe there are people who are clueless about the difference between a real app and a web app & why you would want a real app on the iPhone. The reason you want a real app on the iPhone is because the web is slow. When Scott Forstall showed off the iPhone "app" that Apple had created, you could visibly see the slow redraw of the Apple campus when he went to it via Google Maps. You can bet your bottom dollar that he was using Wi-fi and not the EDGE network. If getting driving directions from Google is going to be that slow over Wi-fi, you can just imagine what a pain its going to be accessing information whilst driving, walking, etc. No one knows how the iPhone switches between the cellular network & the wi-fi network, but in my mind, even when you use the wi-fi network to access your so-called web app, it's still going to be waaaay slow. We want local apps so we don't have to stay local...

Nomada
Mon Jun 11 21:54:03 2007

People talk of Gears for storing data locally, but while Gears works with WebKit, it's currently a Mac (and now Windows) only feature.

Unless Google has a secret version ready for shipping 29th June.

That would be a neat third party app, but it contradicts the "No third party apps on 1.0".

The same applies to Adobe AIR. It's for Mac and Windows, not for iPhone.


As for the "it's a phone!", the ads by Apple talk about some different features AND a phone, not a phone with extras.

Carl
Mon Jun 11 22:28:05 2007

Hey everybody, check it out: I wrote a Twitter client for the iPhone! You can see the beta at http://twitter.com…

bflo
Mon Jun 11 22:34:53 2007

> Nah - Santa came down the chimney, pointed at the pony we already had, and said "Here, I brought you a pony!".

The iPhone isn't released yet. That pony you think you already had was your mythical unicorn pony. Its fair to say that today's presentation clarified or underscored what until now has been the vague assumption that everything we develop for the web will work on the iPhone. Now we know it will. Cool!

Next WWDC there'll likely be a native-app SDK. But c'mon, can we at least spend 20 minutes with the dang phone in our hands first before we start calling for system-level api access?

Kevin
Mon Jun 11 22:41:55 2007

Somebody's business model is crumbling...

Kevin
Mon Jun 11 22:43:56 2007

Somebody's business model is crumbling...

ErneX
Mon Jun 11 22:57:53 2007

Hey, don't be so hard on these guys (Rogue Amoeba) they have real concerns about what Steve just announced. I am a web developer and I felt bad for all the developers present at the keynote, because in a soft kind of way Steve just insulted them in their faces.

Those guys knew that if the iPhone has Safari, web apps are obviously supported. So trying to sell that as a neat way of developing apps is just distorting reality. But Steve's magic distortion field cannot work on this one.

To the people talking about Widgets being just web apps, that is just not true, of course the majority of them use web apps but some can do plenty of more stuff, like running terminal commands on the back. This is simply not possible on the "web 2.0 apps way" of the iPhone and this is precisely what these kind of developers such as Rogue Amoeba really want, to write real apps taking advantage of the whole hardware of the iPhone and not just running on a web browser running inside a sandbox.

But it is also true that this is version 1.0 and they already had trouble shipping this (delaying Leopard for this device).

I would also direct the shame towards AT&T because I'm pretty sure those guys are the reason #1 of the iPhone software development cripples.

mark
Mon Jun 11 23:45:22 2007

I guess Apple's vision for a constrained (display, input, processor) yet connected (even if not wicked fast) handheld device is to use web apps.  (I don't think this is just a result of AT&T's greed.)  As Apple always has done, when they have a vision and don't think people will pay attention, they just leave no other option.  (Floppy drive, USB, etc.)  In other words, if they had allowed local apps, very few would bother with web apps.  Read between the lines and you can see Eric Schmidt and Steve Jobs agreeing on this.

My question is one of timing.  Just like with the AppleTV and HD content downloading constraints, we have here an issue with lack of universal and fast coverage (either cell or wifi), and the lack of web apps. Is someone (AT&T, Google, Apple?) working on the coverage?

In any case, I expect Leopard's QuickLook and Back to the .Mac capability to make its way quickly to the iPhone so that all sorts of documents can be accessed and displayed.

mark
Mon Jun 11 23:56:35 2007

Quentin and doomlaser: Some of Apple's iPhone apps are just front ends for web apps.  I think Apple would be interested in themselves developing iPhone front ends for your web app if performance and demand created that need.

doomlaser: There's still much to learn about how to use the iPhone's built-in multitouch and touch keyboard with a web app.  In other words, if there is a box for text entry in the web app, does the iPhone automatically pull up the keyboard when the user taps on the box?  What happens with other gestures like double-tap, pinch, or swipe?  What about other elements?  I'm sure we'll learn soon how this is done.

ErneX
Tue Jun 12 00:09:09 2007

mark watch the keynote presentation, skip to end where they show a web based app in Safari, it even supports the pinch feature to resize an image inside the browser.

jones
Tue Jun 12 00:17:01 2007

So a web app doesn't get its own iPhone icon but isn't a web app just a bookmark away?  I've no clue how bookmarks are displayed on iPhone but it seems that it should be just one or two extra taps away (tap safari, tap bookmarks list (assuming not displayed automatically upon safari startup), tap specific bookmark).

I don't know why people compare the iPhone with the Mac when it comes to apps. Apple views an iPhone as different from a Mac, just as an iPod was not a Mac. The iPhone is also a computing device, but it's an always-connected networked computing device (as Apple would say, an Internet device). And more importantly, it's constrained by it's processor, display size, and input options. So the use case is different.

Lester Nelson
Tue Jun 12 00:35:07 2007

What I think is funny is, Steve Jobs originally said he didn't want 3rd party apps because they'd compromise security. Then he solves this problem by giving web sites access to the iPhone's functions. Odd.

Mark
Tue Jun 12 01:56:10 2007

The difference between yesterday and today is we now know that we can access multitouch, phone, maps, etc. That was hardly obvious before.

I'm sure there are a lot of apps that won't really work as web apps, but everything I was thinking about would work just fine.

Shortcut webloc icons in the main menu would be nice though ...

Mark
Tue Jun 12 02:04:13 2007

"If [Apple doesn't] want 3rd party developers, or aren't ready for them yet, be honest and say so."

Quentin, they did, loud and clear. If you didn't catch it, maybe you should see a specialist who can evaluate you for an autism spectrum disorder. Your link to Cluetrain was ironic. You need to get a clue.

Anonymous Swine
Tue Jun 12 02:04:15 2007

@ Mark:

I knew all along having seen Jobs' original iPhone demonstration that clearly any web page accessed via Safari would be multitouch accessible. I am not sure why any would have thought that was unclear.

Anonymous Swine
Tue Jun 12 02:08:23 2007

@ Mark:

"Quentin, they did, loud and clear."

Before you insult Rogue Amoeba staff in their own house perhaps you should learn to read more carefully. Their contention here is that Apple was essentially bullshitting its developers with that ridiculous "sweet" iPhone apps presentation at the end of the keynote. Web apps running inside Safari is not an answer to the SDK question yet they are attempting to present it as such. We all knew we could access a bloody web page using the iPhone. Does it really take a genius to figure out that I could have made a Web 2.0 app sized to iPhone specifications and mimicking the iPhone UI without Steve Jobs telling me so?

Joe
Tue Jun 12 03:01:38 2007

Yeah, I really do think y'all are clueless idiots... probably not idiots normally, but you're being idiots here.  And yes, I do build applications for a living-- both cocoa and web applications. 

The fact of the matter is, the iPhone is not on the market, it is a platform that is just being finished as we speak.  Its far too early for there to be a full on SDK at this point... and so the compromise rolled out today is just fine.  ITs not bullshit and its not pulling one over on you.

As for viterol, you're the one who is dishing it out, I'm just calling you on it.  Don't be an idiot.  Don't put words written by clueles media types into Apple's mouth.

Finally, the iPhone is not a general purpose computing platform (what is this, comp sci 101? You guys should know this stuff.)  Thus you have no clue the horsepower available to a general purpose app.  If you want to port skype to it, are you going to do it using by writing DSP code?  You think Apple might be a bit concerned about giving people direct access to the DSP chip[ in the phone-- assuming there is one?  OR are you going to bring the tiny ARM cpu to its knees doing your encoding there?  The answer is, you don't really know, and yet you are passing judgement based on your ignorant assumption that there's a core duo, or something like it in there.

Bottom line is, Your panties are in a wad over nothing-- you claim apple is being honest yet you have failed to give any reason-- other than your own deafness-- to support this claim.

They have pointed out the level of integration with the phone that safari has, and the apps that are thus possible... and so this is legit news.

Expecting a full on SDK at this point is asinine.  Calling these "web pages" only shows manifest incompetence on your part.  I for one am not familiar with any HTTP or javascript API for making phone calls...

The real question is-- are you going to keep beating us over the head with your ignorance... or suck it up and be a man and admit you flew off the handle. (Or that somewhere you got deluded into thinking the iPhone was a Mac.)

Its time for you to be honest.

Casey
Tue Jun 12 03:05:21 2007

BTW, I would imagine that Apple has dusted off this old nugget for handling telephone dialing  URLs (RFC 2806) http://www.ietf.org/rfc/rfc2806.txt At least I would hope they had rather than coming up with something new.

RA fan
Tue Jun 12 03:33:19 2007

What do the last few commenters mean by web pages in Safari being "multi-touch accessible"? Sure, you can zoom in on DIVs and parts of PDFs, just like on the heavily demoed New York Times site, but the JavaScript doesn't have access to any multi-touch–specific events.

The Keynote iPhone demo showed that an address embedded in a web page could be linked to iPhone-native Google Maps. The native app had access to the multi-touch pinch-zoom feature. The original web page didn't.

A few more things still seem to be unclear. Please correct me if I'm wrong:

1. Unlike Dashboard widgets, web apps on the iPhone don't have any access to local storage (downloads, offline viewing) except for WebKit cookies. Nor do these web apps have access to iPhone system features like sound input, the user's address book, or any way to "push" notification of an incoming message or event.

2. The "access to iPhone features" like making calls is by means of special URL schemas like mailto: and tel: which launch the native email app or make an outgoing call. There is no way for a web app to listen for an incoming call or access the user's incoming email (except by having web app developer's server log in via IMAP like .mac email does).

3. One possible reason why Apple isn't publishing an API that hasn't been mentioned so far is that the iPhone isn't multi-touch in any meaningful way that doesn't also apply to the MacBook trackpads. In particular, none of the native apps seem to be able to use multiple simultaneous finger-presses: none of the demos has demonstrated shift-key chording, rapid multiple selections, or anything that developers would hope to do with "multi-touch" as generally understood.

In fact, the iPhone seems to detect the total bounded area (roughly speaking) and central location being touched, nothing more, just like the trackpads. The pinch-zoom feature detects sudden (another finger came down) and gradual (zooming) changes in the bounds of the area being touched, but not the actual locations of the fingers. All of the native apps are carefully limited in precise ways that do not expose this lack of true multi-touch.

Sandman
Tue Jun 12 06:03:15 2007

I think that there might be a little proprietary iPhone HTML wizardry for these web pages, making them slightly more useful than just any other web page. The address lookup was 600 lines of code, which to me sounds as if the web developer doesn't have to replicate the iPhone UI on his own, but can use UI tags for search widgets and things like that.

lee
Tue Jun 12 07:14:05 2007

from the sidelines ..

This is a tad awkward to watch, friends. Maybe just skip wishing for the phone and continue improving the existing apps or whatnot and call it best effort? Apple may or may not clarify the phone-app statements to soften the unfortunate insult. Regardless, as a non-developer user-enthusiast, I'd be really pleased to simply see folks getting on with working with what there is to work with and calling it good.

Any chance?

Passerby
Tue Jun 12 09:06:04 2007

I think this sums it up:

"The JavaScript access appears limited to mailto:// and maybe phone:// links (or similar). We've not seen anything else."

Exactly: You haven't seen anything else.
You haven't held the product.
You haven't seen any developer documentation
You have no idea how deep integration between the iPhone and webkit may or may not be.

You have no idea at this stage what is and isn't possible.

Yet you are all immediately slamming everything and stating worst case scenarios as fact.

Remarkable.

Anonymous Swine
Tue Jun 12 09:48:28 2007

I really feel like I'm beating a dead horse to death for the second time here, but some people apparently really can't read...

"Its far too early for there to be a full on SDK at this point... and so the compromise rolled out today is just fine."

They never said they expected a full SDK right now. The point here is that this isn't a "compromise," it's simply taking something we all knew we could do in the first place and touting it as a "compromise." John Gruber put it best:

"If all you have to offer is a shit sandwich, just say it. Don’t tell us how lucky we are and that it’s going to taste delicious."

Anonymous Swine
Tue Jun 12 09:50:47 2007

"You have no idea how deep integration between the iPhone and webkit may or may not be."

How much deeper do you realistically expect it to get? If they were going to expend time and effort on "integration" with WebKit they'd just come out with a full-blown SDK. Clearly, they don't want/aren't ready yet for apps to run outside the browser and/or locally.

It doesn't take much to deduce from there that this is a very weak solution at this point.

Paul Kafasis (Rogue Amoeba Staff)
Tue Jun 12 10:17:29 2007

Troy Dawson: It will be interesting to see just how much power people can get from web apps with the iPhone. I've no doubt some will be very impressive, but the question remains: If this is so excellent, why have built-in apps at all? There are lots of reasons, not the least of which is that at least some users will be offline not infrequently. "Always-connected" is a nice dream, but it's not reality yet.

bflo: As noted, unless you believed Safari (nee "Web") was restricted (with something like a whitelist), Apple didn't show us anything new. Sure, this shows the web will work like the web. Their commercials showed much the same.

The notion of "Hey, I can get into the iPhone with a web app" is fine, and will work for many new ideas. But it's not new, and it's not the same as providing true access to the iPhone. That's how Apple's pitching it, however, and that's what rubs developers the wrong way.

As far as next WWDC, that'd be great. And sure, we don't need an SDK immediately. But this is a misdirection at best, and to pitch it as a true solution to developers at WWDC is a bad move on Apple's part.

Kevin: Is it? I assume you mean the idea of selling desktop software? I don't agree at all - I think you'll see desktop software and web software continue to merge more and more as time goes by. However, currently, web apps don't have all the same power of desktop apps. If they did, the only app you'd need on your Mac would be Safari.


ErneX: I'd say that's about right - it was an insult, because we already knew this and it was presented as a magical thing Apple did for us. " We've come up with an innovative new way to create applications" is a bit off the mark.

And again, the 1.0 argument certainly holds up. If we later get real access, great. The issue isn't not having access, it's being told "Hey, you do have access! Just use the web!"

mark: That's an interesting thought. However, I don't really see Apple pushing web apps as a company. They make a desktop OS, it seems against their interests to speed that process along. I really view this more as a misdirection than a concerted push to the web.

jones: Sure, web apps are easy to access. If you're connected, anyway. That's a big "if" though, and it turns web apps into second-class citizens.

An iPod certainly is not a Mac - it's a dedicated music device, that's gained a couple new things (games, video). The reason people view the iPhone as a Mac is because that's how Apple pitches it. They tell us it has all the power of OS X. They show it running a full email client, they show it running Safari. Certainly, it's not identical to a Mac, but it's much closer to a Mac than it is to an iPod.

Mark:
When did Apple say that they didn't want third party developers? We were treated to FUD about "bringing down Cingular's West Coast network", and other "security concerns". They never said "We're not ready to release an SDK, but we'll see about the future" or "We're excited to see how you can extend this, but we need to get a 1.0 out". Your insults are uncalled for.


Joe: I'm not sure when we called you personally an idiot, nor when we kicked your dog, but if we did, we're certainly sorry. Perhaps you could refrain from name-calling and try to engage civilly? I know it's the Internet, but maybe we could try it out, just once?

It's too early for an SDK is a fine argument, but that's not what Apple said. Nor did they compromise one iota. As stated several times, Apple promises the web in all its glory, pretty much from day one. Unless you didn't believe them, they've presented nothing new here. There's no special access to the iPhone, it's just web pages loading web data, as well as processing mailto: and other links.

I'm really not sure what words we're putting in Apple's mouth. But the iPhone isn't a general purpose computing platform? What is it then? Why is Apple telling us it has OS X, has Mail, has Safari? This is a computer, or at least far closer to it than anything we've seen before.

What we claim, repeatedly, is that Apple is attempting a misdirection here. "Sure, you can get on the iPhone! Just write a web app!" As noted, that's a fine solution for some problems. But if it really is a quality solution, why isn't Apple doing it? Why do they have custom apps on there, and why do they still make desktop software.

There's no HTTP/JS for making phone calls. There is an RFC for passing along a phone numbers, as noted below: http://www.ietf.org/rfc/rfc2806.txt.

So what exactly would you like us to admit Joe?

You've contended that Widgets are the same as web apps - they aren't, and as noted, 12 of 19 bundled widgets use Cocoa plugins.

We've never said we expected an SDK today, or before 1.0, just that we'd appreciate forthrightness instead of misdirection.

The iPhone isn't a Mac, no, but go have another look at how Apple has pitched it. When Steve Jobs talks about OS X powering it, and how it's a breakthrough device, does it seem more like an iPod (specialized to do one thing very well, and eventually gain a couple new features), or a Mac (built to let you do almost anything)? They don't promote this as a fantastic phone with a couple extra bits - it's device that lets you do almost anything. Provided, right now, the anything is something one of the bundled apps does.

RA fan: 1 and 2 seem correct, from all we've seen. As for your #3, this is an interesting thought. But this shouldn't prevent real access to the device, just those features.

Sandman: Well, there was certainly no indication that there'd be access to real UI bits. If so, that's certainly nice, but it doesn't provide power, it just lets the app fit in better.

lee: It's been one day, and we're certainly still working on our Mac apps. I think we can engage in a discussion on the iPhone for a bit without causing our desktop apps to die 8).

Passerby:
"Exactly: You haven't seen anything else."

Is it not reasonable to assume that what Apple shows at the Worldwide Developers Conference is what there is to be seen, when their pitch is "Here's how to create iPhone apps"? That quote was in response to someone saying "There could be much more!". Maybe, but right now, there isn't. We're irked because Apple is portraying this as some big breakthrough, when it's something we had all along. Nothing more.

I welcome further discussion on this, but it seems we're addressing the same thing repeatedly.

Kerri Hicks
Tue Jun 12 10:43:34 2007

There's lots of talk about how we'll be able to write apps for the iPhone, but not specifically what it is you want to do that you won't be able to.

Cocoa is a framework. You've got your Objective C for the meaty functionality, and the Interface Builder for the oooh shiny. And you write hooks into the system as needed.

Web apps have a framework, too. You've got your (XHT)ML and JavaScript and XSLT for the meaty functionality, and the CSS for the oooh shiny. And you write hooks into the server as needed.

Does that make one of these frameworks more capable of creating 'real' apps than another? On an iPhone, Cocoa developers don't have their hooks into the system, and web app developers don't have their hooks into the server. Neither developer has external data storage, but both would like it.

And so, what is it that you can't do in this web app framework that you could do in another framework? Access Core Data or whatever its equivalent would be on the iPhone? Sure -- web apps would probably like some SQLite or just some space for extra XML files. Core animation? Hey, check out some Prototype libraries, or maybe even Flash support.

Paul, I think I do understand your point -- it would be nice to get access to certain system functions, and it would be REALLY nice if there were a fast-track to porting from standard OSX Cocoa to whatever might be supported on the iPhone. But is there an outcome you cannot achieve on the iPhone by using a web-app framework that you would be able to achieve with a different framework?

I'm trying to think of a type of app that hasn't been ported to the web space. Text editors, word processors, spreadsheets, image editors -- JavaScript and Flash are pretty powerful technologies. It would be valuable in this discussion to establish where we want to be before lamenting the paths that are available or not available to get there.

So, it sounds like the iPhone will give developers access to the primary functions of the phone -- address book, calendar, etc...aside from storage, what is it that you want that you think you won't be able to get? (Not implying that there isn't something -- just wondering what it is.)

Sascha
Tue Jun 12 10:58:12 2007

I don't understand why Apple can't include a version of Java ME in the iPhone?
I think this would solve all/most of their problems.

LKM
Tue Jun 12 11:04:57 2007

>Web frameworks are nice and all, but they're not
>useful in creating real apps.

While I agree with your general point, this is a stupid and insulting way to put it. Real apps are written using HTML, JavaScript, CSS and a server-side technology every day. Our own multi-million process management solution has an all-html frontend which looks and acts 100% like a desktop app.

"Real apps" can be written using Safari as an "SDK."

What can not be written are apps that make use of specific hardware. Something like Fission on the iPhone? Probably. AirFoil? Nope. SSH Client? Sure. SSH Server? Nope.

Yes, this is a crappy solution. But it's not as crappy as you seem to think it is.

I hope Apple gets its act together and improves upon this, but it's not like using Safari to write iPhone apps was impossible. They need to start by allowing web apps to
- be clickable icons
- work offline
- have offline storage
- work without showing the URL bar

Then, they need to give JavaScript access to other iPhone features and hardware.

Finally, they need to let developers write Cocoa apps.

Safari is better than nothing, but it can only be a first step, not the end-all of iPhone development.
Having said all that, I don't think even one second that this will somehow influence iPhone sales numbers. I think 95% of all people unfortunately don't care about third-party apps on their iPhones.

Lon Seidman
Tue Jun 12 11:09:23 2007

Let me add my voice to choir here..  Having owned smartphones running just about every major platform (Palm, Windows Mobile, Blackberry, etc) each of these many devices ran software exclusive to the platform.  The Sling Player on Windows Mobile immediately comes to mind, but there were dozens of smaller apps I used on a regular basis as well. 

I wish Apple could give a better explanation as to exactly why it's so difficult to open up development on it..

Graham Parks
Tue Jun 12 11:19:54 2007

Kerri, >90% of the time the iPhone is limited to a slow EDGE connection. Under Steve's solution, every time you want to use an "app", you'll have to open the webpage, downloading the code all over again (which for complex AJAX apps, is rarely compact). Many interactions will require a round trip to the server, and IME opening a HTTP connection and getting a response over EDGE is a very slow process - the headline bandwidth may be OK but the responsiveness is appalling.

These "apps" won't be able to work with files on the iPhone's drive, or any hardware features, so most things multimedia are out. No integration with other phone apps beyond the few shown. And there's apparently no Flash in iPhone's Safari.

As far as examples go, think of any piece of software available for Macs. The phone certainly has the hardware and the security model and the APIs to allow a decent iPhone port of just about anything.

Chittagong
Tue Jun 12 11:24:04 2007

So has anyone concluded yet whether native UI components are used e.g. to draw a list, or whether that's just approximated on the web page design?

If iPhone has certain ways to draw a list or do a search box, I would imagine it would be to hard to let these web apps call these native UI components for superior performance and rendering.

Graham Parks
Tue Jun 12 11:26:12 2007

I should add that the anger is no longer over the lack of an SDK, but at the long line of evasive bullshit answers Apple's been giving every time this question is brought up, which yesterday's display took to new heights.

One straight answer is all it would take.

VB
Tue Jun 12 11:56:57 2007

"So, it sounds like the iPhone will give developers access to the primary functions of the phone -- address book, calendar, etc"

Where did you get this from? The only access to the iPhone functions and real apps that I've seen was that mailto links open the Mail application, phone numbers get parsed as phone numbers so when you click on them it dials, and addresses get parsed as addresses so when you click on them, it opens Google Maps.

From what I've seen, there is no way to get the contacts that are on your iPhone, there's no way to get sound input, the only thing that you can use multi-touch for is that Safari uses it to zoom in and out of web pages, but you won't be able to use it for stuff like zoomimg in and out of the map at the Google Maps web site for example as all it would do is zoom in and out the entire web page (which is one of the reasons they actually made a real app out of it IMO).

Todd Sieling
Tue Jun 12 12:16:23 2007

I'd love to hear what defines 'real apps' from web apps, besides personal preference and wounded pride.

RA has made some fine apps, and they're much closer to the metal than most need to be. Well enough, the iPhone clearly isn't for those kinds of apps. Why? Because Apple doesn't want it to be, just like it keeps the iPod closed. I think the Apple spin on this is poor, and they just should have said they couldn't get everything in the place they needed to feel like they could launch a successful product. Or are we actually thinking that they were a) lazy b) mean or c) stupid? Do we actually think here that they had no reason to do what they did?

Despite the bitchy and dismissive tone about web apps here, the many startups that Google has been scooping up into its family of web apps shows that you can do interesting things with them. Word processing, spreadsheets, calendars.... doing some of these on the iPhone gives Apple the chance to be the best at what it is doing for version 1 of the iPhone: developing it carefully.

Paul (Rogue Amoeba Staff)
Tue Jun 12 12:23:55 2007

Kerri Hicks: There a few important points.

1) Flash isn't actually on the iPhone (http://www.macrumors.com/2007/06/12/no-flash-support-on-the-iphone/). That's a problem.

2) The big issue is one of cost. Can you do much of what you can with desktop apps in a web app? Yes. Would it take much, much more work? In many cases, yes. We're not averse to learning new things, but if this device runs OS X, why shouldn't we be able to re-use code, instead of trying to reinvent the wheel?

For that matter, things like access to hardware bits is unlikely to be easily possible from the browser.

But to answer your question, there may not be an outcome you can't get here that you could with another framework, with enough years of work. That's not really economical though 8). 

http://blogs.zdnet.com/Burnette/?p=332

According to Jobs, the apps will “look and behave exactly like apps on the iPhone.” Except that you don’t have to launch the browser to start any of your other iPhone apps, and they have full access to Core animation, utilize local storage, can be multi-tasked, and run at full native speed. Other than that they’re exactly the same.

Sascha: On the one hand - ick, Java. On the other, at least we'd get HD access.

LKM: That certainly wasn't intended to be insulting - my apologies if it read that way. The choice of the word "real" may be a poor one. Substitute the word "desktop", and I think it reads a lot better. You can't use (just) web frameworks to create a desktop app, which sits in the main menu and is instantly accessible. No argument there, right?

As for the quality of the solution, I think web apps will work great for lots of things. But the way it's presented, this is the solution, for everything, and it doesn't work that way.

"They need to start by allowing web apps to
- be clickable icons
- work offline
- have offline storage
- work without showing the URL bar"

That'd be great. But at that point, they're not "web apps", you're a lot closer to a standard app. A web app shouldn't be defined by what it's written with, but by how it's accessed (over the web). If you can do all those things (clickable icons, offline access, etc.), why limit it to just web technologies?

Chittagong: This isn't really clear, no. If devs can somehow access UI elements, that's certainly nice as far as fitting in. But you still have lots of other issues.

Todd Sieling: As noted, the choice of the word "real" may be poor, and is better substituted by "desktop".

This really has nothing to do with pride, and everything to do with practicality. I use and love plenty of web apps, and I don't intend to be "dismissive" of them. I also use and love plenty of desktop apps. There's a place for both still, and pitching web apps as the one-stop solution just doesn't match reality.

What separates the two? Working offline. HD access. Hardware access. Languages they can be written in. Where they appear on the iPhone. And more.

Again, web apps are great, but they're not a 100% solution - if they were, there'd be no need for desktop apps, or for that matter, Leopard.

As for "Apple saying so" with regards to what apps belong on the iPhone, even that might be fine, but that's not what they're saying. What they said was, effectively "We found a way to gave you third party access, you're gonna love this! It's through the web browser - enjoy!".

" I think the Apple spin on this is poor, and they just should have said they couldn't get everything in the place they needed to feel like they could launch a successful product."

Indeed, I agree 100%. The issue here is one of spin and marketing, nothing more. Apple's been doing very poorly in regards to the iPhone and developers, and to pitch web apps as a perfect solution at WWDC to a room filled largely with Cocoa developers, is off the mark.

Kerri Hicks
Tue Jun 12 12:33:13 2007

@Graham:
"Kerri, >90% of the time the iPhone is limited to a slow EDGE connection. Under Steve's solution, every time you want to use an "app", you'll have to open the webpage, downloading the code all over again (which for complex AJAX apps, is rarely compact)."

I must have been mistaken in my impression of how these apps will work. It was my understanding that the markup, CSS, JavaScript, etc. would be stored on the iPhone like a widget, thus not necessitating a connection to the tubes to run. I think it'll be important to clarify this.

That said, though, a 'live online' widget makes a developer's life easier, as we now have access to the server that the codebase lives on. If the app lives self-contained on the phone, you have no PHP, no Rails, no MySQL...but if you need a connection to use the app, that's a horse of a different color, and you can make even more robust apps (i.e. use data storage) than you could otherwise.

It'll be interesting to see how this shakes out.

Martin Pilkington
Tue Jun 12 12:52:24 2007

I'd hazard a guess at the phone number/address detection being a new feature of webkit. Watch the Mail demo video: http://images.apple.com/movies/us/apple/mac/macosx/2007/wwdc/apple-mail_672x416.mov

Kerri Hicks
Tue Jun 12 12:56:24 2007

@Paul:

"The big issue is one of cost. Can you do much of what you can with desktop apps in a web app? Yes. Would it take much, much more work? In many cases, yes. We're not averse to learning new things, but if this device runs OS X, why shouldn't we be able to re-use code, instead of trying to reinvent the wheel?"

Point taken. As someone who develops web apps every day and Cocoa apps almost never, I don't see it the same way as you do...no learning curve here. :-)

So now it sounds like Apple is encouraging people to create web pages that display well on the iPhone's small screen, thus making 'iPhone apps'. Hrm.

Phil Aaronson
Tue Jun 12 12:58:44 2007

Hmmmm, I could be totally off on this, but I wonder if a revenue shakeout might also be behind the web apps only SDK? Gruber sees the release of Safari on Windows driven by revenue from Google, potentially reaching 100M or more (up from 25M).

Taking that thought one step further, I wonder how much of a cut Apple will be getting for the local searches + Google Maps integration that's there on iPhone today? Could Apple be thinking that there be more revenue to be mined on iPhone? And could that be cooling the application SDK talk, at least until Apple has had more time to explore this?

Eric
Tue Jun 12 13:18:58 2007

"I must have been mistaken in my impression of how these apps will work. It was my understanding that the markup, CSS, JavaScript, etc. would be stored on the iPhone like a widget, thus not necessitating a connection to the tubes to run. I think it'll be important to clarify this."

I don't think iPhone supports local web apps.

I can understand why they don't have an SDK capable of accessing low-level API calls like you can with Symbian or Windows Mobile but there is a middle ground.

Why not use the dashboard widget model? Dashboard widgets are not only stored locally but there's a built-in way to discover, install, launch, and manage widgets.

Graham Parks
Tue Jun 12 13:45:41 2007

Kerri: The only "app" demoed so far was a specially formatted page on Apple's intranet site. Steve's suggestion that you can update widgets simply by updating the web server suggests this is the preferred if not only method.

Juan Leon
Tue Jun 12 14:20:26 2007

I agree with the post. Trying to spin WebKit as an SDK is total BS.

My day job is Web 2.0 Development... and JS limitations and frustrations make it a very low return on investment in terms of application richness. JS/AJAX libraries like YUI make life a lot easier and work well on webkit, however you cannot yet build a compelling app without local storage. The only reason that Google is able to do this is because Gears installs a local SQLite backend on your machine and forces the browser to check the cache first. If you cannot touch the local filesystem, then compelling offline apps are not yet possible on the iPhone IMHO. The main reason some Dashboard widgets are compelling, is because you can actually extend the Web 2.0 stuff with Cocoa plugins. It does not seem the iPhone will allow this type of widget -- only server based, website widgets.

I write Mac stuff at home on my own time. I am not at all excited about the iPhone as a platform, and I am confused why there were hundreds of folks lined up for the "building for iPhone" session today. I'm only excited about the iPhone as a consumer product for myself ;)

Sergio Mendez
Tue Jun 12 15:43:01 2007

People, there is a vast difference between web apps and desktop apps. I can hardly believe people are arguing otherwise. (And this is coming from someone who's spent over a decade doing design for web apps). Yeah you can do more and more with web apps blah blah... but come on, not the same at all.

Also, we need more Santa/Pony/Mercedes analogies.

Its the $$$
Tue Jun 12 18:36:11 2007

I think its all about software registration costs. Buying 3rd party apps on Windows Mobile is a nightmare. Even the lamest "todo list" crap is 20 dollars. Apple wants to avoid that trap. Sure, none of you shareware developers make your software revenue, but the expanding market will be much bigger with the software as a service approach (free version, premium version for a few bucks a month)

Chris
Tue Jun 12 18:52:01 2007

Did anyone attend the "building for the iPhone" session today? Did it shed light on any special http calls or tags? Any style sheet tempatles?

Anything special?

cdawson2000 at yahoo dot (com)

Michael Dupuis
Tue Jun 12 19:08:22 2007

@Kerri Hicks

I see where you're coming from, but it's the user experience that we're really talking about.

Take a good look at the keynote. Watch how things work when the address book is displayed: the list items scroll, the top and bottom "anchors" stay put.

Now watch him demo the web app: the whole entire app scrolls, and we see some blank space at the bottom that's just not there. Can web apps be done and done well, yes, of course, but the user experience will not be the same as a native app and that's what we, as Cocoa developers want to be able to provide. I think the comment "if web apps were so great, Apple would have written all of their iPhone apps that way" pretty much hits the nail on the head.

For one of my own products, I'd like to provide local (to the iPhone) data and syncing with the Mac. Can I do something as a web app? Probably, but if allowed to let a user sync their database to the phone, the performace would be much better. with hooks into the iPhone API I could make my app work/launch JUST like Apple's own apps. That won't happen with a web app. Your web app will always essentially be a bookmark in Safari.

Like I said, it's not that that is not viable, it's just not what I, or Paul or a lot of other developers want to provide, and being told that "Web 2.0 is sweet" and that we don't need an SDK, well that is sort of treating us like we're idiots and hadn't figured out that that option was already there for us.

Bottom line, I think that this is only the first step. The phone is totally new. It takes time and effort, to set up an SDK, a distribution mechanism, etc. We just wish Steve would have gotten up there and just said as much.

George M.
Wed Jun 13 02:55:17 2007

I think in general, aside from the harsh-sounding "real apps" comment, you guys are absolutely right to pick on Apple for pretending that web access is the same thing as a full iPhone SDK for developers.  It's not, and this is fairly easy to prove.  It remains to be seen how extensive the web access is to the iPhone's features, but it's not premature to assume that it can never reach the same level of control as a full SDK would.

I'm of the opinion that having a true SDK was simply far too big of a task for Apple to accomplish at the same time as finishing the iPhone, so I happen to think that they're correct in not offering it at the same time as the phone's release.  I do wish they were more straightforward in explaining this, I think some developers would whine that they want an SDK NOW NOW NOW but most would understand the magnitude of work involved in making this happen, and would be willing to wait.

However as a developer (and part-time marketer due to my company), I do have a beef with this oft-repeated statement that the iPhone is marketed by Apple as a computer.  I beg to differ - that is YOUR interpretation of what the iPhone is, based on extrapolating the features it has and assigning your own label to those features.  If Apple really wanted you to think of the iPhone as a computer, they would say so directly - you'd see marketing lines like "Your Mac. In your pocket." or something to that effect.

No, what Apple is doing is far more subtle - they are telling users this is a "revolutionary phone".  Sure, some of its features are reminiscient of a computer (OS X, Safari, etc.), but essentially, this is a phone+iPod+internet device.  To an engineer, this may seem like a pointless distinction, but it means the world to end users from a marketing standpoint.  Computers are complicated and messy and somewhat annoying to a lot of end users.  They need things installed, need rebooting and special care and all that.  A cool phone, with a few extras in it, should be a reliable gadget you WANT to use every day, not just for work.  True, lots of people play games and do leisure stuff on their computer, but it's still a fundamentally different concept to sell a cool phone vs. a pocket computer.

So given that you guys started with "it's a computer, duh", you naturally assume Apple thinks so too, so it makes sense to think they're being insulting by not offering an SDK for it.  After all, what kind of "computer" doesn't allow 3rd parties to write software for it?  But has it occurred to you that maybe Apple doesn't think like you guys?  Maybe they're not offering an SDK at this point because they DON'T want people to think their shiny new toy really is a computer, at least not yet?

LKM
Wed Jun 13 03:15:38 2007

@Paul
>why limit it to just web technologies?

I do not know why Apple did it, but from having designed SDKs, I know that it takes a lot of work to create stable SDKs, and it always has implications on the rest of your code, since you'll then have to keep supporting the SDK, even if your code changes (the first few versions of Mac OS X kept breaking SDKs with each new version).

I think it's acceptable for Apple to not release an SDK with the first version of the iPhone. I think it's not acceptable that they act as if it wasn't a huge deal, and as if web apps could replace desktop (or native) apps.

I'm hoping they did not do the SDK yet because they want to stabilize the code first, and then create an SDK.

Apple could have a neat temporary solution for iPhone apps, separate from their own code, by enhancing web apps with a few simple concepts (Google Gears + clickable icons would go a long way). I hope they will do this.

slarrg
Wed Jun 13 08:53:29 2007

I think some posters here are having a hard time understanding instances where local apps would be preferable to web apps. Web apps can be wonderful things (I've been the senior developer for a number of corporate and government intranets over the last 10 years) but they also have limitations.

1) Web apps expose data to outside entities. When a third-party writes an application, you install it locally and all of the data is maintained locally. This is not true for web apps. The google word processor and spreadsheet are great pieces of software but I would be upset if an employee under my charge was writing internal corporate documents on these services. Sensitive and private data should remain only on devices within your control.

2) Web apps are services. When I install a local application it functions exactly the same way from day one. Web applications can be changed at any time by the service provider without any notice. The most important feature for any given user could, potentially, be removed because it's not worth the headache for the service provider. Additionally, services need to be paid for on an ongoing basis. This could be through subscription fees or advertising but it is still the case.

3) Web apps require much more trust from the user. I'm guessing that many of you who argue in favor of web apps have never lost data as the result of a service provider going out of business or discontinuing a service. When it happens, it can be a very traumatic problem for anyone who relies on the service to fill a mission critical need. With an local app, you never have this exposure to risk.

4) Security is less convenient. Let's assume that a company can control the entire environment by writing a custom web app and hosting their own servers. As an example, we'll assume that the company requires employees to enter time and billing codes as they work on different projects. The phone is an ideal tool to allow the employee to enter this data since it will be with them when they are offsite or away from their desks. With a local application, they can allow the user to select a billing code and enter hours worked, later the phone can be synced to their office desktop computer and automatically transfer the data into the corporate database. With a web app, the user would need to find a location that allows an internet connection (you may have lousy reception in any given location), select the appropriate bookmark for the time entry system (perhaps a secure https connection), the user would need to enter their username and password (the data entry system cannot be wide open to the whole world, after all), then finally enter the time and code. In addition to being more cumbersome, the user needs to pay fees for transmitting data in each direction.

There are other problems, too, such as limited control over the interface interaction (multitouch, pinching, animation, etc.), access to specific local hardware (harddrive, camera, bluetooth, etc.) or other local software (contact information, calendar, photos, etc.).

Imagine smaller apps in which a user simply wants to keep track of expenses while on vacation to sync to a computer when he gets home and you'll see that it would be unlikely that the user would have the resources to keep his data private.

Web apps are not, by any means, a bad thing. They're just not the solution to every problem. Just because Apple only gave us a hammer does not make every problem a nail. It's insulting for Apple to insist otherwise while they continue to create local interfaces for internet data (Google Maps) which proves that they understand the limitations of a web app.

Todd Sieling
Wed Jun 13 11:38:39 2007

@Paul

> What separates the two? Working offline. HD access. Hardware access. Languages they can be written in. Where they appear on the iPhone. And more.

Good points - I wonder if Google Gears + iPhone will change things at all from the point that they seem to be at today. It also strikes me that this might be the best Apple could come up with, seeing that it's been so stressed with getting the base iPhone ready in time.

After a day to think about it, I wonder what we can realistically expect in terms of spin from Apple at an event that most people paid a good chunk of cash to be at. Can you see them getting on stage and saying "It's reasonably acceptable!" Sadly, the rhetoric of product promotion demands that you say it's f'ing amazing, or say nothing at all. I know the choice I would have made from that menu :)

Paul (Rogue Amoeba Staff)
Wed Jun 13 20:24:29 2007

George M.: I think having a true SDK likely was difficult/impossible for the 1.0, and that's just fine. As we've noted, we didn't expect it, but we want better than this.

As for "our interpretation" of the iPhone, I'd really have to say you're incorrect in how Apple is pitching this. They absolutely do not pitch it as "a cool phone with a few extras in it". Watch the ads: http://www.apple.com/iphone/ads/ particularly How To. It shows, in order, your music, your email, the web, and oh yeah, a phone. The phone functionality is the very last thing mentioned, and only briefly, in all four of these ads. Apple doesn't pitch it as a mini-computer directly, no, but it's certainly much closer to that than it is to "a phone with extras". If they were just selling a phone, they would focus on how well it handles calling. But it seems they believe customers are much more interested in the other aspects of the device, from being iPod (music and videos) to internet communications (email and the web).

Todd Sieling: If this is the best Apple can come up for 1.0, that's fine. But they pitched it as a fabulous solution. As far as the spin, their audience consisted largely of Cocoa developers. Telling them "Hey, you're all set, just make web apps" is weak. They don't need to disparage web apps (though Steve did, just last week), they could easily have said "We hope to let you write apps directly for the iPhone eventually. For now though, you can definitely get on with web apps. Let's see how cool they can be". That's much more palatable.

Derek Martin
Thu Jun 14 00:34:45 2007

In Defense of Apple:

1) You need an unlimited data plan to have an iPhone, so the fact that application data is housed online is not a problem.

2) It's actually possible that they'll allow each 'app' to have its own chunk of drive space for caching data locally in a form that's queryable (this already exists).

3) Data doesn't take much bandwidth - images and video do. So if you're just writing data-based apps like contact managers, map things, etc, Edge should seem plenty-zippy, especially once you've cached your most frequently requested data locally.

Against Apple:

1) Don't just tease us - put up a page listing the API calls that can be made to the iPhone.

2) Please tell us how to accept finger-gesture input!

3) Remember when Palm III was new? You could download a little java emulator so you could build WAP/WEP pages for it, without having to own one. Can we have maybe a Flash-based iPhone emulator to develop on?

4) At least let our apps run 'full screen', without the Safari chrome wrapped around it. That might help make them feel like "real" apps.

yet another steve
Mon Jun 18 22:59:28 2007

I finally figured out WHY I was so disappointed. The answer is that this is revolutionary hardware... and if it were a platform we could make revolutionary apps.

Apple, I think, really wants it to be a phone. An ipod device (though much more capable.)

The ipod was never revolutionary in terms of hardware. clickwheel: nice. Otherwise basically just a hard drive and later flash. Great packaging and implementation of ordinary hardware.

Not so with the iPhone.

And sooooo we want to program that hardware, that screen.

We want iPocketComputer. A platform. It's okay if it is a phone and an ipod as well.

And maybe we'll get it someday.

I'm starting to piece together that the "OS X" inside claim might be a little overstated. Some talk of Apple's apps interacting directly with the kernet. If that's the case, and it's really just a phone, just be upfront and TELL US.

And get to work on iPocketOSX please. A touchscreen in your pocket with a modern OS inside is a VERY EXCITING idea. MIght as well contain an iPhone as well so we don't have to carry around two.

We've seen the hardware. WE MUST PROGRAM IT. Prefereably without having to hack it...


This post is archived, and commenting has been closed.
Copyright © 2008 Rogue Amoeba Software, LLC. All rights reserved.