Making web apps for the Iphone
July 14, 2010 6:22 PM   Subscribe

Building iPhone Apps with HTML, CSS, and JavaScript
Jonathan Stark's book is online in its entirety, with a Creative Commons license. Kind of cool.
posted by mecran01 (65 comments total) 58 users marked this as a favorite
 
How cool! It's a really good book and I purchased it a while ago. Gives a good introduction and tours through one of the best iPhone-esque jQuery libraries around.
posted by verb at 6:25 PM on July 14, 2010


This is a good book.
posted by goodnewsfortheinsane at 6:36 PM on July 14, 2010


Just in time too. Now maybe someone will be able to build an app that will unSUCK and unFAIL the iPhone 4.

I'd prefer an app that would unHYPERBOLIZE the haters.
posted by Talez at 6:38 PM on July 14, 2010 [7 favorites]


I'm loving my iPad. What other books would people recommend for learning how to create for the thing?
posted by dobbs at 7:05 PM on July 14, 2010


It's pretty cool that the book is available online. There's no need to turn this into an OS war.
posted by new brand day at 7:06 PM on July 14, 2010 [1 favorite]


Well, it's good that this is out, because the alternative is a bit scary...

1986 - Brad Cox and Tom Love create Objective-C, announcing "this language has all the memory safety of C combined with all the blazing speed of Smalltalk."
posted by Monday, stony Monday at 7:12 PM on July 14, 2010 [1 favorite]


This is probably a decent place to link to a Thomas Fuchs post from last month: Making an iPad HTML5 app & Making it Really Fast.

In particular, I liked the "mini-pico-tiny convenience micro-framework." Not necessarily exactly what he chose, but since I read that, I've realized that in many cases (particularly when I'm targeting a specific user agent, as an iOS developer would be) it's possible to get much of the utility I get out of jQuery with a handful of carefully chosen custom functions.

I'm excited about Web Apps for the iOS devices and other platforms right now. I know they have limitations (some of which I've been bumping up against in my experiments), but the range of possibilities is wide enough that I think it's not too much to ask to try to be a glass-half-full kindof person when it comes to this, and it's a straight-up bypass for many apps (particularly content-focused apps) that might face trouble during the approval process.

Not only that, given the relative accessibility of client-side web development, I don't think it's too much of a stretch to claim this is something close to HyperCard for the iOS devices -- maybe not (yet) matching the ease of authoring, but it's a serviceable foundation.
posted by weston at 7:19 PM on July 14, 2010 [7 favorites]


What other books would people recommend for learning how to create for the thing?

iPhone 3D Programming is good if you're comfortable using XCode.
posted by ecurtz at 7:22 PM on July 14, 2010


Yeah, if I were targeting only iOS I'd be more inclined to go that way rather than pull in the full weight of jQuery, love it though I do.

Well, basically it's making a small JavaScript heavy website, so it's like HyperCard to exactly the extent that building a JavaScript heavy website is. That said, if you're targeting a single device it removes a lot of the work you usually have to do to deal with browser variations, display sizes etc...
posted by Artw at 7:28 PM on July 14, 2010


Brad Cox and Tom Love create Objective-C, announcing "this language has all the memory safety of C combined with all the blazing speed of Smalltalk."

I've no love for the memory safety issues of any flavor of unmanaged language, but I don't think this is fair. From what I've read, Objective C's performance penalties are nowhere near SmallTalk's -- a 10-30% hit instead of a 10x hit. And because it's a strict superset of C, I'd guess that much of the time when you hit bottlenecks, you have the option of rewriting in straight C.

Writing apps built on web technologies is nice option for a lot of reasons, but not because Objective C and XCode are horrors to work with.
posted by weston at 7:34 PM on July 14, 2010 [3 favorites]


weston: "... the range of possibilities is wide enough that I think it's not too much to ask to try to be a glass-half-full kind of person when it comes to this... "

