Suggesstions on Widgets 1.0: Packaging and Configuration document

2009-07-17 Thread Oguz Kupusoglu
Hi,

I have read the the following document:

Widgets 1.0: Packaging and Configuration
W3C Candidate Recommendation 14 July 2009
http://dev.w3.org/2006/waf/widgets/

Please find below my suggestions.
Best regards,

Oguz Kupusoglu




Suggestion 1
Using a separate XML file named “proprietarty.xml” for specifying all the
proprietary extensions to the Configuration Document. It will be found
at the place of the Configuration Document.

Rationale
* Keeping the config.xml file fully standard.
* Easier maintenance by combining all non-standard stuff separately..
* Allowing reviewers see the proprietary stuff quickly and cleanly.
* However, From i18n point of view maintaining one  more file may be
  a burden.



Suggestion 2
Using a separate XML file named “preferences.xml” for persistently saving
the user preferences.  It will be found at the place of the Configuration
Document.

Rationale
* When the related Widget is updated or reset, the Widget Engine can
  easily check or restore the preferences.
* Allowing reviewers see the preferences quickly and cleanly.
* However, From i18n point of view maintaining one  more file may be
  a burden.



Suggestion 3
Assume each widget has a complaint line: by simply activating it,
preferably adding some text, the user will inform the widget author and
widget host, widget gallery or AppStore, that something is wrong with the
widget. The complaint proceeding depends on the widget host policy. For
example, if the number of complaints hit a pre-defined threshold the widget
host may remove the problematic widget or can simply record the number of
complaints. In fact, this idea is already proposed by Marcos Caceres, see
Position on Widget Security ( http://datadriven.com.au/ ).

Rationale
* If a widget is used by technically illiterate people, there should be
  an easy-to-use method for them to inform somebody that something is
  wrong with a widget before they remove the widget. I don't expect
  these people to go to the original place where they downloaded the
  widget to take action. However, if such an easy-to-use built-in
  complaint line is available, such people will take action. I am
  working on some widgets to be used on TV's by ordinary people, and
  ease of use with a remote controller is a prime concern for me.



Suggestion 4
From marketing point of view download rankings are important. For example,
Download rankings are key to success since users trawl the most-popular
lists for games.* Assume each widget has a rating option. By activating
it, the user will send a rating between 0 and 5. Hence, the widget
hosts may
maintain two separate listings: one is download ranking and the other is
user rating.

* Washington Post, Gabriel Madway, Big game publishers muscle in
on iPhone's
  upstarts, 15 July 2009

Rationale
* If a widget is used by technically illiterate people, there should be
  an easy-to-use method for them to inform somebody their verdict on the
  widget.
* At any moment t, the widget users while looking for new widgets have
  more listing to check. This will reduce the pressure on the “download
  ranking” list.




RE: [widgets] conformance requirements review

2009-07-17 Thread Marcin Hanclik
Hi Dom,

It's fairly straightforward to extract the WebIDLs from W3C specs (e.g.
using XSLT), and I can also imagining annotating these with doxygen
comments by more auto-extracting work.
My checkers also tries to verify that the Web IDL and documentation match 
semantically.
For this we need a format within the doxygen or surrounding HTML.
I think this could be agreed as part of the DAP.

Is it possible that BONDI specs, together with widl format specification are 
taken as basis in DAP?
Who, when and how takes this decision?

Thanks.

Kind regards,
Marcin

Marcin Hanclik
ACCESS Systems Germany GmbH
Tel: +49-208-8290-6452  |  Fax: +49-208-8290-6465
Mobile: +49-163-8290-646
E-Mail: marcin.hanc...@access-company.com

-Original Message-
From: Dominique Hazael-Massieux [mailto:d...@w3.org]
Sent: Wednesday, July 15, 2009 3:43 PM
To: Marcin Hanclik
Cc: public-webapps@w3.org; public-device-a...@w3.org
Subject: RE: [widgets] conformance requirements review

Le lundi 13 juillet 2009 à 13:38 +0200, Marcin Hanclik a écrit :
 I cannot publish the source code now, also due to the immaturity of the tool.

I personally wouldn't mind that immaturity and would be happy to
contribute in making it more mature.

 The tool was developed to fit the format used within BONDI, it does not 
 understand the HTML format used in W3C (HTML is the output, input is WebIDL + 
 doxygen).

It's fairly straightforward to extract the WebIDLs from W3C specs (e.g.
using XSLT), and I can also imagining annotating these with doxygen
comments by more auto-extracting work.

Thanks,

Dom




Access Systems Germany GmbH
Essener Strasse 5  |  D-46047 Oberhausen
HRB 13548 Amtsgericht Duisburg
Geschaeftsfuehrer: Michel Piquemal, Tomonori Watanabe, Yusuke Kanda

www.access-company.com

CONFIDENTIALITY NOTICE
This e-mail and any attachments hereto may contain information that is 
privileged or confidential, and is intended for use only by the
individual or entity to which it is addressed. Any disclosure, copying or 
distribution of the information by anyone else is strictly prohibited.
If you have received this document in error, please notify us promptly by 
responding to this e-mail. Thank you.


