User:Babbage Linden/Office Hours/2008 11 19

From Second Life Wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Transcript of Babbage Linden's office hours:

[8:00] Nock Forager: Hi Babbage

[8:00] Cale Flanagan: i gvae trouble with the linux distributions not the opensim

[8:00] WolfPup Lowenhar: hello babbage

[8:01] Babbage Linden: hello

[8:01] Babbage Linden: nice rings :-D

[8:01] Fake Fitzgerald: hi Babbage

[8:01] Imaze Rhiano: hi babbage

[8:01] Cale Flanagan: y, babbage, u have not enough seats so...:)

[8:01] Babbage Linden: not much news this week

[8:01] Babbage Linden: we finished the script size measuring code

[8:02] Babbage Linden: which will hopefully be in a release soon after 1.25.0

[8:02] WolfPup Lowenhar: kewl

[8:02] Babbage Linden: once that's deployed we can start working out reasonable script limits

[8:02] Cale Flanagan: i wished the client would load avatars and not only attachments

[8:02] Babbage Linden: and hopefully soon make our proposed numbers public

[8:02] Babbage Linden: that's about it for new code

[8:03] Babbage Linden: we're mostly working on retiring the space server atm

[8:03] Babbage Linden: as it's become a scalability bottleneck

[8:03] Babbage Linden: so, are there any things you'd like to talk about?

[8:03] WolfPup Lowenhar: babbage i figured ot a way to make something that can work something similar to an aray

[8:03] Fake Fitzgerald: have you seen SVC-3379?

[8:05] Babbage Linden: let me have a look

[8:05] WolfPup Lowenhar: ok

[8:05] WolfPup Lowenhar: ill have to get out the vender i made with it

[8:06] Babbage Linden: thanks fake, I hadn't seen it

[8:06] Babbage Linden: shouldn't be too hard to fix

[8:07] WolfPup Lowenhar: there is the script

[8:07] Babbage Linden: no mod wolfpup

[8:07] Babbage Linden: what's the technique?

[8:07] Babbage Linden: (lists are implemented as arrays in mono, so you can use lists like arrays now)

[8:08] WolfPup Lowenhar: that is in regulat LSL

[8:08] Babbage Linden: yes, but it's implemented as a list in LSL

[8:08] WolfPup Lowenhar: that one you should be able to read

[8:08] Babbage Linden: in mono indexing is constant time

[8:08] WolfPup Lowenhar: most people use strided lists

[8:09] WolfPup Lowenhar: instead i use multiple list to repersent the colums of the aray and then the index id the row

[8:10] Babbage Linden: with LSL i ended up storing data in strings as it uses less memory

[8:10] Babbage Linden: that's less true with Mono

[8:11] Cale Flanagan: still saves al ot space in strings

[8:11] Cale Flanagan: the overhead is the problem, small infos are better in strings

[8:12] WolfPup Lowenhar: the way i made the vender i have a lot of information soterd in the lists tough

[8:13] WolfPup Lowenhar: it would be to much i think to store it in strings

[8:14] Cale Flanagan: to the c# in sl project..:will multiple scripts act as in c# as project or like parallel programs like today?

[8:15] Babbage Linden: intially they will work in the same way as LSL scripts

[8:15] Babbage Linden: each script gets a flow of control

[8:15] Babbage Linden: scripts communicate with messages

[8:15] Babbage Linden: it all looks a lot like erlang

[8:16] Imaze Rhiano: so - is initial Mono script memory usage going to be 64K? In version 1.25.0. Or can mono script change their memory requirements smaller?

[8:16] Babbage Linden: but, i'd like to allow library scripts in C#

[8:16] Babbage Linden: which don't have a flow of control

[8:16] Babbage Linden: and can be called from other scripts

[8:16] Cale Flanagan: i only need reliable and fast messages between them...

[8:16] Babbage Linden: so people can build oo libraries on top of the ll* library calls

[8:17] Cale Flanagan: and sometmes it would also good to split big projects which has one flow in multiple files for better overview