When I imagine the iPad apps they'll have in 2015, my nipples get hard.
posted by Joe Beese at 7:40 PM on July 14, 2010


I don't think James Iry was serious when he wrote that. I certainly wasn't when I quoted him.
posted by Monday, stony Monday at 7:44 PM on July 14, 2010


Mod note: few comments removed - chill out, nerds
posted by jessamyn (staff) at 7:45 PM on July 14, 2010 [15 favorites]


As I've been using more and more Javascript I've almost completely eliminated hand coding HTML, is this normal? I see the book has HTML snippets that Javascript hooks onto, but when my pages are served it is almost exclusively a container div and that's it. I find this really productive but don't see it advocated much in texts like these (of course it could be that it is simply implied and this is what everyone does).
posted by geoff. at 8:15 PM on July 14, 2010


From what I've read, Objective C's performance penalties are nowhere near SmallTalk's -- a 10-30% hit instead of a 10x hit

The modern Objective-C runtime is well-tuned. It's so good that your application's real performance issues are probably architecture, I/O, or implementation-based in nature.

Here's Bill Bumgarner on objc_msgSend. It should give you an idea of how little many, if not most developers need to worry about the performance of the language.
posted by secret about box at 8:16 PM on July 14, 2010 [1 favorite]


geoff,
What if Javascript breaks? Asynchronous request doesn't make it because of network hiccup. I still think sites should degrade gracefully. Let me see the content, even if it isn't presented like you might have intended.
posted by PhillC at 8:40 PM on July 14, 2010


If Javascript breaks?

It's still in a container DIV.
posted by Talez at 9:02 PM on July 14, 2010


Also, check out the HyperCard clone "tilestacks".
posted by mecran01 at 9:40 PM on July 14, 2010 [2 favorites]


[W]hen my pages are served it is almost exclusively a container div and that's it.

Most people will say the reason not to do this has to do with "progressive enhancement". Your page should still work without JavaScript, for when paranoid users have turned it off. But another reason is that it's an easy way to keep presentation and logic separate (view/controller). It's possible to achieve this without using static markup, of course, but doing it that way adds a little unnecessary complexity.
posted by zixyer at 9:44 PM on July 14, 2010


1986 - Brad Cox and Tom Love create Objective-C, announcing "this language has all the memory safety of C combined with all the blazing speed of Smalltalk."

Seriously? 1986?
posted by Blazecock Pileon at 10:31 PM on July 14, 2010


Apparently, yes; it has to be this early, since it was used for NextStep in the late 80s.
posted by Monday, stony Monday at 10:34 PM on July 14, 2010


Your page should still work without JavaScript, for when paranoid users have turned it off.

That user base is minuscule and unimportant, but don't go building RIA's either. There's nothing wrong with using jQuery to enhance and guide the user experience, but keep it simple and unobtrusive. Most of the heavy javascript development happens on the server side nowadays with node.js and the like, so if you're into that kind of stuff, go that way. Client side javascript is mostly for window dressing and carries no weight from a development perspective.

Building iPhone Apps with HTML, CSS, and JavaScript is a pipe dream. You have to go native with Objective-C. Sorry. Yes, Xcode sucks and the language is weird. Just take it easy at first and the concepts will start to sink in.

You can believe the hype all you want from Phonegap or Titanium, but at the end of the day Apple wants you to build your apps in Objective-C, using their tools and processes and if you need to take advantage of all of the published API's and the app store user base, they're going to get their way. You want to build games? Try using Cocos2d.

I understand that there'll be economic factors that will push for making it simple and on the cheap, but anything other than a native app will just be native-looking. Lipstick on a pig is no substitute.

If you just need to build a mobile-driven UI for your website, check out jQTouch. Ryan Bates puts together a very nice webcast on Mobile Devices. It took me two hours to implement one for myself, but if you still don't grok the framework, Peepcode also has a webcast for nine dollars. These examples rely on knowledge of Rails, but I'm sure that if you understand enough about PHP or JSP, you'll be able to get up and running.
posted by jsavimbi at 10:35 PM on July 14, 2010 [4 favorites]


