User:Babbage Linden/Office Hours/2008 10 15

From Second Life Wiki
Jump to navigation Jump to search

Transcript of Babbage Linden's office hours:

[8:06] Babbage Linden: hi nock

[8:06] Nock Forager: Hi

[8:06] Babbage Linden: how's things?

[8:06] Nock Forager: The weather goes cold so quickly.

[8:06] Babbage Linden remembers he hasn't replied to LSL con invite

[8:07] Nock Forager: hehe

[8:07] Babbage Linden: let me look at my calendar

[8:07] Nock Forager: http://lsl-con.org/2008/lsl-convention-2008-en.php

[8:07] Nock Forager: We've added google calendar on the page.

[8:08] Nock Forager: Could be helpful to comvert timezone difference.

[8:08] Fake Fitzgerald: hello

[8:08] Nock Forager: Hi Fake

[8:08] Babbage Linden: how about friday 24th during the day GMT

[8:08] Babbage Linden: hi fake

[8:09] Nock Forager: 24th day GMT is...

[8:09] Babbage Linden: friday

[8:09] Nock Forager: on SLT 8am or 7am?

[8:09] Babbage Linden: yes

[8:09] Babbage Linden: 7am would be better

[8:09] Nock Forager: nice

[8:10] Nock Forager: 7am is our 23:00 night.

[8:10] Nock Forager: Many scripters are nightshifter :)

[8:10] Nock Forager: it would be better :)

[8:10] Nock Forager: OK I'll put it on the schedule.

[8:10] Babbage Linden: ok, great

[8:11] Babbage Linden: i'll put it in the calendar

[8:11] Nock Forager: If you have some theme on your mind, let me know before it.

[8:11] Nock Forager: I'll translate it in digest before your talk.

[8:12] Babbage Linden: done

[8:12] Nock Forager: Thanks.

[8:12] Babbage Linden: new script region?

[8:12] Nock Forager: Hi Scouse.

[8:12] Nock Forager: yes

[8:12] Scouse Linden: hi

[8:12] Nock Forager: We talking about our convention. LSL convention 2008.

[8:12] Nock Forager: http://lsl-con.org/2008/lsl-convention-2008-en.php

[8:13] Babbage Linden: ok good

[8:13] Babbage Linden: so, have any of you had any problems or successes with Mono this week?

[8:14] Nock Forager: Fake? you speaking about your script odd beheivior?

[8:15] Babbage Linden: we've been looking in to the remaining issues around http://jira.secondlife.com/browse/SVC-2908

[8:15] Fake Fitzgerald: yeah, I heard Babbage about garbage collection on mono scripts previous week

[8:15] Babbage Linden: http://jira.secondlife.com/browse/SVC-2975

[8:15] Babbage Linden: http://jira.secondlife.com/browse/SVC-3137

[8:16] Babbage Linden: http://jira.secondlife.com/browse/VWR-9486

[8:16] Babbage Linden: http://jira.secondlife.com/browse/SVC-3220

[8:16] Babbage Linden: if anyone can help narrow those down it would be greatly appreciated

[8:17] Fake Fitzgerald: I'd worked hard on this week, so I couldn't program with LSL. but I do not hear from my friend about mono errors.

[8:17] Babbage Linden: we've also fixed a problem with LSL script state changes

[8:17] Babbage Linden: which was a critical issue as it caused sim crashes and affected LSL scripts

[8:17] Dizzy Banjo: hey peeps

[8:17] Fake Fitzgerald: hi Dizzy

[8:17] Babbage Linden: running on the LSO engine

[8:17] Nock Forager: Hi Dizzy

[8:17] Babbage Linden: we'll deploy that fix urgently

[8:18] Babbage Linden: and then the mono only issues in 1.25 server or 1.26 server

[8:18] Babbage Linden: but I think we've very nearly ironed all the kinks out of mono now

[8:18] Babbage Linden: which is great

[8:19] Babbage Linden: we'll be starting the HTTP In beta on the preview grid soon

[8:19] Babbage Linden: it will probably be available on a couple of sandbox regions initially

[8:19] Nock Forager: Does it need client update too?

[8:19] Babbage Linden: and I encourage all of you to have a play

[8:19] Babbage Linden: no HTTP In is all server side

[8:20] Babbage Linden: it's a suite of new LSL library functions

[8:20] Babbage Linden: and a new event http_request

[8:20] Babbage Linden: that allows LSL scripts to act as HTTP servers

[8:20] Babbage Linden: it both allows bidirectional communication with the web

[8:21] Valiant Westland: That's terrific

