[10:00] Saijanai Kuhn: ha found that most people have never checked out Hihkaru no Go after he froths about it being the best' kid's drama ever produced, so he's not surprised when his other rants are ignored
[10:06] Morgaine Dinova: Work? Hang on, nobody mentioned work before ...
[10:07] Zha Ewry: I'm hoping.. expecting.. that we'll use this to push on things independent of Linden.. I think we all pretty much relize that it's going to be an interesting balancing act for them
[10:08] Rex Cronon: the thing is. nothing can be done unless the lll agrees. so maybe at least one linden should be invited
[10:08] Zha Ewry: Talk here, expect to see tree post your words to the wiki
[10:09] Tedd Maa: open invite to ll's is probably not a bad idea ;)
[10:09] Zha Ewry: Interesting questoin, that Rex...
[10:09] Tree Kyomoon: I agree Rex, we can set up meetings but it seems a good idea to at least invite lindens to our self organized meetings
[10:09] Zha Ewry: So.. I'm intentionally, not setting any ground rules yet.. Other than open.
[10:10] Tree Kyomoon: I dont really see much point in working independantly unless we are planning to build our own with opensim or something
[10:10] Tedd Maa: *whispers* unless we start meeting in an OpenSim they can spy on us you know
[10:10] Morgaine Dinova: I don't think it's quite like that. Zero has made it plain that it's a community effort, with LL as part of that community. I don't think he presented (or even remotely intimated) that it's a Linden-veto kind of process.
[10:10] Zha Ewry: I am inclined to agree. but.. If we ant to say "Yah, let's invite Lindens" then Ilet's agree it..
[10:10] Saijanai Kuhn: Tao Takashi(?) should also get an invite
[10:12] Zha Ewry: And.. two respond to two comments
[10:13] Zha Ewry: *I* intend to build in OpenSim..
[10:13] Zha Ewry: And.. From the discussion at the kickoff, Linden expect people to do stuff totally disjoint fromt hier code base. So.. Yes, we should expec that
[10:13] Rex Cronon: i guess lindens don't have to be present, as long as they can read the transcript
[10:13] Zha Ewry: Big Blue's garage. bettter cooled
[10:14] Morgaine Dinova: I don't mind how it's organized, or who is present. But obviously it's not going to get very far unless this is a genuine desire for design and implementation beyond LL alone. I think that's what they want ... many brains and hands.
[10:15] Zha Ewry: And.. the second comment.. is that. I *do* expect, from time to time we'll want to caucus without Linden's present. or at least with them being quiet.. There is if not a conflict of interest, at lleast a difficulty when we get to
[10:15] Zha Ewry: spots where we're going to want to do things differently then they do.
[10:15] Lily Argus: Yes, think so too. Lindends will do a minimal reference implementation and copying ideas from everywhere as they arise.
[10:15] Morgaine Dinova: And anyway, Zero's an engineering kind of guy. He won't veto "just because he says so". He'll present very solid reasons, and if they're solid then the engineers in us will agree with them.
[10:15] Lily Argus: So the great stuff must come from outside.
[10:15] Zha Ewry: I'm inclined to agree with Morgaine. Zero's been very clear that he's interested in good ideas
[10:16] Zha Ewry: And.. very candid about when they'll go funny places, not due to desire, but need
[10:16] Tedd Maa: so .. will meetings be at fixed times? how do we decide agenda (if too many people then things gets messy, just see Zeros hours)
[10:16] Zha Ewry: I'm hoping we'll grab a time, once a week, to start..
[10:16] Tree Kyomoon: I dont really see a need to meet independantly, at least one that has presented itself so far.
[10:16] Zha Ewry: and I'm goign to suggest that we do agenda.. by wiki..
[10:17] Morgaine Dinova: That would be nice. And please, more wiki activity. I'm feeling very lonely there.
[10:17] Zha Ewry: Have people post topics... and rough order them.. and then try to stay losely on topic
[10:17] Zha Ewry: and.. I don't now if we'll need to or not. I've going to talk about one thing.. which I think gets us ahead of
[10:17] Tedd Maa: ok, good idea to have people include references to the topics too so people not involved in specific topic can get up to speed
[10:18] Zha Ewry: Zero.. and it slightl outside of his office hour scope today.. and then lets see if we all feel we need to hold these routinlely, ad-hoc or what
[10:18] Zha Ewry: And..Yeah, Tedd, that's an excellent point
[10:18] Saijanai Kuhn: Zha, Nocoaz never got your invite to the group (and you're offline)
[10:18] Zha Ewry: So.. I'm going to toss one techie topic out.
[10:18] Tree Kyomoon: One thing I could see as a use for this group is to gain consensus on issues so that we represent a united front in communication with teh lindens
[10:19] Lily Argus: I think Nicholaz wrote at some time that he is not that much interested in meetings.
[10:19] Zha Ewry: So... I've been reading the c-http spec and looking hard at it.. and one thing I heard a lot of was "How do we really use it."
[10:19] Zha Ewry: *if* it's going to be the building block for the next generation stuff
[10:19] Morgaine Dinova: That could help Tree. But on the other hand, it's not confrontational. Lindens are part of our process, it's not us and them.
[10:20] Zha Ewry: I'd love to see us pop out some public endpoints.. Put them up on the web for people to play with and get sample code, and some real use cases here
[10:20] Tree Kyomoon: I dont see it as confrontational, more of a distilling process so we dont waste thier time. We can educate each other and focus at the actual meetings with lindens on our collective will.
[10:21] Zha Ewry: and.. Also.. Zero's realy clear that he's going to be bandwidth limited
[10:21] Zha Ewry: We're way out front of where they expected people to be, in responding to the idea
[10:21] Tree Kyomoon: Right he has to concentrate on actually building the stuff
[10:21] Tedd Maa: about IM'ing before a meeting... I often spend more time in Visual Studio (writing OpenSim) and inside OpenSim than I do in-world. So attending fixed time is easy, but on 5 minute IM notice is just pure luck
[10:21] Saijanai Kuhn: I think they misread what eople want.
[10:21] Morgaine Dinova: Well some of us are backlogged, having been talking to Lindens about it for 3-4 years ... so it's no surprise that it's coming out rapidly now :-)))
[10:21] Zha Ewry: When Zero and Rob stood up and said "next stepts" they were tjhinking in terms of weeks to months, and everyone in the room said days to weeks...
[10:22] Saijanai Kuhn: Everyone else is either closed, or in the planning stages. There's a community here that is VERY interested in seeing it become larger and become The Next Big Thing
[10:22] Zha Ewry: I agree.. And.. that's really kind of the point.
[10:22] Tree Kyomoon: Exactly, Morgaine, now the lindens just have the bodies ready to hear what the message is
[10:22] Squirrel Wood: Might be a good idea to reduce things to the absolute basics and even split those up into tiny little steps for better digestion. featuritis can be practiced once the basics are implemented.
[10:23] Neas Bade: Has anyone sorted out a good "place to start"
[10:23] Zha Ewry: Chuckle. Validate some of the assupmtions?
[10:23] Neas Bade: there is a lot of more general information on the wiki, but something we would actualy start doing (on implementation front) still seems a bit up in the air
[10:24] Squirrel Wood: You could fill a wiki about the wiki ;)
[10:24] Morgaine Dinova: Tree: that's just the Brainstorming page. It's kind of random by definition. :-)
[10:24] Morgaine Dinova: I;ve been trying to organize it though
[10:24] Saijanai Kuhn: the indexing for the QWG seems haphazard.
[10:24] Zha Ewry: When I talked about "lasting relationships" and streams of information.. Zero was defintely at the "oh. Yeah, that stuff" level of response
[10:30] Neas Bade: right, seperation of "a client" vs. "the client"
[10:30] Morgaine Dinova: Would someone like to give us a short presentation on why c-http is particularly applicable here? I tend to avoid flavours of the day.
[10:31] Zha Ewry: So.... Zero and Linden are asserting REST
[10:32] Zha Ewry: Which is probably as good a starting point as any for this, and better than most
[10:32] Lily Argus: If someone does the basic protocol stuff (the 30 lines java ,)), I build some endpoints, then.
[10:32] Zha Ewry: All c-http does, is wrapper existign http with a nice way of gettign idempotent behavior
[10:33] Zha Ewry: So..it requires, two tricks be added on existign http
[10:33] Neas Bade: I think the c-http implementation might be a bit more enticing if we had a service or two that was actually going to use it in the near term
[10:34] Zha Ewry: Basically, on each request, we generate a cookie, (uuid style) to mark the request.. and we use a persistent store to save the requests indexed by cookies
[10:34] Zha Ewry: When we servcie a request, we look to see if it's been done before. If so, we return the previous response, per the idempotent requirementsa
[10:35] Morgaine Dinova: Neas: Zha's belief is that because of the likelood of using REST-based services heavily, that we are likely to require a layer offering idempotency, and therefore working on components for that would be useful anyway. I'm neutral.
[10:35] Zha Ewry: The write up makes some asumptions
[10:35] Tedd Maa: The same interface as the Region exposes to the ScriptEngine can be extended and used by other services that needs (authenticated, encrypted) access to the region for various reasons
[10:35] Zha Ewry: Basicallyy ou define a "long time"
[10:36] Zha Ewry: and stored requests have to last that long
[10:36] Saijanai Kuhn: seems to me that the concept could be extended for things like IM: store a hash number in the cookie and return that
[10:36] Zha Ewry: Now.. this has all sorts of scaling and persistence fun issues
[10:36] Tree Kyomoon: does c-http allow one to bypass normal cookie settings via a browser becuase its a unique protocol?
[10:36] Zha Ewry: And.. I think I have a sense of how it works in terms of performance
[10:37] Zha Ewry: But again, real code, and people banging on it.. will be the best way to know
[10:37] Zha Ewry: And.. I think that yes, the OpenSim community would be a great place to pick out some easy services to put on top of it
[10:38] Morgaine Dinova: Idempotency is mainly important when humans are the source of requests, and when subsystems fail internally, so that requests can be repeated without accidentally screwing up. But I'm not sure how central that is.
[10:38] Zha Ewry: and.. if.. we build it.. and find issues, doing it now.. while Linden is just warming up to use it across the whole
[10:38] Zha Ewry: And.. No.. idempotency is just as important in services if you want to avoid locking and byzentine agreement
[10:39] Zha Ewry: The discussion with Zero on Escrow on Thursday, for example
[10:39] Zha Ewry: One of the things I think Linden has learned, finally, is that thier current "no-retry" model is busted
[10:39] Zha Ewry: But.. Once you allow retry.. then you need to be clever about idempotent stuff
[10:40] Morgaine Dinova: That's very interesting to me then. Locking cross-section reduction is one of the keys to achieving scalability. Can you give me a link to that later, Zha?
[10:40] Morgaine Dinova: I've only scanned it, but it's very interesting
[10:41] Zha Ewry: and.. I think.. that.. if we can validate.. or blow up.. some of the base assumptions early.. we're way ahead of the game
[10:42] Neas Bade: basically to prove/disprove the viability of REST for what LL has proposed?
[10:42] Zha Ewry: And.. before Morgaine finishes worrying about escrow not scaling..
[10:42] Zha Ewry: yeah, its a potential single point of failure.. and scaling
[10:42] Morgaine Dinova: Hmmm, odd perspective on the web. I'd have thought it was more a case of decoupling and reversing dependencies, which is why it scales. But I'll read it all.
[10:42] Zha Ewry: Well, not just REST, but the c-http approach to rest and modeling on web services
[10:43] Zha Ewry: Roy gets there, Morgaine.. but. from a very odd angle
[10:43] Zha Ewry: and. derives idempotent as a key property
[10:43] Neas Bade: ok, gotcha. Though the underlying server in only going to give us so much of that. Without representitive service calls, we'll be doing very artificial testing
[10:43] Zha Ewry: Its only taken me about 5 years of wrestling with SOAP and WS-* stuff to fully get a handle on Roy's insights
[10:46] Zha Ewry: If there are things that worry me about what Linden's said so far.. it's that they don't have any proof that they can build this effeciently out of the buildng blocks they propose
[10:46] Zha Ewry: that they don't have a need, and therefore incentive to fully de-compose the design
[10:46] Zha Ewry: and.. that they are still too deeply wedded to the current grid sturcture
[10:47] Zha Ewry: Morgaine was bending my virtual ear to the breaking point earlier on that pont
[10:47] Morgaine Dinova: You know Zha, I think I see a role for inherent idempotency in my distributed object store suggestions. After all, contributors fail, they run out of resource etc, and yet the show must go on so rerequesting is not optional. That's very interesting.
[10:47] Zha Ewry: and.. as turnabout is fair play.. what do other people worry about here
[10:48] Morgaine Dinova: Yeah, poor Zha. But that's the price you pay for having an analytic mind, IMs come your way :-)
[10:48] Tedd Maa: I'm reading about chttp... "If the response contains a header indicating a confirmation url on the recipient, performs an HTTP DELETE on the resource to ack the incoming message." <- can anyone come up with an example for this one?
[10:48] Zha Ewry: Tree, i still have a bag missing there from 1987, but I don't think Linden's going to help me.
[10:49] Zha Ewry: Well, except I don't need to go through heathrow to TP to meetings in SL.
[10:50] Zha Ewry: That.. too may be a big contribution we can make. Commented, good sample code. with some design notes on whay its down this way.. could be huge.
[10:50] Morgaine Dinova: Reminds me of the two Unix boxes I had sitting next to each other with a test email attempting to get from one to the other. It was still in the spool 10 years later.
[10:50] Neas Bade: definitely needs to spend a bunch of this week getting up to speed on many of these things
[10:51] Zha Ewry: I *think* 8 is about culling out stuff that's *done*
[10:51] Zha Ewry: And. if you want context, you might look at http-r (I'll pass you a pointer in a moment)
[10:52] Zha Ewry: Both of which chewd on this space
[10:52] Zha Ewry: c-http is much lighter weight, but the same intent
[10:52] Tedd Maa: I see one scenario... You have some important thing that needs to be done and takes 10 minutes to perform, you send it to a server. this server goes down before finishing the task, so you need to resend it some time later.
[10:56] Tedd Maa: its not so far from what I did in my last project, using HTTP for reliable message delivery to busses with GPRS/3G modems .. those damn bus drivers kept stopping the engine!
[10:56] Morgaine Dinova: I would like to see a detailed list a clients for the services, with those being a particular beneficiary of idempotency highlighted. While the idea of creating components in advance is good, I don't have a good perspective on who will be exercising them.
[10:57] Neas Bade: I think the land transfer use case from thursday's office hours was pretty useful
[10:57] Zha Ewry: I think.. that.. one interesting question.. is how different interactions model. I have. in my head.. at least three styles of interactoins lutking in the system
[10:58] Zha Ewry: There is pure heavy idempotent stuff. There's continuing, relationship stuff, with reliablity needed and.. there is some stuff which reeks of UDP, or simlar semantics
[10:58] Zha Ewry: I do not need heavy, idempotent stuff to pass on "Step forward"
[10:58] Morgaine Dinova: All atomic transactions. Since it's quite likely that this will actually be used in the implementation of atomicity. It won't be in the RDBMS after all.
[10:58] Zha Ewry: nods.. Yeah, that's one good criterion
[10:59] Saijanai Kuhn: can c-http be used to help solve the IM bugs?
[10:59] Zha Ewry: Well.. If nothing else. it *should* get you out of the lost message cases. But..only with good retry and such
[10:59] Rex Cronon: so, everybody wants to use only http?
[10:59] Saijanai Kuhn: I think most people wouldbe happy with 80-90% reduction
[10:59] Zha Ewry: I don't even know just how Linden loses both IMs and presence information quite as often as they do.
[11:00] Zha Ewry: But.. All the alternate schemes have costs that nobody wants to pay
[11:01] Zha Ewry: And for loading your copy of the cnn website.. who cares?
[11:01] Morgaine Dinova: If things are getting lost, it's either a bug or a sign that the handling is ad hoc. I hope that someone is analysing it, and not just popping in hopeful fixes.
[11:03] Neas Bade: IM seems like one of the most natural places to want to standardize and expose to the external world
[11:03] Zha Ewry: I would love to simply be able to plug SL into pidgen when I am not logged on
[11:03] Saijanai Kuhn: does jabber hoandle the kinds of things that we do with IM here?
[11:03] Morgaine Dinova: Mind you, "IM" per se doesn't have much special interest ... it's just a subset of general comms. That's bound to be a design issue for infrastructure scaling.
[11:04] Neas Bade: zha, you beat me to the punch :)
[11:04] Neas Bade: Saijanai, do you have a use case that you think jabber wouldn't work for?
[11:05] Rex Cronon: what if IMs didn't involeve the server, but were sent from one user to the other users in the IM
[11:06] Saijanai Kuhn: don't know. I see us working with private, public, semi-private IMs. I'm trying to read up on Jabber as we speak. I do know the Croquet people are always asking the question, but then fall siolent when I describe what SL does with IM
[11:06] Morgaine Dinova: Does IM currently handle rich objects, like URLs? Or is that just an illusion by the client parsing the text and finding things that look like URLs? (repost)
[11:06] Zha Ewry: And. SIP. is pretty good on scaling
[11:07] Neas Bade: my recolection of XMPP is that you can embed MIME into the packets, so you should be fine doing just about anything mime can do
[11:07] Saijanai Kuhn: part of the problem is that there is no concept of ownership or real privacy in Croquet
[11:07] Tedd Maa: when I asked Zero about using IRC servers such as ircu he said that they would not handle the load, this was the main problem
[11:07] Rex Cronon: so a SIP model starts working when people are using IM
[11:08] Morgaine Dinova: Because presumably we'll want communications in an advanced virtual world to be far more ambitious than that. For a start, most MMOGs already have transfer of reference objects in chat ... we need to as well.
[11:08] Zha Ewry: I think.. but don't know, that 90% of what we do with IM could be done with any IM scheme. Just a matter of mapping tot he right part of the space. AOL Im, and Google chat, certainly do more load then SL does todya
[11:10] Tedd Maa: there are never that many people within one region that the messages can not be targeted to them individually by a client, it is the large groups with several thousand members that causes problems
[11:10] Zha Ewry: One bit of fun here.. and something I think a lot of people don't fully appreciate.. is that SL is not just one interesting problem, but a cluster of them glommed into the illsuion of a simple coherent system
[11:11] Tedd Maa: thats what my mom used to say about me
[11:11] Saijanai Kuhn: sometimes the illusion isn't so coherent
[11:11] Saijanai Kuhn: or to but it differently "glom" is the correct term
[11:12] Morgaine Dinova: Loss is one issue. But the lag issue isn't a problem at all in concept. That just requires not processing large lists serially in one place. Can't blame the clients, they're nicely scalable and distributed.
[11:12] Zha Ewry: So.. I've two sort of wrap up things to say...
[11:12] Rex Cronon: so, can SIP handle sending IMs to thousands of users?
[11:12] Morgaine Dinova: Zha: fanout, as we were discussing in another context
[11:12] Zha Ewry: One of which is to invite anyone you think should be here.. Let them know, pint them at me.
[11:12] Neas Bade: Rex, I've not had much direct interaction with SIMPLE implementations to know
[11:13] Zha Ewry: Three.. Feel free to tell me..and the group.. how we can be useful...
[11:14] Zha Ewry: I'll also point (Zero|Rob|Liana|?)Linden at the activity
[11:14] Morgaine Dinova: Zha: by the way, the dynamic system we were discussing earlier handles parallel IM trivially. It would require policy-based throttling, rather than the opposite of trying to find ways of speeding it up.
[11:14] Tedd Maa: so unofficial homework for everyone is to read up on the topics
[11:14] Neas Bade: interesting possible reading: [6]
[11:15] Zha Ewry: Yes.. and, I deeply second your notion of including pointers to good material in the agenda
[11:15] Morgaine Dinova: I'm more used to dishing out reading for students are tomorrow's lecture ..... thanks Neas
[11:15] Saijanai Kuhn: hmmm. Group member IM is "optional" for Jabber...
[11:16] Zha Ewry: Logistically.. feel free to informally use this plot for sitting ad chatting.. and the group IM for questoins.
[11:16] Zha Ewry: I'm a huge fan of casual interaction