User:Babbage Linden/Office Hours/2008 10 22

From Second Life Wiki
Jump to navigation Jump to search

Transcript of Babbage Linden's office hours:

[8:06] Babbage Linden: ok, let's give people a couple of minutes to arrive

[8:06] Cale Flanagan: pong

[8:07] Aargle Zymurgy: yay.. it's raining scripters

[8:07] Nock Forager: lol

[8:07] belite Ansar: Hello.

[8:07] Cale Flanagan: y, the name tags get slowly crouded:)

[8:07] Babbage Linden: ok, let's kick off

[8:07] WolfPup Lowenhar: hello everyone

[8:07] electroRogue Fizzle: hi

[8:08] Babbage Linden: here's where we are this week

[8:08] belite Ansar: Hi

[8:08] Babbage Linden: we've just submitted a batch of fixes to be included in 1.25 server

[8:08] Babbage Linden: which resolve

[8:09] JIRA board (small):

[8:09] Babbage Linden: and

[8:10] Babbage Linden: we've also folded in a resident patch for

[8:10] Babbage Linden: which allows multi line comments in LSL

[8:10] Twisted Laws: YEAH

[8:10] electroRogue Fizzle: YAY

[8:10] Babbage Linden: and some fixes for

[8:10] Fake Fitzgerald: I love multi line comment

[8:11] Babbage Linden: and

[8:11] Aargle Zymurgy: nice

[8:11] Babbage Linden: that will hopefully fix the last of the .NET error message problems we've been having with mono

[8:11] Babbage Linden: thanks to everyone that helped us with

[8:12] Babbage Linden: it's taken lots of work to resolve all the issues

[8:12] Babbage Linden: and break them apart in to separate problems

[8:12] Babbage Linden: these last fixes should resolve issues where scripts have been under load

[8:12] Babbage Linden: processing many events

[8:12] Babbage Linden: and then fail

[8:13] Babbage Linden: the issue only manifested itself after scripts had queued up 64 events and started dropping events

[8:13] Babbage Linden: which made it initially hard to build a simple repro for

[8:13] Babbage Linden: so, those are the current fixes in the pipe for 1.25 server

[8:14] Prana Cale: wtf

[8:14] Babbage Linden: which should ship in the next few weeks

[8:14] Babbage Linden: we may be able to sneak a couple more fixes in

[8:14] Twisted Laws: very good!

[8:14] Babbage Linden: but most of the high priority issues with Mono should be fixed with 1.25

[8:14] Lillie Yifu: well that was cute

[8:14] Yngwie Krogstad: Awesome news

[8:14] Babbage Linden: the other big news is that HTTP In is now available on the preview grid

[8:15] Babbage Linden: there are 3 sandboxes there

[8:15] Babbage Linden: and 1 teen sandbox

[8:15] Babbage Linden: although there are some problems atm

[8:15] Babbage Linden: which we will hopefully get to look at this week

[8:15] Babbage Linden: peri has made a meta JIRA for HTTP In here:

[8:15] Babbage Linden:

[8:15] Grady Vuckovic: Awesome (oh and sorry if I'm stepping on anyone, not rezzed yet)

[8:16] Babbage Linden: if you find any problems with HTTP In, please look there first

[8:16] Lillie Yifu claps

[8:16] Babbage Linden: and if the issue is not linked from there, please make a new issue and link it

[8:16] Babbage Linden: so we have a central location we can look at to find all the known issues

[8:17] WolfPup Lowenhar: i have seen some peopl in one of the scripting groups im in talking about having a problem with endless redirects occuring

[8:17] Babbage Linden: yes, i need to look at that

[8:17] Babbage Linden: not sure if it's a configuration issue with the preview grid deploy

[8:18] Babbage Linden: we had HTTP In working on an internal development grid before deploying it to the preview grid

[8:18] Babbage Linden: i think the 2 grids may have some configuration differences

[8:19] Lillie Yifu: OGP note, we will then need someo way for scripts to get configuration infomration from their grid

[8:19] Grady Vuckovic: I'm sorry I just got here, what's HTTP In? Or better still a link to read about it? (Save time here)

[8:19] Grady Vuckovic: Ah, got it.

[8:19] Lillie Yifu: since it will not be safe to assume that once the LL grid is fixed that all other grids will also be the same configuration

[8:20] Babbage Linden: grady:

[8:20] Babbage Linden: lillie, yes, we need scripts to be able to query their environment

[8:21] Babbage Linden: i was talking to adam frisbie about this at the virtual world conference in london yesterday

[8:21] Imaze Rhiano: any chance to get service for httpin that allows permament redirection to object's temporal urls - like ""? Extrernal dynamic DNS and redirection are going to be pain in ass :(

[8:21] Babbage Linden: scripts need to be able to find out what APIs are available

[8:21] Babbage Linden: on grids with different configurations

[8:22] Grady Vuckovic: Could that be done with the llGetRegionInfo()? maybe?

[8:22] Babbage Linden: there needs to be a base set of services that scripts can rely on

[8:22] Lillie Yifu: are zero and zha in the loop about this?

[8:22] Babbage Linden: supported by SL and OpenSim

[8:22] Babbage Linden: but also mechanisms to add new APIs and events

[8:23] Lillie Yifu: gareth and tao will want toknow this too.

[8:23] Babbage Linden: we talked about adding configurable interest management for scripts too

[8:23] Twisted Laws: llRequestSimulatorData(simulator, DATA_SIM_SCRIPTVERSION)

[8:23] Babbage Linden: at the moment scripts are told about events that the object they are in is aware of

[8:23] Lillie Yifu: hmmm

[8:23] Lillie Yifu: I would vote for a cap

[8:24] Lillie Yifu: because different http in servers may well have different api/configuration information

[8:24] Lillie Yifu: the script should get a cap with it's list of available api and configuration information

[8:24] Babbage Linden: but it would be nice if you could write a single script that is told about events affecting other objects

[8:24] Babbage Linden: especially in OpenSim which doesn't support many concurrent scripts

[8:25] Lillie Yifu: lsl could ut the content sof that cap into a list

[8:25] Lillie Yifu: for the script

[8:25] Lillie Yifu: but the script could also simply pass that cap

[8:25] Babbage Linden: it's an interesting idea

[8:26] Grady Vuckovic: Maybe could make a llGetEvents(key object) function. Returns a list of constants with different events accounted for in that prims inventory based on the active scripts?

[8:26] Babbage Linden: many LSL apis could instead be written as web APIs that are queried with llHTTPRequest

[8:26] Lillie Yifu: yes

[8:26] Babbage Linden: so you could have HTTP In invoke a service to give it an URL

[8:26] Lillie Yifu: it's more restful that way

[8:27] Babbage Linden: it would be good to have more XML parsing machinery in LSL to support that though

[8:27] Imaze Rhiano: would be easier to allow scripts just running envinroment where they are compiled - different configuration handling is just making scripts complex and consume their resources

[8:27] Babbage Linden: at the moment the memory limits and parsing constraints make using standard services from LSL hard

[8:28] Babbage Linden: Imaze, the other way of doing it would be supporting includes or references

[8:28] Lillie Yifu: the problem is that the script is compiled once

[8:28] Lillie Yifu: and what server it is onwill change

[8:28] Babbage Linden: which is hard for LSL

[8:28] Lillie Yifu: so if I write an script

[8:28] Babbage Linden: but possible in C#

[8:29] Lillie Yifu: and someone tps to some other grid, or a differently configured server on teh same hetgrid

[8:29] Lillie Yifu: then it will break if it has configuration from compile time

[8:29] Lillie Yifu: config has to be run time here.

[8:29] Grady Vuckovic: I'm currently in the process of making a config notecard reader that has to read XML formatted data and turn it into a tree structure for a menu. Having some useful functions for automate XML reading would be just lovely

[8:29] Babbage Linden: so you might compile a C# script in an environment that supplies OpenSim.SuperExtension

[8:29] Babbage Linden: which would just fail to initialise in SecondLife

[8:29] Babbage Linden: which is often enough

[8:30] Lillie Yifu: ummm hmmm

[8:30] Lillie Yifu: yes icnluds have been somthing that people have wnated for a long time

[8:30] Babbage Linden: lillie, making scripts compatible at the bytecode level will be hard

[8:30] Grady Vuckovic: Mmhm!

[8:30] Babbage Linden: but making C# scripts compatible at the source code level is a good first step

[8:31] WolfPup Lowenhar: that would take a lot of hard coding to do that

[8:31] Babbage Linden: if scripts are just using common functionality supported by Second Life and OpenSim

[8:31] Lillie Yifu: even then there is no assurance that two different sims on the same grid will ahve the same configuration/api list

[8:31] Babbage Linden: they should be at least compatible at the source level

[8:31] Grady Vuckovic: One thing would be nice is being able to run plugins on the actual SL client. Has that been considered?

[8:32] Babbage Linden: i've considered it :-)

[8:32] Babbage Linden: there are a lot of things people would like to do with scripts on the client

[8:32] WolfPup Lowenhar: hat you could do is hav a script do is detect what type of sim it is on and self force a recompile

[8:32] Babbage Linden: internally we'd like to be able to automate the client for testing

[8:32] Grady Vuckovic: Maybe alone the lines of a something similar to the LSLEditor, as in basic level of interupting LSL code

[8:33] Babbage Linden: i'd also like to have the client transparently download scripts annotated as client scripts

[8:33] Babbage Linden: which could then send messages to server scripts

[8:33] Babbage Linden: so for example, if you built a HUD

[8:33] Babbage Linden: most of the UI code would be marked as a client script

[8:33] Babbage Linden: and would be downloaded and run on your client when you wore the HUD

[8:33] Babbage Linden: so you get a responsive UI without network round trip latency

[8:33] Lillie Yifu: babbage += 10

[8:34] Grady Vuckovic: Yep, that's what I had in mind too actually. Would be very handy!

[8:34] Nock Forager: hehe

[8:34] Babbage Linden: you could also write client side scripts to do latency hiding

[8:34] Babbage Linden: if you were building an FPS game in SL

[8:35] Babbage Linden: we also want plugins that extend the client

[8:35] Grady Vuckovic: Also it might open up other possible things which could be done, like textboxs, sliders, etc?

[8:35] Babbage Linden: for example to add those GUI elements

[8:35] Babbage Linden: in theory you could do that without a sandbox

[8:35] Babbage Linden: and have some cludgy trust thing

[8:35] Babbage Linden: but I'd rather see a common sandboxed VM like mono be used

[8:36] Babbage Linden: if possible

[8:36] Sheryl Mimulus: I rather the code be sandboxed too

[8:36] Babbage Linden: there's lots of discussion about this internally

[8:36] Grady Vuckovic: Good to hear :)

