
Creating an iPhone Application - Tutorial 1 - InkweaverReview
http://experimentgarden.blogspot.com/2009/06/creating-iphone-application-tutorial-1.html
======
proee
Has anyone given appcelerator a look? It seems you can develop native iphone
apps using js/html/css using their mobile sdk. This would be great for simple
apps I would think.

<http://www.appcelerator.com/>

~~~
geuis
I am in the beta program. It has a certain promise to the interface and the
team is very responsive when it comes to bugs. However, there are frequent and
sometimes significant bugs that have really made it impossible to do serious
development. Everything is essentially in a webview with no low level socket
connections and only limited native controls. All this being said, it's a lot
better than phonegap and will likely win out in the long run.

------
gengstrand
For those who just want to make their site friendly to iPhone users, consider
generating your HTML with <http://www.aptana.com/iphone> instead of a full
featured iPhone SDK in Objective C approach.

~~~
ankhmoop
As an iPhone user, I _strongly_ prefer native applications. They can integrate
with the built-in technologies (address book, location, P2P, MDNS, etc), and
they don't simply stop working for 30 minutes while I ride the subway.

~~~
InkweaverReview
Good point. Web apps are going to be unavailable wherever wireless access is
limited.

I didn't even think about that.

~~~
TomOfTTB
It's actually not that good a point. Using JQuery you can get a web app as low
as 1k so slow connection isn't that big a problem. Web apps can integrate into
most of the iPhone's features like contacts (notable exceptions being location
and camera). The other stuff he mentions like p2p, mDNS, etc... are very
specialized applications that to the best of my knowledge only work on
unlocked iPhones (I could be wrong though I know bit torrent has been banned
from the app store)

A web app is never going to work for edge case style applications but for the
majority of web sites it's probably a good idea just to spend a day
customizing their site for an iPhone (I've become fond of iWebkit:
<http://iwebkit.net/>) rather than buying a mac, learning objective-c, etc...

Bottom Line: Look at your requirements and decide if a Webapp will do. Don't
just jump to native.

~~~
ankhmoop
_It's actually not that good a point. Using JQuery you can get a web app as
low as 1k so slow connection isn't that big a problem._

1k is still a pretty unpleasant wait when you're looking for 'instant', and
unfortunately, if I exit Safari to use another app (which I often will),
Safari will very likely need to reload that page.

 _Web apps can integrate into most of the iPhone's features like contacts
(notable exceptions being location and camera)._

Web applications can't integrate with the address book, actually.

 _The other stuff he mentions like p2p, mDNS, etc... are very specialized
applications that to the best of my knowledge only work on unlocked iPhones (I
could be wrong though I know bit torrent has been banned from the app store)_

The P2P I was referring to is WiFi/Bluetooth zero-configuration phone-to-phone
'networking', for magically connecting applications on two or more phones.
It's pretty neat.

 _A web app is never going to work for edge case style applications but for
the majority of web sites it's probably a good idea just to spend a day
customizing their site for an iPhone (I've become fond of
iWebkit:<http://iwebkit.net/>) rather than buying a mac, learning objective-c,
etc..._

I really don't think they should be considered 'edge cases'. There are so many
ways that the user experience is better via integration opportunities, speed,
and native look and feel, that I don't think anyone should consider a mobile
webapp to be a viable _replacement_.

Webapps are a reasonable substitute assuming nothing else is available and you
can't afford to produce a proper application, but I'm not convinced that
you'll spend more time and money producing a native app than you'd spend
producing an equivalently high-quality webapp alternative.

~~~
TomOfTTB
"Webapps are a reasonable substitute assuming nothing else is available and
you can't afford to produce a proper application, but I'm not convinced that
you'll spend more time and money producing a native app than you'd spend
producing an equivalently high-quality webapp alternative."

I'm sorry but are you kidding here? You think a web developer who already has
experience in all the tools used to create a web app is going to spend the
equivalent amount of time learning a completely new languange, platform,
developer tools et al AND THEN using them to program an app. I'm sorry but
that's really a ridiculous thing to say.

(and I don't mean to be rude but really, who voted this comment up? If you
don't know how software development works you shouldn't comment or vote on
posts that involve it)

As for the rest of your argument,AT&T's Edge connection downloads at around
25KB. So a 1K page (which you claim causes an "unpleasant wait") would
download in 1/25th of a second even on a slow connection.

As for the rest, my point still stands. Everything you spoke of requires a
cracked iPhone which the great majority of people don't have anyway.

For the record, you're wrong below but I can't reply to you and I don't know
why. But the short of it is anyone who is ACTUALLY a developer knows there's a
lot more than picking up a language to development (though again there will be
time to pick up the language and that will be time a web app developer
wouldn't need to spend). You have all your tools including your editor, unit
testing tool, etc... So again you're wrong. And yes there might be overhead to
a web app but at 1k it's still going to come down in about a second or two.
And Latency, this is the first link I found off google:
[http://www.engadget.com/2007/06/28/atandt-customers-
seeing-s...](http://www.engadget.com/2007/06/28/atandt-customers-seeing-
sudden-boost-in-edge-speeds/) I don't think .91 seconds is going to kill
anyone

~~~
ankhmoop
_I'm sorry but are you kidding here? You think a web developer who already has
experience in all the tools used to create a web app is going to spend the
equivalent amount of time learning a completely new languange, platform,
developer tools et al AND THEN using them to program an app. I'm sorry but
that's really a ridiculous thing to say._

As a software developer, Objective-C is just another imperative C-derived
language (a pure superset of C, actually), with Smalltalk-decedent OO
features. It's not (or shouldn't be) an alien experience.

My comment assumed a baseline software developer proficiency. If simple high-
level webapp development is all you've ever done, then of course -- writing an
Objective-C application will be more difficult. Perhaps that's a good reason
to write one.

 _As for the rest of your argument,AT &T's Edge connection downloads at around
25KB. So a 1K page (which you claim causes an "unpleasant wait") would
download in 1/25th of a second even on a slow connection._

In addition to failing to account for additional resources (the page won't be
1K in total), you forgot to account for latency (there's quite a bit).

 _As for the rest, my point still stands. Everything you spoke of requires a
cracked iPhone which the great majority of people don't have anyway._

Nothing I've mentioned requires a jailbroken phone for any purpose.

