iPhone Disappointment

For quite some time, I’ve been wondering which platform I should take my development skills to next. Don’t get me wrong – Windows development is still fun – but the world is moving under my feet, and it’s past time I at least experimented with other platforms.

The most obvious choice would be to enter the world of web application development, but the idea of dealing with web server maintenance, etc., makes that choice far less appealing to me. Truth is, what I’ve really been wanting to do is try out mobile application development. It would be a unique challenge to create apps for a platform that enables access to a wealth of information whenever – and wherever – you need it.

But the existing mobile platforms and devices haven’t impressed me. Mobile devices are still far too geeky for mainstream customers, but I’ve long assumed we’d eventually see one designed for non-geeks.

So when I first heard of the Apple iPhone, I was excited. Here was a user-friendly, stylish mobile device designed with people in mind. As my colleagues at NewsGator can attest, as soon as I saw the iPhone, I wanted to develop for it.

Then I read Apple’s announcement at their developer conference that third-party iPhone development would be limited to apps designed to work inside the Safari browser. Apple can’t promise that the iPhone will be secure and reliable unless they limit third-party apps to running inside the browser? What a cop-out.

No SDK. No access to local storage. How disappointing.

There are scores of developers looking for a new platform, and the iPhone could’ve been it – but at this stage, the iPhone doesn’t offer me enough to invest time developing for it.