[8:17] Babbage Linden: adam frisby was interested in using this to make an opensim compatibility layer

[8:17] Cale Flanagan: bt hte libs could be the key for some of the things i have in mind...

[8:17] Babbage Linden: see http://jimpurbrick.com/2008/10/23/second-life/

[8:18] Babbage Linden: a lot of this is some way off

[8:18] Babbage Linden: as we're currently going through a stratey process

[8:18] Babbage Linden: which is prioritising things like the spaceserver work

[8:18] Babbage Linden: over improvements to scripting

[8:19] Babbage Linden: so it will probably be well in to next year before we start working on this

[8:19] Babbage Linden: especially as we need the mono metadata verifier to be complete

[8:19] Babbage Linden: which is due in march

[8:19] Cale Flanagan: i m just waiting for c#, i like the possibility to have structs and alike

[8:20] Cale Flanagan: (thats also better then a strided list:) )

[8:20] Imaze Rhiano: allowing user created libraries would be big step forward

[8:21] Babbage Linden: yes

[8:21] WolfPup Lowenhar: it would be nice to have a way to 'offline' code and test scripts easily

[8:21] Babbage Linden: it would speed up the improvement of the scripting platform

[8:22] Babbage Linden: as it would allow people to build libraries and extensions for each other

[8:22] Nock Forager: offline environment :)

[8:22] Babbage Linden: instead of having linden lab gate the procress

[8:22] Babbage Linden: offline development will be easier

[8:22] Babbage Linden: as you will be able to create c# files in an IDE

[8:22] Babbage Linden: build a test harness that throws event objects at it

[8:23] Babbage Linden: and a mock set of ll* library methods

[8:23] Babbage Linden: so you can build unit tests for LSL scripts

[8:23] Babbage Linden: c# scripts sorry

[8:23] Babbage Linden: and be able to develop and debug them in a nicer environment

[8:23] Babbage Linden: so, even without any work from linden, you can build that once we have c# scripts

[8:25] WolfPup Lowenhar: i was wondering when the voulme of scritped sounds would be improved for the UI

[8:25] Cale Flanagan: so i only need an IDE with integrated sl viewer and opensimsandbox to test if my prim moves or a avatr is coming in sensor range:)

[8:26] WolfPup Lowenhar: that would be nice to have even now

[8:26] Babbage Linden: cale, you can test that just by injecting events

[8:27] WolfPup Lowenhar: the IDE

[8:27] Babbage Linden: you throw a sensor even at the script telling it that an avatar is nearby and check that it does the right thing

[8:27] Babbage Linden: you make sure that the call to move prim happens

[8:27] Babbage Linden: and know that when you ship the code to SL it will work

[8:28] Babbage Linden: it's the same as mocking and stubbing in other unit testing environments

[8:28] Cale Flanagan: y, i can write something around, but for complex projects that would be a mini sl-universum

[8:28] Babbage Linden: we don't start a sim every time we change things

[8:28] Babbage Linden: we add tests, watch them fail, make them pass and when everything is working start a sim to test there

[8:28] Babbage Linden: cale, yes, exactly

[8:29] Babbage Linden: except it uses mocks and stubs and canned answers

[8:29] Cale Flanagan: i still want an inworld debugger:)

[8:29] Babbage Linden: that's really hard cale

[8:30] Cale Flanagan: yes, thats why i put the :) behind it

[8:30] Babbage Linden: you're asking for an environment where you want to let an untrusted person debug untrusted code in your process

[8:30] Babbage Linden: building a secure sandbox for untrusted code is hard enough

[8:30] Babbage Linden: allowing people to debug code in that sandbox is much harder

[8:31] Babbage Linden: i don't know if anyone is doing it

[8:31] Cale Flanagan: i would be happy to go through running code step by step and look at vars to avoid writing dozends of llOwnerSay

[8:31] Babbage Linden: your best bet is probably to run opensim in a debugger to test your scripts

[8:31] Babbage Linden: and then ship them to second life when they work

[8:31] Babbage Linden: as you're running the opensim process yourself, it's not a problem

