User:Babbage Linden/Office Hours/2008 11 19

From Second Life Wiki
Jump to navigation Jump to search

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

[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:

[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:

[8:42] Babbage Linden:

[8:43] Babbage Linden:

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

[8:43] Babbage Linden:

[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:

[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 -

[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