25 thoughts on “iPhone Disappointment

  1. Apple seem to do well enough without opening up their platforms, so wheres the incentive?
    /agree Peter :)

    Like

  2. I agree that Flex is a cool technology to use, but that would have you dealing ith web servers.
    In the back of my mind I am holding out hope that there really is access to local storage and that the AJAX apps are installed local to the phone. I guess Cookies are a form of local storage.
    Still, a real SDK would have been much more exciting.

    Like

  3. Nick… what about Blackberry? I know within the past few months they’ve released some stuff to I guess help development of software.

    Like

  4. What part of “web server maintenance” do you find hard to swallow? Shared hosting is cheap and easy to maintain.
    I’d say you should have a look at Flex, download Flex Builder 3 and give it a try.

    Like

  5. Jolyon, shared hosting is cheap and manageable unless your application becomes popular – and I’d kinda’ like to write something popular :)
    If your web app gets enough users, a huge chunk of your time is spent making sure it’s responsive, and you constantly have to be vigilent against hackers/spammers/etc. That’s just not how I want to spend my time.
    Of course, something like Amazon S3 could help out (a lot) here, but I’d really need to think about whether I want my application’s reliability to be tied to a system outside of my control.

    Like

  6. Hey this guy built HomeSite. I still use it on occasion – even under Vista – it is that good at what it does. And Adobe are still supporting it by releasing tag updaters for ColdFusion 8. Nick – you made a winner there!

    Like

  7. As one of the lead developer’s on Palm’s Foleo project, I’d really welcome seeing a good feed reader application with local storage on the device. We’ll have a full SDK available when it’s released, including a HTML view that can be used to show articles. I’ve been using NewsGator Online with my unit through the web browser, but with less CPU available to run Javascript easily, having a local app would make the experience a lot better.

    Like

  8. The thing Steve Jobs didn’t talk about in his Keynote speech is Mac OS X Leopard SERVER. Check out the new server features listed at http://www.apple.com/server/macosx/leopard/
    Apple looks to be positioning the iPhone as a Network PC or “thin client” to Leopard Server. Client/Server may be before your time (or not). It fell out of favor, pushed aside by the Pentium, and the web. What goes around comes around.

    Like

  9. Aaron, the future *is* web apps – and desktop apps, and hybrid apps, and mobile apps, etc. There isn’t a single winner here that will wipe out all the other development platforms.
    I agree with Joe Hewitt that having a full-blown, AJAX-capable browser built into the iPhone is a very big deal. But if browser-based apps are really good
    enough, then why is Apple bundling *native* apps with the iPhone?

    Like

  10. One thing that bothers me about Aaron and Joe Hewitt’s stance of “web apps” are the future is that it’s such a simplistic, narrow view of the reality of software development. First, software development goes beyond just consumer applications like feed readers, blogging tools and document writing. There are huge fields of console game development, medical instrumenting, mortgage processing, and, in a a bit of irony, web servers. The actual server bits, like IIS or Apache or all the little ISAPI add-ons, guess what, those are all very much “desktop” applications.
    The obvious being said I believe the real future is in convergence applications that center around an ecosystem vs. insular one-offs. For example how FeedDemon interacts with the Newsgator back-end so you have access to all your feeds from anywhere, yet when you are on your main machine you have the power of FeedDemon. Another example is managing flickr photos. Anyone that values their time avoids the web front-ends and uses a tool like the Flickr Uploadr to mass import, group and tag their pictures at a fraction of the time. So desktop and web apps working together instead of the desktop vs. the web.
    I do both types of development and flow between the two easily and find the biggest bang for the buck is when you create a service back-end that is web-based while creating both desktop and web-based clients. Another great example is 37signals Basecamp web-app. This is considered one of the crown jewels of the web 2.0 world *yet* there are many desktop tools for working with it, such as Apple Widgets & Vista Sidebar Gadgets, tray timers, Excel importers and even full desktop-based organizers for working with large Basecamp projects. These tools all popped up after the release of Basecamp because there was still a large demand for the speed and ease of a desktop-based tool.

    Like

  11. Henry,
    The Mac is actually an open platform: anybody can develop applications and/or widgets for the Mac, all you need is a Mac (every copy of the OS comes with a SDK disc).
    The iPod is actually Apple’s closed platform; you need not only authorization but to work directly with Apple to get any kind of software support for your peripherals installed onto an iPod. (Of course, cases and earphones don’t require any of that…)
    So, given the success of both products in their respective markets, is it a surprise that Apple has chosen a closed platform approach with the iPhone?

    Like

  12. When I first heard about the “SDK” for iPhone, I too was a bit disappointed. Then I asked myself, “Why should I be disappointed?”
    I’m no C++ or Java god. I can Perl up a storm, and I’m learning Ruby on Rails now, and I see that web apps solve a lot of logistical problems for would-be iPhone developers. Distribution is a no-brainer. The web app can leverage the power of the server instead of requiring a small and CPU-constrained mobile device to do the heavy lifting.
    The demo app that Scott Forstall showed in the keynote was pretty impressive, giving mobile users remote access to the fictional company’s LDAP server. No need for the user to maintain a local copy of anything, just a bookmark in Safari. From a support standpoint, that is a win. For the developer, for the customer. A win.
    Certainly the web solution does put a limit of the kinds of applications you’re able to put on the iPhone, but there’s still loads of room for elegant, useful, and iPhone-CPU-friendly applications you can write today.

    Like

  13. Hi Nick,
    Thought about giving Ruby on Rails a go? After 10 years of Windows client/server application development I’ve made a complete switch to Rails dev (on OS X). I couldn’t be happier. It has rejuvenated my interest in software development. Rails development is simply a joy. I know it sounds corny, but it’s the best way I can describe it.
    Cheers,
    Diego

    Like

  14. Nick, this seems to be in line with the behaviour of the US mobile phone networks who routinely lock down and disable useful features on phones.
    I understand that Skype have started a lawsuit since providers have disabled the ability to run applications like theirs. These devices when left in an ‘unlocked’ state have no problems with running the Skype client. If successful, I would hope that Apple would see this as an opportunity. (I’m pretty sure that these limitations are part of their deal with Cingular (now AT&T).)

    Like

  15. @Diego, I have actually looked into Ruby on Rails, and liked it quite a bit. If I switch to web development, that’s probably the route I’d go. But I’d still like to build native apps for the iPhone.

    Like

  16. Web apps are good only for a narrow range of uses. JavaScript is just a simple on-page INTERPRETED (sloooooooow) language. Not well suited to complex things. On my phone I installed a Commodore 64 emulator. I like it. I see no way it could be implemented in AJAX and running efficiently. iPhone without even J2ME is garbage for me.

    Like

Comments are closed.