Sans Browser

WebRunner:Instant AIR Competitor

August 29th, 2007 by enefekt

I’ve been trying my best to try and figure out the current landscape of technology offerings for RIA and IDA development. So forgive me for this rant-ish post, and correct me or help me where I’m just dead wrong.

I believe in choosing the right technology for a project’s or product’s requirements. Some of the projects I work on are obviously web applications, so I target the browser and either use HTML/JavaScript for simple interfaces, or Flex/ActionScript for advanced interfaces or rich media integration.

But we’ve frequently found ourselves in the position of needing to create relatively light-weight desktop applications with advanced UI requirements, that can easily work with web technologies.

Building these IDAs with client technologies like Flash/Flex/XUL/ECMAScript has been awesome in developing fast and good, and not having to code Swing layouts. This idea has pretty much been hackish at best in the past until XULRunner came along. But now AIR is here, and I’m trying to evaluate both. So this is the type of target I’m referring to with this post, Internet Desktop Applications with advanced interface requirements.

This post and chat transcript posted by Matt of AllPeers really kind of set off some alarm bells. Not gonna summarize it, so you may have to read it. But I’m replying to some thoughts presented in it.

HTML? Hyper-text Markup Language: Formatting text documents.

XUL? XML User Interface Language: Creating user interfaces

Merge XUL into HTML, gradually over time? Why? Use the best tool for the job! Leave HTML for what it does best, for documents. And talking about some future idea that may be cool (or the worst thing ever done), is not NOW. There are excellent tools and technologies available NOW that do these things (Flex, ActionScript 3, AIR)

What is WebRunner’s or Firefox 3’s interface developed in? XUL, not HTML. Maybe once we see Firefox shipping with an all HTML interface then I’ll be able to see HTML as some sort of capable user interface language.

If Mozilla’s own evangelists are encouraging HTML over XUL, then it would be downright foolish to champion it, and makes me uneasy choosing it to develop with.

So who is putting their weight behind a modern, advanced, rich, and internet friendly programming language and user interface markup language? Adobe, with Flex and ActionScript 3.

In more than one spot I have seen this evangelism of using HTML over XUL for developing rich applications, and wonder what is at it’s core. Maybe it is because the Mozilla Foundation/Corporation is unsure of the future API or compatibility and stability of using XUL and its companions. And they figure HTML is the safe way to go for the “masses”.

Again, who has the awesome history of distributing a runtime far and fast, proven backwards compatibility in a runtime, and is at the same time making great advancements with innovation for rich media, RIA, and internet desktop application developers? Adobe. With the Flash Player, and no doubt soon to come AIR.

I’m trying my best to find something to keep me hackin’ on XUL and JavaScript, but I keep seeing these confusing mixed signals as to the future of a capable RIA/IDA platform or runtime using Mozilla technologies. (Or no signals at all)

Don’t get me wrong, I love working with XUL, JavaScript, and XULRunner, and I have a number of projects using the technology. So I’ll be continuing to develop with it. But for new and future projects I’m gonna have give it some serious thought.

Filed under: IDA, Adobe, Mozilla, Mozpad, AIR

5 Comments

  1. twentyafterfour Says:

    AIR is a closed-source application with a restrictive license. In my mind Mozilla’s platform will have a huge advantage as long as XULRunner is actively developed and released under a fair license such as the MPL.

  2. enefekt Says:

    AIR is made up of and based on open source technologies and standards.

    Flex 3 - Open Source, with MPL!

    WebKit - Open Source

    ActionScript is an ECMAScript implementation. Where JavaScript 2.0 is aiming for, ActionScript 3 is already.

    Yes, the final runtime product is not open sourced, but I’d argue that that is an advantage. They are taking ownership and ensuring the platform and runtime has the proper attention, focus, and care. Just look at the Flash Player as an example of this.

    The user-experience for delivering apps and the runtime using the seamless install for both AIR apps, and the runtime is awesome. Just click a link on a webpage to install, even if they don’t have the runtime yet. There is auto-updating functionality for both the runtime and apps too.

    “as long as XULRunner is actively developed”
    Who knows if it will. Maybe WebRunner is the “future” there. XULRunner and WebRunnner both have some important problems to overcome. Application and runtime delivery, and updating functionality. No one wants 20 instances of XULRunner on their system, or ideally to distribute a 50 MB+ bundle with a 500K XUL/JS/CSS app.

  3. Mark Finkle Says:

    “So who is putting their weight behind a modern, advanced, rich, and internet friendly programming language and user interface markup language? Adobe”

    Along with Mozilla (Taramin)

    “What is WebRunner’s or Firefox 3’s interface developed in? XUL, not HTML”

    WebRunner is a chomeless host for web apps, so the UI is really HTML.

    “If Mozilla’s own evangelists are encouraging HTML over XUL, then it would be downright foolish to champion it, and makes me uneasy choosing it to develop with.”

    Huh? I must have missed the evangelism part somewhere.

    “[as long as XULRunner is actively developed] - Who knows if it will.”

    Please, sounds more like FUD to me.

    “But for new and future projects I’m gonna have give it some serious thought.”

    As you should with any framework.

    “No one wants 20 instances of XULRunner on their system”

    or 20 instances of AIR. But hey, use ‘Firefox -app’

  4. enefekt Says:

    Along with Mozilla (Taramin)

    Not here yet. ActionScript 3 is here right now.

    WebRunner is a chomeless host for web apps, so the UI is really HTML.

    Native windows, dialogs, and menus? That would be in XUL.

    If Mozilla’s own evangelists are encouraging HTML over XUL, then it would be downright foolish to champion it, and makes me uneasy choosing it to develop with.

    Huh? I must have missed the evangelism part somewhere.

    Seems to be in many spots. Wasn’t freakish enough as I saw them to write them down and document them. Just a few off the top of my head: The transcript log linked to above, and the accounts from that DevDay in paris, and here:
    http://benjamin.smedbergs.us/blog/2007-05-23/shining-light-on-xul-dark-matter/

    [as long as XULRunner is actively developed] - Who knows if it will.

    Please, sounds more like FUD to me.

    Really? That stinks, the last thing I want to spread is FUD. If there isn’t a decent plan for app and shared runtime delivery, then how widespread will it’s usage get?

    No one wants 20 instances of XULRunner on their system
    or 20 instances of AIR. But hey, use Firefox -app’

    AIR is a shared runtime. There will only be one instance, Adobe has their game down with that one. Just look at how the Flash Player works. The Firefox -app thing is cool, and I hope to play with it soon.

    Thanks for your comments Mark.

  5. Mike Potter Says:

    Having worked with both (I started the Mozilla Calendar Project and now work on the Flex developer marketing team), I do find Flex a lot easier than XUL. Sean Coates at PHP Architect found the same thing - his editorial in the upcoming issue of PHP Arch (http://www.phparch.com) tells of him trying to develop something for weeks in XUL, and then taking just a few days to do it in Flex.

    I’d be more than happy to send you some O’Reilly books to help you with AIR and Flex development. Just email me your address at mpotter@adobe.com and I’ll have the books sent out to you, along with a training DVD for Flex.

    Mike

Leave a Reply