Apparently, yes; it has to be this early, since it was used for NextStep in the late 80s.

You're right, of course.
posted by Blazecock Pileon at 10:42 PM on July 14, 2010


As I've been using more and more Javascript I've almost completely eliminated hand coding HTML, is this normal?

Some goodies from the jQuery twitter feed:

Building HTML in jQuery and JavaScript
Not Using jQuery JavaScript Templates? You’re Really Missing Out.
jQuery JavaScript Templates Tutorial: Nesting Templates
jQuery JavaScript Templates Tutorial: Inline Expressions and Code Blocks

Obviously with a highly dynamic page you're going to be dealing a lot of HTML that you're adding to the page on the fly. Personally I favour approaches that keep the HTML looking as much like HTML as possible, as I can read HTML and it's helpful that what goes in matches what comes out (also historically building up elements in the DOM the "proper" programmatic way has been slower than just throwing a string into InnerHTML), so a templated approach makes sense to me. Not sure about the more complex aspects of it though, once you start adding conditional expressions and the like it seems a bit like re-inventing the wheel, and also you start approaching XSLT in terms of fiddlyness and generally being a pain in the ass. I'm a little suspicious of soy templates for the same reason.
posted by Artw at 12:08 AM on July 15, 2010 [2 favorites]


ANother thing I;m finding extremely helpful in building complex JavaScript is Douglas Crockfords JavaScript Module Pattern - eliminate those global variables, start namespacing stuff and have public and private members.

In fact Crockfords book, JavaScript: The Goof Parts, should be essential reading to anyone doing anything serious with JS.
posted by Artw at 12:20 AM on July 15, 2010


That would of course be "JavaScript: The Good Parts". Sigh...
posted by Artw at 12:40 AM on July 15, 2010


I'm watching Sencha Touch to see what happens there. They absorbed jQTouch and Raphaël, which are supposed retain their licensing, but we'll see how much trickle-down improvement they get while the main hacker being paid by the Sencha/ExtJS group. I like using ExtJS, I hope their licensing for Sencha Touch is clear cut and not per-seat or something crazy.
posted by drowsy at 4:20 AM on July 15, 2010


dobbs, look for CS 193P on iTunes U. Stanford has posted all of their iPhone development courses online for free.
posted by purephase at 4:50 AM on July 15, 2010


A key thought for this approach is that you don't have to code for IE or FireFox or Opera or whatever. Single-target web apps are markedly different, and far more fun, to develop than ones that must run on myriad platforms and browsers.

I've tried a couple hybrid approaches, using Javascript/HTML in an ObjC app by embedding a web browser window. It's an effective tool for some situations. Mobile Safari is fast and renders consistently, so this is a good combination for content heavy forms and screens that don't need a lot of real-time interaction. And hey: CSS allows a lot of dress-up.
posted by seanmpuckett at 5:23 AM on July 15, 2010 [2 favorites]


I dunno. It looks like a crapload of work just to get out of learning ObjC, and you still don't have full access to the cool API's that make an iPad and iPad. HTML, CSS and Javascript are not trivial to learn or work with. Javascript especially is a very complex and complete language that includes functional language elements. It's real easy to get in over your head in a hurry without some deep geek mojo.

I'd be happier if Apple implemented something like an updated Applescript Studio, or took a page from Google and tried something like App Inventor.
posted by Slap*Happy at 5:31 AM on July 15, 2010 [1 favorite]


Artw - I would be interested to read JavaScript: The Goof Parts. Or [any language]: The Goof Parts, for that matter...
posted by Stark at 5:39 AM on July 15, 2010


Yes, this was an excellent idea, when Palm's WebOS introduced it as their platform application paradigm (with system calls made through a separate namespace in Javascript, natch) a year and a half ago. And every Apple fanboy in earshot decried it as wildly impractical and resource-intensive. Isn't it strange that, now that the idea has been implemented as a top-heavy framework that requires you to play by Apple's insane application rules, it is suddenly the talk of the town.

