In the afternoon session today, I’m going to learn what it’ll take to build the next generation of apps. I’m curious to see what they’ve got to say.

Presenter: Dion Hinchcliffe

  • Room is about 90% full, compared to previous session
  • Poll shows 45% tech architect/dev, 45% product management, 10% other

I fear that this might be more beginner than I thought. This seems to be covering a lot of existing Web 2.0. I hope it’s just to set common background.

  • Need to look into social graphing as a metrics method
  • Badges are becoming most popular form of widgets (e.g. Flickr, but I have no idea what this is, need to find an example)
  • W3C trying to define the Web Widget as a standard, likely to be undermined by the industry who will not wait for them to get it all done

Yep. Basic information, mostly. I gather a lot of people here are fairly new to all this. Not as bad as the introductory SES stuff we had, but still…

  • Some service providers have rate limits (e.g. Google Maps) after which you have to pay; Amazon requires it from the get-go
  • Basing yourself on other services has drawbacks: - Weakest link syndrome (e.g. Amazon S3 outage)
  • Limited economy of scale due to dependency on others
  • Requires as good legal skills as dev skills to handle SLA issues
  • Top APIs available on ProgrammableWeb.com (which is partnered with IBM)
  • Twitter built on Amazon tools

Okay, minor rant: Woman just in front of me asked if I “had to do all that typing”. For crying out loud, lady, this is a Web 2.0 technology conference, not a press conference for Fergie. SUCK IT UP!! I can’t help it if I learned to type on a classic clunky IBM keyboard and have had hard keystrokes ever since.

  • Need to look at Yahoo! Geocoding as an alternative for Google’s
  • Platform solutions tend to beat an application for ROI and customer support every time
  • Amazon EC2 allows rapid roll out of virtualised servers - Second level Amazon apps (based on Amazon services): Jungle Disk, Digital Chalk
  • There is no proven ROI on social networking apps (e.g. Facebook app)
  • Numbers in XML data harder to process, increases parsing time — use JSON for numeric data instead
  • Dion believes REST is better than SOAP (mostly due to ease in parsing REST data)
  • Google Gadgets - 47k widgets available, all through iGoogle (and outside use?)
  • OpenSocial based on Google Gadgets
  • WidgetBox - 50k+ widgets
  • 2.5m serves of the widgets

Lots of discussion on mashups. A lot of “we know that already” info here. One interesting piece: Facebook and Amazon have an interesting partnership that allows someone to create a Facebook app, host it through Amazon, and rollout a grid-served application with no infrastructure for little cost.

  • Major APIs (in order) - RSS
  • REST
  • JSON
  • SOAP
  • ATOM is upcoming but not in the top 4 (ATOM is REST-compliant, so might overtake SOAP before long)

Long section on AJAX. Sorry, I mean Ajax. Nothing we haven’t done at least a dozen times here.

  • Dion a big proponent of Silverlight, but seems to be missing some details - Microsoft rep told us Silverlight could not yet handle 3D outside of Windows due to rendering engine; similar note about HD video
  • Either doesn’t know a lot about Flash, or is unwilling to draw comparisons for some reason — much of what he claims as awesome about Silverlight is already in Flash
  • Agree that Flash needs to go Open Source to eliminate the last part of the RIA puzzle (only thing that’s still wholly proprietary)
  • JavaFX is Sun’s RIA tool (never heard of it until now); seems to be geared mostly to mobile - Scripted, not compiled
  • Does not replace Swing, but makes it easier to develop
  • Can be used to create arbitrarily large apps

A note on RIA and metrics: Using asynchronous apps kill the pageviews metric. (Yahoo! got burned for this a while back.) Need to make sure that we account for this by tagging sub-apps and/or data.

  • New developments - New tools are great, but you lose performance with greater abstraction (e.g. Ruby)

  • Ruby on Rails is great, runs Twitter; massive performance drawback

    • IBM has proved 10-20x savings in initial dev costs over traditional tech, like Java
  • CakePHP is a framework written in PHP, modelled after Ruby on Rails (but not a port)

  • Groovy & Grails is a Ruby on Rails-like framework for Java

    • Does not have performance drawbacks of Ruby on Rails
  • Could be a hot one to keep an eye on, and run tests with

  • Platform As A Service (PaaS)

    • Google App Engine
  • Amazon AWS, EC2 (Elastic Server on Demand)

  • Heroku

  • Keep sight of the goals - Watch your competition (don’t replicate what they did, you need to outdo them)

  • Know your customers

  • Use the right tools for the right reasons

  • “This is an arms race”