[8:21] Babbage Linden: and secure object-object communication inside SL

[8:21] Babbage Linden: so no more random chat channel generation

[8:21] Hesius Heron: A prim IM?

[8:21] Valiant Westland: What data types will be supported the tne new http_request?

[8:21] Valiant Westland: sheesh.... fat fingers.... "...by the new..."

[8:22] Babbage Linden: let me get you a link to the current external documentation

[8:23] Babbage Linden: http://wiki.secondlife.com/wiki/LSL_http_server/design

[8:23] Babbage Linden: there are the current details

[8:23] Dizzy Banjo: cool

[8:23] Babbage Linden: the design allows for both RESTful APIs implemented by scripts

[8:24] Babbage Linden: and capability based schemes

[8:24] Babbage Linden: using the caps system we use for the rest of SL

[8:24] Dizzy Banjo: apparently these guys are going to implement restful soon : http://www.pachube.com/ could be funky

[8:25] Dizzy Banjo: hi Lillie :)

[8:25] Babbage Linden: in order to provide more scalability than the existing email or XML-RPC in paths HTTP in doesn't do routing inside the SL grid

[8:25] Lillie Yifu: hihi

[8:25] Babbage Linden: so, you request an URL

[8:25] Babbage Linden: get back the public URL for the cap

[8:25] Babbage Linden: then need to tell clients about the public URL

[8:25] Babbage Linden: for them to communicate with you

[8:26] Babbage Linden: so, I anticipate a number of external dynamic DNS services springing up

[8:26] Siann Beck: Ah, that's the reason for the lifetime limits on the URLs. Makes sense.

[8:26] Babbage Linden: that will redirect stable URLs to the current public URL for the script

[8:26] Babbage Linden: which will change if the script changes region

[8:26] Babbage Linden: or the region restarts

[8:27] Lillie Yifu: so to have a surver in sl we need something outside of sl that will tell peopel wher eit is? I missed the first half of that.

[8:27] Babbage Linden: another interesting aspect of HTTP in is that it's the first client of our script resource limits framework

[8:28] Babbage Linden: each parcel is given a pool of URLs it can allocate

[8:28] Siann Beck: Lillie -- URLs expire when the script restarts, when you cross regions or TP.

[8:28] Babbage Linden: and each avatar has a pool of URLs for attachments

[8:28] Siann Beck: Thus you need an external routing resource.

[8:28] Valiant Westland: What are the proposed pool allocations/limits?

[8:28] Babbage Linden: let me get the current numbers...

[8:29] Imaze Rhiano: HOLA!

[8:29] Siann Beck: Hello Imaze.

[8:30] Lillie Yifu: kk is there a message for when that URL changes, so that the script can tell the outside that it's local address has changed?

[8:30] Babbage Linden: yes, the changed event will fire

[8:30] Babbage Linden: when URLs are lost

[8:31] Siann Beck: You have to use the change event, and check for the various changes that will cause the URL to expire.

[8:31] Siann Beck: Oh? Is there going to be a separate constant for that, Babbage?

[8:31] Lillie Yifu: so we need to document which ones those are completely

[8:31] Lillie Yifu: or is there going to be a flag for that?

[8:32] Siann Beck: It was my understanding that you had to specifically test for CHANGED_REGION, CHANGED_TELEPORT, etc.

[8:32] Babbage Linden: sorry, i'm having trouble finding the current proposed url pool numbers

[8:32] Lillie Yifu: also have something in the state_entry

[8:33] Lillie Yifu: since script reset won't be caught by changed

[8:33] Imaze Rhiano: why are we talking about changed events?

[8:33] Babbage Linden: siann, yes

[8:33] Siann Beck: It's on the wiki page; basically it's the same as the parcel prim limits, and 38 per av for attachments.

[8:33] Valiant Westland: Thanks for looking Babbage... when you find them can you shoot them out to the group please?

[8:33] Valiant Westland: Thanks Siann!

[8:33] Babbage Linden: you need to check changed events that may affect urls

[8:33] Siann Beck: There are some other factors too, I believe, but that's the basics.

[8:34] Lillie Yifu: so best would be to write a function

[8:34] Siann Beck: Ah, OK. So there isn't going to be a specific trigger for lost URLs?

[8:34] Lillie Yifu: fire the funciton in state entry, or on any of hte changed eents.

[8:34] Babbage Linden: yes

[8:34] Valiant Westland: What happens when an AV crosses a sim boundary during a data exchange?

[8:35] Siann Beck: I think it would be good to have a function to test if a URL is valid.

