Archive for the 'web20' Category

SproutCore, Cocoa, and The Idiomatic Web

Wednesday, June 25th, 2008

If you follow web technology news, you may have seen a number of postings about SproutCore over the last couple of weeks. SproutCore is the framework that Apple’s using for their MobileMe applications.

The “sync-all-your-devices-to-the-cloud” functionality is MobileMe’s core value proposition. The beautiful and rich web client experience is icing on the cake, and could have been implemented using a half-dozen existing JavaScript libraries.

Therefore, my intitial reaction to these “Cocoa apps for the Web” and “Flash Killer” reviews was that the revolutionary-ness of SproutCore was definitely overblown.

I figured that the hype would be over in a couple of days. Since articles like Why Objective-J, Cappuccino and SproutCore are completely changing the web app industry are still cropping up all over the place, I figured that I’ll weigh in on the discussion. I hesitated because I think that the techniques in question are very clever. Just not “Completely-Change-The-World-As-We-Know-It-Forever” clever

I’ll hedge a bit here here by saying that all bets are off if Apple leverages technologies like these to allow Cocoa developers to use Interface Builder and XCode to build web apps and/or build special stuff into Safari to natively render SproutCore markup as native Cocoa. But at the current time, I think that the hype machine is in overdrive.

SproutCore and Cappucccino extend Cocoa concepts such as Key-Value Coding (KVC) and Key-Value Observing (KVO), and it’s great to see these ideas brought to the world of web development in a big way. But I think that SproutCore and similar frameworks will have limited long term appeal to the broad web technology marketplace, considered niche players alongside the Java-based Google Web Toolkit (GWT). Methinks that web app architectures that rely on code generation will have limited appeal moving forward.

Keep in mind that I’m not anti-niche: Creating the framework that powers Apple’s MobileMe apps by itself is quite the accomplishment, and their approach is both novel and effective. I’m simply making the case that web app development in the large is not likely to follow MobileMe’s direction from a client engineering perspective.

I think that if we fast-forward the clock by a few months, we’ll see a backlash against these SproutCore-like frameworks, since they go against the grain of traditional web development approaches. Instead, they’ll be a call for a return to The Idiomatic Web, where semantic markup, stylesheets, and good JavaScript are top-tier building blocks, not simply implementation details below a new set of alternate client architecture abstractions.

The real widespread change will come to web app development when KVO/KVC approaches are employed in conjunction with idiomatic web frameworks like YUI.

When staking out the future of the Web, Evolution rather than Revolution will rule the day.

Web 2.0 is the William Shatner of the IT world

Wednesday, August 23rd, 2006

Comedy Central’s annual celebrity roast was on this last Sunday night. This year’s celebrity roastee was William Shatner.

Why is William Shatner famous? Let’s just say that if you and your buddy with the pointed ears ever decide to book a discounted trip back via to 1983 to watch an action-packed police drama where the show’s protagonist sings a really creepy rendition of Elton John’s “Rocket Man”, then Shatner’s your man.

If you missed it, well let’s just say that all you Star Trek fans should set your phasers to “Incessant Reruns”. Truth be told, they might as well rename the network “Roast Central” for the 11 months following the initial broadcast of the roast each year.

This same weekend I stumbled upon the Web 2.0 Logo Creator, which I used for the Shatner logo above. It dawned on me that both William Shatner and Web 2.0 share the following characteristics:

  1. Both are immediately identifiable, almost iconic in nature

    As any Star Trek conventioneer can tell you (sometimes even in Klingon, nevertheless), Shatner is larger-than-life to the Trekkies out there. I was never a big fan of the show, but to its fanbase Star Trek provided an entertainment experience that was far more enriching than that offered by its late-sixties television contemporaries.

    Likewise, Web 2.0 applications are very distinctive in their feature set, branding, and approach. To many, Web 2.0 also provides an experience that is far richer than that offered by (cough) Web 1.0 applications.

  2. Both served a necessary role in the evolution of their respective ecosystems

    Shatner’s role in Star Trek helped bring Science Fiction to mainstream TV and cinema audiences.

    Nowadays, many Web 2.0 applications are causing the IT world to rethink the very nature of thin-client applications and the possibilities thereof, as Web 2.0 has mainstreamed a variety of technical and design considerations.

    At the risk of making Newton roll over in his grave, the “killer app” of tomorrow will see further by standing on the sans serif shoulders of beta-quality giants.

  3. Both have managed to become caricatures of themselves, while they still “keep on keeping on”

    Sunday’s roast made it crystal clear that Bill Shatner has his self-deprecation switch stuck on the “ON” position. Yet his acting career continues to flourish in shows such as Boston Legal.

    Similarly, there have been a number of sites that make fun of Web 2.0 conventions, yet nearly all of the interesting web apps as of late embody many of the principles, technologies, and design considerations that are often subject to parody.

So, Messrs. Shatner and Web-two-point-oh, keep in mind that in the IT world, like the Friars, we only roast the ones we love.