Re: [widgets] conformance requirements review

2009-07-17 Thread Robin Berjon

On Jul 17, 2009, at 15:04 , Marcin Hanclik wrote:
Is it possible that BONDI specs, together with widl format  
specification are taken as basis in DAP?

Who, when and how takes this decision?


That would be a decision for the DAP WG to take, once there are enough  
participants signed up (it takes a little while for people to sign up  
in the summer, alas) for the WG to make a decision that won't be  
revisited later.


--
Robin Berjon - http://berjon.com/
Feel like hiring me? Go to http://robineko.com/








RE: DataCache API - editor's draft available

2009-07-17 Thread Adrian Bateman
On  Thursday, July 16, 2009 4:46 PM, Nikunj R. Mehta wrote:
 On Jul 16, 2009, at 3:31 PM, Adrian Bateman wrote:
  I agree with Jonas and I'd like to understand the expected use cases
  better too. I think I get the point that making the network access
  seamless regardless of whether there is network connectivity or not
  simplifies the network request code but seems to me to require more
  complex interception code.
 
 There is a tradeoff when adding the complexity of unreliable networks
 - either more complex client application code, or more complex client
 interception code.
 
 In our experience, we have found the latter to be actually more
 manageable for cases where the interception and off-line serving is
 done in a relatively application-independent manner.
 
  This isn't a pattern that I can readily map to customer requests
  we've received nor is it a familiar pattern to me personally.
 
 DataCache's interception pattern has existed for a while. A good
 survey of mobile data management and transaction support has covered
 this pattern [1]. The discussion there is not limited to Web browsers,
 though.

I scanned through the paper you cite but it isn't clear to me which part of 
that is equivalent to your proposal. Is it possible to point out which section 
I should read more closely?

The pattern that isn't familiar to me is one where it appears that application 
logic is provided by interception. Given the generic nature of the Mobile 
Transactions paper you focus on application independence, are you proposing 
that the DataCache is part of a solution with no application specific code? In 
other words is there some platform component, whether  that be a JavaScript 
library or otherwise server-provided infrastructure, that operates generally at 
the interception point. Alternatively, is it application specific code that 
will be hand written for my use case every time?

When Jonas asks the question about how do you expect people to use this, what 
comes to mind for me is a question about a scenario. I'm a web developer and 
I've built an application that makes XHR calls to exchange data with my server. 
I'd like to provide access to this application in situations where I am 
occasionally disconnected because of intermittent network connectivity. Do I 
now sit down and try to figure out what network requests I need to intercept 
and write JavaScript code for handling all of those requests? Or is there a 
library I can just plug in that, with some configuration, does that for me? Or 
is this something my server infrastructure should already support and if it 
does I just turn it on but otherwise I'm out of luck?

Does the situation change if I am building an application from scratch that 
wants to deal with network disconnections?

  On the other hand, it appears to me that it proposes an entirely new
  programming model - did you consider an incremental approach that
  modifies window.applicationCache? Did you have particular reasons
  for rejecting that?
 
 
 Yes. I certainly considered window.applicationCache. I have previously
 proposed including additional things in HTML5, but the feedback was
 that the application cache could not be broken down in to any further
 primitives due to bootstrapping requirements [3].
 
 I certainly feel that applicationCache can be composed with the
 primitives of DataCache + versioning. On the other hand, the converse
 is not possible due to ApplicationCache's:
 
 a. strictly static manifest serving,
 b. lack of support for version-free resources, and
 c. missing authorization checks.

 [1] http://portal.acm.org/citation.cfm?id=992378
 [2] http://o-micron.blogspot.com/2009/04/how-is-bitsy-different-from-
 html-dojo.html
 [3] http://lists.w3.org/Archives/Public/public-html/2008Nov/0224.html

I understand that your DataCache proposal provides different functionality to 
AppCache. I wasn't suggesting that they were equivalent. However, the AppCache 
as specified is getting implemented today (it is in Safari and Firefox with 
other implementations on the way). The problem I have is that I can't go 
implement AppCache and then add on some new methods and alternative 
interception-path to get DataCache-like features - I have to write a completely 
independent mechanism. If I propose that we build AppCache and then DataCache, 
someone will say, Hang on, didn't we just build this - why do we need two?

While it might not be the perfect solution (we know the web far from ideal and 
is a lot of compromise), this type of proposal would be a lot more compelling 
to me if I could say This is what we have to add, this is how, and here are 
the use cases that make it valuable with a roadmap for extending what people 
are already building instead of something brand new.

Cheers,

Adrian.



[widgets] Wookie accepted into Apache Incubator

2009-07-17 Thread Scott Wilson

Hi everyone,

Wookie - which I demonstrated at the Paris F2F -  has just been  
accepted into the Apache Incubator.


Wookie implements the W3C Widgets draft specifications as a web  
service supporting web applications, in a manner similar to (and  
compatible with) Apache Shindig for OpenSocial gadgets.


We've been tracking and contributing to the Widgets family of  
specifications, and we look forward to working with the rest of the  
community in helping make sure Wookie conforms to the specs, with the  
potential to act as a reference implementation (at least for server- 
based UAs).