I appear to be MeFi's sole WebOS fanboy. Damn you, Palm, for what I have become
posted by Mayor West at 5:39 AM on July 15, 2010 [1 favorite]


Thanks for posting this... a bunch of my current work is veering in the direction of mobile app development. It's a good read. Of course, I kind of love javascript, and web development is really a pleasure to develop for a single, predictable platform with a reasonably reliable screen size and a known set of capabilities.

Mayor... well SOMEBODY liked it enough to pay a bunch of money for the company. It's a good idea, certainly, given that there are a ton of JS / HTML / CSS devs out there, theoretically ready to roll at any moment. 'Course, we're all busy, and therein lies the problem - -if you've only got X amount of spare time, it's hard to justify spending it making stuff for a pretty poorly distributed platform.
posted by ph00dz at 5:52 AM on July 15, 2010


HTML, CSS and Javascript are not trivial to learn or work with

Agreed. I think this approach would be for web developers who need to start making mobile versions of sites, etc.
posted by yerfatma at 6:03 AM on July 15, 2010


Mayor - I like WebOS a lot better than Android, but I was underwhelmed by the hardware and the network (at the time, Sprint). If I had to make the choice over again, I'd have waited for the Pre-plus on Verizon - the Droid is a sexy piece of kit, but there are serious usability hurdles on Android.

I reeeeally wanted the Nokia N900, but T-Mobile, while cheap, doesn't have much signal where I live and work.
posted by Slap*Happy at 6:48 AM on July 15, 2010


I'd prefer an app that would unHYPERBOLIZE the haters.

I'd prefer an app that knows you're responding to someone on a blog or in a discussion forum and the moment you use absurdly lazy arguments like HATER or FANBOY (or variants HATERS, HATERZ, FANBOYS, FANBOI, FANBOIZ) the app presents you with a pop up box questioning why you're actually constructing an "argument" with such dismissive tripe.
posted by juiceCake at 8:20 AM on July 15, 2010 [1 favorite]


jsavimbi: Building iPhone Apps with HTML, CSS, and JavaScript is a pipe dream. You have to go native with Objective-C. Sorry. [...] You can believe the hype all you want from Phonegap or Titanium, but at the end of the day Apple wants you to build your apps in Objective-C, using their tools and processes and if you need to take advantage of all of the published API's and the app store user base, they're going to get their way.

You can write an app in HTML+JS+CSS just fine. Wrap it in Phonegap, and voila, you've got a native app. Phonegap is extensible, and you can make Obj-C and JS methods talk to one another. Apple accepts Phonegap-based apps for distribution in the App Store.

Those are the facts. Now, I don't want to put words in anyone's mouth, but it does seem to me that some are all too eager to dismiss those who use methods other than their own to achieve similar ends — even if the ends are perfectly functional and perform well — in some sort of never-ending No true Scotsman exercise. I wonder what bothers them so much about it.

As for your ridiculous claims, jsavimbi, an honest question: how can you consider the above and still call building iPhone Apps with HTML, CSS, and JavaScript a "pipe dream"?
posted by goodnewsfortheinsane at 8:27 AM on July 15, 2010 [2 favorites]


now that the idea has been implemented as a top-heavy framework that requires you to play by Apple's insane application rules, it is suddenly the talk of the town.

Um... from what I can tell, "the idea" has apparently been there since the iPhone's inception, actually, and going this route is one of the ways you can get things onto an iOS device w/o going through the App Store.

I don't blame you if you missed it, though, it's been easy to forget about in the App Store excitement. I only picked up on it in the last year.

Also, I don't recall much criticism of the WebOS way of doing things other than some discussion of battery life issues.
posted by weston at 9:08 AM on July 15, 2010


Awesome find, thanks.
posted by kryptondog at 9:25 AM on July 15, 2010