[8:36] Babbage Linden: we end up with a VM through web browser embedding

[8:36] Babbage Linden: so one option is to use that for client scripting

[8:36] Prana Cale: is there anything planned to syncronize animations?

[8:36] Babbage Linden: in java script

[8:37] Grady Vuckovic: There is some things I would love to do like know exact what point in the sim the agents camera is focused on

[8:37] Babbage Linden: but I'd prefer to see Mono in the client to make client and server scripting in the same languages possible

[8:37] Lillie Yifu: yes

[8:37] Grady Vuckovic: Mmhm, agreed

[8:38] Babbage Linden: the client side scripting is a long way off

[8:38] Babbage Linden: but the viewer automation for testing is going to happen soon

[8:38] Babbage Linden: so I'd like to decide on a technology that can be used for both

[8:39] Imaze Rhiano: javascript have many users - but then silverlight style environment would be closer mono

[8:39] Grady Vuckovic: I think if people had a means of using their LSL code in the SL client to extend it, we'd see a sea of plugins come out very quickly. Lots of people have ideas for how to improve the SL client, but very few know how to program in C++ and edit the source code for the viewer.

[8:40] Babbage Linden: it may be possible to run JavaScript on Mono in Second Life at some point

[8:40] WolfPup Lowenhar: yes c++ is very dificult to work in unless you have years of experience in it

[8:40] Babbage Linden: but it's further away from LSL than C# so it would be more work to get it working

[8:41] Babbage Linden: the possibilities that client side scripting will allow will depend on the API and sandbox

[8:41] Lillie Yifu: hmmm

[8:41] Lillie Yifu: how do they make lots of different langaages on regular computers?

[8:41] Lillie Yifu: Is there a point to making the same process available for sl?

[8:42] Lillie Yifu: and then let people make langauges

[8:42] Babbage Linden: I'd like to start with a few methods for control UI widgets from client side scripts and then grow from there

[8:42] Babbage Linden: lillie, in theory we will get to the point where we can allow arbitrary CLI assembly upload to SL

[8:42] Grady Vuckovic: Also access to the variables in the SL client would be great!

[8:43] Grady Vuckovic: That would be nice, but would that be a security threat?

[8:43] Babbage Linden: then you can write your own languages and upload the compiled bytecode to SL

[8:43] Free Radar HUD v1.1 by Crystal Gadgets

[8:43] Cale Flanagan: or storage of values, outside of scripts....

[8:43] Babbage Linden: but that is also a long way off

[8:43] Babbage Linden: anyway, I need to head off as I have an engineer interview to do in RL

[8:43] Babbage Linden: thanks for coming everyone

[8:43] Grady Vuckovic: Good luck with it Babbage

[8:43] Lillie Yifu: beijos!

[8:43] Babbage Linden: and I hope to see you all next week

[8:43] WolfPup Lowenhar: you still hasve to be careful then cause you might get people that would end upp actualy hacking the sl servers frim their modified UI's

[8:43] electroRogue Fizzle: thx Bab

[8:43] Lillie Yifu: thank you babbage!

[8:44] Aargle Zymurgy: tanks Babbage

[8:44] Grady Vuckovic: Good luck with the interview and cya next week

[8:44] Aargle Zymurgy: *thanks even

[8:44] Yngwie Krogstad: Good luck with the interview Babbage, thanks for the office hours this morning

[8:45] WolfPup Lowenhar: nice meeting you babbage and this has been an enlightting experience