Once we've sorted out the infrastructure at ASF and moved the existing  
code our focus will be to ensure that we have a broad community of  
developers actively contributing to the project.


There's a blog post by Ross Gardler at ASF giving some more details  
here: http://osswatch.jiscinvolve.org/2009/07/17/wookie-accepted-into-apache-incubator/


Cheers,

S


/-/-/-/-/-/
Scott Wilson
Assistant Director, JISC CETIS
University of Bolton

Projects:
FeedForward: http://getfeedforward.org
Wookie: http://getwookie.org

scott.bradley.wil...@gmail.com
http://www.cetis.ac.uk/members/scott



smime.p7s
Description: S/MIME cryptographic signature


Re: DataCache API - editor's draft available

2009-07-17 Thread Jonas Sicking
On Thu, Jul 16, 2009 at 4:17 PM, Nikunj R. Mehtanikunj.me...@oracle.com wrote:
 On Jul 16, 2009, at 3:54 PM, Jonas Sicking wrote:
 I do understand how Interceptor/DataCache works. And understand that
 it's seamless and can (based on a decision made by the browser)
 seamlessly intercept both XHR requests and img src=.. requests.

 What is not entirely clear to me is how you envision that authors will use
 it.


 Authors will use it in all three kinds of use cases I explained earlier -
 XHR, form, and hyperlinked data. DataCache is designed to support all three.
 The intention is to accommodate any use case arising from the issuance of a
 network request when the device is off-line.

 I.e. are you expecting authors to want to intercept XHR requests?

 For data driven applications, I expect this usage scenario.

 Or
 img src=... requests? Or script src=... requests?

 script src=... should be adequately supported by HTML5 (ApplicationCache),
 unless the src value is dynamic in nature. For the static case, I don't
 expect to see much usage of DataCache.

Ok that answers my question.

See, what I don't fully understand is what the use cases are. For
static resources like static images, scripts, plugins etc, it seems to
me that the HTML5 ApplicationCache should work, as you point out.

For dynamic images, I think canvas is what you'd want to use anyway
since generating encoded png images and serving it through the http
Interceptor is a whole lot more complicated.

For loading data using XHR, or submitting data using a form, it seems
like if the web application is abstracted at a higher level, then http
interception isn't strictly needed. If you currently have code like:

function readData(callback) {
  xhr = new XMLHttpRequest();
  xhr.onreadystatechange = function() {
if (xhr.readyState == 4  xhr.status == 200)
  callback(xhr.responseText);
  }
  xhr.open(...);
  xhr.send();
}

Then in order to support offline you could do:

function readData(callback) {
  xhr = new XMLHttpRequest();
  xhr.onreadystatechange = function() {
if (xhr.readyState == 4  xhr.status == 200)
  callback(xhr.responseText);
  }
  xhr.onerror = function() {
text = readDataFromLocalStore();
callback(text);
  }
  xhr.open(...);
  xhr.send();
}


So I'm not sure what new use cases we are solving.

What I do agree this new API does is that it allows a *different* way
to deal with offline. One that could be argued to be simpler (I
haven't looked into it enough to have an opinion on if it's simpler or
not).

So rather than solving new use cases, it seems like this is providing
another way to solve them.

Is that correct?

/ Jonas



Re: [widgets] Wookie accepted into Apache Incubator

2009-07-17 Thread Marcos Caceres
On Friday, July 17, 2009, Scott Wilson scott.bradley.wil...@gmail.com wrote:
 Hi everyone,

 Wookie - which I demonstrated at the Paris F2F -  has just been accepted into 
 the Apache Incubator.


congratulations!
 Wookie implements the W3C Widgets draft specifications as a web service 
 supporting web applications, in a manner similar to (and compatible with) 
 Apache Shindig for OpenSocial gadgets.


it's great to see W3C widgets being compatible with that technology.
Thanks for all your help making that happen.

 We've been tracking and contributing to the Widgets family of specifications, 
 and we look forward to working with the rest of the community in helping make 
 sure Wookie conforms to the specs, with the potential to act as a reference 
 implementation (at least for server-based UAs).


Excellent! I will be sure to mention wookie during the W3C transition
request to CR (this Tuesday). It will strengthen the case for the
document transitioning to CR.

 Once we've sorted out the infrastructure at ASF and moved the existing code 
 our focus will be to ensure that we have a broad community of developers 
 actively contributing to the project.

 There's a blog post by Ross Gardler at ASF giving some more details here: 
 http://osswatch.jiscinvolve.org/2009/07/17/wookie-accepted-into-apache-incubator/


will take a look! Thanks for the update.


 Cheers,

 S


 /-/-/-/-/-/
 Scott Wilson
 Assistant Director, JISC CETIS
 University of Bolton

 Projects:
 FeedForward: http://getfeedforward.org
 Wookie: http://getwookie.org

 scott.bradley.wil...@gmail.com
 http://www.cetis.ac.uk/members/scott



-- 
Marcos Caceres
http://datadriven.com.au