As for your ridiculous claims, jsavimbi, an honest question: how can you consider the above and still call building iPhone Apps with HTML, CSS, and JavaScript a "pipe dream"?

Because I'm an app developer, that's how.

Also, I've been through the circus with jQTouch, Phonegap and Titanium looking to save time and aggravation, and they are not, I repeat not, capable of building true native apps. And anything written in html, js and css will never be a native app. To make you think so is a come-on, like calling Drupal or Wordpress server-side development. That only works if you're convinced of it and live in a bubble.

Again, if you read my post, it's pretty clear: you need to customize your website for mobile, use jQTouch. You need to wrap that customized site and submit it to the app store, by all means, wrap it with Phonegap or Titanium. But if you NEED an application that HAS to interact with all of the native API's and WORK SEAMLESSLY on the iPhone, it has to be written in Objective-C.

HTML/Javascript/CSS = customizing mobile website. Objective-C = building native app. Let's not confuse the terms.
posted by jsavimbi at 12:53 PM on July 15, 2010


Thank you for your reply, jsavimbi.

Well, this sounds an awful lot like the True Scotsman fallacy I described above. Your claim was that it is a pipe dream building iPhone Apps with HTML, CSS, and JavaScript, while Phonegap demonstrates that it is eminently possible.

Now you claim that anything written that way will never be a native app. Is your qualm with the definition of "native", then? Because I have a couple of apps built with jQT and Phonegap on the App Store, and they seem "native" to me. I have extended Phonegap with a couple of Obj-C-based frameworks like Flurry, Appirater and a couple of Phonegap plugins (like loading a child browser / UIWebView), and I can call them from JavaScript just fine. Is that not "native" to you?

I have no need for it, but as far as I can tell Phonegap can also make the device beep or vibrate, use the accelerometers and geolocation, or access contacts and the camera. Is that not part of the "native" UX?

I wouldn't consider my apps mobile websites either, regardless of the fact they use jQT for a user interface. For my apps, it's just a way of displaying constantly changing data. By that measure, you could consider any garden-variety Twitter app "non-native" or "a mobile website".

I will admit: I am a dilettante. I have no formal training, and I don't make any money making apps, for the time being at least. It is a labour of love for me. No wonder then that I found it many times easier to use Phonegap rather than learn Obj-C from scratch, although I had to learn some anyway to make PG work nice with my "plugins". (And I liked it after all.)

I will also give you that I understand why as a developer you would choose one set of tools over the other.

But none of that should take away from my core argument, namely that PG is a perfectly valid way for people to make iOS apps. So what are you saying? That my apps are inherently inferior?
posted by goodnewsfortheinsane at 1:45 PM on July 15, 2010 [1 favorite]


Are there any particular stand-out Phone Gap apps that anyone is aware of?
posted by Artw at 2:18 PM on July 15, 2010


HTML/JavaScript/CSS = customizing mobile website. Objective-C = building native app. Let's not confuse the terms.

It's perfectly acceptable to make distinctions between the capabilities and performance limits of the two. There's clearly a world of things you can do with the later toolset that isn't possible with the former. And to me the term "native" means that we're talking about a binary largely stuffed with machine-native opcodes and data, so clearly, by definition, HTML/JS/CSS aren't "native."

But you're overstating your case about the limits of the former. There's no reason whatsoever certain apps (twitter client, simple games, to-do list managers, language reference, etc) can't be built with HTML/JS/CSS.
posted by weston at 2:19 PM on July 15, 2010 [1 favorite]


I will also give you that I understand why as a developer you would choose one set of tools over the other.

Trust me, I've tried to accomplish what I needed to do using everything under the Sun before surrendering to Xcode. It's not by choice. Yes, you can build simple apps using h/j/c as long as you wrap them in yet another framework. Just like you could build simple websites using Dreamweaver/Contribute/Frontpage. But don't kid yourself by thinking that you're making something that can compete now or in the future with native apps.

