Return-Path: Delivered-To: apmail-incubator-general-archive@www.apache.org Received: (qmail 44174 invoked from network); 6 Jul 2009 12:32:33 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 6 Jul 2009 12:32:33 -0000 Received: (qmail 33082 invoked by uid 500); 6 Jul 2009 12:32:43 -0000 Delivered-To: apmail-incubator-general-archive@incubator.apache.org Received: (qmail 32895 invoked by uid 500); 6 Jul 2009 12:32:43 -0000 Mailing-List: contact general-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: general@incubator.apache.org Delivered-To: mailing list general@incubator.apache.org Received: (qmail 32885 invoked by uid 99); 6 Jul 2009 12:32:43 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 06 Jul 2009 12:32:43 +0000 X-ASF-Spam-Status: No, hits=2.2 required=10.0 tests=HTML_MESSAGE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of chabotc@google.com designates 216.239.45.13 as permitted sender) Received: from [216.239.45.13] (HELO smtp-out.google.com) (216.239.45.13) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 06 Jul 2009 12:32:31 +0000 Received: from zps78.corp.google.com (zps78.corp.google.com [172.25.146.78]) by smtp-out.google.com with ESMTP id n66CW9kN029185 for ; Mon, 6 Jul 2009 05:32:09 -0700 DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=google.com; s=beta; t=1246883529; bh=Pt9cKz3Vjoe2BWVASxhAFfYPfj0=; h=DomainKey-Signature:MIME-Version:In-Reply-To:References:Date: Message-ID:Subject:From:To:Content-Type:X-System-Of-Record; b=CAnK OgdRMKZsUOA81lhB1MDi1VWOgiSaa2/knM86JDkyTNwEROl3yeOzhruXWy0Xk4hegLJ YYeC1+H1VlLqyLA== DomainKey-Signature: a=rsa-sha1; s=beta; d=google.com; c=nofws; q=dns; h=mime-version:in-reply-to:references:date:message-id:subject:from:to: content-type:x-system-of-record; b=UnhagHXtXuBKpq2MsHwzAlRv0FG2SYQxApaIma7jWespeOmU9amQaeuk9uamM/iTI OwGIFb9J+CwpXyeq5/VAw== Received: from ewy5 (ewy5.prod.google.com [10.241.103.5]) by zps78.corp.google.com with ESMTP id n66CVYw2018321 for ; Mon, 6 Jul 2009 05:32:06 -0700 Received: by ewy5 with SMTP id 5so6281188ewy.15 for ; Mon, 06 Jul 2009 05:32:06 -0700 (PDT) MIME-Version: 1.0 Received: by 10.216.36.84 with SMTP id v62mr1129369wea.128.1246883526003; Mon, 06 Jul 2009 05:32:06 -0700 (PDT) In-Reply-To: <4A51E5BA.70007@douma.nu> References: <61c9bc470907030701t5e7431a6x66e06554cadf2db4@mail.gmail.com> <4A51E5BA.70007@douma.nu> Date: Mon, 6 Jul 2009 14:32:05 +0200 Message-ID: <818767740907060532m1a2c067cn88e4bddf41f83ec7@mail.gmail.com> Subject: Re: Proposal for Wookie a W3C Widget/Google Wave widget engine From: Chris Chabot To: general@incubator.apache.org Content-Type: multipart/alternative; boundary=001636499f5ba4cda6046e08b118 X-System-Of-Record: true X-Virus-Checked: Checked by ClamAV on apache.org --001636499f5ba4cda6046e08b118 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Hey guys, Great looking proposal! On Mon, Jul 6, 2009 at 1:53 PM, Ate Douma wrote: > > The Wookie proposal has my high interest, especially from the bridging POV > between W3C Widgets and Google Gadgets. It seems there's a few mixed terminologies here, so in interest of making sure we're all talking about the same things I'll quickly go over the different types of 'gadgets' that could potentially be supported by Wookie: - Google Gadgets, as described here: http://code.google.com/apis/gadgets/docs/spec.html This is a clasic gadget type model that doesn't have any social tools in it, think clasic iGoogle home page type gadgets.. this actually has the Google brand associated with it and because it's a product name it's called Gadgets (cap G). It's an interesting platform to support, but in general iGoogle is moving to OpenSocial gadgets instead (which is backward compatible). - OpenSocial gadgets not a Google brand or product, instead both the specification process and the reference implementation (Apache Shindig (-incubating)) are community driven. In the beginning it started out with an iGoogle style API but has evolved to a completely different (much more elegant and powerful) platform that has a very large feature set, and focuses on social. Next to that there's the OpenSocial Foundation which has people from many social-interested companies and is a non-profit corporation created to sustain the free and open development of OpenSocial specifications. (more info at http://www.opensocial.org/page/opensocial-foundation-faq). The main entry point to find out about OpenSocial is http://www.opensocial.org/ and the Shindig reference implementation can be found at http://incubator.apache.org/shindig/ - There's mention of 'Wave gadgets', Google Wave uses the same gadgets javascript API, but adds a bit of functionality to it (as described at http://code.google.com/apis/wave/extensions/gadgets/reference.html), the added functionality is focused around the real time nature of Google Wave with functions for participants changes and data state changes. Now to support Google Gadgets and OpenSocial, the easiest way to accomplish that would be to just completely pull in Apache Shindig (-incubating), there's a lot more to it then just a bunch of JavaScript API's, there's also 3 different rendering models, a REST and JSON-RPC interface to the social data with OAuth for authentication, and lots of tricky details to deal with things like translations, preferences, security tokens, html/css/image rewriting, proxy services, oauth support and javascript injection and dependency parsing. The good news is that all of this is already available so mixing it in shouldn't have to be rocket science :) To make this work the iframe (that points to the OpenSocial gadget rendering end-point) creation is a bit tricky as well, lots of params to deal with, and Social Site is a nice demo of how this could be done so you could either borrow that code or implement it in a way that makes sense to Wookie. OpenSocial does assume you have a social graph though (the activities and app data part of OpenSocial are optional, though the platform is more attractive if you offer those too), so you could either take Shindig's approach and assume that the Wookie users will implement the social data interface classes them selves and connect it up to their existing social data, and/or you could include Social Site which provides that for you .. with some clever crafting supporting both use-cases shouldn't be to bad though. Google Wave Gadgets is a different beast entirely, they're basically just the same gadgets as from OpenSocial, but without the real time Wave server behind it that drives the real time data state changes it doesn't seem to make a lot of sense to support it in a portal type project, and pulling in a complete communications platform might be outside of Wookie's project scope. --001636499f5ba4cda6046e08b118--