AW Groupies/Chat Logs/2007-10-05
Jump to navigation
Jump to search
[10:56] | Gareth Ellison: | meeting is in 4 mins now |
[10:56] | Gareth Ellison: | get started without me, i'll be back soon |
[10:56] | Gareth Ellison: | and keep the logs! |
[10:58] | Saijanai Kuhn: | Someone is holding a sculpty contest to create the Matterhorn in the Swissopolis sim. $100US first prize, and 10x$10 second prizes |
[10:58] | Saijanai Kuhn: | whooohoo! |
[10:58] | Morgaine Dinova: | Oh, groupies still assembled I see. 'Evening all :-) |
[10:59] | Tree Kyomoon: | More like re-assmbled |
[11:00] | Morgaine Dinova: | Heh. I didn't check the time on your group notice :-) |
[11:00] | Tree Kyomoon: | 11:00 |
[11:00] | Tree Kyomoon: | So |
[11:00] | Tree Kyomoon: | NOW |
[11:00] | Saijanai Kuhn: | here's a thought: put the group log in a notecard and distribute it via notices? |
[11:00] | Saijanai Kuhn: | local chat log, that is |
[11:01] | Saijanai Kuhn: | I've been here all week |
[11:01] | Lily Argus: | I am here. .) |
[11:01] | Morgaine Dinova: | Heh |
[11:02] | Tree Kyomoon: | It *is* a pretty place to hangout |
[11:02] | Tree Kyomoon: | And you've all got light build rights in the space |
[11:02] | Morgaine Dinova: | Yes, I like it here. Especially up in the molecule |
[11:03] | Tree Kyomoon: | YOu'll find people on my work virutal team up there from time to time |
[11:04] | Saijanai Kuhn: | woot thanks Zha no more griefing |
[11:04] | Morgaine Dinova: | Attached by proper valence for their rank .... :-) |
[11:04] | Tree Kyomoon: | Nah |
[11:04] | Tree Kyomoon: | We're mellow |
[11:04] | WhiteBoard (e): | Now showing Image 4/4 - paraglider |
[11:05] | Tree Kyomoon: | We sit by hours in SL. :-) |
[11:05] | WhiteBoard (e): | Now showing Image 4/4 - paraglider |
[11:05] | Tree Kyomoon: | I always get to sit at the very top |
[11:05] | WhiteBoard (e): | Now showing Image 4/4 - paraglider |
[11:05] | WhiteBoard (e): | Now showing Image 4/4 - paraglider |
[11:05] | Morgaine Dinova: | Oh nice w/b |
[11:05] | Morgaine Dinova: | Or is it just an image viewer? |
[11:06] | Tree Kyomoon: | These let you draw images, but. they are pretty painful |
[11:06] | Saijanai Kuhn: | I have such a hard time handling my camera. I can't view it properly :-( |
[11:06] | Saijanai Kuhn: | is it two-sided because for me it is facing away from us. |
[11:07] | Tree Kyomoon: | So... |
[11:07] | Tree Kyomoon: | Gareth called this.. or pushed for it |
[11:07] | Gareth Ellison: | i'm here |
[11:07] | Saijanai Kuhn: | wheee. x months into SL and I'm finally learning to spin my camera view independely of hte avie |
[11:07] | Tree Kyomoon: | Cute flexy hair and all ;-) |
[11:08] | Lily Argus: | haha |
[11:08] | Gareth Ellison: | ok, main thing is CODERS |
[11:08] | Tree Kyomoon: | Yes. Coding! |
[11:08] | lightbulb: Touched.: | |
[11:08] | lightbulb: Touched.: | |
[11:09] | Gareth Ellison: | ok - what i'm looking for is a schedule of sorts |
[11:09] | Saijanai Kuhn: | float |
[11:09] | Tree Kyomoon: | So.. I think we are all eager to get some code started, to really push Linden |
[11:09] | Gareth Ellison: | what use cases are priority |
[11:09] | Tree Kyomoon: | I see two buckets of things which would be insanely useful |
[11:09] | Gareth Ellison: | go |
[11:09] | Saijanai Kuhn: | darn how do you do that. I keep falling asleep |
[11:10] | Tree Kyomoon: | one is usecases which force us to do proof of concepot on the new protrocols and make sure you have the full space covered |
[11:10] | Tree Kyomoon: | (Saij I use an outrider pose) |
[11:10] | Tree Kyomoon: | (and mysti anit-idle) |
[11:10] | Gareth Ellison: | i hope i don't have to go over software project management 101 but the use cases affect the protocol |
[11:10] | Saijanai Kuhn: | joking I've got two conflicting poses that randomly interact (accidental but its a cute animation) |
[11:11] | Gareth Ellison: | what i'm looking at on a practical level is what core use cases are needed first |
[11:11] | Tree Kyomoon: | Right. |
[11:11] | Morgaine Dinova: | Attrocious lag in IM |
[11:11] | Tree Kyomoon: | So.. I'd like to suggest that what might be really nice |
[11:11] | Gareth Ellison: | login, ocnnect to sim |
[11:11] | Gareth Ellison: | *connect |
[11:11] | Gareth Ellison: | stuff like that |
[11:11] | Morgaine Dinova: | Maybe we should scale IM first :-) |
[11:11] | Tree Kyomoon: | is to get the three major patterns tested, exposed |
[11:11] | Gareth Ellison: | get the CORE done first |
[11:11] | Tree Kyomoon: | Login would let us drive the capabilties stack |
[11:11] | Gareth Ellison: | IM is not quite core |
[11:11] | Gareth Ellison: | important, but not core |
[11:11] | Gareth Ellison: | to get login started then we need specs on how the caps will work |
[11:11] | Morgaine Dinova: | Yeah, agree. |
[11:12] | Tree Kyomoon: | Look at authnetication, and look at how we get the first steps in handing out tokens |
[11:12] | Tree Kyomoon: | Then, I want an escrow example |
[11:12] | Gareth Ellison: | ok |
[11:12] | Saijanai Kuhn: | if we attempt to use the client code directly, we find strange interactions |
[11:12] | Gareth Ellison: | in my toy implementation i've got authentication working like this: |
[11:12] | Tree Kyomoon: | And.. a contuinuting relationship (subscription) exeample, and and aan event stream example |
[11:12] | Gareth Ellison: | viewer sends LLSD map with details |
[11:12] | Gareth Ellison: | first/last name and password hash |
[11:12] | Gareth Ellison: | it sends this to the agent host |
[11:13] | Gareth Ellison: | when domain controllers are implemented it'll send it to the agent host allocated by the controller |
[11:13] | Gareth Ellison: | agent host replies saying "you are on agent host me and region host X" |
[11:14] | Gareth Ellison: | no caps as such yet - but what i do have is a trivial mulib implementation of the data access layer with some nice REST structuring |
[11:14] | Tree Kyomoon: | Excellent |
[11:14] | Gareth Ellison: | however i expect to restart that with a cleaner model and all the specs nailed down in a document |
[11:14] | Tree Kyomoon: | Right. |
[11:14] | Gareth Ellison: | so far, i hacked the viewer to say "login worked, but sim connection not implemented yet" |
[11:14] | Gareth Ellison: | i just get a "i'm here" message on the sim console |
[11:14] | Gareth Ellison: | awaiting some opensim mods for the rest |
[11:14] | Tree Kyomoon: | I am very much, mixed on the need for doing it in the viewer in the early going |
[11:15] | Gareth Ellison: | i'm also wanting some documentation |
[11:15] | Morgaine Dinova: | I'm having trouble identifying use cases for the REST resources from among the Use_Cases |
[11:15] | Gareth Ellison: | i think doing viewer mods is essential to getting this working |
[11:15] | Gareth Ellison: | anything that involves asset transfer or any change states == REST |
[11:15] | Gareth Ellison: | the only exception we've identified is object position updates |
[11:16] | Saijanai Kuhn: | prim properties are also done UDP currently i understand |
[11:16] | Gareth Ellison: | currently yes |
[11:16] | Tree Kyomoon: | Well, Zero implied, rest for all the sevices |
[11:17] | Tree Kyomoon: | There are two ways for something to be rest |
[11:17] | Morgaine Dinova: | Yes but there aren't any REST resources mentioned in the Use_Cases. That's what the use cases should be for. In effect you write the test harness for the services from the use cases. We need them. |
[11:17] | WhiteBoard (e): | Now showing Image 4/4 - paraglider |
[11:17] | Tree Kyomoon: | The underlying service can be inherently idemportent |
[11:17] | WhiteBoard (e): | Now showing Image 4/4 - paraglider |
[11:17] | WhiteBoard (e): | Now showing Image 4/4 - paraglider |
[11:17] | Tree Kyomoon: | Or.. you can use soemthing like c-http to force it. |
[11:18] | Gareth Ellison: | use cases are meant to be user-orientated |
[11:18] | Gareth Ellison: | not dev-orientated |
[11:18] | Tree Kyomoon: | We need both |
[11:18] | Gareth Ellison: | yes |
[11:18] | Saijanai Kuhn: | ??? Thought they helped generate the code |
[11:18] | Tree Kyomoon: | I was debating writing an annotated logon case |
[11:18] | Gareth Ellison: | which is what i'm wanting nailed down |
[11:18] | Morgaine Dinova: | I'm assuming that you'll be putting the idempotency behind a REST connector ... so we'll need something in front of the connector to issue the requests. |
[11:19] | Gareth Ellison: | ok, let me summarise it bluntly |
[11:19] | Gareth Ellison: | i can do this ALL myself |
[11:19] | Gareth Ellison: | but it'll be slow |
[11:19] | Tree Kyomoon: | No |
[11:19] | Tree Kyomoon: | We don't wantr you to |
[11:19] | Gareth Ellison: | what i'm wanting is collaboration on writing the specs and coding it |
[11:19] | Tree Kyomoon: | I will offer up a logon through first pave rezed |
[11:19] | Tree Kyomoon: | use case, annotated stle |
[11:19] | Gareth Ellison: | so we need some hard specs |
[11:19] | Tree Kyomoon: | Login means |
[11:19] | Gareth Ellison: | Zha: can you put this on the wiki? |
[11:19] | Tree Kyomoon: | Send "Oging request to the this service" |
[11:19] | Gareth Ellison: | need hard specs as in full URL |
[11:20] | Tree Kyomoon: | Get back "Capabitlity for.." |
[11:20] | Tree Kyomoon: | Yes, |
[11:20] | Morgaine Dinova: | Not sure why you said that Gareth. This is a team effort. Obviously you can do as much or as little as you want. But we all intend to work on it. |
[11:20] | Saijanai Kuhn: | has plenty of time. Waiting on longterm hiring practices of LL and polishing programming skills, currently |
[11:20] | Gareth Ellison: | indeed |
[11:20] | Tree Kyomoon: | Gareth is eager to push this in code |
[11:20] | Tree Kyomoon: | I think that's one of the several ways this needs to happen |
[11:20] | Gareth Ellison: | i apologise if i offended |
[11:20] | Gareth Ellison: | but what is currently happening is a slow look at the high-level concepts |
[11:20] | Tree Kyomoon: | I am fighitng my way through the corproate thickets |
[11:20] | Tree Kyomoon: | so I can put out endpoints in internet space |
[11:21] | Morgaine Dinova: | Gareth: of course it is [about high-level concepts], we're in the design phase. You can't code something when you don't know what you're aiming for. |
[11:21] | Gareth Ellison: | ah, but there is the fallacy |
[11:21] | Saijanai Kuhn: | well you can, but you get the current viewer |
[11:21] | Gareth Ellison: | can you design something with no experience of implementing it |
[11:21] | Tree Kyomoon: | It needs to be a |
[11:21] | Tree Kyomoon: | interlocking process |
[11:22] | Tree Kyomoon: | I can do about 50% of the design, from first principles |
[11:22] | Morgaine Dinova: | It's not a fallacy. The *WHOLE* purpose of AWG is to design for scalability ... not just to code any old thing. |
[11:22] | Tree Kyomoon: | But the last 50% needs code to inform it |
[11:22] | Gareth Ellison: | speaking practically what we need now is an SVN repo somewhere and people wanting to start coding today |
[11:22] | Morgaine Dinova: | We already have a non-scalable grid. Why would we want another? |
[11:22] | Gareth Ellison: | before the coding starts we want some minimal specs |
[11:22] | Gigs Taggart: | Well, speaking of design, I'd like to design and implement a reference distributed search implementation. |
[11:22] | Tree Kyomoon: | As long as people grok that a lot of code will get morphed |
[11:22] | Tree Kyomoon: | as we sort out details |
[11:22] | Gigs Taggart: | completely separate from the existing code base |
[11:22] | Tree Kyomoon: | Why I'm hot on the low level protocols |
[11:23] | Gareth Ellison: | i've grown to be quite a fan of agile dev the past few months |
[11:23] | Tree Kyomoon: | Those are more likely to get refined, not simply tossed |
[11:23] | Gareth Ellison: | with a dedicated team it works lovely |
[11:23] | Tree Kyomoon: | Agile dev, is wondeful, as long as it doesn't get *too* far ahead of the design |
[11:23] | Morgaine Dinova: | Agile is fine, but agile is not random, it's directed by knowing where you're going. And that's what we're currently thinking about. |
[11:23] | Gareth Ellison: | i think we currently have enough high level concepts to start on the low level protocol details right now |
[11:23] | Gareth Ellison: | yeah |
[11:24] | Gareth Ellison: | hence the need for nailing down these initial minimal specs |
[11:24] | Tree Kyomoon: | Right |
[11:24] | Tree Kyomoon: | I'm willing to suggest about 5 pages of use case level flows |
[11:24] | Saijanai Kuhn: | I'm less versed in this stuff than many of you. For me, the specs are TOO minimal |
[11:24] | Tree Kyomoon: | Login, get capabilities |
[11:24] | Tree Kyomoon: | get use them |
[11:24] | Gareth Ellison: | what i'm proposing to clarify is a set of wiki articles with protocol specs and starting to implement as the wiki is ready |
[11:24] | Tree Kyomoon: | In particular, I want to get people seeing the core ineraction patterns |
[11:24] | Tree Kyomoon: | Yes Gareth |
[11:24] | Tree Kyomoon: | I agree there |
[11:25] | Gareth Ellison: | i think Zha's got it |
[11:25] | Lily Argus: | yup |
[11:25] | Tree Kyomoon: | In particular, I want people to start thinking that the 90% use pattern is "Servcie call leading to a set of URLs which are capabitlies and resoources," |
[11:25] | Tree Kyomoon: | some of which lead to more of the same |
[11:25] | Tree Kyomoon: | Right now, the 90% use pattern is get a pile of UUIDs and pass them to oddball LLxxxYYServCall1 |
[11:25] | Gareth Ellison: | or perhaps some being proxied by load balancers |
[11:26] | Gigs Taggart: | load balancing is irrelevant |
[11:26] | Gareth Ellison: | there will be LOTS of load balancers of some form |
[11:26] | Tree Kyomoon: | The load balancers, tho |
[11:26] | Tree Kyomoon: | Are invisble at the architetcure level |
[11:26] | Tree Kyomoon: | Facades |
[11:26] | Gigs Taggart: | yes |
[11:26] | Gareth Ellison: | it is relevant - i think we do need to take into account how to signal from load balancer to end service "expect this user" |
[11:26] | Morgaine Dinova: | Gareth: yes, that's exactly what we need. But so far, I'm not seeing that on the wiki. The only blow-by-blow use cases that detail how some use cases can achieve high scalability have been mine, and they're not even generic, just boundary cases. I want to see more. |
[11:26] | Tree Kyomoon: | A. |
[11:26] | Tree Kyomoon: | YOU DON"T! |
[11:26] | Gigs Taggart: | if the design has to know about load balancing within logical units, we fucked up |
[11:26] | Gareth Ellison: | as the case of agent hosts goes for example |
[11:27] | Tree Kyomoon: | Set the load balancer for session afffinity |
[11:27] | Gareth Ellison: | if i want to know where to find the agent host for agent X that was allocated by a load-balancer, how do i do so? |
[11:27] | Gareth Ellison: | ah |
[11:27] | Tree Kyomoon: | You never get to find out |
[11:27] | Morgaine Dinova: | Zha, who was your CAPS line too? |
[11:27] | Gareth Ellison: | have the individual service hosts completely stateless with regards to tieing them to sessions? |
[11:27] | Tree Kyomoon: | That is private between the load balancer and the backend |
[11:27] | Tree Kyomoon: | So.. When I get a capabity |
[11:27] | Tree Kyomoon: | I get a URL |
[11:27] | Tree Kyomoon: | There *may* be a load balancer handling it. |
[11:28] | Tree Kyomoon: | I can't care |
[11:28] | Gareth Ellison: | i hate that flying thing... |
[11:28] | Tree Kyomoon: | The load balancer may be a level 2-7 switch, or a apache doing spraying |
[11:28] | Tree Kyomoon: | Not my concern as the invoker |
[11:28] | Gareth Ellison: | ok - what i'm concerned with is how to reference an existing session in a load-balanced system |
[11:28] | Tree Kyomoon: | You use the URL |
[11:28] | Gareth Ellison: | session state must be held somewhere |
[11:28] | Gareth Ellison: | perhaps replicated across hosts a la MySQL slaves? |
[11:29] | Tree Kyomoon: | The builder has to make it work right |
[11:29] | Morgaine Dinova: | You two are only disagreeing because you're talking about two different views. Zha is talking about logical resources, and Gareth is talking about a process view in the implementation. |
[11:29] | Tree Kyomoon: | REST, and the web, asserts you can't know |
[11:29] | Tree Kyomoon: | Exactly Morgaine |
[11:29] | Tree Kyomoon: | and we're not disagreeing |
[11:29] | Tree Kyomoon: | Just not seeing the same thing yet |
[11:29] | Morgaine Dinova: | Well you shouted at him :-)))) |
[11:29] | Tree Kyomoon: | Ah. |
[11:29] | Tree Kyomoon: | Sticky casp locks |
[11:29] | Morgaine Dinova: | lol |
[11:29] | Gareth Ellison: | heh |
[11:29] | Tree Kyomoon: | Sorry |
[11:29] | Tree Kyomoon: | Anyway. |
[11:30] | Tree Kyomoon: | At the URL level, you get the URL |
[11:30] | Tree Kyomoon: | It says "I am the resource" |
[11:30] | Gigs Taggart: | later |
[11:30] | Gareth Ellison: | ok, i'll shut up for a minute - let's listen to Zha |
[11:30] | Tree Kyomoon: | if its loadblananced, then the load balancer has to be setup to make that work |
[11:30] | Tree Kyomoon: | Two typical ways |
[11:30] | Morgaine Dinova: | We need both views. Where's that guy from Intel with the IEEE-1471 focus, we need him. :-) |
[11:30] | Tree Kyomoon: | Either session affinity with hidden stguff in headers, and the loadbalancer respects that, and routes all the related reuqests to the same host or.. |
[11:30] | Tree Kyomoon: | You do it in the backend |
[11:31] | Gareth Ellison: | i like the idea of headers |
[11:31] | Tree Kyomoon: | For example, the full up, horribly corporate answer is, to put the "process logic" in a stateless sessions handler. (IBM being IBM, a Stateless Java bean) and then the state in the DBM |
[11:31] | Gareth Ellison: | maintain replicated agent domain controllers |
[11:31] | Gareth Ellison: | each maintaining read-only session state |
[11:31] | Tree Kyomoon: | (IBM being IBM, DB2 backed beans) |
[11:31] | Morgaine Dinova: | Session affinity for which service are you talking about atm? I want to know what's not being done stateless. |
[11:31] | Gareth Ellison: | which simply maps sessions to hosts |
[11:32] | Tree Kyomoon: | Point in all cases.. is that, if you have any state (and you should only have it in the barest case) you hide itbehind the URL |
[11:32] | Tree Kyomoon: | Further.. for most of what we want to do, if it is idempotent, per call, |
[11:32] | Tree Kyomoon: | the load balancer can drop you on any host in the serving cluster, and it will be fine |
[11:32] | Tree Kyomoon: | Nice ting about idempoint |
[11:33] | Tree Kyomoon: | Now.. To be horrible |
[11:33] | Gareth Ellison: | i'm with you now |
[11:33] | Tree Kyomoon: | IF |
[11:33] | Tree Kyomoon: | IF |
[11:33] | Gareth Ellison: | /<sessionID>/blabla |
[11:33] | Tree Kyomoon: | we're hostign c-http |
[11:33] | Tree Kyomoon: | Then.. you need to be careful |
[11:33] | Morgaine Dinova: | That's a special case, surely. To implement the idempotency, it creates local state. But it's very non-RESTful. The ordinary cases should be RESTful ... no cookies, no sessions. |
[11:33] | Tree Kyomoon: | Because the persistent header and reply management needs to be acoucnted for |
[11:34] | Gareth Ellison: | ok, let's look at sessions again |
[11:34] | Tree Kyomoon: | In Practice, the Architecture will strongly state |
[11:34] | Tree Kyomoon: | URL is the end point |
[11:34] | Gareth Ellison: | i.e the whole idea of persistent sessions |
[11:34] | Tree Kyomoon: | If you do things behind the URL that is your responsibilty to get right. |
[11:34] | Gareth Ellison: | someone suggested that a client merely controls a pre-existing agent |
[11:34] | Morgaine Dinova: | Every item of held state will do two things: (i) open you to DDoS, and (ii) reduce your scalability. |
[11:34] | Gareth Ellison: | so what if we simply create or delete an agent as needed? |
[11:34] | Gareth Ellison: | using a cap to authenticate it |
[11:34] | Tree Kyomoon: | Right Morgaine |
[11:35] | Gareth Ellison: | i.e login merely generates a cap URL which contains a key |
[11:35] | Zha Ewry nods | |
[11:35] | Gareth Ellison: | then if another client logs in, it gets the same cap, and can control the agent |
[11:36] | Gareth Ellison: | so from the user's viewpoint they can have multiple clients controlling one avatar (agent) |
[11:36] | Tree Kyomoon: | In fact, my current security epiphany is that we use a LOT of short term caps |
[11:36] | Morgaine Dinova: | The cap in general won't be forgeable though. *If* some other party gets the cap, yeah, it could do that. |
[11:36] | Tree Kyomoon: | yep |
[11:36] | Tree Kyomoon: | Now, Morgaine, combine caps with short term one short certificates |
[11:37] | dibbs Dovgal: | Hello everyone. |
[11:37] | Tree Kyomoon: | Make a use pattern of "Hey Sim, to fetch thse assets, use this Capabitlty and this lightwieight cert" |
[11:38] | Morgaine Dinova: | Yeah, and that becomes your session ID, effectively. The service doesn't need to remember it for operations. (Might do so as an additional validation thing, but in general it goes anti-REST) |
[11:38] | Morgaine Dinova: | Hi dibbs |
[11:38] | Tree Kyomoon: | So, that we can even do a Client->Asset Server transcatoin enabling sessions to setup the temp key |
[11:38] | Tree Kyomoon: | Then pass it to the sim.. and the sim only gets rights for the current use |
[11:39] | Tree Kyomoon: | Since.. I don't want to give out my deeper key to sims in general |
[11:39] | Gareth Ellison: | sorry, was afk again there |
[11:39] | Tree Kyomoon: | IMs wedging and not getting to he group. Sigh |
[11:39] | Morgaine Dinova: | Yes, that sounds reasonable. What I've been calling "the presence" on the wiki is actually the client's built up portfolio of service caps or certs. |
[11:39] | Tree Kyomoon: | I think so, yes |
[11:40] | Tree Kyomoon: | in combination with some sim/service relastionships |
[11:40] | Tree Kyomoon: | So.. I log on, tell the agent domain to pass my short term caps to the sim host I want my Ave on |
[11:40] | Gareth Ellison: | so, lots and lots of temporary CAPS and the sim only authorised to act on assets with the cap from the viewer? |
[11:40] | Tree Kyomoon: | The Sim host gets assets from my asset servers |
[11:40] | Tree Kyomoon: | And does its thing |
[11:40] | Tree Kyomoon: | (Yep Gareth) |
[11:41] | Tree Kyomoon: | and.. Beware.. Leasing models for those short term caps might be very slick |
[11:41] | Gareth Ellison: | that sounds workable |
[11:41] | Tree Kyomoon: | Want a good mind bender |
[11:41] | Gareth Ellison: | Zha - want to try doing some flows on this fancy whiteboard? |
[11:42] | Tree Kyomoon: | Ah. |
[11:42] | Tree Kyomoon: | Sure. I can try. Gah. |
[11:42] | Lock toggle: | You cannot change lock mode - only AngryBeth Shortbread can. |
[11:43] | WhiteBoard (e): | Now showing Image 4/4 - paraglider |
[11:43] | WhiteBoard (e): | Blank Screen |
[11:43] | Saijanai Kuhn: | a little too fancy? There we go |
[11:43] | Tree Kyomoon: | So.. One last mind bending thing to think about |
[11:43] | Tree Kyomoon: | I think that at any point where you could get an "uuid" you will now be able to get a "URL" |
[11:44] | Tree Kyomoon: | Which will represent the resource, and that could include a URL to a capabitlity which will get you the actual asset |
[11:44] | dibbs Dovgal: | Or URL-ID |
[11:44] | Morgaine Dinova: | Ah, just realized I'm missing a fact. Is the login service a one-shot thing, which goes away after validation etc, or does it persist to provide session state that everything else can reference? |
[11:44] | Tree Kyomoon: | The login, should only serve to authenticate you |
[11:44] | Tree Kyomoon: | Once in. |
[11:44] | Tree Kyomoon: | You *may* |
[11:44] | Morgaine Dinova: | One shot then |
[11:44] | Tree Kyomoon: | publish a service about yourself |
[11:44] | Saijanai Kuhn: | URL could include "local host" in this model. Wich would allow generic data to be stored on the client side without server interaction |
[11:44] | Tree Kyomoon: | Publish to public space |
[11:45] | Tree Kyomoon: | A capability others can use to fgind out about you ;-) |
[11:45] | WhiteBoard (e): | Now showing Image 4/4 - paraglider |
[11:45] | WhiteBoard (e): | Now showing Image 4/4 - paraglider |
[11:45] | WhiteBoard (e): | Now showing Image 4/4 - paraglider |
[11:45] | Gareth Ellison: | Zha: are you suggesting the client uses it's own caps? |
[11:46] | Gareth Ellison: | on it's own httpd? |
[11:46] | Tree Kyomoon: | I didn't suggest that, actualy |
[11:46] | Saijanai Kuhn: | which is why I can't use the llInventory* classes for my keyword thing, currently |
[11:46] | Tree Kyomoon: | In fact.. |
[11:46] | Tree Kyomoon: | Tho. |
[11:46] | Gareth Ellison: | good |
[11:46] | Gareth Ellison: | all grid-side |
[11:46] | Gareth Ellison: | a cap seed per user |
[11:46] | Tree Kyomoon: | What happens, if i want to host local objects, local assets, is that I publish a cap |
[11:46] | Gareth Ellison: | "Get this user's profile/location/whatever" |
[11:46] | Gareth Ellison: | "Get this user's local assets/objects" ;) |
[11:47] | Tree Kyomoon: | The boundary between service, server and client will get blury in some cases, which is fine |
[11:47] | Tree Kyomoon: | The URLs will tell us what's happenign |
[11:47] | dibbs Dovgal: | How many objects are uploaded at that time: the entire inventory or just teh active ones? |
[11:47] | Tree Kyomoon: | Which invenoty? |
[11:48] | dibbs Dovgal: | The clients |
[11:48] | Tree Kyomoon: | Not clear there is even a single unitary notion of that |
[11:48] | Gareth Ellison: | /inventory/<AgentID> for all |
[11:48] | Gareth Ellison: | /inventory/<AgentID>/<folderID> for folder |
[11:48] | Tree Kyomoon: | (one second inviting Donovan Linden to the AWGroupies) |
[11:48] | dibbs Dovgal: | And this sends a list of pointers to teh data, or teh data itself? |
[11:48] | Gareth Ellison: | /inventory/<AgentID>/<folderID>/<objectID> |
[11:48] | Gareth Ellison: | i'd say pointers |
[11:49] | Saijanai Kuhn: | URL to something that can provide the data |
[11:49] | Gareth Ellison: | up to the 4th segment |
[11:49] | Gareth Ellison: | <objectID> |
[11:49] | Gareth Ellison: | that one gives the data itself perhaps |
[11:49] | Morgaine Dinova: | LOL, I think we need the diagrams badly. We're discussing this like the archictecture was going to be flat. It may be, but we don't know it yet. :-) |
[11:49] | Gareth Ellison: | though that feels too redundant |
[11:49] | Tree Kyomoon: | So.. |
[11:49] | Gareth Ellison: | Zha: whiteboard good or not? |
[11:49] | dibbs Dovgal: | I agree that some diagrams will be very useful. |
[11:49] | Saijanai Kuhn: | but again, keep the use in mind that we need local host for some pruposes |
[11:49] | Tree Kyomoon: | What the heck is an invenotyry in this story |
[11:49] | WhiteBoard (e): | Now showing Image 4/4 - paraglider |
[11:49] | WhiteBoard (e): | Now showing Image 4/4 - paraglider |
[11:49] | Tree Kyomoon: | I can't get it do to boxes |
[11:49] | Tree Kyomoon: | See if you can. |
[11:50] | Gareth Ellison: | forget the whiteboard |
[11:50] | Gareth Ellison: | post on the wiki |
[11:50] | Tree Kyomoon: | An inventory, in SL, at the moemnt, is all the UUIDs in the MySQL cloud, |
[11:50] | Saijanai Kuhn: | assets that the user can give or take to other inventories |
[11:50] | dibbs Dovgal: | Yes. |
[11:50] | Tree Kyomoon: | belonging to me |
[11:50] | Tree Kyomoon: | In the next round of this |
[11:50] | Morgaine Dinova: | Well, you know, we do happen to be living in the middle of a 3D whiteboard environment .... |
[11:50] | Tree Kyomoon: | My inventory is the concatenation of the sets of all assets I own, in all the asset servers I sue |
[11:50] | Tree Kyomoon: | *use |
[11:50] | Tree Kyomoon: | (I only sue them when the lose assets) |
[11:51] | Saijanai Kuhn: | jumps up and down about local host assets |
[11:51] | Gareth Ellison: | lol |
[11:51] | Tree Kyomoon: | So.. |
[11:51] | Tree Kyomoon: | In fact |
[11:51] | Morgaine Dinova: | Just build some boxes and arrows :-) |
[11:51] | Tree Kyomoon: | I think. |
[11:51] | Tree Kyomoon: | To get the inventoy, I have to |
[11:51] | Tree Kyomoon: | Go to each asset server, I use and pass my crediential to it and get back my current list of resources |
[11:51] | Tree Kyomoon: | Now.. In fact.. I can be saner than that |
[11:51] | Gareth Ellison: | how do you tie them together? |
[11:52] | Gareth Ellison: | aggregrate it somewhere |
[11:52] | Gareth Ellison: | aggregration - it's good for more than just dynamic feeds |
[11:52] | Tree Kyomoon: | The optimization, of course, is to say "I have the current set since timestampX" send me deltas, and cache it on the client |
[11:52] | Tree Kyomoon: | Well. |
[11:52] | Tree Kyomoon: | Where do you need it? |
[11:52] | Gareth Ellison: | heh, i'd say that it's best to aggregrate on either the client or a server - enables these slimline clients to work nicer |
[11:52] | Tree Kyomoon: | I personaly, would pay someone to hold my set of assets and keyts to the sevrs and such |
[11:53] | Tree Kyomoon: | in a nice host side service I can invoke |
[11:53] | Tree Kyomoon: | I want to design it so |
[11:53] | Gareth Ellison: | if a client needs to implement local cache as mandatory then it won't work |
[11:53] | Tree Kyomoon: | that I might only have the keys on my client. Maybe only on my smartcard |
[11:53] | Tree Kyomoon: | No |
[11:53] | Tree Kyomoon: | Not mandatory |
[11:53] | Tree Kyomoon: | God no |
[11:53] | Gareth Ellison: | it should be client side OR server side |
[11:53] | Morgaine Dinova: | Zha: you envisage clients talking to asset servers directly in the new arch then? |
[11:53] | Gareth Ellison: | Morgaine: that should be a duh |
[11:53] | Tree Kyomoon: | I expect so, yes, Morgaine |
[11:53] | Morgaine Dinova: | Exactly |
[11:53] | Tree Kyomoon: | Scaling demands it |
[11:53] | Morgaine Dinova: | Jeez! |
[11:54] | Tree Kyomoon: | Also security |
[11:54] | Morgaine Dinova: | You guys are talking at cross purposes. |
[11:54] | Tree Kyomoon: | I don't think so |
[11:54] | Tree Kyomoon: | At the archiectural level, |
[11:54] | Tree Kyomoon: | we define the pattern on how you get to asset lists |
[11:54] | Gareth Ellison: | i think they're both aspects of the same feature |
[11:54] | Tree Kyomoon: | Which are jus sets of URLs |
[11:55] | Tree Kyomoon: | In fact, and the peopel who want to do lots of asset managing on thier web pages will love this |
[11:55] | Tree Kyomoon: | The asset servers should be fully norml, boring web service hosts |
[11:55] | Gareth Ellison: | another "duh" |
[11:55] | Tree Kyomoon: | So, I can get a acapability to an asset serer hosting assets I own |
[11:55] | Morgaine Dinova: | OK, you're talking at the resource level then, that's why there was one yes and one no. We really need diagrams, and to know what kind of view we're talking about. |
[11:55] | Tree Kyomoon: | yes, we do. |
[11:55] | Tree Kyomoon: | I can see what I'm doing this weekend in between playing with the kids |
[11:56] | Gareth Ellison: | <sterotypical american-type voice>have you like seen OpenAsset?</stereotype> |
[11:56] | Tree Kyomoon: | So.. asset services get used.. however people want to. I can see two or three stereotypical use patterns |
[11:56] | Gareth Ellison: | Zha: OpenAsset is pure HTTP |
[11:57] | Gareth Ellison: | the asset server used in OGS |
[11:57] | Saijanai Kuhn: | raises his ahnd about local assets again: user-created xml files, local DB records, etc, should be included in this mix |
[11:57] | Tree Kyomoon: | Sims getting objects to simulate with, and clients getting (mostly) handles of objects to manage thier invenotry and do things like pass copies of assets to other users |
[11:57] | Tree Kyomoon: | Saij? |
[11:57] | Gareth Ellison: | the sim turns it into UDP packets after grabbing it over HTTP |
[11:57] | Tree Kyomoon: | A local object, has a URL, yes? |
[11:57] | Saijanai Kuhn: | right, that's what I suggested: local host be an allowed server |
[11:57] | Tree Kyomoon: | Now.. if you want to host an object so an arbitrayt sim can get at it |
[11:57] | Gareth Ellison: | Zha: and clients still just getting ObjectUpdate stuff? |
[11:57] | Morgaine Dinova: | I don't know, I asked Tess to explain local representation, but she didn't. |
[11:57] | Gareth Ellison: | the old UDP packets |
[11:58] | Morgaine Dinova: | Hell of a lot of unknowns |
[11:58] | Tree Kyomoon: | Then you need to serve it up to the other sevices |
[11:58] | Gareth Ellison: | Saijanai: firewall issues |
[11:58] | Tree Kyomoon: | So.. |
[11:58] | Tree Kyomoon: | In the totally local case |
[11:58] | Gareth Ellison: | a massive % of the SL population is NATed on home connections |
[11:58] | Tree Kyomoon: | I can run my private sim, private asset server, and client |
[11:58] | Tree Kyomoon: | But.. |
[11:58] | Tree Kyomoon: | In 90% |
[11:58] | Tree Kyomoon: | (Here we sync) |
[11:58] | Tree Kyomoon: | of the cases, you'll want to in fact push those up to your ISP |
[11:59] | Gareth Ellison: | which in the short term will be LL |
[11:59] | Tree Kyomoon: | Because, and I can see Morgaine about to type this |
[11:59] | Tree Kyomoon: | You don't want to be slashdotted at home |
[11:59] | Saijanai Kuhn: | why does a firewall create issues for local host? (not arguing, just confused) |
[11:59] | Gareth Ellison: | heh |
[11:59] | Morgaine Dinova: | I'm NAT'd on ADSL and double NAT'd on cable, lol. Yeah, NAT isn't disappearing any time soon, until IPv6 that is |
[11:59] | Gareth Ellison: | Saijanai: it doesn't - but you don't want your assets only for localhost |
[11:59] | Tree Kyomoon: | Because the firewall blocks fromn responding to random hosts on port 80, of the localhost |
[12:00] | Saijanai Kuhn: | you want CERTAIN assets for local host |
[12:00] | Tree Kyomoon: | From the outside, you're cutoff |
[12:00] | Tree Kyomoon: | Right, but note Saij, if your tee shirt has a texture on a local host |
[12:00] | Morgaine Dinova: | It's a pull architecture, nobody is going to be opening any connection to the client |
[12:00] | Tree Kyomoon: | then if you want *ANYONE* else to see it |
[12:00] | Saijanai Kuhn: | some things you want immediately, like my keyword list, or the notes you've made about friends or places you've been |
[12:00] | Tree Kyomoon: | then the capability hosting it |
[12:00] | Tree Kyomoon: | has to be one that other people can touch |
[12:00] | Tree Kyomoon: | not localhost |
[12:01] | Tree Kyomoon: | The Arhcitecture Morgaine, will say, "Get the asset from this caability" |
[12:01] | Tree Kyomoon: | if it is onyour peronsal home machine, behind your firewall, most peopel will see 404s. |
[12:01] | Tree Kyomoon: | and will tell you you suck |
[12:01] | Tree Kyomoon: | But. if you want to do a local build, on a pockety sim you host |
[12:01] | Tree Kyomoon: | just run a local asset sever copy |
[12:02] | Saijanai Kuhn: | anything you want to search through needs to be on the lcal client |
[12:02] | Saijanai Kuhn: | I'm talking about client-side stuff, not sim stuff |
[12:02] | Tree Kyomoon: | A copy of it. |
[12:02] | Tree Kyomoon: | Not the assets |
[12:02] | Tree Kyomoon: | So.. Get the list of assets, grovel over it locally as much as you want |
[12:02] | Saijanai Kuhn: | you've defined an asset as something that has to be verified by SOME OTHER computer before it is passed on to you |
[12:02] | Tree Kyomoon: | But the assets need to be out in the cloud |
[12:02] | Tree Kyomoon: | Newp |
[12:03] | Tree Kyomoon: | The asset is a URL |
[12:03] | Saijanai Kuhn: | I'm saying that SOME ASSETS don't fit that |
[12:03] | Tree Kyomoon: | T *use* it |
[12:03] | Tree Kyomoon: | to Use it. |
[12:03] | Morgaine Dinova: | This is all done through the TCP session which the client has opened to the server end though. Now that's easy when there is one server-side endpoints, like on a sim, but it's no longer easy if you expect the client to talk to every REST host in the grid. There could be any number |
[12:03] | Tree Kyomoon: | you may need to pass a cert |
[12:03] | Tree Kyomoon: | use a capabiltiy |
[12:03] | Saijanai Kuhn: | sighs |
[12:03] | Tree Kyomoon: | But lets backup a second |
[12:03] | Tree Kyomoon: | I think Siaj is saying what about things I create inside the client |
[12:04] | Tree Kyomoon: | I don't think those are assets |
[12:04] | Saijanai Kuhn: | to be used ONLY inside that client |
[12:04] | Tree Kyomoon: | They have no public exposure |
[12:04] | Saijanai Kuhn: | are those assets? |
[12:04] | Tree Kyomoon: | I don't create URLs to files on my laptop |
[12:04] | Gareth Ellison: | i really think that we need to aggregrate a lot of this - being able to proxy stuff to one "asset relay" is very good for example |
[12:04] | Saijanai Kuhn: | if not, then the GUI has to be special-cased to handle them |
[12:04] | Tree Kyomoon: | or rows in my DB |
[12:04] | Tree Kyomoon: | Ah |
[12:04] | Saijanai Kuhn: | that's the issue with the LLInventory* classes right now |
[12:04] | Lily Argus: | But the usecase was to do things while on train ... |
[12:04] | Tree Kyomoon: | Sure |
[12:04] | Lily Argus: | so how do i do that on a local copy on my laptop? |
[12:04] | Tree Kyomoon: | Deep pause |
[12:04] | Tree Kyomoon: | Ah |
[12:05] | Tree Kyomoon: | Excellent question Lily |
[12:05] | Morgaine Dinova: | They can be modelled as REST resources too, but I don't think we're actually discussing that, since nothing in the server will be trying to gain access to the client's assetts. It's a pull architecture |
[12:05] | Tree Kyomoon: | So.. Local disocnnected |
[12:05] | Tree Kyomoon: | For a moment |
[12:05] | Tree Kyomoon: | If I want that to work, I need to have copies of the assets. No way aroudn that. |
[12:05] | Tree Kyomoon: | Just like if I want to edit a huge treee of HTML, from a sever, I pull a copy to edit it when I fly. |
[12:05] | Lily Argus: | But I create new stuff... |
[12:05] | Lily Argus: | so what then? |
[12:06] | Saijanai Kuhn: | and some assets are never to be shared with others, but are still useful to the person |
[12:06] | Tree Kyomoon: | So.. |
[12:06] | Tree Kyomoon: | I have a speical asset server |
[12:06] | Morgaine Dinova: | Well you can't expect the TCP-level connectivity to be bilaterally symmetric. That will never fly on the existing net. |
[12:06] | Tree Kyomoon: | Which from the clients POV is just another one |
[12:06] | Saijanai Kuhn: | I'm merely pointing out that "local" assets need to be addressed, either as "assets" or as some other "kind of thing" |
[12:06] | dibbs Dovgal: | That is my question about how much of the asset ends up in teh space. |
[12:07] | Tree Kyomoon: | Yes, Saij, but thigs which aren't addresable, aren't URLs, and probably aren't assets. Handles, or som such client side notion |
[12:07] | Tree Kyomoon: | Local. |
[12:07] | Tree Kyomoon: | Locla |
[12:07] | Gareth Ellison: | which assets are local only? |
[12:07] | Tree Kyomoon: | Focus Zha. Focus |
[12:07] | Saijanai Kuhn: | I flashedon "local host" as fitting the model. erhaps they won't |
[12:07] | Tree Kyomoon: | They don't. |
[12:07] | Tree Kyomoon: | Localhost implies that your'e acting as service |
[12:07] | Tree Kyomoon: | Which we will in the locla copy case. |
[12:07] | Tree Kyomoon: | If I can stay on track |
[12:07] | Tree Kyomoon: | So... |
[12:07] | Tree Kyomoon: | One notion |
[12:07] | Tree Kyomoon: | very strawman |
[12:07] | Tree Kyomoon: | I'm braindumping here |
[12:07] | Morgaine Dinova: | Saij: addressed yes, but through the medium of an existing client-server TCP connection which the client has opened previously to the server .... NEVER the othe way around. |
[12:07] | Tree Kyomoon: | I make a service, which is my "local copy" |
[12:07] | Gareth Ellison: | go for it |
[12:07] | Saijanai Kuhn: | for your oiwn prviate stuff that never sees the light of day to anyone else unless you explicitly export it as something else |
[12:08] | Tree Kyomoon: | The local asset service behaves, to the client, and a local simhost I run just like any other |
[12:08] | Lily Argus: | So how do I create things disconnected... all I do has some dummy ids and they get 'uploaded' as soon as I connect to the grid? |
[12:08] | Tree Kyomoon: | But.. it is really alocal cache |
[12:08] | Tree Kyomoon: | So. |
[12:08] | Tree Kyomoon: | Yep Illy |
[12:08] | Tree Kyomoon: | We go about that route |
[12:08] | Tree Kyomoon: | I populate my local cache, and muy local sim copy with public assets I might want to use |
[12:08] | Gareth Ellison: | offline sandbox i smell |
[12:09] | Tree Kyomoon: | When i create new assets, they get stored there |
[12:09] | Saijanai Kuhn: | but some things you want to stay local at all times, both for privacy issues, and because you don't want to spend the extra time talking to an external asset server |
[12:09] | Tree Kyomoon: | It then needs to do a sync with the public world when it can |
[12:09] | Tree Kyomoon: | Now.. Here's what's sticky |
[12:09] | Morgaine Dinova: | We're not talking about a local grid at this point, just a viewer. |
[12:09] | Gareth Ellison: | i smell an offline sandbox very strongly |
[12:09] | Lily Argus: | Gareth: that is the usecase of... er zero? linden... |
[12:09] | Tree Kyomoon: | Morgaine.. |
[12:09] | Gareth Ellison: | i think it's Zero's |
[12:09] | Tree Kyomoon: | I can't do a local viewer without assets to view
??? |
[12:09] | Gareth Ellison: | "bob's garage" or something |
[12:09] | Gareth Ellison: | or inside the viewer |
[12:09] | Lily Argus: | yes |
[12:09] | Saijanai Kuhn: | I'm talking about MY special case of a keyword lookupu table, or the more general case of a set of searchable notecard |
[12:10] | Tree Kyomoon: | Saij, those are inside the client artifacts |
[12:10] | Gareth Ellison: | if i can just grab this conversation by the throat for a minute..... |
[12:10] | Tree Kyomoon: | Important but I don't think that they ever show up in the arhcietcture |
[12:10] | Tree Kyomoon: | Because nobody else can ever see them |
[12:10] | Gareth Ellison: | a nice idea is to copy the OSMP a bit and have users login and see their own local sim at first |
[12:10] | Tree Kyomoon: | Go Gareh |
[12:10] | Gareth Ellison: | like the construct in the matrix |
[12:10] | Saijanai Kuhn: | the question is: should we deal with them as local host assets or create some other facility to handle them? |
[12:10] | Morgaine Dinova: | Zha: until a viewer connects to a world, there is no world to view. It doesn't even have any objects to place on its scenegraph, |
[12:10] | Gareth Ellison: | local assets created there are only uploaded optionally |
[12:10] | Tree Kyomoon: | Wel.. Morgaine, right. |
[12:11] | Morgaine Dinova: | Call me Morg :-) |
[12:11] | Tree Kyomoon: | So.. I put up local (on my laptop) services for it tot talk to |
[12:11] | Tree Kyomoon: | Else it is really boring |
[12:11] | Gareth Ellison: | doing it that way could tie into web-like 3D worlds |
[12:11] | Gareth Ellison: | you could be an anon user and download assets only, talk to a sim anonymously |
[12:11] | Tree Kyomoon: | So.. When i'm on the train, I boot up my local sim |
[12:11] | Gareth Ellison: | no uploads etc |
[12:11] | Gareth Ellison: | i think me and Zha are talking about the same thing in different ways again |
[12:11] | Gareth Ellison: | heh |
[12:12] | Saijanai Kuhn: | and I'm off in the ozone |
[12:12] | Lily Argus: | :p |
[12:12] | Tree Kyomoon: | I think so Gareth |
[12:12] | Lily Argus: | Saijinai. haha |
[12:12] | Morgaine Dinova: | Yes, it's all very interesting to have a local autonomous world, but you're missing the point: that's separate functionality. The viewer has to be factored out from it. |
[12:12] | Tree Kyomoon: | Note: The client only ever talks to services one way, which we define here |
[12:12] | Gareth Ellison: | go for it Zha |
[12:12] | Tree Kyomoon: | That's the core archieture design |
[12:12] | Gareth Ellison: | yeah, can't get sidetracked off like that Morgaine |
[12:12] | Tree Kyomoon: | The client can't really do more |
[12:12] | Saijanai Kuhn: | that's why I'm suggesting though: that we fit the "locally created owned and operated data" into the asset model, so the viewer has to deal with only one kind of data stream |
[12:13] | Tree Kyomoon: | Saij |
[12:13] | Gareth Ellison: | i'm thinking though that to create local assets you need a local sim |
[12:13] | Tree Kyomoon: | I don't know about a sim |
[12:13] | Gareth Ellison: | which is almost certainly going to lead to some kind of coupling |
[12:13] | Tree Kyomoon: | Asset sevrer fo rsure |
[12:13] | Tree Kyomoon: | If the asset server design is just a web service |
[12:13] | Saijanai Kuhn: | a sim that consists, in the case of my keyword list, as an xml-file parser |
[12:13] | Gareth Ellison: | even if the viewer just starts up a seperate binary which is shipped with it |
[12:13] | Lily Argus: | thinks Zha has already the whole thingy in her mind and only needs to tell Gareth what's in there and then he's going to code it in a week. :p |
[12:13] | Gareth Ellison: | note that it doesn't have to be a mandatory protocol feature |
[12:14] | Tree Kyomoon: | I can run it on my laptop |
[12:14] | Gareth Ellison: | LOL Lily |
[12:14] | Tree Kyomoon: | and just use web services to get at it |
[12:14] | Tree Kyomoon: | I *may* chose to run the client, and a sim, if thats what i want to do |
[12:14] | Gareth Ellison: | IS running it in a crap form on his desktop |
[12:14] | Gareth Ellison: | want server logs? |
[12:14] | Gareth Ellison: | :) |
[12:14] | Morgaine Dinova: | This is why we badly need to depict what parts we're talking about. The discussion is moving around all over the place ... talking about local worlds just made it worse. |
[12:14] | Lily Argus: | =D |
[12:14] | Gareth Ellison: | ok, local sim == another sim |
[12:14] | Gareth Ellison: | we don't care where sims are |
[12:14] | Tree Kyomoon: | Well, Morgaine, notice that in the AWG model, local/global |
[12:15] | Gareth Ellison: | let's talk pure protocol |
[12:15] | dibbs Dovgal: | I think we should select one portion of this topic, and attempt to come to some conclusiono about that. |
[12:15] | Tree Kyomoon: | becomes moot |
[12:15] | Saijanai Kuhn: | I'm not even talking about local worlds. Just local bits of data that need to go into the server at some point. The question is: are these assets or not? |
[12:15] | dibbs Dovgal: | Otherwise we will just talk around in circles here. |
[12:15] | Gareth Ellison: | YES |
[12:15] | Saijanai Kuhn: | go into the CLIENT at some point |
[12:15] | Gareth Ellison: | that simplifies this whole offtrack discussion |
[12:15] | Morgaine Dinova: | Zha: sure, but not moot enough to confuse viewers with local worlds :-) |
[12:15] | Gareth Ellison: | anything local is a mini version of it's grid counterpart |
[12:15] | Tree Kyomoon: | Ah. |
[12:15] | Tree Kyomoon: | Better be moot |
[12:15] | Gareth Ellison: | we DO NOT CARE where a grid component is |
[12:15] | Gareth Ellison: | localhost or remote |
[12:15] | Saijanai Kuhn: | regardless of wehter or not they are made available to any otehr cliehnt, any sim, or any other server of any kind |
[12:15] | Tree Kyomoon: | Viewers with local worlds simply happen to have a nice |
[12:15] | Gareth Ellison: | protocols people |
[12:15] | Gareth Ellison: | none of them care |
[12:16] | Tree Kyomoon: | coherent subset of services so they can run a little pocket |
[12:16] | Gareth Ellison: | slaps you all with the Tao of IETF |
[12:16] | Tree Kyomoon: | the architecture |
[12:16] | Tree Kyomoon: | As Gareth just slapped us |
[12:16] | Morgaine Dinova: | Gareth: indeed, it can be anywhere .... BUT NOT INSIDE THE VIEWER :-) It's logically separate, and physically too. |
[12:16] | Saijanai Kuhn: | its the problem with TObjects in Croquet. You can't have a truely private object in Croquet |
[12:16] | Tree Kyomoon: | doesn't freaking care |
[12:16] | Tree Kyomoon: | No |
[12:16] | Tree Kyomoon: | Not in the viewer |
[12:16] | Tree Kyomoon: | The viewer sees the world through the pewrspecive of the web services it invokes |
[12:16] | Tree Kyomoon: | Just like if I load a local web page, |
[12:17] | Saijanai Kuhn: | right, so I was saying: extend that model to data the viewer gets that isnt' part of the current asset definition |
[12:17] | Tree Kyomoon: | Once the services hand off the data to the clienbt |
[12:17] | Tree Kyomoon: | which *may* be a viewer |
[12:17] | Morgaine Dinova: | Sure, it talks to connectors. But a connector on the local PC is still going to be separate from the viewer. |
[12:17] | Saijanai Kuhn: | there are two kinds of data: stuff that is stored on an asset server and stuff that isn't |
[12:17] | Tree Kyomoon: | the archietcture, just like HTTP |
[12:17] | Gareth Ellison: | on the same machine as the viewer |
[12:17] | Tree Kyomoon: | stops |
[12:17] | Tree Kyomoon: | and the client, does what it wants to it |
[12:17] | Gareth Ellison: | Saijanai: KISS |
[12:18] | Saijanai Kuhn: | can we extend "asset server" to include stuff that will never be seen by anyone else? |
[12:18] | Tree Kyomoon: | HTTP doesn't tell me how to render my HTML |
[12:18] | Tree Kyomoon: | I'd hate to |
[12:18] | dibbs Dovgal: | lol |
[12:18] | Lily Argus: | Into the local sandbox I can take a copy of everything I own with me inside the grid, right? As it is one way or assets. Those with existing unique id grid-->local and those with only local id yet local-->grid? |
[12:18] | Tree Kyomoon: | The arhcitecture tells me how to get the assets |
[12:18] | Tree Kyomoon: | the markup tells me how to render |
[12:18] | Tree Kyomoon: | the inetraction patterns tell me how to affect other things |
[12:18] | Gareth Ellison: | bbl |
[12:18] | Tree Kyomoon: | We keep them all decoupled |
[12:18] | Gareth Ellison: | i'll idle |
[12:18] | Tree Kyomoon: | So.. |
[12:18] | Tree Kyomoon: | Lily |
[12:19] | Tree Kyomoon: | Here's the question.. and it's actually not a SL or 3d intenret questoin, it's a WWW question |
[12:19] | Saijanai Kuhn: | I thought that defining "local host" as a special server kept it decpled. Apparently not, or I'm just not communicating what I see as potentially a large class of data |
[12:19] | Tree Kyomoon: | How do we deal with local caches |
[12:19] | Morgaine Dinova: | Damn, wish we could doodle on the whiteboard |
[12:19] | Tree Kyomoon: | OK |
[12:19] | Tree Kyomoon: | OK Siaj, quick digressoin |
[12:19] | Tree Kyomoon: | localhost, as you keep saying it |
[12:20] | Tree Kyomoon: | makes me think of the loopback port on the the local box |
[12:20] | Tree Kyomoon: | if so.. That implies a Web Service call. A capbility |
[12:20] | Tree Kyomoon: | And stuff we access via the archietcture |
[12:20] | Tree Kyomoon: | I *think* |
[12:20] | Tree Kyomoon: | you're on something very different |
[12:20] | Lily Argus: | ok |
[12:20] | Tree Kyomoon: | right now, becuae LL is one horirble glom |
[12:21] | Tree Kyomoon: | they constantly confuse a UUID with a refernece to htings |
[12:21] | Tree Kyomoon: | The viewer, in the next spin, is just a non privlegded consumer of web services |
[12:21] | Lily Argus: | They've never used OS/2. :D |
[12:21] | Gareth Ellison: | people get logs on wiki |
[12:21] | Saijanai Kuhn: | OK, I was using local host as the URL for a local data server that interacts wtih teh client |
[12:21] | Gareth Ellison: | i'm idling but i ain't reading right now |
[12:21] | Gareth Ellison: | by e for now |
[12:22] | Tree Kyomoon: | So.. from the architetcure, all you ever see are the web exposed assets |
[12:22] | Saijanai Kuhn: | to KISS from the client's perspective: all data comes in through teh asset server, but some assets are never sharred anywhere |
[12:22] | Tree Kyomoon: | Well, form the client's perspective.. |
[12:22] | Saijanai Kuhn: | those are "local host" you have to explicitly copy them into the generic assets that ARE shared to give them to others |
[12:23] | Tree Kyomoon: | There are assets (named URL thngies) |
[12:23] | Tree Kyomoon: | If it doesn't have URL it is outside the archiecture. |
[12:23] | Tree Kyomoon: | Oooh. |
[12:23] | Tree Kyomoon: | I thnk that's true as a principle |
[12:23] | Tree Kyomoon: | So, I may habve named data that is about to be sent to be published as an asset |
[12:24] | Tree Kyomoon: | But.. it isn't one, until it is actually in web space |
[12:24] | Tree Kyomoon: | I can create an asset with no client at all |
[12:24] | dibbs Dovgal: | How schroedingerian |
[12:24] | Morgaine Dinova: | Well we can have any number of hosts defined and accessed through URI, both on the same PC as the viewer or elsewhere, local or remote, maybe many machines on local LAN. I don't think we need to worry *where* ... it's all just an IP. |
[12:24] | Tree Kyomoon: | just do a publish to an asset server. it returns me the URL for the asset I've published |
[12:24] | Tree Kyomoon: | Saij crashed, mid rant from me |
[12:24] | Tree Kyomoon: | How rude |
[12:25] | dibbs Dovgal: | lol |
[12:25] | Tree Kyomoon: | So.. Lily |
[12:25] | Morgaine Dinova: | You DoS'd him :-) |
[12:25] | Tree Kyomoon: | I have the same probelm today |
[12:25] | Lily Argus: | So the items i create in bobs garage have to be stored differently from those I cashed via asset-squid for local use ...? |
[12:25] | Tree Kyomoon: | with a copy of a web page |
[12:25] | Turtle: Hello,: | Avatar! |
[12:25] | Lily Argus: | cahced |
[12:25] | Lily Argus: | cached |
[12:25] | Morgaine Dinova: | No, they're simply at a different URI, stored the same way. |
[12:25] | Tree Kyomoon: | I take my copy of my internal project page. It is full of links like |
[12:25] | Saijanai Kuhn: | how's that for irony. Everything that Zha said to me was lost because I froze as she started speaking |
[12:26] | Morgaine Dinova: | I find Zha's words rivetting too :-))) |
[12:26] | Tree Kyomoon: | ["http://w3.watson.ibm.com/~zha/sub_page/page5"] |
[12:26] | Lily Argus: | How do I build things then, that I have in my cache? |
[12:26] | Lily Argus: | er |
[12:26] | Tree Kyomoon: | So.. if I want to view it while hacking on it, I copy it, and do a gross tcl sciprt |
[12:26] | Saijanai Kuhn: | ? non valid url |
[12:26] | Lily Argus: | build things with items i have in my cache only i mean |
[12:26] | Saijanai Kuhn: | could someone send me what Zha said when she responded to me? |
[12:27] | Morgaine Dinova: | Lily: the items in your cache are not assets or resources. They're an optimization. |
[12:27] | Tree Kyomoon: | to chaneg all of those to "http/filepath" |
[12:27] | Tree Kyomoon: | and work on it in that form |
[12:27] | Tree Kyomoon: | then do a horrible little tcl script to re-vert them to the publishable form and publish them |
[12:27] | dibbs Dovgal: | ost go: I will read the wiki and be better prepared to contribute next time around. |
[12:27] | Saijanai Kuhn: | I'm sure she satisifed everything that I was screaming about but it would be nice to actually read it |
[12:28] | Morgaine Dinova: | Lily: in other words, you have to place a proper URI request to the right place, and only then will the cached item appear by magic as a shortcut. |
[12:28] | Tree Kyomoon: | That's because we're kind of hopeless on copy names in RFC DNS name space |
[12:28] | Morgaine Dinova: | You can't manipulated cached items as if they were primary resources. |
[12:28] | Tree Kyomoon: | The alternatgive, in web page land |
[12:28] | Tree Kyomoon: | is to fake it |
[12:28] | Tree Kyomoon: | I have done this. Its awful |
[12:28] | Tree Kyomoon: | Run a local web server. |
[12:28] | Tree Kyomoon: | Copy my pages to it |
[12:29] | Tree Kyomoon: | temp chage my machines anme to "w3.watson.ibm.com" while I'm flying |
[12:29] | Tree Kyomoon: | Edit/publish test, etc. |
[12:29] | Morgaine Dinova: | Oh, sure, we can dive under the covers and dig stuff out from the cache ... but that's not in the model :-) That's us being clever :-) |
[12:29] | Tree Kyomoon: | Then.. copy them back |
[12:29] | Tree Kyomoon: | Yep |
[12:29] | Tree Kyomoon: | So... |
[12:29] | Tree Kyomoon: | We can be al itlte more clever |
[12:29] | Tree Kyomoon: | Two issues |
[12:29] | Tree Kyomoon: | Let me try with Siaj again |
[12:30] | Tree Kyomoon: | It isn't an asset, or anything the architecture shoudl think about too much, until we have a URL (and maybe a URN) to talk about |
[12:30] | Morgaine Dinova: | Yes |
[12:30] | Tree Kyomoon: | So.. in fact, up till I push it to an asset server, what I have is a "proto asset" just like, until I push it onto a web server, I don't have |
[12:30] | Tree Kyomoon: | a web page, I have a file with some HTML in it |
[12:31] | Tree Kyomoon: | Once it is on a web server, it, in conjunction with the server |
[12:31] | Tree Kyomoon: | becomes ana ddreessable thing |
[12:31] | Tree Kyomoon: | So, once we push it to the assetr server, it becomes a named, manipulable asset |
[12:31] | Morgaine Dinova: | Indeed. Just like you don't have a texture in SL currently, until LL has turned your image into an asset. |
[12:31] | Tree Kyomoon: | NOW |
[12:31] | Tree Kyomoon: | Exactly Morg, you have a jpeg or bmp |
[12:31] | Tree Kyomoon: | NOW |
[12:31] | Morgaine Dinova: | Yep |
[12:31] | Tree Kyomoon: | There are going to be |
[12:31] | Tree Kyomoon: | tons |
[12:31] | Tree Kyomoon: | tons of things |
[12:32] | Tree Kyomoon: | we handle inside client programs which work with this archie=tetcure, such as |
[12:32] | Tree Kyomoon: | what we currently call the viewer |
[12:32] | Tree Kyomoon: | that wish to name and manipulate things like that |
[12:32] | Tree Kyomoon: | We don't store them |
[12:32] | Tree Kyomoon: | We don't see them |
[12:32] | Tree Kyomoon: | We can't care about them |
[12:32] | Tree Kyomoon: | That's internal to a client |
[12:32] | Tree Kyomoon: | Not our business |
[12:32] | Morgaine Dinova: | Yep |
[12:33] | Tree Kyomoon: | (Now there is a whole lovely thing, seperate from the AWG which tells us how to intepret these assets internall to bview them) |
[12:33] | Tree Kyomoon: | (ie how to map a scengraph to a OpenGL rendering) |
[12:33] | Tree Kyomoon: | How to merge a tone of content into a world view. That's another kettle of fish |
[12:33] | Tree Kyomoon: | We're worried baout getting them to/from sim, services and clients |
[12:33] | Tree Kyomoon: | And.. Now, to loop back ti Lily |
[12:34] | Tree Kyomoon: | Who is still wondering how to run it on the train |
[12:34] | Tree Kyomoon: | I think.. |
[12:34] | Tree Kyomoon: | Hop |
[12:34] | Tree Kyomoon: | (hope |
[12:34] | Tree Kyomoon: | ) |
[12:34] | Tree Kyomoon: | we can be a little clever |
[12:34] | Tree Kyomoon: | But.. only in terms of making the use case work, not adding any feautrues |
[12:34] | Tree Kyomoon: | I can, and should be able to create a local asset server |
[12:34] | Tree Kyomoon: | NOT in the viewer |
[12:35] | Morgaine Dinova: | Clever, but not in the client. If you want an offline world, you run an offline world. It's unrelated to the client. The client just connects to it. |
[12:35] | Tree Kyomoon: | Asset server. which can be used to cache assets into the lcoal space |
[12:35] | Tree Kyomoon: | yes Morg |
[12:35] | Tree Kyomoon: | totally disjoint |
[12:35] | Gareth Ellison: | wow, that was quicker than i thought |
[12:35] | Tree Kyomoon: | Happens to be on my laptop |
[12:35] | Tree Kyomoon: | but totally seperate service |
[12:35] | Lily Argus: | yep, still wondering |
[12:35] | Tree Kyomoon: | I can then.. if I am really clever, go to my sim, and say 'Hey, I'd like a snapshot of you" |
[12:36] | Tree Kyomoon: | Get a set of asets, which it holds (if I have permission of course) |
[12:36] | Saijanai Kuhn: | I still think we're tnot talking about the same thing |
[12:36] | Tree Kyomoon: | I can copy those down onto my local asset server, I can rename them, in a clever way) |
[12:36] | Tree Kyomoon: | Nope |
[12:36] | Tree Kyomoon: | Because Saij, none of those assets in my local asset server are in the cliebnt)
??? |
[12:37] | Lily Argus: | yeah, so I can NOT do any prebuilding of prim heavy constructs locally because I cannot get them into the grid at last? |
[12:37] | Saijanai Kuhn: | There are a ton of possible bits of data that I might want to manimpulate within the client, store on the client, and have speedy access to, but don't want to have to go to an external computer (or even a full blown sim) to validate before displaying and manipulating in my client |
[12:37] | Morgaine Dinova: | Or even better ... you just grab its current ongoing snapshot, which it is continually dumping for persistence/backup. |
[12:37] | Tree Kyomoon: | No |
[12:37] | Tree Kyomoon: | Didn't ay that |
[12:37] | Tree Kyomoon: | *say |
[12:37] | Tree Kyomoon: | When I am reocnnected, |
[12:37] | Tree Kyomoon: | I take my asset server, and the 500 new heavy assets I created, and copy them back to the public grid |
[12:37] | Tree Kyomoon: | I end up creating 500 *new* assets |
[12:38] | Tree Kyomoon: | I may even do an "upload sync" step to publish them back to the sim |
[12:38] | Saijanai Kuhn: | the "asset server" in this case, might live as a plug-in in the client, or as a spearate application I talk to vai local host web services, or something I haven't thought of |
[12:38] | Lily Argus: | Hm. |
[12:38] | Morgaine Dinova: | It's no different to PDA syncing |
[12:38] | Rex Cronon: | hello everybody. i just logged in |
[12:38] | Lily Argus: | What about no-copy assets? |
[12:38] | Lily Argus: | I cant use them then for that? |
[12:38] | Gareth Ellison: | heh, hi Rex |
[12:38] | Tree Kyomoon: | DRM. |
[12:38] | Tree Kyomoon: | Not technical |
[12:38] | Tree Kyomoon: | But.. Heh. |
[12:38] | Saijanai Kuhn: | All I am saing is that there are times when you want immediate acces to the data without having to go off-computer to validate it |
[12:38] | Tree Kyomoon: | What data Saij |
[12:39] | Tree Kyomoon: | if you want to fetch a local copy of an asset |
[12:39] | Lily Argus: | Why not? Then the local sandbox is practically useless, |
[12:39] | Tree Kyomoon: | DRM |
[12:39] | Gareth Ellison: | why are we still talking as if it's our concern where the hell an asset server lives? |
[12:39] | Lily Argus: | Say I am a builder and have some no-copy scripts from someone I need for my building. |
[12:39] | Saijanai Kuhn: | libraries of scripts, my keyword file, searchable notecards, locally-created prims and sculptmaps, etc |
[12:39] | Morgaine Dinova: | Lily: DRM is dead, so all those perms will be treated as "best endeavour, and keep your fingers crossed". |
[12:39] | Lily Argus: | Then I am stuck with building on grid? |
[12:39] | Tree Kyomoon: | The archttetcure won't dpeak to DRM more than to allow you to mark it |
[12:39] | Tree Kyomoon: | No Lily |
[12:40] | Gareth Ellison: | i think an implied copy license for certain tasks is a much |
[12:40] | Gareth Ellison: | on the legal side it could be called fair use |
[12:40] | Tree Kyomoon: | but.. If you want to respect people's rights and your sim does, you may have to buy copies of the textures which say "can be sandboxed" |
[12:40] | Lily Argus: | Sorry if I ask those simple questions, but that is things people will go ask us later. .) |
[12:40] | Tree Kyomoon: | Possibly Gareth |
[12:40] | Lily Argus: | ah okay. |
[12:40] | Tree Kyomoon: | my personal DRM |
[12:40] | Tree Kyomoon: | position is very clear |
[12:40] | Gareth Ellison: | worth asking an attorney |
[12:40] | Morgaine Dinova: | You have your own world, Lily. Yes, you can only build on a grid (because you need a WORLD), but it's yours. But it's separate from your viewer. |
[12:40] | Lily Argus: | need new permissions for that. |
[12:40] | Tree Kyomoon: | We will mark the rights |
[12:40] | Tree Kyomoon: | Let people know what the creator intended |
[12:41] | Tree Kyomoon: | We will make it possible, at the architecturral level for sevrices and such to know what was asked |
[12:41] | Morgaine Dinova: | Attourneys can't change the laws of physics ... yet. |
[12:41] | Lily Argus: | People will hate it if they cannot just build the way they are used to. .) |
[12:41] | Tree Kyomoon: | We will not freaking get into the DRM battles |
[12:41] | Saijanai Kuhn: | think about a more tpical SL type use: I have a great new plug-in that manipulates prims in a cool way. I can either work with the asset server using the existing model, or I can keep that prim totaly separate in a mini-sandbox that is basically just a 3D draing pulugin, and then publish it |
[12:41] | Tree Kyomoon: | We will make it possible for people to ell when they are sued |
[12:41] | Tree Kyomoon: | tell when they should sue |
[12:41] | Morgaine Dinova: | yell? |
[12:41] | Tree Kyomoon: | Sorry |
[12:41] | Tree Kyomoon: | tell |
[12:41] | Tree Kyomoon: | Eeke |
[12:41] | Morgaine Dinova: | :P |
[12:41] | Tree Kyomoon: | I HATE this topic |
[12:41] | Tree Kyomoon: | We will make it possible for you to tell, hopefuly, |
[12:42] | Lily Argus: | No, i am not into DRM. Just think of doing all DRM compliant. I am an honest SL inhabitant and want to build in my sandbox on my laptop. =) |
[12:42] | Gareth Ellison: | i think that DRM should be forgotten |
[12:42] | Tree Kyomoon: | that someone stole you tecture agianst your wishes |
[12:42] | Gareth Ellison: | do minimal enforcement of DRM |
[12:42] | Tree Kyomoon: | and let you sur |
[12:42] | Tree Kyomoon: | *sue |
[12:42] | Tree Kyomoon: | So.. |
[12:42] | Morgaine Dinova: | I don't know why it flusters you so much, hehe. Maybe you've been at the megacorp too long, lol |
[12:42] | Gareth Ellison: | i.e if it's no-copy don't let people copy it on-grid |
[12:42] | Gareth Ellison: | etc |
[12:42] | Tree Kyomoon: | Yep Gareth |
[12:42] | Gareth Ellison: | anyone with a brain hates DRM |
[12:42] | Tree Kyomoon: | and.. I agree, Lilly sane use allows the texture into your cache |
[12:42] | Tree Kyomoon: | and your local asset server |
[12:42] | Saijanai Kuhn: | I can sort it and manipulate and delete it wihtout ever telling an external sever about it. I t might not even get published on a locally hosted sim |
[12:42] | Gareth Ellison: | it's impractical, unethical, annoying, etc etc |
[12:42] | Tree Kyomoon: | But I am not a lawyer |
[12:42] | Lily Argus: | okay =) |
[12:43] | Tree Kyomoon: | and all that |
[12:43] | Gareth Ellison: | don't make go richard stallman on your ass |
[12:43] | Morgaine Dinova: | "Best endeavour" is the name of the game. Perms are useful, even if the whole thing is based on a fallacy. |
[12:43] | Tree Kyomoon: | I have had richard's spitle on my skin |
[12:43] | Tree Kyomoon: | I have been called exceedinly rude things by him |
[12:43] | Gareth Ellison: | ok, the DRM lecture is over |
[12:43] | Gareth Ellison: | move on |
[12:43] | Morgaine Dinova: | Hahaha, that's why you see red :-) |
[12:43] | Tree Kyomoon: | Nah |
[12:43] | Tree Kyomoon: | I admirte some of his persopecticve |
[12:43] | Tree Kyomoon: | Just think he's overboard |
[12:44] | Tree Kyomoon: | anyway |
[12:44] | Tree Kyomoon: | We should in fact make it incredibly easy to snapshot bits of htthe grid |
[12:44] | Tree Kyomoon: | do local building and r-sync |
[12:44] | Tree Kyomoon: | Way easier than now |
[12:44] | Tree Kyomoon: | And Local sim sandboxing, is likely how we will do it, with local asset services |
[12:44] | Morgaine Dinova: | Let's get back to services. |
[12:44] | Saijanai Kuhn: | sighs |
[12:44] | Tree Kyomoon: | Now. |
[12:45] | Tree Kyomoon: | Saij |
[12:45] | Tree Kyomoon: | Bakc toyour case for a moent |
[12:45] | Gareth Ellison: | his marketing of his ideas is over the top at times but his ideas are great </offtopic> ok, so can we say that all servers are just servers, who cares where they are (localhost or anywhere), and we can download assets at will for sandboxing by certifying "i'm sandboxing" in a client popup dialog (no protocol level stuff) |
[12:45] | Tree Kyomoon: | yes, Gareth |
[12:45] | Tree Kyomoon: | Now Saij |
[12:45] | Gareth Ellison: | then let's say the user starts up a local sim, mirrors a public sim |
[12:45] | Morgaine Dinova: | Gareth: yep |
[12:45] | Tree Kyomoon: | I want your use case |
[12:45] | Gareth Ellison: | ticks a dialog box to say "I agree that i'm a copyright infringing bitch but it's fair use and actually i'm not a bitch for this reason" |
[12:45] | Tree Kyomoon: | see if we can sort out your needs/.intents |
[12:45] | Saijanai Kuhn: | fair enough, but we need to acknowledge that local assets stay local, and that "sandbox" might be a very minimalist thing: a text editor, for example |
[12:46] | Morgaine Dinova: | Gareth :P |
[12:46] | Tree Kyomoon: | Chuckle. |
[12:46] | Gareth Ellison: | then the viewer grabs it all, dumps it to a local sim |
[12:46] | Gareth Ellison: | viewer talks to local sim |
[12:46] | Gareth Ellison: | user builds their crap |
[12:46] | Gareth Ellison: | viewer uploads their crap back to the grid |
[12:46] | Morgaine Dinova: | Sounds excellent. Anything that gives lawyers indigestion is good |
[12:46] | Gareth Ellison: | prokofy nevka rants on her blog |
[12:46] | Gareth Ellison: | everyone forgets it |
[12:46] | Gareth Ellison: | we all laugh at it |
[12:46] | Tree Kyomoon: | Well, Gareth, I think |
[12:46] | Gareth Ellison: | i continue wearing female avs |
[12:46] | Gareth Ellison: | rant over |
[12:47] | Tree Kyomoon: | in fact, the local sim, talks to the local aset server, per the AWG's blessed iteraction paths and the client talks to the locals sim the same ay |
[12:47] | Tree Kyomoon: | *way |
[12:47] | Tree Kyomoon: | but yes. |
[12:47] | Tree Kyomoon: | Saij has a use case |
[12:47] | Tree Kyomoon: | I want to understand it |
[12:48] | Gareth Ellison: | so, err - what are we still standing here for? i want REST specs |
[12:48] | Gareth Ellison: | need some process flows and REST specs then everyone choose what to work on |
[12:48] | Tree Kyomoon: | Getting Saij's use case, talkign about it |
[12:48] | Tree Kyomoon: | then.. I wil go off into /me shudders |
[12:48] | Gareth Ellison: | we need an SVN repo up and we can get this thing working fast |
[12:48] | Morgaine Dinova: | It's not that simple. The local sim may be being visited by people from another grid. That's when the flow patterns get interesting. |
[12:48] | Tree Kyomoon: | powerpoint and pst to the wiki |
[12:48] | Tree Kyomoon: | If the local sim is on the grid, and obeys the AWG rules |
[12:49] | Tree Kyomoon: | then it just works |
[12:49] | Tree Kyomoon: | of coyurse, then it isn't a sanbox anymore |
[12:49] | Gareth Ellison: | local sim not on grid as such - can't accept non-local visitors |
[12:49] | Gareth Ellison: | might download assets the viewer tells it to |
[12:49] | Gareth Ellison: | that's the best mix |
[12:49] | Tree Kyomoon: | The spec will tell you how to build one of those |
[12:49] | Tree Kyomoon: | Uses the pubslihed calls to get servcies from the grid |
[12:50] | Tree Kyomoon: | but doesn't allwo evberyone else in |
[12:50] | Tree Kyomoon: | The spec will shrug |
[12:50] | Tree Kyomoon: | very Mao here. Let thousands of varients bloom |
[12:50] | Gareth Ellison: | the spec says "this is how the viewer talks to a sim or asset servers" |
[12:51] | Gareth Ellison: | let's discuss both the spec and implementation |
[12:51] | Saijanai Kuhn: | here's my idea: a "sandbox" might be exteremly lightweight: a text editor, a drawing/3D app/plugin, etc. The "assets" for this can be accessed and manipulated in inventory but they don't make it even to a local full-blown sim until they are published |
[12:51] | Gareth Ellison: | the spec also says "sims talk to asset servers like this" |
[12:51] | Morgaine Dinova: | No it doesn't ["just work"], it "just collapses". I've been looking at that from the perspective of Brainstorming#Virtualization of regions. There are very interesting flows between the grids, and the caches of each grid ends up caching the other grid's resources. |
[12:51] | Gareth Ellison: | i'm with Saijanai on that |
[12:51] | Tree Kyomoon: | And how the services talk to each other |
[12:51] | Gareth Ellison: | <warning> i am hyper </warning> |
[12:51] | Tree Kyomoon: | Well, Morg, yes, and no |
[12:52] | Tree Kyomoon: | if you put up a tiny little server and connect it to the web via a tiny pipe |
[12:52] | Tree Kyomoon: | it will behave just like the web today |
[12:52] | Tree Kyomoon: | slash dot |
[12:52] | Tree Kyomoon: | BAM |
[12:52] | Tree Kyomoon: | can't repeal the laws of physics |
[12:52] | Tree Kyomoon: | What we *can* do |
[12:52] | Tree Kyomoon: | is make it possible for peopel who are clever |
[12:52] | Tree Kyomoon: | to do the same thinks Akamai does |
[12:52] | Tree Kyomoon: | *things |
[12:52] | Tree Kyomoon: | sheesh |
[12:52] | Gareth Ellison: | the web today handles big loads fine if setup the right way |
[12:52] | Tree Kyomoon: | right |
[12:53] | Morgaine Dinova: | It's not the same [as the web], AT ALL. On the web, there is no concept of one site that you went to, placing a load on another site that you visit. |
[12:53] | Gareth Ellison: | let's leave that up to individual hosting provider setups |
[12:53] | Tree Kyomoon: | And dies if not Gareth |
[12:53] | Tree Kyomoon: | And Morg is right |
[12:53] | Gareth Ellison: | so how do you stop it dieing? |
[12:53] | Gareth Ellison: | caches |
[12:53] | Tree Kyomoon: | Which is why we have to some things to help them |
[12:53] | Tree Kyomoon: | caching a web page |
[12:53] | Tree Kyomoon: | I just copy data |
[12:53] | Gareth Ellison: | yeah - put caches on sims or other parts of the grid |
[12:53] | Tree Kyomoon: | I can't cache a sim |
[12:53] | Gareth Ellison: | let's make that modular |
[12:53] | Tree Kyomoon: | I can cache assets |
[12:53] | Gareth Ellison: | you can cache the assets |
[12:53] | Gareth Ellison: | yes |
[12:54] | Tree Kyomoon: | I can't cache the state |
[12:54] | Morgaine Dinova: | The caches of any one grid continue to operate, even when assets are elsewhere, because those caches are providing power for the residents of the large grid when those residents go visit a small world. |
[12:54] | Tree Kyomoon: | No matter how hard I try, I have some single spots where the melded state is held |
[12:54] | Morgaine Dinova: | REST sounds excellent for this because connectors are transparent |
[12:54] | Gareth Ellison: | the object states can't really be handled by more than one host realistically if you're talking about prims |
[12:54] | Tree Kyomoon: | I can cache evertything else |
[12:54] | Gareth Ellison: | that over complicates physics |
[12:54] | Gareth Ellison: | at least at this stage |
[12:54] | Tree Kyomoon: | Exactly Gareth |
[12:55] | Tree Kyomoon: | I can cache found, assets, textures |
[12:55] | Gareth Ellison: | "allow big iron sites such as LL to cache content from smaller authorative grids" |
[12:55] | Tree Kyomoon: | The fused state |
[12:55] | Gareth Ellison: | use case from the wiki |
[12:55] | Tree Kyomoon: | is the killer |
[12:55] | Morgaine Dinova: | No, not prims, they belong to the visited world. But attachments belonging to the visitors from the larger grid. |
[12:55] | Tree Kyomoon: | especially, as I need to server out the fused state to all the eyeballs watching it |
[12:55] | Tree Kyomoon: | So.. The architecture can, and will |
[12:56] | Tree Kyomoon: | pay a lot of attention to getting the fused state is isolated as posisble, so we can get it and it along on one server, and get as many eyeballs on it |
[12:56] | Tree Kyomoon: | and as many agents in it |
[12:56] | Tree Kyomoon: | as the hardware (and bandwidth) lets us |
[12:56] | Gareth Ellison: | attachments on avatars come from the original home grid, get cached by local grids (where the avatar is) |
[12:57] | Morgaine Dinova: | The fused state only exists in the mind of the beholder. But that fused state is "powered" by all the contributing grids and worlds, depending on where the visitor's resources came from. |
[12:57] | Tree Kyomoon: | and we also need to pay attention to 3d geometrry so that we can make very dense (lots of servers, small realestate) sims and blend them togetehr |
[12:57] | Tree Kyomoon: | I cant' do physics that way Morgaine |
[12:57] | Gareth Ellison: | someone on IRC had a proposal for distributed physics but realistically i think for now we won't be able to get scalability on single regions yet |
[12:57] | Morgaine Dinova: | What's more, that's the only way it *can* work, because otherwise every site has to know the definition of everything |
[12:57] | Tree Kyomoon: | Melding state, which is the core of the physics |
[12:57] | Tree Kyomoon: | is not deeply disributable in 2008 |
[12:58] | Gareth Ellison: | it can be distributed to an extent perhaps if you have lots of cluster nodes with high bandwidth connections to each other |
[12:58] | Morgaine Dinova: | Not physics, that's [handled] the same as prims ... it belongs to the visited world. After all, the visited world might be non-Euclidean, can't expect your home grid to handle it. |
[12:58] | Tree Kyomoon: | I can get you 10,000 aves in a shea staium style space to watch the mets |
[12:58] | Tree Kyomoon: | collapse |
[12:58] | Tree Kyomoon: | but only with very locaql iteraction |
[12:58] | Tree Kyomoon: | on physics |
[12:59] | Tree Kyomoon: | I can evem, with trickery, get you to see a reasonable view of what's farther away then one sim |
[12:59] | Gareth Ellison: | can i draw people back to today please? let's put distributed physics on the future TODO |
[12:59] | Tree Kyomoon: | But.. I can't get 10,000 aves in one sim in one phsyics simulation. No matter how badly you want it |
[13:00] | Rex Cronon: | yes u can |
[13:00] | Morgaine Dinova: | Gareth: what spec are you working to? Have you checked out Project_Motivation? *THAT's* what we're working to. |
[13:00] | Tree Kyomoon: | Deifne "show me what i see from perspective X in relation to yoyu" |
[13:00] | Gareth Ellison: | yay |
[13:00] | Tree Kyomoon: | and I can make it look right, wihtin reason |
[13:00] | Gareth Ellison: | morgaine: yes, but i'm treating sims as units with set upper bounds on connected clients |
[13:00] | Rex Cronon: | if each av is on a rl computer, and it calculates physical interractions |
[13:00] | Gareth Ellison: | assuming the grid itself can be internet-wide |
[13:00] | Morgaine Dinova: | Gareth: then you are not working to the project spec. |
[13:00] | Tree Kyomoon: | Rex, you can't have the bandwidht |
[13:00] | Tree Kyomoon: | sorry |
[13:01] | Tree Kyomoon: | Morgaine you can't have the bandwidfth either |
[13:01] | Tree Kyomoon: | 10,000 aves |
[13:01] | Gareth Ellison: | the project spec is to allow millions instead of 1000s of users and regions |
[13:01] | Gareth Ellison: | multiple users per region is a nice feature but not essential at this stage |
[13:01] | Tree Kyomoon: | We can give you that, with limtiatoins |
[13:01] | Saijanai Kuhn: | how does the XBox VW handle things like physics? They are able to handle collaboraive games with physics. Do they limit such games to small "rooms" or can you go to a full-blown simulator and do WoW level stuff? |
[13:01] | Tree Kyomoon: | As Gareth is saying |
[13:01] | Morgaine Dinova: | Please don't say "We can't". It's our job to find the way to do it. |
[13:01] | Tree Kyomoon: | small rooms |
[13:01] | Tree Kyomoon: | Morgaine Build me a FTL drive |
[13:02] | Gareth Ellison: | let me put it this way |
[13:02] | Morgaine Dinova: | Zha: red herring |
[13:02] | Gareth Ellison: | we can't distribute physics YET |
[13:02] | Tree Kyomoon: | its in that class of problem |
[13:02] | Gareth Ellison: | in the short term |
[13:02] | Gareth Ellison: | in the long term - sure |
[13:02] | Gareth Ellison: | in the long term we'll all be connected directly to our nervous systems! |
[13:02] | Tree Kyomoon: | Gareth, I'm not even sure we can do it in the long term, beyond some limits |
[13:02] | Saijanai Kuhn: | the SL model for the main grid will never allow distributed physics, I think |
[13:02] | Morgaine Dinova: | We are working for the long term: 2 years. You need to stop working to yesterday's spec. |
[13:02] | Tree Kyomoon: | Physics is annoying |
[13:02] | Gareth Ellison: | depends how long the long term is ;) |
[13:02] | Gareth Ellison: | i have a few theoretical ways to distribute physics but each suffers from limits of current bandwidth or computational ability |
[13:02] | Tree Kyomoon: | To do 10.000 aves in a single simulation, I have to either cram them all in one huge unk of iron |
[13:03] | Tree Kyomoon: | (which doesn't work) |
[13:03] | Tree Kyomoon: | or start splirring them |
[13:03] | Tree Kyomoon: | Pretty soon, the splitting turns out to be regaions |
[13:03] | Saijanai Kuhn: | splirring? |
[13:03] | Tree Kyomoon: | because of the bandwifth issuigns |
[13:03] | Gareth Ellison: | let moore's law fix that part for us and look at what today's tech can do |
[13:03] | Saijanai Kuhn: | splitting.. |
[13:03] | Tree Kyomoon: | Plitting |
[13:03] | Tree Kyomoon: | *splittng |
[13:03] | Tree Kyomoon: | 10,000 aves, split in 1000 regions, I can do |
[13:03] | Gareth Ellison: | is resisting the urge to get his transhumanist side out |
[13:03] | Morgaine Dinova: | Zha: I've been writing it up in some depth on the wiki. There's no point saying "Can't be done" if you don't reply to the wiki proposals. Yes, it can be done. |
[13:04] | Saijanai Kuhn: | Moore's law for bandwidth is not the same as for CPUs and GPUs |
[13:04] | Lily Argus: | Why not 10k people? at least I do not have the urge to see all of them at once. |
[13:04] | Saijanai Kuhn: | and GPUs is different than CPUs |
[13:04] | Gareth Ellison: | it CAN but it can't be done today without lots of $$$$$$ for little gain |
[13:04] | Lily Argus: | It's okay for me to see only some of them. Maybe a limit I predefine, like 3. |
[13:04] | Tree Kyomoon: | Some of them, is what I want to deliver |
[13:04] | Gareth Ellison: | the piles of hardware and fast connections needed is the $$$$$$ |
[13:04] | Tree Kyomoon: | I can easily give you shea stadium |
[13:04] | Morgaine Dinova: | There are umpteen ways to render crowds with less overhead than currently. The current viewer is not a fixed point. |
[13:04] | Gareth Ellison: | i'm talking physics |
[13:04] | Tree Kyomoon: | But I can only do it, if you can interact with 100-500 people at a timer |
[13:05] | Gareth Ellison: | rendering isn't such a huge issue |
[13:05] | Gareth Ellison: | physics is the killer |
[13:05] | Gareth Ellison: | one CPU can only simulate so much |
[13:05] | Lily Argus: | It's done in the MMORPGs too... limits to textures, texture quaility, number of AVs ... |
[13:05] | Saijanai Kuhn: | MASSIVE reqires a render farm to do accurately |
[13:05] | Tree Kyomoon: | The viewer is the least of your issues, tho.. conencting 500 vieerws is aproblem |
[13:05] | Gareth Ellison: | then you need the network latency to be handled |
[13:05] | Saijanai Kuhn: | and isn't real-time |
[13:05] | Lily Argus: | All I can reduce in the client. |
[13:05] | Gareth Ellison: | i'm not concerned with rendering big crowds |
[13:05] | Tree Kyomoon: | 500 clients for 500 aves in one sim |
[13:05] | Gareth Ellison: | i'm concerned with simulating them |
[13:05] | Tree Kyomoon: | 500 20 Kbits per second update streams |
[13:05] | Gareth Ellison: | can't push physics simulation to the client because that becomes "TRUSTING THE CLIENT" |
[13:06] | Tree Kyomoon: | Go buy the hardware |
[13:06] | Gareth Ellison: | and $$$$$ |
[13:06] | Tree Kyomoon: | Your NIC card melts |
[13:06] | Gareth Ellison: | heh, maybe the 2 cancel each other out |
[13:06] | Tree Kyomoon: | annoying that |
[13:06] | Gareth Ellison: | script kiddies don't have the money to buy the hardware |
[13:06] | Tree Kyomoon: | So.. what do we do |
[13:06] | Lily Argus: | 500 people in the same sim will see almost all the same, goody proxy in front and all is well. |
[13:06] | Tree Kyomoon: | We do tiny sims, with dense aves |
[13:06] | Gareth Ellison: | it's fine to discuss the theory of how to distribute the physics but i think it's something for the future |
[13:07] | Morgaine Dinova: | It's pretty damn easy .... PCs scale perfectly with customer base (or better, with multicore). Region servers don't. So the physics of the region server's world has to be computed in a distributed manner by the participants .... there is no other way. Hardly a big problem, just have to find a mechanism for workload distribution. |
[13:07] | Tree Kyomoon: | and then we do a service which allows us to do what Illy is foing it |
[13:07] | Gareth Ellison: | tiny sims becomes an issue of $$$$ again |
[13:07] | Gareth Ellison: | need more of them |
[13:07] | Tree Kyomoon: | Morgaine |
[13:07] | Morgaine Dinova: | Zha |
[13:07] | Tree Kyomoon: | The bandwith and coordination will kill you |
[13:07] | Tree Kyomoon: | deader than the NY mets |
[13:07] | Gareth Ellison: | summary - you need MONEY and lots of it |
[13:07] | Morgaine Dinova: | Bandwidth is growing all the time. And you work within the constraints, always. |
[13:08] | Tree Kyomoon: | its not just the bandwidth |
[13:08] | Gareth Ellison: | i don't think LL have that much resources, and all of us lot certainly don't |
[13:08] | Tree Kyomoon: | If you push it out to all the clients, they all have to talk to each other |
[13:08] | Lily Argus: | Why, there are lots of thousands of people accessing pages of CNN and such, with many pictures, and movies and stuff. How do THEY handle it? |
[13:08] | Gareth Ellison: | Zha: does your employer have a mainframe per SL user to spare? |
[13:08] | Tree Kyomoon: | To get a frame synced.. there is a lot of tlaking |
[13:08] | Tree Kyomoon: | Lily they don't state meld |
[13:08] | Tree Kyomoon: | They get copies |
[13:08] | Tree Kyomoon: | I can give you copies galore |
[13:08] | Lily Argus: | Yes, and? |
[13:08] | Morgaine Dinova: | The only major resource is client-side. That has to be used, it's the only way. |
[13:09] | Tree Kyomoon: | But I can't let each of you recolor one letter |
[13:09] | Gareth Ellison: | firewalls kick in |
[13:09] | Tree Kyomoon: | if I do that it blows up |
[13:09] | Lily Argus: | For seeing in a sim I am happy with getting copies. ,) |
[13:09] | Saijanai Kuhn: | that's the TObject solution. Croquet doesn't scale well past a few uers though |
[13:09] | Tree Kyomoon: | I am too lilly |
[13:09] | Gareth Ellison: | anyone here familiar with my GMMP protocol? |
[13:09] | Gareth Ellison: | this is an issue i ran into when trying to do the whole P2P metaverse thing |
[13:09] | Tree Kyomoon: | I can render the sim view external beyond 100meters |
[13:09] | Gareth Ellison: | where to put physics |
[13:09] | Morgaine Dinova: | Firewalls do not kick in, the distribution of work is done through a pipe opened from the client. |
[13:09] | Tree Kyomoon: | as a tecxcture and copy |
[13:09] | Tree Kyomoon: | 500 pipes morgaine |
[13:09] | Gareth Ellison: | i decided to ultimately push physics to object owners |
[13:09] | Tree Kyomoon: | 5,000 |
[13:09] | Lily Argus: | Good organization inside the proxy so you only get what you need ... |
[13:09] | Rex Cronon: | what was the rproblem gareth? |
[13:09] | Tree Kyomoon: | 10,.000 |
[13:09] | Tree Kyomoon: | pipes pipes pipes |
[13:09] | Gareth Ellison: | an object owner says "accept updates from this node" |
[13:09] | Morgaine Dinova: | Zha: enough straw men. |
[13:10] | Tree Kyomoon: | Not strawmen |
[13:10] | Gareth Ellison: | and everyone on that channel (region) listens for the updates from the owner's node |
[13:10] | Lily Argus: | I think it can be handled. |
[13:10] | Gareth Ellison: | collisions were what killed it |
[13:10] | Tree Kyomoon: | It so happens that we build highly connected super computers for a living in my lab |
[13:10] | Gareth Ellison: | i could get it to work on a small scale but getting inconsistent views per client |
[13:10] | Morgaine Dinova: | This is all pretty simple engineering. And we're engineers, not SL forums Luddites. |
[13:10] | Saijanai Kuhn: | as I said, TObjects don't scale well past a few uers. less than what you have with SSL currently, I think |
[13:10] | Tree Kyomoon: | I can host your world on a 500 million dollar super computer |
[13:11] | Morgaine Dinova: | Zha: red herring |
[13:11] | Lily Argus: | Google is distributing customized data, too... and there are enormous numbers of requests each second. We only have say 1000 people requesting at a time. |
[13:11] | Tree Kyomoon: | But;. I don't think enough people will pay $500 dollars to hear a concert in SL |
[13:11] | Tree Kyomoon: | google isn't state melding |
[13:11] | Tree Kyomoon: | no collisions |
[13:11] | Lily Argus: | or 10.000 |
[13:11] | Saijanai Kuhn: | and the data is pre-massaged |
[13:11] | Gareth Ellison: | i was just saying there Zha - collisions are what killed GMMP's distributed physics |
[13:11] | Saijanai Kuhn: | huage caches of keywords |
[13:12] | Morgaine Dinova: | And we have some perfectly good use cases for that too. |
[13:12] | Tree Kyomoon: | I can serve out 10.000 hits of the cnn.com's fron page |
[13:12] | Lily Argus: | in a sim with 10.000 people they will stand 1 person each 2 meters or something. |
[13:12] | Gareth Ellison: | (GMMP == the P2P protocol i started on for litesim) |
[13:12] | Tree Kyomoon: | because I do't have to do calculationgs |
[13:12] | Gareth Ellison: | Generic Metaverse Messaging Protocol - port 4183 with IANA :) |
[13:12] | Tree Kyomoon: | Morgaine, I can giveyou 90% of what you want |
[13:12] | Tree Kyomoon: | That's not easy, but its doable. |
[13:12] | Lily Argus: | The view can get approximated... why do I need to see EXACTLY what I should? Who cares if it is 1m more left ? |
[13:12] | Gareth Ellison: | on the issue of tiny dense sims i think that's simple |
[13:12] | Gareth Ellison: | arbitary geometry |
[13:12] | Tree Kyomoon: | The last 10% gets into really realy bad real world limtmiations |
[13:13] | Tree Kyomoon: | Right Gareth |
[13:13] | Tree Kyomoon: | 90% from that |
[13:13] | Gareth Ellison: | all SL sims are currently 256x256 squares |
[13:13] | Tree Kyomoon: | Add in a iew as Lily suggests |
[13:13] | Tree Kyomoon: | and we're mostly tehre |
[13:13] | Lily Argus: | Dont tell me someone is willing to build while there are 10.000 people in his si,..) |
[13:13] | Gareth Ellison: | not cheap |
[13:13] | Lily Argus: | sim |
[13:13] | Gareth Ellison: | but doable |
[13:13] | Tree Kyomoon: | I do a dense grid |
[13:13] | Gareth Ellison: | each region can be multiple sims glued together at the borders |
[13:13] | Tree Kyomoon: | say 50msquare pltos |
[13:13] | Tree Kyomoon: | then. limit the edge inetractoins |
[13:13] | Tree Kyomoon: | and beyond one sim hop, just render a frame of texture |
[13:13] | Gareth Ellison: | i'd still say on a practical level this is non-core functionality |
[13:14] | Lily Argus: | Those can build in the local sandbox. =) No lag, no disturbing n00bs ... |
[13:14] | Tree Kyomoon: | so, if your 100M away you get a cached copy of the scene |
[13:14] | Morgaine Dinova: | Engineering is about tradeoffs. For example, the physics available in an event sim doesn't have to be identical to everywhere else (and it won't be, on other worlds anyway) ... for example, people in music concerts don't need to fly, if that reduces workload. There are *always* solutions. |
[13:14] | Tree Kyomoon: | ify you're close, you get local interactions |
[13:14] | Tree Kyomoon: | MORGAINE! |
[13:14] | Morgaine Dinova: | ZHA! |
[13:14] | Tree Kyomoon: | That is what we are tying to sell you |
[13:14] | Gareth Ellison: | BOTH OF YOU! |
[13:14] | Tree Kyomoon: | Not 10.000 people in a sim |
[13:14] | Tree Kyomoon: | 10,.000 people interacting |
[13:14] | Tree Kyomoon: | with low rez beyonf the fist 100-500 people |
[13:14] | Tree Kyomoon: | That we can do |
[13:15] | Gareth Ellison: | get square sims working, remove fixed border shapes/sizes |
[13:15] | Lily Argus: | I think it is all complicated stuff, but doable. And if we have a look at it later, not so complicated at all. =) |
[13:15] | Gareth Ellison: | bingo |
[13:15] | Gareth Ellison: | you got your dense regions |
[13:15] | Gareth Ellison: | let people tie sims together into regions as a core feature |
[13:15] | Tree Kyomoon: | Dense regions, geometrey on qud-retees |
[13:15] | Gareth Ellison: | but as squares for now |
[13:15] | Morgaine Dinova: | And I've detailed it on the wiki too. So why all the negativity? |
[13:15] | Tree Kyomoon: | and then a way to do scenes with low rez viewing |
[13:15] | Gareth Ellison: | it's my av's time of the month |
[13:15] | Gareth Ellison: | </crude joke> |
[13:15] | Lily Argus: | haha |
[13:15] | Tree Kyomoon: | As logn as you don't tell us to do it in one simulation |
[13:16] | Lily Argus: | An that's why you are wearing a skirt? .P |
[13:16] | Gareth Ellison: | lol |
[13:16] | Gareth Ellison: | just get a region made up of many sims |
[13:16] | Gareth Ellison: | right one it's sim:region one-one relationship |
[13:16] | Morgaine Dinova: | All the options are open, and we certainly expect to make tradeoffs when confronted with such huge scary numbers. |
[13:16] | Gareth Ellison: | make it sim:region one:many |
[13:16] | Tree Kyomoon: | With special case code for the view across the boundaryies |
[13:16] | Gareth Ellison: | sorry, region:sim |
[13:16] | Gareth Ellison: | you get my point |
[13:17] | Tree Kyomoon: | What I think you do need, is the abilty to veiw across more than one sim boudnary |
[13:17] | Gareth Ellison: | i don't think the border crossing needs too many changes from normal - except to tune performance to l33t speeds |
[13:17] | Lily Argus: | If we get nearer to those scary numbers, you may run a sim on your wristwatch. =D |
[13:17] | Morgaine Dinova: | Gareth: please write your ideas on the wiki. This is a very bad format here, one line at a time. |
[13:17] | Tree Kyomoon: | which is easy if you define the veiwpoint corectly |
[13:17] | Gareth Ellison: | we have that |
[13:17] | Gareth Ellison: | turn your draw distance up |
[13:17] | Tree Kyomoon: | To apoint |
[13:17] | Tree Kyomoon: | But done badly |
[13:17] | Gareth Ellison: | morgaine: i'll seperate them out from the logs later |
[13:17] | Tree Kyomoon: | When you o dense, you 'll need to allow for a low rez view from a few sims away |
[13:17] | Tree Kyomoon: | which is easy enough |
[13:18] | Gareth Ellison: | Zha: what we need is no difference between crossing sims in the same region and crossing regions |
[13:18] | Tree Kyomoon: | right now LL uses the homehgenatiy assumption which is wrong |
[13:18] | Morgaine Dinova: | Gareth: not good enough, there's very little thread [continuity] here. We have a wiki, which is our groupware tool. USE IT !!!! |
[13:18] | Tree Kyomoon: | When it gets densely packed, we need to allow for a viewpoint that's more abstracted away |
[13:19] | Lily Argus: | If you see how hardware is getting faster and bigger and cheaper, we will not have a hardware problem. 8cores are coming... net is getting faster each day, more lines, better lines... |
[13:19] | Morgaine Dinova: | Not even sure why we're talking about the client ... it's a separate issue. |
[13:19] | Lily Argus: | servers would run on *nix system, so no 4 GB memory limit... ,) |
[13:19] | Tree Kyomoon: | It onlys hows up at the client to the extend of allwing the view to be done cleverly |
[13:19] | Gareth Ellison: | Morgaine: i can extract my ideas from this log into wiki articles easily - don't worry about that |
[13:19] | Lily Argus: | I am not talking about the client |
[13:20] | Gareth Ellison: | Zha - for extending the view all we need to do is tune up sim crossings to uber-fast speeds |
[13:20] | Tree Kyomoon: | for at least 90% of the use case of dense crowds, |
[13:20] | Gareth Ellison: | then we let the viewer worry about rendering it |
[13:20] | Morgaine Dinova: | And the client scales vastly better than anything else anyway, and we have plenty of idea for how to reduce client overhead. We really need to focus on the rest. |
[13:20] | Gareth Ellison: | focus on today first people |
[13:20] | Tree Kyomoon: | Gareth, I think that is going to die horribly, with very dense 3d scenes |
[13:20] | Tree Kyomoon: | But it is easy to fix |
[13:20] | Morgaine Dinova: | No, we're focussed on 2 years hence |
[13:20] | Gareth Ellison: | it works |
[13:20] | Tree Kyomoon: | fast crossing yes, |
[13:20] | Gareth Ellison: | morgaine: i'm focused on the foundations for 2 years from now |
[13:20] | Tree Kyomoon: | rendeinrtg not so much |
[13:21] | Morgaine Dinova: | Good |
[13:21] | Tree Kyomoon: | 2 years from now, you can assume 8 core or 16 core blades. Rah zoom. |
[13:21] | Gareth Ellison: | aarrggghh, a bomb |
[13:21] | Morgaine Dinova: | Hi otaku |
[13:21] | Tree Kyomoon: | maybe 2x acuall throughput,geiven how we exploit them |
[13:21] | Gareth Ellison: | don't blow up the pope |
[13:21] | otakup0pe Neumann: | oh wow freaky graphical glitch here |
[13:21] | Gareth Ellison: | Zha: 2 years from now you can assume better hardware |
[13:21] | otakup0pe Neumann: | i only explode when i get excited. |
[13:21] | Gareth Ellison: | full stop |
[13:22] | Lily Argus: | Thats not a glitch, Gareth is really wearing a skirt. :p |
[13:22] | Gareth Ellison: | lol |
[13:22] | otakup0pe Neumann: | noone mention REST and we'll be fine |
[13:22] | Tree Kyomoon: | I think I'lltake a little rest. |
[13:22] | Gareth Ellison: | otakup0pe - it's all REST, but you missed the heavy REST talk |
[13:22] | Morgaine Dinova: | Actually, that's the only part we agree on :-) |
[13:22] | Tree Kyomoon: | Go to the Post office |
[13:22] | Gareth Ellison: | ok, back on topic |
[13:22] | Tree Kyomoon: | Get some stuff |
[13:23] | Tree Kyomoon: | Idems. Potent Idems. |
[13:23] | Gareth Ellison: | we do need to get something running today |
[13:23] | Gareth Ellison: | let's make it square sims - many of them per region |
[13:23] | Gareth Ellison: | later change the border shapes and sizes |
[13:23] | Morgaine Dinova: | But we can't even agree on who the callers for REST services are, lol. very little progress today. |
[13:23] | Turtle: Hello,: | Avatar! |
[13:23] | Gareth Ellison: | anyone here ever edited Doom WADs? |
[13:23] | Tree Kyomoon: | Garetht I wil try to get some of the flows we've talked sabout lined up in the wiki |
[13:23] | Gareth Ellison: | or other such FPSes of the 80s/90s? |
[13:23] | otakup0pe Neumann: | yeah gareth |
[13:23] | otakup0pe Neumann: | where are you going here O_o |
[13:23] | Gareth Ellison: | think of sectors |
[13:23] | Morgaine Dinova: | SL already runs today. |
[13:23] | Gareth Ellison: | how sectors link together |
[13:23] | otakup0pe Neumann: | mmm. |
[13:23] | Gareth Ellison: | now, imagine sector==sim |
[13:24] | Gareth Ellison: | and map==region |
[13:24] | Gareth Ellison: | but regions can be linked too |
[13:24] | Gareth Ellison: | with me? |
[13:24] | Tree Kyomoon: | So. Gareth. |
[13:24] | Morgaine Dinova: | Your design is wrong. You're still thinking of static regions, which can never scale. |
[13:24] | Tree Kyomoon: | You want the logon, get capabitlities, use them, chained suff |
[13:24] | otakup0pe Neumann: | so you are talking multiple sims within a region ? how is that different than sims within a |
[13:24] | otakup0pe Neumann: | n estate ? |
[13:24] | Gareth Ellison: | morgaine: FUTURE! |
[13:25] | Gareth Ellison: | otakup0pe - i'm talking these sims being invisible to users |
[13:25] | otakup0pe Neumann: | since imissed the party... what's a "static region". the standard 255x255x768 region ? |
[13:25] | Gareth Ellison: | you could even cut it up dynamically in different ways |
[13:25] | otakup0pe Neumann: | yes, tothe end users it's all invisible. |
[13:25] | Gareth Ellison: | if you have a big event cut your region up into more sims |
[13:25] | Tree Kyomoon: | quad-ttrees |
[13:25] | Tree Kyomoon: | stakc them into 3d space |
[13:25] | Tree Kyomoon: | shape them to match the event |
[13:25] | Morgaine Dinova: | Gareth: not sure what that meant. We are designing for the future, a scaled up one. You're designing for the current non-scalable future if you're sticking to non-scalable sims. |
[13:25] | Gareth Ellison: | earlier today i walked around a few places where people have places built across sim borders |
[13:25] | Tree Kyomoon: | Cones |
[13:26] | Tree Kyomoon: | where they all touch the stage |
[13:26] | Gareth Ellison: | morgaine: i'm designing for the starting platform |
[13:26] | Tree Kyomoon: | but not each other |
[13:26] | Gareth Ellison: | example |
[13:26] | Morgaine Dinova: | Gareth: if it's non-scalable, then your work is 100% wasted |
[13:26] | Gareth Ellison: | i have a big region |
[13:26] | Gareth Ellison: | normally empty |
[13:26] | Gareth Ellison: | so i run it on one sim |
[13:26] | Gareth Ellison: | if 100s turn up, i start cutting it into bits |
[13:26] | Gareth Ellison: | and dynamically allocate more sims |
[13:27] | Morgaine Dinova: | And you know where that leads asymptotically? To 100% of your CPU being used in handover. Think again. |
[13:27] | Gareth Ellison: | that's why we need to tune handover |
[13:27] | Gareth Ellison: | i think it's more realistic in the short term doing it this way than distributing physics |
[13:28] | Gareth Ellison: | each physics engine looks at one space |
[13:28] | Gareth Ellison: | multiple physics engines in one space == ow |
[13:28] | Morgaine Dinova: | You can't tune [handover], it's a total block to scalability. Imagine when a region becomes smaller than the size of an av? Where do you go from there? |
[13:28] | Gareth Ellison: | possible but painful |
[13:28] | Gareth Ellison: | morgaine: why would you want a region the size of an av? |
[13:28] | Gareth Ellison: | not sarcasm - i mean seriously |
[13:28] | Morgaine Dinova: | Because prim counts rise. |
[13:28] | Tree Kyomoon: | What is your use case, morgaine? |
[13:28] | Tree Kyomoon: | with 3d cubes |
[13:28] | Morgaine Dinova: | Zha: scaling |
[13:29] | Tree Kyomoon: | That isn't a use case |
[13:29] | Gareth Ellison: | we won't infinitely scale sims FOR NOW |
[13:29] | Tree Kyomoon: | A use case is "Let 10,000 aves have the follwing expeirence" |
[13:29] | Tree Kyomoon: | in enogh detail so we can bang on it, but not enought to dictate a solution espeically one which we can't build |
[13:29] | otakup0pe Neumann: | or even "let 10000 avatars share the same experience' |
[13:29] | Gareth Ellison: | my proposal is aimed at enabling an improvement to what's here currently |
[13:29] | Noelani Lightfoot: | gave you Noe Textures: Black & Whites. |
[13:29] | otakup0pe Neumann: | gareth, to provide the mid way point so to speak ? |
[13:30] | Gareth Ellison: | yes |
[13:30] | Gareth Ellison: | i think distributed physics is the future |
[13:30] | Morgaine Dinova: | Zha: Gareth proposed that all region scalability would be achieved by subdividing regions into smaller sizes. I showed that that places a hard limit [on scalability], by pointing out the asymptotic case. You can't do it, the machines will be doing 100% handover and nothing else. |
[13:30] | Gareth Ellison: | but we're not there yet |
[13:30] | Gareth Ellison: | it does have a hard limit |
[13:30] | Gareth Ellison: | yes |
[13:30] | Tree Kyomoon: | Well Morgaine, up to apont sure |
[13:30] | Tree Kyomoon: | But. Your use case, probabl isn't actually the asymptote |
[13:30] | Gareth Ellison: | the thing is - it will be possible to do it before my son goes to college |
[13:30] | Morgaine Dinova: | Gareth: WRONG DIRECTION. No point heading in a direction that isn't scalable. |
[13:30] | Gareth Ellison: | (he's 2) |
[13:31] | Gareth Ellison: | no, right direction - you can distribute physics per sim later |
[13:31] | Tree Kyomoon: | Even at really good rock concerts, I tend to not get my body inside spaces smaller than it is in size |
[13:31] | Gareth Ellison: | you won't fit 40 people into a tiny physical space |
[13:31] | Morgaine Dinova: | Prims counts, script counts. Or do you think those won't scale? |
[13:31] | Tree Kyomoon: | 3d |
[13:31] | Tree Kyomoon: | stack them in 3d, not 2d |
[13:31] | Gareth Ellison: | 3D works |
[13:31] | Tree Kyomoon: | a lot of lindens' pain is the 600m stacks |
[13:32] | Gareth Ellison: | but i'm talking 2D gluing of borders together today |
[13:32] | Tree Kyomoon: | and. then limit the intreactoin on stuff that's more thsan one sime away |
[13:32] | Morgaine Dinova: | The whole thing gets heavier and heavier. You can't start along a direction where the method you're using doesn't scale. |
[13:32] | Gareth Ellison: | design for what can be built upon later |
[13:32] | Gareth Ellison: | morgaine: IT DOES SCALE, JUST NOT TO INFINITE LEVELS |
[13:32] | Tree Kyomoon: | You also can't aim for things that break physics |
[13:32] | Morgaine Dinova: | Gareth: exactly, but you're not [designing for what can be built upon later]. You're hardwiring a non-scalable mechanism. |
[13:32] | Gareth Ellison: | no |
[13:32] | Gareth Ellison: | it's not hardwired at all |
[13:33] | Morgaine Dinova: | I just showed it to be |
[13:33] | Gareth Ellison: | a little secret - the other parts of the grid don't care how physics is handled on that sim |
[13:33] | Gareth Ellison: | just that it gives back correct outputs |
[13:33] | Morgaine Dinova: | Move 5 steps and you do region handover? Move a step back, another region handover? |
[13:33] | Gareth Ellison: | not so difficult |
[13:33] | Morgaine Dinova: | You're not even close to a sensible solution there |
[13:33] | Tree Kyomoon: | OK |
[13:33] | Tree Kyomoon: | TIME OUT! |
[13:33] | Gareth Ellison: | morgaine: no offence, but when did you last implement border crossing? |
[13:34] | Tree Kyomoon: | Deep breath all |
[13:34] | Gareth Ellison: | sorry, getting a bit heated here |
[13:34] | Tree Kyomoon: | Can we have some use cases on the nature of the inetractions we want |
[13:34] | Tree Kyomoon: | How much script, prim and ave interactoin? |
[13:34] | Tree Kyomoon: | How much seeing, hearing and script manipulations? |
[13:34] | Morgaine Dinova: | Never, but I'm pretty good at analysis ... and if you are diving into coding without analysis, they you're going to have a non-scalable mess. |
[13:34] | Gareth Ellison: | my use case is "put a few 100 or a few 1000 avatars and objects into a small space" |
[13:34] | Tree Kyomoon: | Morgaine.. You're tending to make analysis that seems to me to make some odd assupomtionsd |
[13:35] | Gareth Ellison: | LL sims handle 40-100 max |
[13:35] | Morgaine Dinova: | Handover is one of the worst corner cases currently. And you want it to happen every few steps? |
[13:35] | Gareth Ellison: | i'd like to see massive crowds |
[13:35] | Morgaine Dinova: | Gareth: read Project Motivation. |
[13:35] | Rex Cronon: | margaine, what if gareth for example made an prototype, than u can analyze it |
[13:35] | Gareth Ellison: | morgaine: you're thinking of LL's implementation |
[13:35] | Gareth Ellison: | LL's border crossings are non-trivial |
[13:35] | Gareth Ellison: | without all the HTTP stuff border crossings should be trivial |
[13:36] | Morgaine Dinova: | Hey, we are designing for LL you know :-) |
[13:36] | Gareth Ellison: | and in fact are when i experimented |
[13:36] | Gareth Ellison: | yes - but not designing for re-using all of LL's current code |
[13:36] | Tree Kyomoon: | Also.. if the use case doesn't require ten thousands peoel milling about |
[13:36] | Tree Kyomoon: | then you can be a little less uptight |
[13:36] | Gareth Ellison: | think practically - the space that we're standing in now |
[13:36] | Tree Kyomoon: | Oddly, most people don't mill about in a concert. Most sit in seats. |
[13:36] | Gareth Ellison: | how many people will squeeze into it (round this little camp fire) |
[13:36] | Morgaine Dinova: | Zha: but we have such use cases, and they are likely to be hugely popular, like sltube |
[13:37] | Tree Kyomoon: | How much interation |
[13:37] | Tree Kyomoon: | How fast does the average ave move |
[13:37] | Morgaine Dinova: | Gareth: how many people will sit in seats in a football stadium? |
[13:37] | Tree Kyomoon: | How many scripts to thye rtrigger |
[13:37] | Rex Cronon: | u r not designing for ll, unless u r employed by them |
[13:37] | Gareth Ellison: | if this little camp fire was one sim we could put 100 people here |
[13:37] | Gareth Ellison: | heh |
[13:37] | Tree Kyomoon: | We don't allow football fans to mill around, we make them sit in seats so we don't get riots |
[13:37] | Gareth Ellison: | we're designing for SL - LL or not |
[13:37] | Morgaine Dinova: | We're designing for a scalable system. It's in the spec. |
[13:37] | Gareth Ellison: | riots aside - we still won't realistically even want 100 people packed into our campfire space |
[13:38] | Gareth Ellison: | morgaine: AND IT IS SCALABLE |
[13:38] | Gareth Ellison: | greatly scalable |
[13:38] | Zha Ewry: | puts on her earmuffs |
[13:38] | Morgaine Dinova: | Gareth: in the live music scene, we've needed 500 people THREE YEARS AGO |
[13:38] | Gareth Ellison: | the point is that we can get it highly scalable fast |
[13:38] | Tree Kyomoon: | 500 people doing what? |
[13:38] | Gareth Ellison: | and even more scalable later using distributed physics |
[13:38] | Morgaine Dinova: | At concerts |
[13:38] | Tree Kyomoon: | listening or |
[13:38] | Gareth Ellison: | space is the key |
[13:38] | Gareth Ellison: | what space were those 500 in? |
[13:38] | Tree Kyomoon: | tossing beachballs around? |
[13:38] | Morgaine Dinova: | Dancing, humping, all the usual stuff |
[13:38] | Gareth Ellison: | one sim per chair is foolish |
[13:39] | Tree Kyomoon: | do they all have to be bel able to tap the tipjja=r atonce? |
[13:39] | Gareth Ellison: | even if they do that's fine |
[13:39] | Gareth Ellison: | you can pack 100 people into a tiny sim and use lots of tiny sims |
[13:39] | Gareth Ellison: | if you were nuts and had lots of cash you could have 1 sim per chair |
[13:39] | Gareth Ellison: | it's up to configuration |
[13:40] | Morgaine Dinova: | This is the spec we've needed 3 years ago. Now we're designing the system for 2 years in the future, with the spec of Project Motivation, and in your mind you are still designing to the spec of 3 years ago? Think again |
[13:40] | Lily Argus: | Dont we have the avatarless client use case for big concerts? |
[13:40] | Gareth Ellison: | morgaine: the spec of 3 years ago is what happened 3 years ago |
[13:40] | Morgaine Dinova: | Lily: yes, we do, but it's being ignored by Gareth |
[13:40] | Gareth Ellison: | ugh, flame war |
[13:40] | Lily Argus: | hehe |
[13:40] | Rex Cronon: | by the look of things is going to take a year to design:( |
[13:40] | Gareth Ellison: | no it's not |
[13:40] | Gareth Ellison: | i'm simply talking about the use case of having tons of avatars in one place |
[13:40] | Lily Argus: | kicks Gareth in the shins. DO NOT INGORE! :p |
[13:41] | Gareth Ellison: | i ain't ignoring |
[13:41] | Morgaine Dinova: | Gareth: I don't know if it's a flame war, but I do know that you seem to be working to a private spec. Read Project Motivation. |
[13:41] | Lily Argus: | hehe |
[13:41] | Gareth Ellison: | the use case of avatarless viewers is good and solves this issue almost entirely |
[13:41] | Gareth Ellison: | ok, screw the flames - i'm getting naked to distract |
[13:41] | Morgaine Dinova: | LOL |
[13:42] | Morgaine Dinova: | Event on ... |
[13:42] | Saijanai Kuhn: | woohoo |
[13:42] | Gareth Ellison: | ok |
[13:42] | Gareth Ellison: | Saijanai: don't get too excited, i'm male |
[13:42] | Saijanai Kuhn: | thinks: Gareth is male? Whats up with that? |
[13:42] | Turtle: that??: | <snort> |
[13:42] | Turtle thinks: | Saijanai is full of himself |
[13:43] | Morgaine Dinova: | No, seriously guys. If you're not taking the scalability spec seriously, we might as well all go home. We already have a non-scalable system. We don't need another. |
[13:43] | Saijanai Kuhn: | no system will scale through all possible scenarios/use cases/whatever |
[13:43] | Gareth Ellison: | now, if we can think if 2000 people crowded horny people who think i'm female came here - i could have a sim of 100 users only 30m or so around me |
[13:43] | Rex Cronon: | what exactly does scalability mean to u morgaine? |
[13:43] | Saijanai Kuhn: | the best we can shoot for is accomidating the most common/most likely cases |
[13:43] | Gareth Ellison: | or less than 30m2 |
[13:44] | Gareth Ellison: | has sexy examples |
[13:44] | Gareth Ellison: | heh |
[13:44] | Gareth Ellison: | what i'm saying is that we need to get something working that doesn't require major breakthroughs in computer science (such as multiple interacting physics engines in one space) |
[13:45] | Morgaine Dinova: | Saij: I agree. But we do need to look towards an architecture that is generally scalable in all those dimensions, and work progressively towards it. The trouble with the current things being thrown around is that you're just sticking to LL's architecture of static sims. |
[13:45] | Gareth Ellison: | morgaine: i WANT the same thing you do |
[13:45] | Gareth Ellison: | and i am looking toward it |
[13:45] | Gareth Ellison: | i'm talking dynamic sims |
[13:45] | Gareth Ellison: | the sims come and go in all shapes and sizes to share the task of simulating bits of regions |
[13:45] | Gareth Ellison: | later, the sims become engines that simulate aspects of the physics |
[13:45] | Gareth Ellison: | one sim per object even |
[13:46] | Gareth Ellison: | one sim per force |
[13:46] | Saijanai Kuhn: | The thing about the generic case of 256x256 (or even X x Y) sims is that it only limits what the "main" grid sees |
[13:46] | Gareth Ellison: | queued up "move this" requests |
[13:46] | Gareth Ellison: | fed to the least loaded cluster node |
[13:46] | Gareth Ellison: | things like that are perfectly possible but take time to develop |
[13:46] | Saijanai Kuhn: | you can have "portal" sims that act as entry points into any architecture you want, as long as the present a 256x256 border to the main grid |
[13:46] | Gareth Ellison: | and will delay making progress today |
[13:47] | Gareth Ellison: | i don't like the 256x256 limit |
[13:47] | Morgaine Dinova: | OK, I'm fine with your intentions. Trouble is, region subdivision can't tackle it. How to you expect to 3D-tile the physics within a room if the room is subdivided into a number of regions. Damn hard |
[13:47] | Gareth Ellison: | that's why i'm saying arbitary borders |
[13:47] | Saijanai Kuhn: | I'm saying, let specialized grid implementers worry about the special cases. |
[13:47] | Gareth Ellison: | morgaine: we can subdivide a room easily |
[13:47] | Gareth Ellison: | make it 3D if you want |
[13:47] | Gareth Ellison: | let's do it like this: |
[13:47] | Gareth Ellison: | 1:tiled 256x256 |
[13:47] | Gareth Ellison: | 2: tiled arbitary borders |
[13:48] | Saijanai Kuhn: | Get the generic, scalable to 64 bit coordinates of 256x256meter sims working |
[13:48] | Gareth Ellison: | 3: dynamically allocate sims to region sections |
[13:48] | Gareth Ellison: | 4: add distributed physics engines |
[13:48] | Gareth Ellison: | 5:???? |
[13:48] | Gareth Ellison: | 6: profit |
[13:48] | Morgaine Dinova: | Hey yeah, I can do division too. :-) That's not what I meant though ... all the sims will have to be contributing to a joint physics simulation. It's horrendous |
[13:48] | Saijanai Kuhn: | all of those can be het-rided |
[13:48] | Saijanai Kuhn: | let's get the architecture for the simplest case working first |
[13:48] | Saijanai Kuhn: | het-gridded* |
[13:48] | Gareth Ellison: | follow my 4-point program |
[13:49] | Gareth Ellison: | millions around the world were cured of their distributed physics now addiction through my simple 4 step programme |
[13:49] | Gareth Ellison: | DPA |
[13:49] | Gareth Ellison: | Distributed Physics Anonymous |
[13:50] | Saijanai Kuhn: | meanwhile, we're at step zero: arguing about steps 1+ |
[13:50] | Gareth Ellison: | yeah |
[13:50] | Gareth Ellison: | let's do step 1 first |
[13:50] | Gareth Ellison: | and than steps 2-4 |
[13:50] | Gareth Ellison: | step 4 is what you want now morgaine |
[13:50] | Gareth Ellison: | even if it delays implementation of the rest of the system |
[13:50] | Saijanai Kuhn: | I'm up for adding a wayfor a viewer to realize it needs to have special features implemented... |
[13:51] | Morgaine Dinova: | Gareth: evolution. You are deferring hard problems to tomorrow. That won't do |
[13:51] | Saijanai Kuhn: | a multi-dimensional version code, perhaps |
[13:51] | Gareth Ellison: | i'm being realistic |
[13:52] | Saijanai Kuhn: | n-dimensions, where n might change int he future |
[13:52] | Gareth Ellison: | KISS |
[13:52] | Gareth Ellison: | i want to see something working today, even if it's not the absolute best possible |
[13:52] | Saijanai Kuhn: | right now, we're talking teh one-dimensional case: scaling the proposed architecture based on LL's second life |
[13:52] | Gareth Ellison: | better today, better again tomorrow |
[13:52] | Saijanai Kuhn: | different dimensions might or might not be orhtoganl to each otehr, but can be left for the future |
[13:52] | Rex Cronon: | why base it on second life? |
[13:53] | Saijanai Kuhn: | because this is what the AWG is for, currently? |
[13:53] | Rex Cronon: | or u mean based on what u can do in sl? |
[13:53] | Gareth Ellison: | Rex: because it works and we might as well not throw all that hard work away |
[13:53] | Tree Kyomoon: | afk folks sorty |
[13:54] | Saijanai Kuhn: | I see SL as a working example of a subset of what the LIndens have proposed |
[13:54] | Lily Argus: | yeh, but we have to start somewhere? |
[13:54] | Saijanai Kuhn: | We can certaily add to what the LIndens have proposed, but if we go in certain directions, we're adding 1 or more to the n-dimensional version code |
[13:54] | Lily Argus: | and that is sl, currently. ,) |
[13:55] | Saijanai Kuhn: | lets "n" to 1, right now |
[13:55] | Saijanai Kuhn: | lets et "n" to 1 |
[13:56] | Saijanai Kuhn: | 2, 3, etc., are important as well, but lets start with 1 |
[13:56] | Saijanai Kuhn: | I'm not talking about version NUMBERS, I'm talking about dimensions. |
[13:57] | Saijanai Kuhn: | 3d stacking is another dimension. So is distributed physics. So is something else |
[13:57] | Gareth Ellison: | hang on a moment |
[13:57] | Gareth Ellison: | we appear to be getting stuck on this one major disagreement |
[13:58] | Gareth Ellison: | i hate to polarise the group but can we vote on which path to go down |
[13:58] | Tree Kyomoon: | I think this only hits about 10% of the entire design, btw. |
[13:58] | Gareth Ellison: | bearing in mind morgaine's proposal is a very good one in my view and should be kept in mind as we implement mine if we do so |
[13:58] | Saijanai Kuhn: | I'd rather wait until the group founder is back to discuss voting. |
[13:58] | Saijanai Kuhn: | and she's back |
[13:58] | Gareth Ellison: | technically that's Zha |
[13:58] | Gareth Ellison: | heh |
[13:59] | Tree Kyomoon: | And.. I'd hate to force voting for this.. but. we do need to look at consensu |
[13:59] | Tree Kyomoon: | I'd also like to hear Zero's thoughts on the topic. |
[13:59] | Gareth Ellison: | i hate having to vote too |
[13:59] | Tree Kyomoon: | I do really think tho, that this his only 10% of the design, at most |
[13:59] | Gareth Ellison: | a "poll" which won't be binding perhaps? |
[14:00] | Gareth Ellison: | and agree on the solid plan after getting input from Zero at least? |
[14:00] | Saijanai Kuhn: | I'm for my n-dimensional version code thingie. ANd vote that we (mostly) limit oursolves to design and imlementation of the first dimension, keeping in mind that some design decisons might make the n-dimensional case harder later on |
[14:01] | Morgaine Dinova: | Yeah, we're all waiting for Zero to comment :-) But others need to as well. We're just not getting design input at all on the wiki. |
[14:02] | Gareth Ellison: | can we poll this? |
[14:02] | Gareth Ellison: | it's fairly obvious what my and morgaine's vote will be |
[14:02] | Gareth Ellison: | so - everyone else? |
[14:02] | Tree Kyomoon: | Do you have a single paragraph to ask people to repsond to |
[14:02] | Gareth Ellison: | ok |
[14:03] | Rex Cronon: | wait. just a sec |
[14:03] | Saijanai Kuhn: | votes for design/implementation focus on the current proposal (keeping a 1 dimensional version number ) for now |
[14:03] | Tree Kyomoon: | I think we can get 90% of the use cases out of the variable geometry |
[14:03] | Gareth Ellison: | should we distribute multiple physics engines per single virtual 3D space in the first implementation - yes or no? bearing in mind that it can be added later |
[14:03] | Tree Kyomoon: | with some pain from the egde cases |
[14:03] | Tree Kyomoon: | I'dm on the we don't need to side |
[14:03] | Rex Cronon: | way don't u gareth post what u think , and u margain do the same, |
[14:04] | Rex Cronon: | morgaine* |
[14:04] | Gareth Ellison: | err, i've just been talking about my views for the past hour it feels like - morgaine the same |
[14:04] | Tree Kyomoon: | Lets post this to the wiki the post to the group asking people to vote |
[14:04] | Tree Kyomoon: | poll, not binding, etc |
[14:04] | Rex Cronon: | and both of u put a link on the https://wiki.secondlife.com/wiki/Architecture_Working_Group to your onw opinion |
[14:04] | Gareth Ellison: | proposal on the group? |
[14:05] | Gareth Ellison: | i'm going to be adding my views to the wiki after this meeting |
[14:05] | Gareth Ellison: | hmm, shall we call it a day? |
[14:05] | Gareth Ellison: | meet again after closing this issue? |
[14:06] | Rex Cronon: | u can't ask people to vote without first reading both of your viewes |
[14:06] | Gareth Ellison: | yeah |
[14:06] | Gareth Ellison: | ok - morgaine: you add your views to the wiki, i'll do the same and we regroup to discuss after people have viewed and voted |
[14:06] | Gareth Ellison: | good plan? |
[14:06] | Saijanai Kuhn: | can I add mine too? |
[14:06] | Gareth Ellison: | sure |
[14:06] | Gareth Ellison: | don't need anyone's consent to add your views there |
[14:06] | Gareth Ellison: | heh |
[14:07] | Saijanai Kuhn: | is good at raising his hand in class |
[14:07] | Gareth Ellison: | lol |
[14:07] | Saijanai Kuhn: | ooh ooh, |
[14:07] | Saijanai Kuhn: | /waves |
[14:07] | Saijanai Kuhn: | waves |
[14:07] | Saijanai Kuhn: | stupid gestures |
[14:07] | Gareth Ellison: | so.... are we done? |
[14:07] | Gareth Ellison: | yes saijanani? and make it good young man! |
[14:08] | Saijanai Kuhn: | never mind. |
[14:08] | Rex Cronon: | looks like people are in IMs |
[14:08] | Saijanai Kuhn: | they're all talking behind my back |
[14:08] | Saijanai Kuhn: | knows it to be true |
[14:09] | Rex Cronon: | so i guess this meeting is disolved |
[14:09] | Gareth Ellison: | seems like it |
[14:09] | Gareth Ellison: | yeah, he is a bit isn't he? |
[14:09] | Gareth Ellison: | oops, wrong window |
[14:09] | Gareth Ellison: | </joking> |
[14:09] | Saijanai Kuhn: | see, told you |
[14:09] | Rex Cronon: | bye everybody |
[14:09] | Morgaine Dinova: | Gareth and I have been hammering out the scalability issue |
[14:09] | Gareth Ellison: | who's posting logs? |
[14:10] | Lily Argus: | i go read and comment all then. ,) |
[14:10] | Gareth Ellison: | need logs on the wiki and then i'll go add my views ripped out of them |
[14:10] | Lily Argus: | I have logs on 2 different computers now and a missing part inbetween |
[14:11] | Gareth Ellison: | someone needs to put the whole logs on the wiki |
[14:11] | Morgaine Dinova: | I'm not sure they're going to be worthwhile ... this kind of unfocussed gathering isn't going to come up with a cohesive design that everyone understands. We have a wiki --- designs need to be detailed clearly. |
[14:11] | Gareth Ellison: | there's been some good views here |
[14:11] | Saijanai Kuhn: | had 2 major freezes and lost a few minutes so H e can't do it |
[14:11] | Gareth Ellison: | we need to rip them out into summary form |
[14:11] | Morgaine Dinova: | Yeah, lots. But I don't see a cohesive view emerging. |
[14:11] | Gareth Ellison: | Zha: would you like the honours? |
[14:12] | Tree Kyomoon: | Sigh. |
[14:12] | Tree Kyomoon: | I don't think I crashed. Let me look |
[14:12] | Gareth Ellison: | sorry to push it all on you |
[14:12] | Saijanai Kuhn: | you wanted this job Zha. Don't back out now... ;-) |
[14:12] | Gareth Ellison: | should i get naked again to relieve tensions? |
[14:13] | Saijanai Kuhn: | you spoiled it for me... Gareth |
[14:13] | Gareth Ellison: | lol |
[14:13] | Gareth Ellison: | seriously though - err, wiki logs and then we're done |
[14:14] | Tree Kyomoon: | yeah, UI got it. |
[14:14] | Tree Kyomoon: | Need to edit out the usual chat log crap |
[14:14] | Morgaine Dinova: | Gareth, we were talking about region subdivision and handover. Handover occurs at the boundaries, and the length of a perimeter increases in proportion to the volume (and hence in proportion to number of objects in it) as the size of the volume decreases. This means your handover overheads get worse and worse as you subdivide. |
[14:14] | Morgaine Dinova: | This is why your scalability goes down the tube. |
[14:14] | Gareth Ellison: | morgaine: WIKI! |
[14:14] | Tree Kyomoon: | Wikiw Wikiw woo! |
[14:14] | Morgaine Dinova: | OK, I'll write that down. |
[14:14] | Tree Kyomoon: | Wiki WIKIW WOO! |
[14:14] | Gareth Ellison: | ok |
[14:15] | Saijanai Kuhn: | hna sbeen reading Ward Cunniham's book on Wikis. SOmehow, the term Wikiwiki" has become misused |
[14:15] | Tree Kyomoon: | And.. while this has gotten heated. It is an amazinly good discussion |
[14:15] | Gareth Ellison: | yeah |
[14:15] | Tree Kyomoon: | Not sure how to distill to consensus yet, but wow. |
[14:15] | Noelani Lightfoot: | accepted your inventory offer. |
[14:15] | Gareth Ellison: | i said to morgaine in IM that the heated parts aren't personal - it's to be expected with diverging opinions |
[14:15] | Morgaine Dinova: | It's not really heated. We need to put points over, and each of us has a different interest :-) |
[14:15] | Tree Kyomoon: | Zhactly |
[14:15] | Gareth Ellison: | first we need it organised into summary form |
[14:15] | Gareth Ellison: | WIKI LOGS! |
[14:15] | Morgaine Dinova: | Yeah |
[14:15] | Tree Kyomoon: | ok |
[14:16] | Saijanai Kuhn: | "wikiwiki" is Hawaiin for "spry, nimble, fast, swift, etc" |
[14:16] | Tree Kyomoon: | I will cut and edit |
[14:16] | Gareth Ellison: | i'll blame myself for some of the heatedness - i did say i'm a bit hyper :) |
[14:16] | Morgaine Dinova: | That's no problem. You have excess hyper, I have excess focus on reqs, hehe |
[14:16] | Saijanai Kuhn: | is decmpressing from taking RL son to ER last night at midnight. False alarm thankfully |
[14:17] | Gareth Ellison: | lol |
[14:17] | Gareth Ellison: | ow |
[14:17] | Morgaine Dinova: | Sorry to hear that Saij :-( |
[14:17] | Saijanai Kuhn: | irritable bowell syndrome + ibuprophin for pain = bad idea. Can simualte all sorts of life-threatening symptoms |
[14:18] | Gareth Ellison: | funny - nearly all meetings that i take part in online eventually get down into off-topic personal stuff and humour if it's a deep discussion |
[14:18] | Gareth Ellison: | though those tend to be the most productive too |
[14:18] | Gareth Ellison: | it shows passion in the subject |
[14:18] | Tree Kyomoon: | Good lord we type too much |
[14:18] | Morgaine Dinova: | Humour is a defence mechanism, and useful. |
[14:18] | Gareth Ellison: | lol |
[14:19] | Gareth Ellison: | i gotta go afk now |
[14:19] | Gareth Ellison: | get logs up! |
[14:19] | Morgaine Dinova: | My log is on the fire |
[14:20] | Saijanai Kuhn: | was going to say... putting the logs on the wiki is probably a bad iead. |