[8:35] Job Island Promoter: Imaze Rhiano Click GOTO PAGE and click the Magic Buttons for FREE L$.

[8:35] Babbage Linden: the event will be processed on one simulator or another

[8:36] Babbage Linden: so, if a request comes in while on the source sim before the crossing

[8:36] Lillie Yifu: nao spam Imaze por favor

[8:36] Babbage Linden: then the script will still be able to respond to is as normal

[8:36] Babbage Linden: if the request comes in after the crossing it will get a 404

[8:37] Babbage Linden: and will need to retry after the script has got a new URL

[8:37] Lillie Yifu: hmmm

[8:37] Babbage Linden: and propogated it to the client

[8:37] Siann Beck: Really? Right now an expired URL returns "missing cap"

[8:37] Lillie Yifu: would it be possible to have some way of precashing the new URL

[8:37] Valiant Westland: Good idea Lillie

[8:37] Lillie Yifu: so the outside can just ty the new url if he old one drops?

[8:38] Babbage Linden: not currently

[8:38] Lillie Yifu: that could be set to expire quickly if not actually used

[8:38] Babbage Linden: or easily

[8:38] Lillie Yifu: hmmm

[8:38] Lillie Yifu: so we could use antennas

[8:39] Babbage Linden: siann, that will probably be the same error then

[8:39] Siann Beck: Is that going to change, Babbage -- will expired URLs return a 404?

[8:39] Siann Beck: Ah, OK.

[8:39] Lillie Yifu: that is have an object in a sim that will route and which sits

[8:39] Lillie Yifu: and the attached object could talk to it

[8:39] Babbage Linden: most of the use cases will be static scripts that don't move

[8:39] Babbage Linden: and region restarts will be rare

[8:39] Siann Beck: Right.

[8:39] Valiant Westland: Unless we're talking about a HUD

[8:39] Lillie Yifu: I think that you should expect scripts on people

[8:39] Babbage Linden: so occasionally you will get a high latency request across a restart

[8:39] Lillie Yifu: because most rp systems

[8:40] Babbage Linden: most of the time it will be quick

[8:40] Lillie Yifu: will use this capability

[8:41] Lillie Yifu: my thoguth is that a better design pattern would be to encourage

[8:41] Lillie Yifu: attached http to talk to a static object.

[8:41] Babbage Linden: valiant, agreed, region crossing and request negotiation shouldn't create too much of a problem

[8:41] Babbage Linden: although lillie's approach would also work in some cases

[8:41] Lillie Yifu: and the static object talks to the touside world enough to tell the outside world what the new http is

[8:41] Siann Beck: I imagine a lot of the useage will be object-to-object.

[8:42] Babbage Linden: yes

[8:42] Lillie Yifu: siann ++

[8:42] Babbage Linden: it will be the best way to do secure script-script communications

[8:42] Babbage Linden: between objects

[8:42] Lillie Yifu: replacing all of the klunky ways we have right now

[8:43] Lillie Yifu: wouldit be faster than chat based interfaces?

[8:43] Babbage Linden: it should be about the same

[8:43] Siann Beck: How about in terms of lag?

[8:44] Babbage Linden: i imagine it will be about the same

[8:44] Babbage Linden: we should test it in beta

[8:45] Lillie Yifu: I'm willing to do that

[8:45] Babbage Linden: it will be much faster than XML-RPC or email

[8:45] Lillie Yifu: I even have just the object for it

[8:45] Siann Beck: Yay! :)

[8:45] Lillie Yifu: the piano will be a good test

[8:45] Babbage Linden: and more predicable under load

[8:45] Babbage Linden: XML-RPC is very variable

[8:46] Lillie Yifu: hmmm this could work for midi

[8:46] Lillie Yifu: (fianlly)

[8:46] Lillie Yifu: finally*

[8:46] Dizzy Banjo was just thinking that .. lol

[8:46] Babbage Linden: so, as there are lots more people here now

[8:46] Babbage Linden: i'll ask my first question again

[8:46] Babbage Linden: has anyone had any Mono problems or successes this week?

[8:47] Lillie Yifu: I have a big problem that has shown up with mono but it isn't a mono problem per se

[8:47] Twisted Laws: all is well for me :)

[8:47] Lillie Yifu: since lsl is also broken

[8:47] Imaze Rhiano: success - ya - problems - no

[8:47] Babbage Linden: what's the problem you've found lillie?

[8:47] Lillie Yifu: it's a problem with select and movement

[8:48] Lillie Yifu: small objects that move are filtered out if the object isn't selected