[8:33] WolfPup Lowenhar: i have been trying to find a way to test tings with out having to come in-world to do it and it is dificult

[8:34] WolfPup Lowenhar: i have in 'editor' for syntax checking but for testing complex scripting it is unable to do much

[8:34] Babbage Linden: yes, when we have c#

[8:34] Babbage Linden: you will be able to use nunit

[8:34] Babbage Linden: and dynamic mock objects

[8:34] Babbage Linden: which will make that much easier

[8:36] Nock Forager: I want to ask everyone here, Is there any good way reviewing & doing collaborate work on same code with many people in SL?

[8:37] Imaze Rhiano: I haven't never done project in that scale... scripts are better to keep small

[8:37] Nock Forager: hm

[8:38] Nock Forager: My friends sometime doing such "review" hour.

[8:38] Cale Flanagan: i only have a board where u can show textlines and paint in it...

[8:38] Nock Forager: and have bit trouble "ah line number 26? where?". like that.

[8:38] Babbage Linden: yes, pastebins are useful for that

[8:39] Babbage Linden: http://lsl.pastebin.com/

[8:39] Cale Flanagan: the board is in sl....

[8:39] Nock Forager: oh this site supprted LSL. I didn't know that.

[8:40] Babbage Linden: hmm, actually it doesn't look likeit supports LSL

[8:40] Babbage Linden: just the first thing that came up looking for LSL pastebin

[8:41] Babbage Linden: it should be possible to set one up that knows LSL

[8:41] Babbage Linden: zero made an LSL mode for SubEtherEdit

[8:41] Babbage Linden: which is a collaborative editor that works over the internet

[8:41] Babbage Linden: so that might be something to look at

[8:42] Nock Forager: I'll check it later :)

[8:42] Babbage Linden: http://www.codingmonkeys.de/subethaedit/

[8:42] Babbage Linden: http://www.subethaedit.net/modes.html

[8:43] Babbage Linden: http://www.subethaedit.net/modes/LSL.mode.zip

[8:43] Babbage Linden: there's also a page on the wiki about alternative editors

[8:43] Babbage Linden: http://wiki.secondlife.com/wiki/LSL_Alternate_Editors

[8:44] WolfPup Lowenhar: that is for the mac though

[8:44] WolfPup Lowenhar: i have the LSLEditor from there but the testing functions of it are extreamly limited

[8:44] Babbage Linden: wow, LSL plus eclipse plugin!

[8:45] Babbage Linden: http://lslplus.sourceforge.net/

[8:45] Babbage Linden: that looks like it does what i was talking about for c# with lsl

[8:45] Babbage Linden: interesting to see how good it is

[8:46] WolfPup Lowenhar: i could not even get eclips to work on my system ant eht plug in is just a syntax highlighter

[8:48] Imaze Rhiano: I am normally using LSL editor - http://www.lsleditor.org/

[8:48] Imaze Rhiano: it have debugger and such... but not great for multiscript/multiprim projects

[8:51] Babbage Linden: any more questions?

[8:51] Babbage Linden: if not, i'll get back to work :-D

[8:51] Cale Flanagan: first get a coffee:)

[8:51] WolfPup Lowenhar: the script i showed you would be better running in mono then?

[8:52] Babbage Linden: yes, the indexing in the money event will be faster

[8:52] WolfPup Lowenhar: ok

[8:52] Babbage Linden: won't make a big difference as you're not after performance from a vendor script

[8:53] Babbage Linden: but if lots of similar scripts were converted to mono you'd see the difference

[8:53] Babbage Linden: and the sim would thank you

[8:53] WolfPup Lowenhar: ok

[8:53] Babbage Linden: ok, i'm off

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

[8:53] Fake Fitzgerald: thanks Babbage

[8:53] Cale Flanagan: ok good working:)

[8:53] Imaze Rhiano: thanks babbage

[8:53] Nock Forager: seeya in next week Babbage.

[8:53] WolfPup Lowenhar: tc babbage and i enjoy coming to these meetings