My qualm, if any, is not with definitions. It's a simple reality. A stack of html/css views manipulated via javascript is not an app. It's a toy. Fun for people looking to put their mark on their iPhone, but useless to real-world applications beyond the simple.

"Building iPhone Apps with HTML, CSS, and JavaScript", yes you can. You can also become a model if you pay me for a portfolio of glamour shots and a day of beauty. Have your money ready. Am I making any headway here?

Again, if you're a dilettante, and there's nothing wrong with that, fire away with corner-cutting solutions marketed to you that will promise amazing results. I'm surprised GoDaddy doesn't have a kit out yet. But if you want to understand how to really build a phone app, you need to learn how to do it right. There's a reason why Apple charges $100 to join the dev program: it keeps (most) jokers out.
posted by jsavimbi at 2:43 PM on July 15, 2010


Yes, you can build simple apps using h/j/c as long as you wrap them in yet another framework.

Wait a minute -- are you saying that your understanding is that you need frameworks (like PhoneGap or Titanium) in order to deploy, or are you saying your understanding is that you need frameworks (like jquery and plugins) to get things done?

A stack of html/css views manipulated via javascript is not an app. It's a toy. Fun for people looking to put their mark on their iPhone, but useless to real-world applications beyond the simple.

If the app written with a "toy" does what any app in its niche needs to do, what makes it any less "real world" than another?

And this is starting to sound familiar: "The Mac/HyperCard is a Toy" was a pretty common refrain in the late 80s/early 90s.

You can also become a model if you pay me for a portfolio of glamour shots and a day of beauty. Have your money ready. Am I making any headway here?

PhoneGap is open source. Titanium is partly open source if you're not afraid of the command line. The book linked in this post is there in its entirety and creative commons licensed. Do you do pro bono photography for anybody who asks?
posted by weston at 3:17 PM on July 15, 2010 [2 favorites]


To make you think so is a come-on, like calling Drupal or Wordpress server-side development. That only works if you're convinced of it and live in a bubble.
Wait. What? I'm looking at top on my VPS and I'm pretty sure that Wordpress isn't running on the client side.
posted by verb at 3:22 PM on July 15, 2010


It's a simple reality. A stack of html/css views manipulated via javascript is not an app. It's a toy.
Aaaah. Okay, I see. I though we were discussing technical issues; you're discussing cultural legitimacy, and splitting hairs about what "development" and "app" and "Scotsman" mean.

A stack of pixels manipulated via mouse presses isn't an tool; it's a moving picture.
posted by verb at 3:27 PM on July 15, 2010 [2 favorites]


if you NEED an application that HAS to interact with all of the native API's and WORK SEAMLESSLY on the iPhone, it has to be written in Objective-C.
Sure, but that's different than saying that something isn't "real" or that it's a "toy." C is a toy for people who can't hack assembly, and pliers are toys, because they can't hammer things.

Okay, I'll stop now. Terrible analogies just make my teeth-grinding Internet Pedant come out.
posted by verb at 3:32 PM on July 15, 2010 [2 favorites]


You know what? You're right. Forget everything I wrote. Phonegap is the best approach of any towards iPhone development.

You can believe what you want. You can also peruse Appcelerator's showcase of flagship releases. If you have any umph, like yours truly, you can go and talk to the Appcelerator folks when they make their sales rounds (free schwag!) and listen while they pitch Titanium from one side of their mouth and pitch iPhone development services from the other. Yes, I too once worked at a firm that released a "partly open source" framework that you could use yourself or better yet, hire us to implement for you. Cheaper than WebLogic, still Java. 38signals cornered that market, if you're familiar with RoR.

Or, better yet, you can tune into the Apple/Twitter/Facebook announcements and listen to how they encourage the developer ecosystem with their API's only to find out a year later that they bought the ones they consider to be strategic and shut down the data to the rest. It's not technology, it's not culture, it's a business model. Just like O'Reilly's.
posted by jsavimbi at 4:07 PM on July 15, 2010


Phonegap is the best approach of any towards iPhone development.

