10 High Order Bits from the Web 2.0 Expo in NY
10. Your Web App: Give it a RESTDavid Heinemier Hansson's session about making Ruby on Rails RESTful cast this battle as an epic one between the REST Rebels and the Imperial WS-* Death Star. It's going to be a tough fight but you know who's gonna win.
REST (Representational State Transfer) is the elegant architecture and set of conventions first presented in Roy Fielding's PhD dissertation "Architectural Styles and the Design of Network-based Software Architectures". It is well aligned with the HTTP protocol and much simpler to implement and use than SOAP, XMLRPC, etc.
Implementing RESTful APIs in web applications is getting really easy with leading frameworks like Rails and Cake supporting REST as a first-class citizen. The Atom format is leading the charge as a RESTful format supported by the big players: Google, Microsoft, Yahoo, Twitter, etc.
9. "It’s Not Information Overload, It’s Filter Failure"Clay Shirky's talk states that since the invention of the printing press humans have always faced information overload. We have been surrounded by more information than we can consume in an entire lifetime for centuries. The problem is not information over load, it's filter failure. We need better filters.
Jay Adelson of Digg believes building better filters is exactly the mission Digg and other players in the collaborative filter space are addressing.
8. Sensor Driven Data: The Web is Getting Orwellian
With Apple putting GPS in iPhones, Google putting GPS in Android, Nikon putting GPS in the Coolpix P6000, and ... you get the point. GPS, motion sensors, video recorders, microphones, and other sensors are increasingly distributed and surrounding us.
Tim O’Reilly believes a BIG revolution is happening Here. Tim is really bullish on sensor driven data. Where 2.0 has its own O'Reilly Conference. This space is heating up fast.
6. The Open Web is Nearing the Tipping PointDataPortability co-founders Chris Saad and Daniela Barbosa gave a great session on the basic motivations behind the movement. The future the DataPortability group is trying to create, one which allows us to owning our data, our contacts, our relationships, etc. and be able to move them freely and easily between the on-line systems we use sounds truly empowering. The big players are joining the party: Microsoft, Google, Facebook, Six Apart, Linked In, Yahoo, Digg, Plaxo, MySpace. But Chris says "Who cares about them? This is a grassroots effort!" Joseph Smarr, Chief Architect of Plaxo, gave another interesting session on the major components of the open web and how they fit together. OAuth, OpenID, Open Social, and others were covered. The feeling I walked away with is that we're a lot closer than I thought.
5. Web Scalability thanks to Async & Danga
"You can’t drop something in 40,000 buckets, synchronously, at once", said Digg's Lead Architect, Joe Stump in his session "Scaling Digg and Other Web Applications". He was referencing what happens when Kevin Rose posts a message on Twitter. (Rose actually has nearly 65,000 followers on Twitter) Asynchronous task queuing is how the folks at Digg, Twitter, and Flickr deal with problems that are really hard to do in real time in any scalable fashion.
Just about all of Brad Fitzpatrick's (of LiveJournal and OpenID fame) lightweight systems software, freely available at Danga.com, seems to be used by the biggest Web 2.0 players to achieve scale. That memcached, gearman, perlbal, djabberd, and mogilefs, all came out of Fitzpatrick and Danga is just incredible. No wonder Google gobbled him up from Six Apart.
4. Web 2.0 Traffic: It's Out-of-Band
The knowledge tidbit that stuck out more in my mind than any other was that Twitter gets 10 times the amount of traffic from its API than it does through its website. It makes sense, I'd just never acknowledged it explicitly. Dion Hinchcliffe's workshop painted a similar story for many other Web 2.0 successes. The canonical example is YouTube with the embedded video. The decision to put html snippets plainly visible, right beside of the video, was perhaps their most genius move. Modern web applications and services are making themselves relevant by opening as many channels of distribution possible through feeds, widgets, badges, and programmable APIs.
3. Cal Henderson's PHP Tent Revival
If not for Cal Henderson I may have never have touched PHP again. I'm probably going to come back to this topic in more depth in a future post but Cal's workshop "Scalable Web Architectures: Common Patterns and Approaches" renewed my interest in, relationship with, and respect for PHP. The funny thing is that wasn't even the point of the talk. Cal and Joe Stump of Digg's succinct point that Langauges Don't Scale is right on. Sure PHP isn't as beautiful, trendy, or well designed as Python or Ruby are. However, some of the design decisions made by PHP's Rasmus, specifically the 'shared nothing'ness, make it a great technology for web applications. There's a reason why Facebook, Digg, Flickr, and co. are still on it.After Cal's workshop I asked him: if you could do it all over again with Flickr would you choose to go with Python or Ruby? Cal's answer: Nope, I'd do it in PHP.
2. Set Your Baby Free
By grooming and nurturing a web app internally for an extended period of time is you lose a lot of value. Jason Fried's notion of "half a product is better than a half-assed product" is so fitting here. Sandy Jen of Meebo echoes similar notions in her talk: Start out with something simple, see if it works, evolve. Bring your customers into the feedback loop as quickly as possible. Joshua Schachter, founder of delicious, spoke of the exact same sentiments in his talk on "Scaling and Building Social Systems".