Slashdot on SproutCore

Slashdot got onto today’s story about “One particular JavaScript Framework can Rule The World — *if* it’s from Apple.” I’ve been tracking this story because of the “Flash Killer” moniker. I liked how some of the Slashdot crowd dragged the Techmeme pumpers back down to earth, and so annotated a few comments which caught my eye….

An early comment describes how the different runtimes offer different capabilities, then: “More on-topic: This ScriptCore looks like Yet Another Javascript Framework (YAJF?). Some choices seem particularly odd, such as choosing to reimplement buttons through javascript code instead of using native browser widgets.” That was the big disconnect for me in today’s conversation too… whatever you build atop HTML/JS/CSS is still bound by the HTML/JS/CSS runtimes of your particular audience. Chad Udell had the same perspective mid-day. (The “native chrome vs neutral chrome vs branded chrome” issue is one I stay out of. 😉

This seems a clear case of confusing the sizzle with the steak, the map with the territory: “SproutCore is pretty impressive for building real JS web applications, although the story doesn’t real end there. There’s a convergence of other improvements, such as HTML5, CSS, and SVG, that are filling a lot of the multimedia roles previously the domain of flash. For example, WebKit already supports CSS transforms, gradients, client-side database storage, animation, HTML5 media, downloadable fonts, masks, reflections, etc.” Just because the paper map is flat, does not mean the territory has no hills. Your labels are just a model, and it’s more useful to look at what you can actually do, with which near-term and long-term costs. SVG theory and practice differ.

There were some references to traffic/revenue strategies from commercial bloggers, and charges of sockpuppetry. There’s some (apparent) engagement by a principal, but no resolution… more ad hominem than ad rem.

I got foiled by an Ajax text editor stripping out linebreaks (maybe it wanted paragraph tags?). Text should be simpler…. 😉 [Later: I got modded down to 0 and marked as “Troll”!]

A strange but common line: “You’re missing the point… flash and silverlight require plugins to work in a web browser. Not only is this an extra install for the end user, it also means not all platforms and browsers will be supported (A great example being no flash/silverlight on the iPhone…) The nice thing about “SproutCore” is that is 100% based on web standards (HTML, XML, JavaScript, etc) and will work on any platform and in any browser that follows those standards out of the box, no plugins needed!” We all already know that the world does, overwhelmingly, choose to install a certain small predictable media runtime. People out there do adopt Flash as standard capability. (Power to the People, baby. 😉 But he misses that advances in HTML/JS/CSS require bigger browser installs, sometimes browser switches, sometimes OS switches! If your browser runtime doesn’t display their HTML or run their JS as they expect, then it’s you that’s at fault for “not choosing a standards-compliant browser”. Dude, NONE of them are “fully standards compliant”! We’re all just trying to get better, improve things month by month.

Some reality: “I’m with you all the way as far as preferring standards over proprietary stuff. However, the iPhone seems like a bad example to me. It’s a proprietary platform, controlled by Apple.”

A common slam: “Still think Flash isn’t all that proprietary? Try selling a competing editor or changing the spec.” If the speaker would look around, the speaker would see that lots of people sell tooling atop the Flash platform, servers atop the Flash platform. Same with the PDF platform. I would agree that the governance of SWF is still within Adobe, rather than released to ISO as PDF recently was, but it’s a lot more approachable than the governance of iPhone. I’d prefer a face-to-face meeting with such a speaker, before guessing whether they’re aware of the mismatch between their speech and reality.

Another commenter brings the discussion back to ground: “From TFA, SproutCore is basically a rich set of JavaScript libraries. Flame/mod away, but it’s true. Flash/Silverlight don’t only contain the same app struts for you to build upon, but they are also incredibly powerful application hosting frameworks with rich graphics and multimedia libraries to go beyond what HTML can render. Comparing SproutCore to Flash and especially Silverlight is nonsense. Saying it’s a Flash/Silverlight killer is delusional.” (He seems a bit MS-delusional himself, because you can deliver with Flash while Silverlight remains academic, but he’s accurate about the different layers of capability.)

I haven’t personally confirmed this report, but it shows why every Ajax app has a responsibility to disclose on which specific runtimes they test, and which of those runtimes they recommend, and on which runtimes they’re just plain inaccessible: “The photo gallery [sproutcore.com] demo on SproutCore.com fails to work on Opera – the right photo pane not even rendering. Although Opera isn’t widely used, with its exceptional standards-compliance it’s a great barometer for how compatible something may ultimately be.” Followup: “It doesn’t seem to work quite properly on Camino, either…”

I think this may be a little harsh: “Web 2.0 exists because you don’t have to code your apps for each and every device separately. This is not the case with iPhone – anything not specifically built for iPhone is just awkward to use.” (A lot of browser apps are awkward, on a lot of devices… it’s still early days, we’ve got to improve design portability. OS-specific coding is a separate issue.)

A good example of the reaction to learning new conventions for a limited audience: “I [worked a lot of languages and environments but] never bothered to get deep into Objective C, because while it’s theoretically transferrable, it is really just used to write for the Apple Carbon/Cocoa/Core/Whatever/Don’tNitPickItsJustAnExample* stack. Same went for DirectX on Windows when I still wrote software for Windows. I would like to make apps that do whizzy things with Core Animation or whatever, but I just can’t make myself get excited at the prospect of learning yet another vendor-lockin technology.”

Oddly, Google has few relevant hits on the front page for “webobjects coldfusion”… much of the SproutCore evangelism today seemed like it would have worked for WebObjects as well.

11 Responses to Slashdot on SproutCore

  1. A Fairhead says:

    Nice job on reporting on this ~ I was reading a out this last night, thinking it’d be nice to hear what Adobe ha to say about it all. I do wonder why everything new that comes out had to be a “killer” of something else.
    Flash on the iPhone will still be nice, mind 😉

  2. bunnyhero says:

    i haven’t looked at sproutcore yet, but if it’s built for webkit, it might make a nice framework for AIR apps 🙂

  3. Sean says:

    Something else than FLASH I would love! I hate Flash even in my Computer! In my Ubuntu-Box and in my Macbook. I hope SproutCore becomes sucessful! I can’t imagine than Adobe never realised that FLASH is a bad User Experience for Linux and OS X Users.
    [jd sez: I wonder how it is that others might possibly have had experiences that caused them to not immediately agree with you.]

  4. Jason Petersen says:

    [jd sez: Had to do some minor editing on potentially offensive language in the following.]
    [O Supreme Being]. I know you work there and all but this stuff is lacking any personal opinion at all.
    Flash on the Mac [reminds me of a vacuum cleaner]. Period.
    If you can’t at least admit this, you should go get a job somewhere else. Adobe would benefit from a few people actually committed to making their platform not run like [a donkey].
    Flash is not a [dejure] standard, most flash pages do a poor job of making the browser work right (persistent, unique URLs, back button, copy-paste, system wide spell-check, etc.). To not see this is [not to my liking] (and you accuse others of MS-evangelism!)
    Your [toilet-related] response to a critical comment only strengthens my points: “others…might possibly have had experiences that caused them to not immediately agree with you?” So there are some that might possibly have had experiences that had them agree after a short period? That’s a selling point I’d love to see on a product:. [jd sez: When considering a hypothesis, attempt falsification tests.]
    People don’t immediately describe it as [rank ordure]… well, they do after a while, it just takes some prompting.

  5. droll says:

    I agree with bunnyhero. Flash is not nearly as hot as you’d like to think it is. Flash/silverlight video is a significantly worse media experience than native plugins (WMV, even quicktime), especially when multiple windows/tabs are open simultaneously. The browser memory footprint explodes, and the video slows to a couple frames per second. I don’t think SproutCore will fix this (unless HTML5 media canvas is well implemented in all browsers), but I wouldn’t go around claiming Flash is superior.
    [jd sez: This person has uncommon certitude, but has not chosen to back his words with his identity. (And he don’t know Bunnyhero, who did raise a reasonable point. )]

  6. conigs says:

    JD- give Sean a break. While I agree that one of the nice things about Flash (and I’m a motion graphic designer) is that it is consistent across all platforms in appearance, but performance is another issue.
    Flash on OS X and Linux is a bad experience because the engine just doesn’t seem to run all that well on anything not Windows.
    I welcome any advancements in JS frameworks/libraries that allow for easier creation of web apps. Yes, Flash is pretty much a standard (in that it’s installed on nearly every computer), but there’s nothing wrong with another option.
    [jd sez: Additional options are great. Talking about killing useful technology is not.]

  7. Matthew C. Tedder says:

    I predict the wild success of Sproutcore. It has the main elements required for success: fast and easy to learn and use, immediate practical benefits, easy for anyone to get. I also don’t see any valid arguments here yet. Doesn’t matter that iPhone is proprietary–what’s relevant for this is the browser. Flash may be better developed, but it’s not readily available for anyone to get and use.. much less available of many important platforms, such as iPhone. The standards Sproutcore is basing on do look reasonably solid–HTML5, CSS, and JavaScript. I think all open source browsers use the same JavaScript engine and Microsoft’s is quite compatible, except extensions in their DOM, mainly. Work on IE DOM differences needs to be done, but that shouldn’t be a major obstacle.. just a matter of priorities.

  8. JulesLt says:

    From what I can see, Sproutcore is more an equivalent to Flex rather than Flash. As you say it’s limited by the technology underneath (which continues to get better, but until our clients stop asking us to target IE6 we won’t be using HTML5).
    And as anyone who has spent any time playing with CSS3 or Canvas animation can tell you, these things also suck CPU. AS3 beat most JavaScript implementations, until the recent SquirrelFish beta in WebKit (and AS3 held than leading position for over 12 months).
    Point being – it’s easy to knock Flash performance compared to native code, but you really need to compare it against the alternatives in web development.
    On the other hand, I do welcome anything that improves JavaScript development, and I do believe that in the long run (10-15 years) pure standards based apps will replace a lot of places where we currently turn to Flash (it just may be that we use the Flex tools and SDK to do so).

  9. Judith MacGill says:

    I tried to follow what jd is saying but I don’t get it. This entry is too esoteric and too long! But I am prompted to post this comment just to make one point: I don’t like the smarmy square bracket “jd sez” comments that jd appends or prepends to the comments. [jd has uncommon certitude, but has not chosen to illuminate his central treatise with a lack of obfuscation].

  10. xtfer says:

    Im forced to agree with some of your posters, flash on the mac is less than stunning, and in the corporate pc environment sometimes not even installed (or its an old,old version). My company has a no-flash policy for web development as a result. That somewhat invalidates the “is the browser compliant” argument. I know Adobe has been selling the idea of total penetration in some markets, but i doubt it will ever happen. Silverlight, as you say, is academic.
    It was a good write up though, if a little hard to follow in places.
    [jd sez: Off-topic addenda may be more compelling with clear identity. (Main point: A JavaScript framework is not a runtime.)]

  11. Flug says:

    Hey John, that´s a great and sophisticated documentation on that topic, thanks for that.
    Well, there was a time I switched to silverlight, but then the past reared its ugly head: there isn´t ANY microsoft product I´d claim to be stable and that´s anoying. Flash may not be flawless, but since today I haven´t found anything better. Can´t understand what you mean by “academic” when you talk about Silverlight, xtfer.