It doesn't appear to me anyone has made this claim. Merely that it's an option and that where it gets the job done there's nothing wrong with it.

You can believe what you want.

Right now I'm still at least partly interested in what's driving your apparent belief that the options on this side of things are all about business, so I'll ask again: are you saying that your understanding is that you need frameworks (like PhoneGap or Titanium) in order to deploy, or are you saying your understanding is that you need frameworks (like jquery and plugins) to get things done?
posted by weston at 4:21 PM on July 15, 2010 [1 favorite]


Ok. If you're going to use the right tool for the job, use Objective-C for developing iPhone apps, but if one of the frameworks gets the job done, there's nothing wrong with that. Just don't become confused and insulted when your app doesn't work as well as their app.

For someone to deploy without writing their app in Objective-C, they're going to need to use a framework. Have people been able to do it without either? I can't speak intelligently to that because I don't curate the app store, but I'm sure as shit someone has at least tried rolling their own. Just not the kind of person buying into the Stark book. You do not need jquery or plugins to build an app, but jQTouch makes it very easy to build a native-like UI without spending time doing it yourself, and if that's all you need to do, then go for it.

I don't know what makes me think that everything is about business, it's probably just having been a consultant for so long and being able to tell the difference between a solicitation and a helping hand. Or working in an industry where every developer hopes that a giant will come along and buy their app. Happens all the time, people make money. Lots of money. And the iPhone itself, conceptually, is a business stream. Not the physical handset itself, but the concept of "iPhone". From hardware and software sales, to service agreements and consulting fees. Research, investment, marketing, advertising, it has it all. Not to mention a new business line for publishing. Hint, hint. Oh, but the book is free and online... so are the margaritas at the jewelry store.

Cui bono? Steve first, and then everyone else who Steve allows to have a go at the trough. And don't go pissing Steve off, either, or compete strategically with Apple's offerings. Bad news there.

Gotta go and reboot now that I've reinstalled the "free" iOS4 SDK.
posted by jsavimbi at 4:58 PM on July 15, 2010


For someone to deploy without writing their app in Objective-C, they're going to need to use a framework.

This isn't true. The offline application cache means you can pull an HTML/JS/CSS app from any URL and put it on the home screen. No Phonegap, no Titanium, no App Store. Nothing but commodity web hosting between you and the user's iPhone, really.
posted by weston at 5:28 PM on July 15, 2010


an HTML/JS/CSS app

You and I are not talking about the same thing. I'm talking about deploying applications to the app store with the effect of generating business. You are talking about tinkering with your trouser gadget on the weekend and showing your bookmarklets off to your friends. You're trying to make serious arguments out of the jokes I referred to earlier.
posted by jsavimbi at 5:54 PM on July 15, 2010


I'm talking about deploying applications to the app store with the effect of generating business.

Sure. The App Store's a great platform for that in a lot of ways. Growing market, nice channel. I've been part of creating an App distributed there and if the right idea/opportunity presents itself, I'd do it again.

But, then again, there's no reason the HTML/JS/CSS apps I'm talking about can't be behind a form which takes credit card numbers. Or, more likely, that you couldn't do what so many do on the App Store itself: a free version for the visibility and marketing, and premium version for cash. You'd take a hit on marketing, missing the halo effect from the seal of App Store approval, accidents of discovery from people browsing in the store. Maybe it's too big, maybe not. It depends on what other means you've got for marketing, what you feel the value of the app is, and what it has to return to support its development.

You are talking about tinkering with your trouser gadget on the weekend and showing your bookmarklets off to your friends

If you really want to argue in all seriousness that the limit of things that can be done with web technologies is "trouser gadgets" and "bookmarklets" -- if you really want to piss on the value of the web in front of Metafilter, of all places -- it's your credibility, man, not mine.
posted by weston at 6:55 PM on July 15, 2010


