- From: Norman Walsh <Norman.Walsh@Sun.COM>
- Date: Tue, 07 Nov 2006 15:16:15 -0500
- To: www-tag@w3.org
- Message-ID: <87y7qnxbao.fsf@nwalsh.com>
See http://www.w3.org/2001/tag/2006/11/07-minutes.html
W3C[1]
- DRAFT -
Technical Architecture Group
7 Nov 2006
Agenda[2]
See also: IRC log[3]
Attendees
Present
TV, Noah, Norm, Ed, Henry
Regrets
Dan, Dave, Tim
Chair
Vincent
Scribe
Norm
Contents
* Topics
1. Administrative
2. Backplane meeting
3. Issue metadataInURI-31
4. Issue genericResources-53
5. Issue tagSoupIntegration-54
6. Any other business?
* Summary of Action Items
----------------------------------------------------------------------
Administrative
<scribe> Chair pro-tem: Ed
Approve minutes
-> http://www.w3.org/2006/10/31-tagmem-minutes.html
Approved
Next meeting: 14 Nov 2006
Any regrets? None heard.
<noah> I will be here on the 14th, but probably not the 21st
Accept this agenda?
-> http://www.w3.org/2001/tag/2006/11/07-agenda.html
Accepted.
Backplane meeting
Henry: Hypertext CG have issued a note and called a meeting.
... I'm going with my TAG hat on because it's nearby.
Henry's submission: http://www.w3.org/2006/08/backplane/[6]
Henry: User Agent becomes the platform and the backplane becomes "the
operating system" so we better design one.
TV: That's an interesting summary, but in the hope of not killing the work
before it starts, let's not call it an OS.
... The analogy is correct, but a real OS does a lot of stuff with
hardware and managing APIs and things that aren't applicable here.
... If you throw in the OS word, it'll just raise controversy.
Henry: Fair enough.
TV: I'm also saying this because at the web app. workshop of a couple of
years ago there was already disagreement about the OS-nature of the work.
... What this is talking about and what OSes of 2006 actually do is quite
different.
... I haven't been involved in this work for about 6 months, but what we
observed was that a lot of web applications are relying on a core set of
services and they're reinventing them over and over.
... In some sense, if you look at SMIL, Voice, the visual web, SVG, etc.,
essentially everyone is doing the same thing: having some data, accessing
it some how, and rendering it somehow for the user.
... The backplane thought was that some of this could be factored out so
that it could be common.
... So the backplane is talking about what services are available, but
don't call it an OS.
Henry: Point taken; I'll remove the word, but leave the question it
provokes.
<ht> http://www.w3.org/2006/08/backplane/[7]
Henry: Let's consider the document.
<ht>
http://lists.w3.org/Archives/Member/tag/2006Nov/att-0002/backplane_thoughts.html[8]
Ed: It's a shame Tim and Dan aren't here because this seems to be a
different view of the web.
Noah: I had understood a lot of Tim's concerns (about web services) to
have been about use of URIs and HTTP; the backplane is more about HTML.
Henry: Compositionality is not highly emphasized here. You could start
from the notion of compositionality: XML as nested domains. The other is
to start from ACTION: from events.
<noah> Actually, I don't know the backplane well enough to say it's "more"
about HTML, but I heard Ed say a lot about HTML, and I certainly think
HTML is more pertinent to the backplane discussion than it has been to our
Web Services discussion.
Henry: The backplane is focusing on events. You [Ed] might well be right
that an alternative that Tim and I might like better is to focus on the
hierarchical structure of documents and their islands of semantic import
in namespaces.
... The CDF feeds into this, of course.
Noah: I had assumed that the two were viewed as two sides of the same
coin.
... I would have thought that if you believe in this at all, success is
having the two (eventing and compositionality) come out together.
... In passing, I note, that composability may also be relevant to the
tagSoup discussion.
<ht> Ah, I was forgetting Tim's preferred hook for this, namely
self-describing
Noah: The self-describing web tends to be viewed recursively.
Henry: At the moment, you basically have to read whole documents. Although
you can do it asynchronously, all you can do is build a tree with them.
... That's just not what you want to do all the time. I'd like to see a
place to say that.
TV: These are two ends of a spectrum.
... You start at the root, you recurse through, following your nose and
all the right things happen.
... That's one end.
... The middle of the continuum is where you have not only the hierarchy,
but you also have interaction. There are changes in the read/event/print
loop.
... And at the other end of the spectrum, you have today's HTML pages with
AJAX. Because there's no abstraction, every programmer basically
redevelops the read/event/print loop.
... The part of the app that you keep rewriting that you should only have
to write once is that aspect where you listen to events and bind your
event handlers. Responding to events, you do your post and copy the
returned bits into the DOM.
... There's no architecture behind what we're doing now, so everyone
reinvents the interaction paradigm.
... In the world were you do everything with your bare hands, you can do
all of it.
Henry: That connects up with something else that occurred to me: one of
the odd things about the AJAX/Web2.0 world we're in today is the print
part of the loop; you have to set properties on outerHTML to get something
to the reader.
TV: It's odd here, but it's also odd in every other architecture we've
had. In most UIs, you put some value somewhere and it just shows up in all
the right places.
... Today, if you do an AJAX request to get a number back, and you want to
put it on the page in two places, you have to do it all with your bare
hands.
... If you take something reasonably complex, like Google Calendar, you
find that the user agent side is a mess of frames and iframes and things.
The server side is actually a well behaved, reasonable model.
... What flows back and forth is actually an Atom stream that's fully
coherent.
... Those are the two extremes and you actually see everything in between
as well.
... So there's interest in making some of the user-facing code simpler and
more reusable.
Henry: Bullet points:
... Push vs. pull
... Pipelines (a la XProc)
TV: The goal isn't to eliminate the need for writing JavaScript, that'll
just start a religious argument
...Rather: I think you should say that the things that are simple, that
everyone knows how to do, you shouldn't have to write a lot of custom
script for
Noah: I think what JS gives people is the ability to change the platform
without reinstalling the client.
... When something becomes stable enough, it's useful to talk about having
it turn up in the platform.
... But there are different ways to build function libraries. You can do
it with JavaScript that's imperative, or you can do it with JavaScript
that quietly interprets other declarative code.
<ht> ... and then you can have a declarative platform, at a higher level
<ht> ... But I also agree that you have to be able to do the e.g.
Google-maps innovation by writing large amounts of imperative code
<ht> ER: AJAX is getting pervasive already
Noah: Suppose someone has a drag-and-drop library. They need a fairly
sophisticated platform to even explore that space.
<ht> NM: But it's not baked into the browser yet
Noah: The interesting question is, does the code that goes with that
library have an interpretive model, or is it interpreting something more
declarative.
... Then when the library moves into the platform, you lose all the
imperative stuff and you get all the "least power" benefits.
Henry: That's precisely why I made the pipeline observation, because if
what you want to do is a sequence of operations (XSLT, validation,
XInclude, etc.) then you should be able to describe that and get the
benefits that you just mentioned because all of those functionalities are
already in the platform.
... Not that that applies to drag-and-drop; that's an interesting
alternative example.
... We were just making the same point, I think.
Noah: Ah, now I see. I think you should turn the slide around, as you just
did.
... Then pipelines as an example in the domain where it applies make
sense, though I'm not sure that's in the 80/20.
Henry: The third point: Making events the common currency does seem to beg
the same questions as blackboard architectures in AI and they always fail.
TV: They fail because of a scaling issue.
... The question to ask is, to what level of scalability does scalabilyt
matter in an architecture that you put together for web applications.
<ht> The kind of scalability I'm talking about is the n(n-1) problem that
arises as we combine n components
TV: I think if you try to get an architecture that scales too far, it will
fail for the simple cases that are the current focus
<ht> not data-scalability
Henry: That's not the direction I was worried about, I was worried about
the fact that such architectures assume that there will be some universal
language that all systems will be able to interpret.
... The common language problem seems like it *is likely to arise* in the
blackplane architecture being described.
TV: I agree the problem might arise, but if you keep it for pure data and
data interchange and some level of eventing where the events are just for
changing and rendering data...
Henry: That's not what's going to happen and you know it; people are going
to start designing events to have one part of the application communicate
with another.
TV: I agree, if events are the exclusive means of communication, there
will be a problem
Henry: next point: What about extensibility and versioning?
... There isn't any mention of this.
TV: You could essentially be seen as saying, "don't do this because of all
these problems"
... I think it behooves us as the TAG to say if you can't do this because
of all these problems, what can you do?
Henry: I think you're right. This reads as criticism and it needs to be
changed in tone so that it makes clear some issues that do need to be
squarely in view.
Ed: But we don't want them to do these things in isolation right?
Henry: Yes, but I don't think we've solved any of these.
... They seem to be perilously close to getting into "DLL hell"
... Modularity is good in principle, but it has the problem of managing
your modules.
TV: The APIs that web apps build on are so shallow that they seem to be
managing to avoid the DLL hell problem.
... As long as you use shallow, type-sensitive data APIs, you don't end up
with a very deep versioning problem.
... Because you're binding to a very shallow API, the changes you have to
make are relatively managable.
Noah: The reason you get really bad DLL hell on an OS is because a broad
range of things you do tend to use the same shared libraries. On the web,
for a variety of reasons, you don't get so much common code.
... Typically, if I go to one particular Google map mashup today and then
another five minutes later, they don't communicate with each other so the
problems are less severe.
... As things like the live clipboard arise, I think there may be a data
format hell.
TV: I think the data format hell is a real possibility.
... If you compare Windows and Unix, the Unix answer to DLLs was to have a
common API and communicate by shipping data around.
... The way mashups work today is much closer in spirit to the
socket-based data linkage of Unix.
Henry: And the final thing was: What can I bookmark? What constitutes a
resource in this world?
... What you see on your screen is a long way from the URI that you typed.
TV: I think it may be a mistake for the TAG to assume that it can say the
same things with this modern technology that it could say with older
mechanisms like URIs for HTTP
Noah: If you look at what Google Maps does, it's a short step from what is
provided now to something that provides URIs for each of the steps.
TV: More importantly, is the URI mechanism that we have today rich enough
to express everything we need to express. I don't think so.
Noah: But then the question is about what the contract is between the
client and the server.
... I don't think that you're giving the client permission to construct
parts of the URI that come before the sharp sign.
... It's not clear to me that client side construction of URIs is limited.
Scribe realizes those two sentences are in conflict; attributes that to
scribal error.
Henry: I'm not going to send this in as representing the TAGs opinion, but
I will take all of it and factor it into what I send to the workshop
tomorrow morning.
<scribe> Chair: Vincent
Issue metadataInURI-31
<noah> email announcing new version:
http://lists.w3.org/Archives/Public/www-tag/2006Nov/0042.html[9]
Vincent: Can you summarize?
Noah: Certainly.
<noah> Latest draft:
http://www.w3.org/2001/tag/doc/metaDataInURI-31-20061107.html[10]
<noah> Main change in section 2.8:
http://www.w3.org/2001/tag/doc/metaDataInURI-31-20061107.html#confusingmalicious[11]
Noah: We discussed the finding at the f2f
... I think it's fair to say that with the exception of major concerns
about Section 2.8, the other changes were straightforward.
... I have completely rewritten 2.8.
... I started with a URI that ended ".jpeg" and served an executable media
type. Reactions were mostly negative.
... What I took away was that the concerns were: 1. generally users are
confused, in a broad sense, about expectations on the web and extensions
in URIs;
... 2. when you actually try to save a file, what happens and when is it
appropriate to look at the extension in the URI
... and 3. something about when people attempt to use this maliciously.
Vincent: Probably next week; I just wanted an update.
... Any questions?
Ed: Basically, I think this addresses the concerns that I had. I still
have some discomfort, but I'm fine with it as it stands.
Noah: Did I cover what the TAG wanted at the f2f?
Ed: I think so.
Noah: Good, because as I went over the minutes, I had some confusion.
... To clarify: I realized after I left Vancouver that part of the story
was a link around an image and not about a "naked" image tag.
Ed: You say maliciousness is not acceptable, but there's nothing here
that's going to prevent that.
Noah: If you look at my examples, I used to have a
jpeg-that-wasn't-a-jpeg, but now all the names and media-types basically
line up.
Ed: The examples I've seen in the real world are: a thumbnail that you
click on to open the image but the link is really to an executable. It
opens an image (to render the image), but also may do something malicious.
Noah: I thought people wanted the "click to save" example, but if the
"click and execute" example was what was intended, you should let me know.
<DaveO_TAG> On the issue of MetadataInURI, the topic has come up on
REST-discuss.
Vincent: I'll make sure Dan looks; hopefully next week we can approve it.
<DaveO_TAG> Roy expressed some reservations about the doc
Noah: There's been a stream of public comments that have included some
criticism, but I hope this draft addresses those concerns.
Vincent: Noah's action is completed.
<DaveO_TAG> He said "Er, not since it was completely rewritten -- I
haven't even reviewed it."
<noah> Actually, I'd say we have a mix of positive and negative comments,
and I am optimistic that the draft addresses at least some of the
concerns. I need to doublecheck which other concerns I may have missed.
<DaveO_TAG> "The first sentence, for example, is problematic."
Issue genericResources-53
Vincent: I think we're done, but Ian had some minor comments.
TV: My view is that they're editorial and we shouldn't open the issue
again.
... Anyone on the team can fix them, but as editor, I'm not willing to go
through the cycle again.
<noah> I have logs of comments on metadata in URI from Roy on March 28.
DaveO: do you have something newer from him?
Vincent: I'll take a look and see if I can get them addressed
<noah> If it's on REST-discuss, we need to get him to send to www-tag (and
it's getting late)
Issue tagSoupIntegration-54
Vincent: What's next?
Norm: Does it make sense to see how the backplane workshop falls out? That
seems related to me, but maybe it's not.
Vincent: Should we consider attempting to draft a finding on this issue?
Noah: I think we should agree not to do a finding until there's more
discussion.
Vincent: You're right, it's certainly too early to draft something, but
having someone committed to edit a putative finding might be a good thing.
... But maybe it's too early for that too.
TV: I don't think the backplane meeting will shed much light on this
issue.
Henry: I think the backplane folks are likely to say "Yeah, if you solve
those problems it'll make what we're doing more valuable". But they aren't
going to address those problems.
Vincent: Ok, let's see what happens in the next few days or weeks.
Any other business?
<DaveO_TAG> Roy said something on REST-Discuss
<DaveO_TAG> at
http://tech.groups.yahoo.com/group/rest-discuss/message/6708[12]
Vincent: Ok. Teleconference next week.
Adjourned.
Summary of Action Items
[End of minutes]
----------------------------------------------------------------------
[1] http://www.w3.org/
[2] http://lists.w3.org/Archives/Public/www-tag/2006Nov/0040.html
[3] http://www.w3.org/2006/11/07-tagmem-irc
[6] http://www.w3.org/2006/08/backplane/
[7] http://www.w3.org/2006/08/backplane/
[8]
http://lists.w3.org/Archives/Member/tag/2006Nov/att-0002/backplane_thoughts.html
[9] http://lists.w3.org/Archives/Public/www-tag/2006Nov/0042.html
[10] http://www.w3.org/2001/tag/doc/metaDataInURI-31-20061107.html
[11]
http://www.w3.org/2001/tag/doc/metaDataInURI-31-20061107.html#confusingmalicious
[12] http://tech.groups.yahoo.com/group/rest-discuss/message/6708
[13] http://dev.w3.org/cvsweb/~checkout~/2002/scribe/scribedoc.htm
[14] http://dev.w3.org/cvsweb/2002/scribe/
Minutes formatted by David Booth's scribe.perl[13] version 1.127 (CVS
log[14])
$Date: 2006/11/07 19:51:15 $
Received on Tuesday, 7 November 2006 20:16:49 UTC