User:Zero Linden/Office Hours/2007 Mar 29

From Second Life Wiki
Jump to: navigation, search

Transcript of Zero Linden's office hours:

[7:32] Khamon Fate: This hat looks like a lampshade
[7:33] Wyn Galbraith: Good morning *yawn*
[7:33] Zha Ewry: Hats, are only evil, if you want to keep your hair and hat in some harmony...
[7:33] Khamon Fate: Everybody IM Sulumor and tell her that
[7:33] Khamon Fate: Another green one
[7:33] Jarod Godel: hi, z
[7:33] Zha Ewry: Morning Wyn, Rex,...
[7:33] Zha Ewry: Hey.. Good Morning Zero
[7:33] Dnate Mars: Hello Zero
[7:33] Khamon Fate: Hi Wyn and Rex
[7:33] Zero Linden: Good morning all -
[7:33] Zero Linden: I see some new faces here
[7:33] Rex Cronon: hello zero
[7:33] Dnate Mars: I am actually up this morning!
[7:33] Khamon Fate: oh sorry
[7:34] Wyn Galbraith: Goodmorning SF an Zero, and everyone. Some ole faces too ;) /laugh
[7:34] Khamon Fate: it's my windowhat
[7:34] Jarod Godel: Just don't put on your rock.
[7:34] Zero Linden: hmmm... a different kind of w-hat?
[7:34] Jarod Godel coughs: mad hatter
[7:34] Khamon Fate: no I'm not a w-hatter prokzero
[7:35] Khamon Fate: ha ha ha
[7:35] Zero Linden is now sorry he started it.... :-)
[7:36] Khamon Fate: Jocularity Jocularity
[7:36] Zero Linden: I know!
[7:36] Zero Linden: Okay - well - let's get started!
[7:36] Khamon Fate: Architecture Aruchitecture
[7:37] Zero Linden: Manditory repetitive disclosure: The transcript will be posted to the wiki. Speak freely, speak in public!
[7:37] flying ball whispers: I am ALIVE!
[7:37] cijestra Laval: und wo?
[7:37] Zero Linden: I thought I'd start with a not-so funny anecdote from yesterday's debugging
[7:37] Jarod Godel: But don't SpeakEasy, or BestBuy will purchase you.
[7:38] Wyn Galbraith listens intently.
[7:38] Zero Linden: A few people had this strage bug: They'd log in - and then get 100s of e-mails confirming their Bug Reports.
[7:38] Zha Ewry inclines head towards debug annecdoe..
[7:38] Zero Linden: Only they hadn't made any Bug Reports.
[7:38] cijestra Laval: hey ich seh immernoch nichts
[7:38] Rex Cronon: more like 800
[7:39] Zero Linden: Rex, did it happen to you?
[7:39] Rex Cronon: no, i read about it on the blog
[7:39] Khamon Fate: D'ya mean the confirmation emails would come to them via IM?
[7:39] cijestra Laval: super voll scheisse und der rest?
[7:39] Rex Cronon: i am kind or worried, should i even log into my email account?
[7:40] Zero Linden: Actually, I don't know which way - the normal way we confirm those... in fact we were getting 100s of bug reports from them!
[7:40] Dnate Mars: I heard they were getting the actually bug reports
[7:40] Khamon Fate: I've not experieneced anything like that.
[7:40] cijestra Laval: zum kotzen was ist los mit dem scheiss siehst du alles normal?
[7:40] Khamon Fate: Or heard of it
[7:40] Zero Linden: Initial indications were that this had something to do with capabilities - since we moved Bug report to a capability recently
[7:41] Rex Cronon: does it have anything to do with the new client version? i am still using the older version
[7:41] Zero Linden: So folks in my studio, Tess Linden in particular, spent two and half days pouring over the code looking for a probelm
[7:41] Zero Linden: Rex - no
[7:41] Khamon Fate: Zero are they getting multiple copies of the same confirmations?
[7:42] Zero Linden: Yesterday, with three of staring at the logs, there was the bug - all along, something we'd never have guessed and that I noticed only by accident
[7:42] Zero Linden: a UUID collision
[7:42] Zero Linden: !
[7:42] Jarod Godel: Can you define "capabiity"?
[7:42] cijestra Laval: warte du musst jetzt mal kucken wie meine haare gleich aussehen ok?!
[7:42] Zha Ewry winces, as she imagines people poring over logs
[7:42] Wyn Galbraith: Two objects with the same UUID?
[7:42] Khamon Fate: aha, hmm, I hadn't thought of that either.
[7:43] Wyn Galbraith: /loves pouring over logs. :)
[7:43] Zero Linden: Jarod - a capability is a item, in this case a URL, that enables you to do some action. The URL is all you need to do it. The URL is unguessable and unforgable (read: it is a big string of random nunbers)
[7:43] Zero Linden: that was when you perform the action, the mere fact that you have the capability is enough for us to know that you're legit
[7:43] Zha Ewry frowns.. Fairly ungeussable...
[7:43] Jarod Godel: Like a Session ID?
[7:43] Zero Linden: Jarod - right - or like a coookie on the web
[7:43] Khamon Fate: Are y'all going to attach a database identifier to those long strings of numbers so that they can't be duplicated across the system?
[7:44] Zero Linden: Well - here's the thing
[7:44] cijestra Laval: mit dir mir hat zero geschrieben aber ich verstehe nix
[7:44] Zero Linden: the ids we use, for objects, session ids, and in fact capabilities
[7:44] Zero Linden: are UUIDs
[7:44] Zero Linden: which are a standard, 128 bit unique identifier
[7:44] cijestra Laval: wie sehen meine haare jetzt aus?
[7:44] Zero Linden: statistically, they are unique across all systems unil the heat death of the universe
[7:44] cijestra Laval: warum nicht?
[7:45] Wyn Galbraith waits for the punchline.
[7:45] Khamon Fate: but thye're not
[7:45] Hiro Market: statistically?
[7:45] Jarod Godel: Zero ist sehr technisch.
[7:45] Zero Linden: well - they are actually
[7:45] Zha Ewry sighs. Staisticall somehow never behaves as you expect
[7:45] Khamon Fate: Because you say they are?
[7:45] cijestra Laval: ich dreh durch
[7:45] Hiro Market: how do u generate them then?
[7:45] Stefanovitch Martinek: wieso?
[7:45] Zero Linden: if you do the math - even generating a million a second - on a million computers, you still have several billion years before you have a 1 in a million chance of a collision
[7:46] cijestra Laval: weil ich nix sehe und weiss nicht wohin
[7:46] Zero Linden: If there isn't a bug in the generation, that is
[7:46] Zero Linden: There is an RFC for it....
[7:46] Jarod Godel: Gut
[7:46] Zha Ewry nods
[7:46] Stefanovitch Martinek: was möchtest du?
[7:46] Zero Linden: RFC 4122
[7:46] Khamon Fate: So there was a bug in the generation?
[7:47] Zero Linden: Yes, it turned out that there was a bug in our generation code that we use in python
[7:47] Zero Linden: and capabilities are generated in python
[7:47] cijestra Laval: ich will daß ich wieder normal spielen kann und arbeiten
[7:47] Zero Linden: So - what was happening was that two capabilities were ending up with the same UUID - and given the nature of the bug, they would most likely be for the same user
[7:47] cijestra Laval: nein ich kann mich nicht richtig sehen
[7:48] cijestra Laval: grafik total verzogen
[7:48] Zha Ewry winces... Yes.. That would be ugly
[7:48] Jarod Godel: Sie müssen mit Phasenhilfe für dieses Problem in Verbindung treten.
[7:48] Zero Linden: In bug report case, the EventGet capability (getting events from the sim) was confused with the Bug Report capability
[7:48] Khamon Fate: Is it fixed?
[7:48] Zero Linden: since you get events all the time, constantly from the sim..... well, you get the picture
[7:48] cijestra Laval: jarod....wo mach ich das?
[7:48] Zero Linden: Khamon - not yet - we have a patch for capabilites that we'll roll live today
[7:49] Khamon Fate: I picture an av saying ow ow ow ow ow ow ow ow
[7:49] Zero Linden: and we have a fix almost done for all python UUID generation that we can roll after that
[7:49] Hiro Market: just out of interest how many do u generate a second?
[7:49] Zha Ewry: I mostly picture Zero and company wincing and moaning
[7:49] Wyn Galbraith: Sounds like a good bug... I mean an interesting bug :)
[7:49] cijestra Laval: wann hast du zeit dachte ihr seid in kaufbeuren
[7:50] Zero Linden: well - for capabilities, not that many - about 10 every time you region cross - and so a given host was doing like 7000 a day on average
[7:50] Khamon Fate: I forget that SL is highly steeped in highly standardized open source code. My image is a hotbed of from scratch programmers reinventing every little wheel.
[7:50] Jarod Godel: cijestra ... Mein Deutsch ist schlecht. Ich denke, daß ich erklären kann.
[7:50] Zero Linden: Well, in this case we were - there was no standard python uuid module at the time we needed it, so we rolled our own
[7:50] cijestra Laval: jarod ist in ordnung versuche es einfach
[7:51] Jarod Godel: Schauen Sie oben in Ihrem Hilfemenü.
[7:51] Wyn Galbraith loves those sort of bugs, "The ones you really have to dig for to find out why."
[7:51] Zero Linden: that version didn't anticipate needing to be called more than one every 10 ms.
[7:51] Jarod Godel: Verwenden Sie dann Hilfe Antrag.
[7:51] Zha Ewry: Zero.. you're depending on capabitlies to be unique, but not obscure?
[7:51] Zero Linden: And things like /dev/urandom weren't so ubiquitous back then
[7:51] Zero Linden: Zha - no obscure too - we use type 4 UUIDs which are random
[7:52] Zero Linden: type 1 are what you are thinking of where the MAC address and time are in the UUID
[7:52] cijestra Laval: stefanovitch-ja kommt doch vorbei auf kaffee
[7:52] Jarod Godel: Es kann möglicherweise nicht deutsche Lautsprecher an geben jetzt.
[7:52] Jarod Godel: Können Sie Englisch sprechen?
[7:52] Zha Ewry: Well, by obscure.. I mean are you depending on them for security, or only uniqueness?
[7:52] cijestra Laval: jarod- danke werde es versuchen.)
[7:53] Khamon Fate: Yes, they're "ungessable"
[7:53] Zero Linden: Ka Ping's uuid module for python (which is standard in 2.5) is an excellent tutorial in functioning code
[7:53] cijestra Laval: nein spreche nur deutsch
[7:53] Zero Linden: For capabilities we are depending on them for security
[7:53] Jarod Godel: Sie haben Recht. Keine deutschen Lautsprecher jetzt.
[7:53] Zha Ewry nods. Now you're going to make me sit and do Avatar in the middle attacks on that approach
[7:54] Zero Linden: Though the requirements are less worrisome than it might seem since for these capabilities they are only good on one machine (the sim you are on) and only for as long as youare there
[7:54] Zero Linden: Zha - that is why capabilities are only transmitted (given or used) over verified SSL connections
[7:54] Zha Ewry nods
[7:54] Zero Linden slays the avatar in the middle!
[7:54] Zha Ewry: But.. Even so... One chews on it
[7:55] Zha Ewry: SSL helps... Of course
[7:55] Zero Linden: Oh yes - I chew and worry all the time --- SSL programming is VERY easy to get wrong
[7:55] Wyn Galbraith: So the UUID code runs on each sim server only for that time for that avatar?
[7:55] Zero Linden: even if you use libs to do all the work....
[7:55] Zero Linden: These UUID's, used for viewere capabilities, yes
[7:55] Zha Ewry nods.. The killer is often getting the very first exchange right Not getting spooffed up front
[7:55] Zero Linden: You're all using them right now!
[7:55] Khamon Fate: So y'all *do* seperate our users session data on a sim at a time from our demographic account data
[7:56] Zero Linden: They are used for the map layer information, and for region crossing
[7:56] cijestra Laval: und kommt ihr vorbei? Oder ich komme zu euch dann kann ich mich sehen und du kannst mir alles erklären
[7:56] Khamon Fate: I thought you didn't and always thought that was odd
[7:56] Zero Linden: Khamon - indeed - there are several layers of split
[7:57] Zero Linden: There is avatar local data (never leaves the sim), avatar global data (like what you're wearing - so when you log out and back in at home it is still on) that is in one DB
[7:57] Zero Linden: customer data that is in a second db
[7:57] Khamon Fate: I wish y'all would split groups into accounts with inventory so we could easily share items.
[7:57] Jarod Godel: Ich spreche nicht Deutschbrunnen genug, um Ihr Problem zu regeln. Ich entschuldige mich.
[7:57] Zero Linden: and sensitive data (CC info, etc) that is in yet a third system ("the vault") with very restricted paths into it
[7:57] Wyn Galbraith: How can you be sure that the UUIDs are unique, there must be millions and millions of UUIDs made at the same moment.
[7:58] Zero Linden: Wyn
[7:58] cijestra Laval: jarod danke trotzdem KISSSSSS
[7:58] Zha Ewry: That's why the space is so big, and you use thingsl ike time in building them
[7:58] Jarod Godel: Ich würde vorschlagen, daß Sie Ihre Videokartetreiber aktualisieren.
[7:58] Zero Linden: this is the lovely fact about the human mind - we find it very hard to grapple with imponderables -
[7:58] Jarod Godel: Glücklich zu helfen.
[7:58] Zero Linden: yes - millions of millions - or 2^20 * 2^20 = 2^40
[7:58] Zero Linden: but there are 2^124 UUIDs
[7:59] Jarod Godel: That few, hmm? ;)
[7:59] Zero Linden: so, still , each UUID is just one in 2^84!
[7:59] Zero Linden: which at a million a second is still 2^64 seconds
[8:00] Zero Linden: Which is in turn 2^42 YEARS
[8:00] cijestra Laval: bist du noch da stefanovitch?
[8:00] Maxwell Faulkland: Hi folks
[8:01] Rex Cronon: hi
[8:01] cijestra Laval: hi
[8:01] Zha Ewry nods. The RFC is pretty well worked out...
[8:01] Zero Linden: Yes - though I really reccomend reading Ka Ping's python implementation - it is a beautiful example of literate programming
[8:02] cijestra Laval: dankeschön hast du immernoch nicht meine frage beantwortet habt ihr lust her zu kommen?
[8:02] Dnate Mars: 340 undecillion different UUIDs
[8:02] Zero Linden wonders if he should leave the German conversation in the transcript - as it would be relevant to German readers -- or edit it out...
[8:03] Jarod Godel: It's about her video card
[8:03] Zero Linden: So, the lesson was: UUIDs, like SSL, is a beautiful tool, but you have know your libraries well.
[8:03] Wyn Galbraith: Sorry blue screen of death. I'll check the log.
[8:04] Zero Linden: I have talked with developers and we may have some guests in the comming weeks. I'll announce on my home page on the wiki
[8:05] Zero Linden: but, like most things I do, it might be annouced at the last minute!
[8:05] Zha Ewry bounces up and down in her chair in excitement
[8:05] Zero Linden: I also went through and re formatted all the previous talks - thanks again to Dr Scofield for the original script
[8:06] Maxwell Faulkland: Forgive my silence, but I just don't have much to say on the current subject, and I'm just patiently wating for ample oppertunity to make comments of my own.
[8:06] Hiro Market wonders if there is, or zero can supply, some sort of development map for SL over the next year or two
[8:06] Jarod Godel: Zero, did you get that object I sent you? I ask because I didn't know if you had a chante to look at it, and I was wondering if you'd looked at it because it brings up a security concern.
[8:06] Hiro Market: might be relevent to what to discuss with developers
[8:07] Zero Linden: Hiro - to a first order approximation: scaling, scaling, scaling... and then scaling.
[8:07] Zha Ewry grins. Good answer zero
[8:07] Zero Linden: To be less glib, tomorrow is the end of the quarter and as a company we all self-review the prior quarter and set goals for the next.
[8:07] Zha Ewry: Add figuring out multi-verse security to the tail end of the list
[8:08] Zero Linden: I'll gather the enginering goals and try to summarize next time -- and from that we can discuss the trajectory over the next year.
[8:08] Zero Linden: two years is WAY too far out now for us to predict with anything other than wild-assed guesses -- so we don't
[8:08] Zero Linden: Jarod - I got it, but havn't had time to look it over yet.
[8:09] Zha Ewry: Zero.. do you have any sense of when you'll get some relief from the current bottleneck that show up around 30,000 concurrent?
[8:09] Zero Linden: Do you want to mention the security issue here?
[8:09] Zha Ewry: *bottlenecks
[8:09] Khamon Fate: ditto bottlenecks?
[8:10] Taja Beatty: Hello
[8:10] Zero Linden: Zha - There doesn't appear to be one major thing holding us back... Each bottle next is a
[8:10] Jarod Godel: Zero, I was just wondering if LL had a problem with not having limits on changing streams.
[8:10] Rex Cronon: hi
[8:10] Zero Linden: Each bottle neck is some particular sub-system hitting capacity-- and so we go off and figure out how to make that one be partitionable, or scalebl or go away
[8:10] Zha Ewry: Well... as a user, and just as a user, somewhere between 30,000 and 35,000 something goes pear saped
[8:10] Zero Linden: and then we watch for the next system to get full
[8:11] Jarod Godel: err, grabbing new streams from the web.
[8:11] Zha Ewry: and that number has been true for several weeks now.
[8:11] Zero Linden: Right now, one of the big ones is the user server
[8:11] Zero Linden: Every viewer keeps an active connection to the user server
[8:11] Zero Linden: That poor process is getting a little overwhelmed with 30k viewers talking to it
[8:12] Zero Linden: The good news is that it is going away entirely very soon!
[8:12] Rex Cronon: therefore divide and conquer
[8:12] Zero Linden: A set of partitioned servers will handle its functions
[8:12] Zero Linden: and we can divvy it up among as many machines as we need
[8:13] Zero Linden: It is being replace entirely with a set of web services written in Python
[8:13] Zha Ewry: Oh, hey, Zero.. Quick, mildly related question..
[8:14] Zha Ewry: Presence, who's on.. gets totally messed up, at about 28K-35K users. What's causing that?
[8:14] Zero Linden: Uhm, define "totally messed up" - if so that is news to me
[8:14] Zha Ewry: Its pretty spooky when you can see someone, and not get them on your friends list, even as you chat to them and IM to them
[8:14] Zero Linden: Ah
[8:14] Zha Ewry: I'll see people in front of me that don't show up as friends
[8:14] Zero Linden: well... that is unfortunate design, I believe
[8:15] Zero Linden: (and are you sure they haven't removed the ability for you to see them online?)
[8:15] Khamon Fate: Same problem Zha, everytime we open our inventory (calling cards), look at our friends list, search a profile, we hit the user server
[8:15] Zha Ewry: (II could also ask why changing group active makes avatars pop into view, at random when they are in front of ou)
[8:15] Hiro Market has seen the prescence issue regularly too
[8:15] Zha Ewry: Well. two states.
[8:15] Zero Linden: We send a friends list when you log in. If that friends list doesn't make it all, or has bad information,
[8:15] Zha Ewry: 1) you don't see someone as lonline. You send an IM and they pop online
[8:16] Zero Linden: you will have bad status
[8:16] Zero Linden: as we only send updates on status changes
[8:16] Khamon Fate: sorry I mean the All Hail The Central User Server
[8:16] Zha Ewry: 2) same state, and they don't pop online even with an IM
[8:16] Zero Linden: Khamon - acutally avatar presence *IS* partitioned, current running on four servers
[8:16] Zero Linden: we've talked about going to 8 soon
[8:16] Zha Ewry: And not, not banned as we're both chattig, try to get to see each other.
[8:17] Zha Ewry: (and I've seen it between me and an alt. soo I know I'm not spoofing myself)
[8:17] Zero Linden: No, Khamon - friends and calling cards are not routed via the user server
[8:17] Zha Ewry: In general, when this is going on, you see pople pop on as they log on
[8:17] Zero Linden: The sim handles your inventory (sadly), and managing your friend's presence
[8:18] Khamon Fate: Wull then I *really* don't understand why we're still consistently suffering the types of presence issues Zha is describing?
[8:18] Zero Linden: Zha - exactly - the updates fix thigns
[8:18] Zero Linden: what is going on in a broader sense here is
[8:18] Zero Linden: a change in design style:
[8:18] Zero Linden: In a world with large scaling, and web services as a back ends, you have to code on the assumption that every request might fail,
[8:19] Zero Linden: and that all data is only a snapshot in time
[8:19] Zha Ewry: Yes.. A re-log often cures presence. But it is a heavyweight solution
[8:19] Zero Linden: that there is no "Truth" to a response -- this is essence of REST
[8:19] Zha Ewry: Well.. if you are idempotent... and REST clever
[8:19] Zha Ewry: that's the best way to avoid that
[8:20] Zero Linden: To the credit of the early coders at LL, much of the systems were in fact designed that way, even though they weren't using REST exactly
[8:20] Jarod Godel: Ten we need a refresh button.
[8:20] Jarod Godel: *Then
[8:20] Zha Ewry: It seems, at the moment, that the SL client doesn't have a way to re-invoke some of the idempotent services
[8:20] Zero Linden: However, there are still things that were written on the assumption of RPC or DB direct access style semantics
[8:20] Zha Ewry nods at Jarod Zhactly.
[8:20] Zero Linden: and these things are going to fail in odd ways until they are all replaced
[8:20] Zero Linden: whcih they will be over the course of the next year
[8:21] Zero Linden: Zha - another design stance problem is that for many things the viewer doesn't invoke, it is told by the sim
[8:21] Zero Linden: So, for example, I don't think there is even a message for the viewer to request the friends' status
[8:21] Zha Ewry: Can we prod the sim? Refresh one level up?
[8:22] Jarod Godel: If we cross sim borders, would that force a refresh?
[8:22] Zero Linden: In the original design, the simulator was both proxy for the simulated land and proxy for the avatar
[8:22] Zha Ewry: I'd be happy to do something explcit when it all gets messed up, rather than re-log, which has to cost the host side a lot more
[8:22] Zero Linden: this resulted in the unfortunate choice that the sim has to "know" too much about the state of both the avatar and the viewer
[8:22] Wyn Galbraith: Crossing sim borders can bring a whole other sort of problem... l
[8:23] Zero Linden: As I talked about in early February -
[8:23] Zero Linden: dividing up responsibility between the simulator for the land, an "agent domain" for state of the agent, and the viewer (for state of the viewer)
[8:23] Zero Linden: is the architectural direction for the next year
[8:24] Zero Linden: That will, we believe, solve most of these kinds of issues once and for all by enabling the viewer to be much more incontroll of what it knows
[8:24] Zero Linden: which in turn will enable different kinds of viewers (cell phone always-in-world client, anyone?)
[8:24] Zha Ewry grins... Good.
[8:25] Jarod Godel: Inventory management from a web page?
[8:25] Zha Ewry: I'd love to be able to IM to a friend "Stuck on the FDR drive, in world in an hour"
[8:25] Rex Cronon: would/should a cell phone viewer be able to create a 3D environment?
[8:25] Zha Ewry: I do that via e-mail now, and it is really clunky
[8:26] Wyn Galbraith got a cell phone call from her son yesterday saying that exact thing. Well not where he was wasn't the same.
[8:27] Wyn Galbraith: Would be nice to get a message like that in-world.
[8:27] Jarod Godel: Zero, did the texture on a prim updates at the wiki do any good?
[8:27] Zero Linden: Jarod - they are great - thanks - yes they are catalyizing discussion within LL
[8:28] Zero Linden: I think without them we'd be wandering in the weeds over what to do
[8:28] Zero Linden savors inventory managment via a web page....
[8:28] Zha Ewry savors scripting her inventory...
[8:29] Jarod Godel: I just want, at last, something like an SL-API, so I can script NPC's
[8:29] Zha Ewry will write almost any scripting solution client side to get some of it sorted out :-)
[8:30] Rex Cronon: i have some lag here
[8:31] Jarod Godel: Zero, are you still implementing Jabber/XMPP for IM's?
[8:31] Zero Linden: We have never been implementing Jabber/XMPP -- we only talked about it as an option
[8:31] Khamon Fate: Thanks for hosting Zero, yours are the best dev office hours by far.
[8:31] Jarod Godel: Oh.
[8:31] Zha Ewry: Yes, yes.
[8:31] Zero Linden: At this stage, I think what we'd look at is a Jabber/XMPP gateway -
[8:31] Zha Ewry: Encourage your friends at LL to com joint us
[8:31] Zha Ewry: *come
[8:31] Zero Linden: I don't think having our main IM system *be* Jabber would buy us much
[8:32] Jarod Godel: Ok.
[8:32] Zero Linden: Thanks, Khamon - kind words
[8:32] Zha Ewry nods A good gateway would be super
[8:32] Zha Ewry: Not clear you need more
[8:32] Khamon Fate: Well deserved, must away
[8:32] Zero Linden: Hopefully we'll see some other devs come soon.
[8:32] Jarod Godel: Yes.
[8:32] Zha Ewry nods and agrees. Well, well deserved
[8:32] Zero Linden: Thanks all for coming
[8:32] Zha Ewry: And Zero, we know ittakes time
[8:32] Zha Ewry: do thanks for investing
[8:32] Zero Linden: I've got to get back to coding.
[8:32] Wyn Galbraith is queen of blue screen lately.
[8:32] Zero Linden: See ya'll soon.
[8:32] Dnate Mars: Thanks for hosting, but may I have a bear before you go?
[8:33] Zero Linden: Oh
[8:33] Wyn Galbraith: Thanks Zero.
[8:34] Dnate Mars accepted your inventory offer.
[8:34] Dnate Mars: TY
[8:34] Wyn Galbraith: I'd like a Zero bear too :)
[8:34] Zero Linden: Uhoh - see what you've started!
[8:34] Taja Beatty accepted your inventory offer.
[8:34] Wyn Galbraith: I've been wanting to ask. I only have one you know...
[8:34] Wyn Galbraith accepted your inventory offer.
[8:35] Wyn Galbraith: Thanks ;)
[8:35] Zero Linden: Bye all