Well, we are kind of in fantasy land if we are pretending that web apps of the kind Apple was trying to push before native apps are serious competition for native apps. And Phonegap is interesting but doesn't seem to do much to extend their capabilities TBH I'm pretty much inclined to agree with jsavimbi and say that effort is probably better put into developing a iPhone enabled website or a native app and ignoring the almost zone in between.
posted by Artw at 7:17 PM on July 15, 2010


Ok. If you're going to use the right tool for the job, use Objective-C for developing iPhone apps, but if one of the frameworks gets the job done, there's nothing wrong with that. Just don't become confused and insulted when your app doesn't work as well as their app.
I hear what you're saying, jsavimbi, underneath the hyperbole. You're getting at the idea that there is a huge difference between the technical capabilities of a native iPhone app written in Objective-C, and a jQtouch powered HTML/CSS/javascript bundle. And that if someone tries to write an app that needs former's capabilities using the latter, they will get a vastly inferior product.

What you've actually said, though, has gone way beyond that. You're now suggesting that, what, a free book on mobile webapp development is being given away as a loss leader for metaphorical jewelry? That programs written in noncompiled languages aren't simply limited, but are not in fact programs? That code running on a server is not server-side code? That Objective-C Fart Players are Real Applications, while HTML/CSS/JS based apps are toys?

I can't make sense of what you're saying. I understand what I think you're trying to communicate, and I even agree with those things, but I can't make sense of the actual things you are saying.
posted by verb at 7:24 PM on July 15, 2010


I get my username from a war criminal. There's the value I project in front of Metafilter.

Give it a rest; you're are correct in your thinking in some respects, but your lack of experience and comprehension of the realities at hand overshadow that. And there's nothing wrong with that but the trees are in your way.

"I've been part of creating an App..."

That's a dead giveaway right there.
posted by jsavimbi at 7:31 PM on July 15, 2010


Trust me, I've tried to accomplish what I needed to do using everything under the Sun before surrendering to Xcode. It's not by choice.

That's a dead giveaway right there.

Not every application has the same requirements. There's a lot to be said for using the right tool for the job. Sometimes that's a web app.
posted by ecurtz at 8:47 PM on July 15, 2010 [1 favorite]


Objective-C Fart Players

This fart player stuff is about as ridiculous as the one-button mouse or replacing the letter 's' in Microsoft with a dollar sign. Please grow up.
posted by Blazecock Pileon at 10:15 PM on July 15, 2010


That's a dead giveaway right there.

Of...
posted by weston at 10:39 PM on July 15, 2010


No dog in this fight, but it's 37signals who did Ruby on Rails, not 38.
posted by harriet vane at 12:56 AM on July 16, 2010 [1 favorite]


This fart player stuff is about as ridiculous as the one-button mouse or replacing the letter 's' in Microsoft with a dollar sign. Please grow up.
...Or as ridiculous as saying that web-apps are by definition nothing more than "trouser gadgets" and "bookmarklets." That's the point.
posted by verb at 5:36 AM on July 16, 2010




So maybe someone could link to some phonegap/html apps in the itunes store so we could look at the results?
posted by mecran01 at 6:17 AM on July 16, 2010


Give it a rest; you're are correct in your thinking in some respects, but your lack of experience and comprehension of the realities at hand overshadow that

Do us all a favor and turn 24. Your insistence on belligerence long ago obscured the point you're trying to make. Perhaps your username is well chosen.
posted by yerfatma at 7:15 AM on July 16, 2010


It's probably safe to say that you have more power and flexibility with objective-c/xcode, especially if coding games, and that there is a long-standing animosity between coders and web developers or scripters that will not be resolved in this forum.

I need a handful of custom apps with no real market value that I'd like to put together and I don't know objective-c, so I'm probably gonna go the web app route. Anything that lets one release working apps without the app store is probably a good thing on some level.

Carry on.
posted by mecran01 at 8:44 AM on July 16, 2010


« Older Metafilter is dis many years old: !!!!!!!!!!!   |   Although of course, this had to be posted Newer »


This thread has been archived and is closed to new comments