[8:48] Lillie Yifu: it breaks my keyboard badly

[8:48] Lillie Yifu: so the sim is still moving them

[8:48] Lillie Yifu: and if you select the object you can see them move

[8:48] Lillie Yifu: but not if the object is not selected

[8:48] Lillie Yifu: it showed up last server release

[8:48] Babbage Linden: sounds like an interest management issue

[8:48] Lillie Yifu: and has only gotten worse with this one.

[8:48] Babbage Linden: you're just not seeing small things move on the viewer?

[8:49] Lillie Yifu: Sidewinder said I should inflict on the person who is looking at the selection bugs

[8:49] Lillie Yifu: hmmmm

[8:49] Lillie Yifu: use case

[8:49] Lillie Yifu: piano keyboard

[8:49] Lillie Yifu: the kyes are prims

[8:49] Lillie Yifu: they move

[8:49] Babbage Linden: you should report it if you haven't already, yes

[8:49] Lillie Yifu: the first movement of a key is visible

[8:49] Lillie Yifu: and then after that, none of the others are

[8:49] Valiant Westland: I have one of those pianos! DAMNIT!

[8:49] Lillie Yifu: unless the avatar slects the object

[8:49] Lillie Yifu: and then they see the movement

[8:50] Babbage Linden: imaze, we're talking about HTTPS as HTTP In is going to be in beta soon

[8:50] Babbage Linden: it sounds like an interest management issue

[8:50] Imaze Rhiano: can objects talk with each other through http?

[8:50] PORTAL Stargate whispers: If the map doesn't appear, please touch the portal, then click TELEPORT on the map to travel.

[8:50] Siann Beck: Yes, Imaze.

[8:50] Imaze Rhiano: thank you - that is intresting

[8:50] Babbage Linden: if you have a copy of an object in your viewer you should see it move

[8:51] Babbage Linden: i don't think interest management has changed in the simulator

[8:51] Lillie Yifu: hmmm it seems to have soemthing to do with the long running compelxity of selection code that makes ll target omega fail every now and again

[8:51] Babbage Linden: so it may be a viewer issue

[8:51] Lillie Yifu: viewer sim communication issue possibly

[8:51] Lillie Yifu: but not a viewer issue alone

[8:51] Lillie Yifu: because it shows up on even some rather archaic viewers now

[8:51] Babbage Linden: interesting

[8:52] Lillie Yifu: say 1.18 nicholaz based viewers

[8:52] Babbage Linden: in which case please file a server JIRA

[8:52] Lillie Yifu: working on it

[8:52] Babbage Linden: and andrew will triage it next week

[8:52] Lillie Yifu: but needed to docuemnt and test cases

[8:52] Babbage Linden: that would be great

[8:52] Lillie Yifu: like getting 1.18 to work

[8:52] Siann Beck: Excuse me, I have to run. See you all later.

[8:52] Babbage Linden: as much information as possible that helps us track it down and repro it

[8:52] Lillie Yifu: thank you for being here siann

[8:52] Babbage Linden: good to see you again siann

[8:52] Siann Beck: Likewise!

[8:53] Babbage Linden: ok, I only have a few minutes left also

[8:53] Babbage Linden: anything else you'd like to talk about?

[8:53] Twisted Laws: how long before the http stuff is on the beta grid?

[8:54] Babbage Linden: in the next week or so I imagine

[8:54] Twisted Laws: :)

[8:54] Babbage Linden: the release team have it on their radar

[8:54] Babbage Linden: the code is ready to go

[8:54] Valiant Westland: Thanks for the time and info Babbage. If anyone here is looking for projects, especially those involving external communication, let me know. I've got a few in the hopper as we speak that I'll need halp with.

[8:55] Valiant Westland: Have a great day everyone!

[8:55] Babbage Linden: you too valiant

[8:55] Babbage Linden: if no one has any more questions, I'm going to head off too

[8:56] Twisted Laws: bye, thanks

[8:56] Imaze Rhiano: what was timetable of http in?

[8:56] Babbage Linden: as i

[8:56] Nock Forager: Thanks for meeting Babbage.

[8:56] Babbage Linden: mentioned before, please look in to http://jira.secondlife.com/browse/SVC-2908 if you can

[8:56] Babbage Linden: as we're still working on it

[8:56] Imaze Rhiano: ok

[8:56] Babbage Linden: bye!

[8:56] Imaze Rhiano: bye

[8:57] Lillie Yifu: looking

[8:57] Dizzy Banjo: ok c u all :)

[8:58] Lillie Yifu: beijos!

[8:58] Nock Forager: cya!