User:Babbage Linden/Office Hours/2009 01 07

From Second Life Wiki
Jump to navigation Jump to search

Transcript of Babbage Linden's office hours:

[8:10] Babbage Linden: hi everyone, happy new year!

[8:11] WolfPup Lowenhar: morning babbage

[8:11] Babbage Linden: sorry I'm a bit late

[8:11] Nock Forager: hello babbage. happy new year!

[8:11] Fake Fitzgerald: happy new year

[8:11] Babbage Linden: ok, i've pinged the scripters

[8:12] Babbage Linden: and the mono group

[8:12] Babbage Linden: so, how is everyone?

[8:12] Babbage Linden: any topics you'd like to talk about today?

[8:13] Nock Forager: Some changes on 1.25?

[8:13] WolfPup Lowenhar: i have an issue in jira about miss clicking

[8:13] Ludo Merit: afk brb

[8:13] Nock Forager: Prospero pinged about it today on preview grid group.

[8:14] Babbage Linden: prospero is the best person to talk to about 1.25

[8:14] Babbage Linden: i haven't been very involved in that release

[8:15] Nock Forager: He said some perfomance change on script may happen on 1.25. (So check it on preview before it came to the main.)

[8:15] WarKirby Magojiro: positive, or negative change.. ?

[8:15] Nock Forager: don't know.

[8:16] Babbage Linden: the only change i know of that would affect script performance is a slight change to the scheduler

[8:16] Babbage Linden: to fix a problem where some scripts could end up running for too long without yielding

[8:16] Babbage Linden: which caused time dilation problems

[8:16] Babbage Linden: so, it is worth checking your scripts

[8:16] Babbage Linden: but you shouldn't see any difference in performance

[8:17] Nock Forager: yup

[8:17] Babbage Linden: the only thing i've worked on in 1.25 is the script metric code

[8:18] Babbage Linden: which will tell us the script usage on a per parcel basis across the grid

[8:18] WarKirby Magojiro: will script metrics be available to everyone? only landowers ? only estate owners ?

[8:18] Babbage Linden: which we'll use for working out script limits

[8:18] Babbage Linden: intially it will be internal

[8:18] Babbage Linden: we're writing the data to logs and then parsing them to find out usage

[8:19] Babbage Linden: but we'll make the data available to everyone later

[8:19] Babbage Linden: so that everyone can compare their usage to proposed limits

[8:19] Ludo Merit: It would be very handy for estate owners. I want a low lag sim and don't quite know all the tricks to get it.

[8:19] WarKirby Magojiro: I mean, more specifically, will we be given acess to tools to measure the script time of our own scripts, as estate owners can now ?

[8:20] Babbage Linden: the metrics will initially be focused on memory usage

[8:20] Babbage Linden: as the big cause of lag is due to swapping

[8:20] Babbage Linden: due to memory exhaustion

[8:20] Babbage Linden: we're not measuring CPU usage of scripts atm

[8:21] Babbage Linden: the other script work we've been doing recently is on http-in

[8:22] Babbage Linden: which should be in 1.26

[8:22] Babbage Linden: we've been dicussing what to do about scripts which produce HTML

[8:23] Babbage Linden: which is potentially dangerous as a phishing opportunity

[8:23] Babbage Linden: as you can create HTML from a URL which includes and so is more convincing than normal

[8:23] Ludo Merit shudders.

[8:23] WarKirby Magojiro: not really your fault if people abuse the tools they're given

[8:24] jeaniesing Trilling: is your problem if you have to prove, again and again, in court that it wasn't actually you....

[8:24] Babbage Linden: our initial approach was to set a text/plain mime type header

[8:24] Babbage Linden: but that wasn't respected by IE

[8:24] Ludo Merit: IE?

[8:24] Babbage Linden: which would render HTML content as HTML whether or not you specified text/plain as the content type

[8:24] Babbage Linden: internet explorer

[8:25] Babbage Linden: firefox and safari would render the HTML as text

[8:25] Babbage Linden: so you would see the markup

[8:25] Babbage Linden: but internet explorer would render it as HTML

[8:25] Babbage Linden: allowing you to create forms etc.

[8:25] Ludo Merit: Ah. I guess I am wise not to use IE

[8:25] Babbage Linden: and spoof linden web sites

[8:26] Babbage Linden: so, now we HTML escape data sent to IE

[8:26] Babbage Linden: making it appear the same as in firefox and safari

[8:26] Babbage Linden: i think this is the best approach

[8:26] Babbage Linden: it allows you to use web browsers to debug your web application

[8:27] Babbage Linden: but not to use HTTP-In to send fake linden web pages to browsers

[8:27] Babbage Linden: you can even cut and paste the HTML markup from the browser window to copy in to your application while debugging

[8:27] Babbage Linden: there were some calls to allow HTML generation from scripts

[8:28] Babbage Linden: but on balance we decided it was too dangerous

[8:28] WarKirby Magojiro: :/

[8:28] Babbage Linden: HTTP In will allow a performant and convinient replacement for XML-RPC and email

[8:28] Babbage Linden: and will allow round tripping of data using HTTML

[8:28] Babbage Linden: HTTP, sorry

[8:28] Babbage Linden: so, it's still very useful

[8:29] Mephistopheles Thalheimer: couldn't you just put /unauthorized/ in the URL?

[8:29] Babbage Linden: unfortunately not, because if you allow any HTML, an attacker can add javascript

[8:29] Babbage Linden: which can modify the rest of the page to hide warnings

[8:30] Babbage Linden: it's a tricky problem

[8:30] Babbage Linden: but i think we have a good solution now

[8:30] Babbage Linden: which makes HTTP-In useful but not dangerous

[8:31] Casper Box: add a header with a frame? ending with a noscript?

[8:31] Babbage Linden: that may be possible

[8:32] Babbage Linden: but we didn't want to allow HTML and then have to disable it

[8:32] Casper Box: i agree

[8:32] Babbage Linden: if there is lots of call for it, we can potentially look at it again

[8:32] Babbage Linden: at the moment we have a solution for our originally envisaged use case

[8:32] Babbage Linden: which is allowing 2 way communication with external web services using HTTP

[8:33] Elbereth Witte: will httprequest relults be capped less agressively in the rear future?

[8:33] Elbereth Witte: argh, spelling

[8:34] Casper Box: I find the cap now acceptable for most cases, 1 per sec is fairly resonable

[8:34] Elbereth Witte: I mean size, which is at around 2kbytes

[8:34] Casper Box: oh, that, yes

[8:34] JS Uralia: I thought it was 4kb before Mono

[8:34] Elbereth Witte: mono has raised teh bar to what we can process

[8:35] JS Uralia: yeah you should make that more

[8:35] JS Uralia: that should be a nice one-liner

[8:35] Babbage Linden: the 2KB was chosen as a reasonable amount of data for a 16KB script to process

[8:35] Babbage Linden: (I've spent lots of time watching scripts crash processing error reports from web services that were too big)

[8:36] Babbage Linden: so, yes it makes sense to raise the limit for mono

[8:36] Babbage Linden: although it will probably wait until we have script pools for memory

[8:36] JS Uralia: nobody will ever need peb pages longer than 640K

[8:36] Babbage Linden: once you have 500KB scripts, 2KB request limits will seem somewhat limiting

[8:37] Elbereth Witte: theres a threat of raising memory limits further?

[8:37] Casper Box: a HTTP_BODY_STARTAT wouldn't be bad, lets us grab it in chunks

[8:37] Elbereth Witte: agreed

[8:37] Babbage Linden: yes, chunked requests would be good

[8:37] Babbage Linden: (but time for scripting features is currently very limited due to many new strategies at the lab)

[8:38] Babbage Linden: i wouldn't expect any changes until after script memory limits

[8:38] WarKirby Magojiro: aww :(

[8:38] JS Uralia: Mono was script memory limits, to most scripters

[8:38] WarKirby Magojiro: so many features are still needed

[8:38] Elbereth Witte: any fuzzy guesstimate on that then?

[8:38] WarKirby Magojiro still awaits the day we can change avatar clothing via script

[8:39] Aargle Zymurgy: WarKirby, try using RLV. :-)

[8:39] JS Uralia: if you want it, put it in JIRA, then start a votes campaign, it's not hard to get random people to vote for jira issues, if you know them

[8:39] Casper Box: if you know them are they random?

[8:40] WarKirby Magojiro: I certainly do have a jira for it, and have for about a year now

[8:40] Babbage Linden: the top priorities from the last scripting survey were to have llGiveMoney and llGiveInventory with confirmation

[8:40] JS Uralia: then paste the url to like, Scripters Absurdly Large Group or something

[8:40] Babbage Linden: they are still probably top priorities after http-in and script limits

[8:40] WarKirby Magojiro: I remember that survey

[8:41] Nock Forager: confirmation, yes it's very needed function.

[8:41] WarKirby Magojiro: I don't recall any options for avatar related features like that

[8:41] Babbage Linden: but, we don't have any engineers working full time on scripting features at the moment

[8:41] Neroelite Braun: My vote is to have llDetectedGroup actually return a key :)

[8:41] Elbereth Witte: llGroupKey2Name() :-)

[8:41] Babbage Linden: and there are new engineering executives starting, so priorities and plans may change

[8:41] Aargle Zymurgy: where is that one Neroelite? I was just lamenting the lack of that yesterday

[8:42] WarKirby Magojiro: a year and a half old:

[8:42] Neroelite Braun: theres a whole jira thing on it with people arguing

[8:42] Neroelite Braun: yeah Iknow but still

[8:42] JS Uralia wishes there were JIRAs for hiring more lindens

[8:43] Aargle Zymurgy: people arguing in SL? wow.

[8:43] Ludo Merit chuckles.

[8:44] Babbage Linden: we've actually hired around 100 lindens in the last year, which is amazing growth

[8:44] Aargle Zymurgy: oh, that one deserves a real "wow"

[8:44] WarKirby Magojiro: what kind of lindens though ?

[8:44] Babbage Linden: but it takes a lot of interviewing and training time to bring that many people on board

[8:45] JS Uralia: 100 new hires, and 0 working on scripting features?

[8:45] WarKirby Magojiro: not 100 developers, I'd imagine..

[8:45] Babbage Linden: so a lot of us have been spending a lot of time on recruiting and on boarding

[8:45] Babbage Linden: the hires have been across the board

[8:45] JS Uralia: or by "0 full time" do you mean, how many full-time equivalent hours get on features?

[8:45] Babbage Linden: linden lab brighton has grown from just me to 14 people in the last 18 months

[8:46] Babbage Linden: which is huge growth and taken lots of time

[8:46] Babbage Linden: of those, 4 are developers and 4 web developers

[8:46] WarKirby Magojiro: nice :D

[8:46] Aargle Zymurgy: Brighton, England?

[8:46] Babbage Linden: i'm not sure what the demographics are across the company

[8:46] Elbereth Witte: seems like LL is gorging itsself on web developers

[8:46] Babbage Linden: yes, brighton, england

[8:47] Babbage Linden: lots of our internal services are now web services

[8:47] Aargle Zymurgy: hm... I wonder if Lamorna knows. you might get a visitor. :-)

[8:47] Babbage Linden: the project i'm working on at the moment is to move one of our C++ servers over to a web service

[8:47] Babbage Linden: so, it's not just the web site that requires web developers

[8:48] JS Uralia: all the more reason for larget httprequest buffers

[8:48] Neroelite Braun: hey babbage question for you

[8:48] Neroelite Braun: how do I get teh square rooot of a slice of pie

[8:48] Neroelite Braun: :)

[8:48] Elbereth Witte: an irrational question

[8:48] Neroelite Braun: being more indepth

[8:48] Neroelite Braun: its a slice of apple pie

[8:49] Neroelite Braun: I just thought I'd throw a joke in there.

[8:49] Aargle Zymurgy: ratio of the circumference to the diameter of an igloo is Eskimo Pi

[8:49] Neroelite Braun: HAHA

[8:49] Neroelite Braun: okay

[8:49] WarKirby Magojiro: it would be really nice to get a linden or two focusing on just something specific, like.... particles

[8:49] Neroelite Braun: I'm done

[8:49] Neroelite Braun: sorry

[8:49] Aargle Zymurgy: what more do you want in particles, WarKirby?

[8:49] WarKirby Magojiro: I found a few annoyances with particle flags yesterday. Apparently the linear flag is still in an alpha state, and undocumented

[8:50] WarKirby Magojiro: yet I find it utterly essential for something I'm working on just now, due to some odd behaviours it causes

[8:50] Elbereth Witte: its nearly all clientside I think

[8:50] WarKirby Magojiro: There's also particle glow, which would be nice to have. And perhaps some optisations for trails/beams. It's very hard to make a solid trail of particles that mvoe at any decent speed.

[8:51] Babbage Linden: ok, i need to head off in a couple of minutes

[8:51] WarKirby Magojiro: Also, every modern game in the world seems to have animated texture particles, which SL is lacking..

[8:51] Babbage Linden: any last thoughts or questions?

[8:51] Aargle Zymurgy: thanks for your time, Babbage. Sorry I missed the first half.

[8:51] WarKirby Magojiro: I think your right arm looks pretty nice babbage

[8:52] Neroelite Braun: I'm just happy knowwing linedns realy do exist. I totally just won a bet with my friends

[8:52] Elbereth Witte: llFloat2String() would be awesome, like, an accurate float casting

[8:52] Aargle Zymurgy: I just want to program in C#... nothing big.

[8:52] Nock Forager: oh upgraded?

[8:52] Babbage Linden: ah yes, i think there is a fix for float casting in Mono in 1.25

[8:52] Babbage Linden: and I want to program C# too Aargle

[8:52] Nock Forager: (right hand)

[8:52] WarKirby Magojiro: Oh, I wanted to ask about something

[8:52] Babbage Linden: I'm not going to stop lobbying for it ;-)

[8:52] WarKirby Magojiro: I'm seeing some odd issues with mono scripts

[8:53] Aargle Zymurgy: you've got a lot of backing, Babbage. :-)

[8:53] WarKirby Magojiro: where they occasionally crash out, with a pagefull of syntax in chat

[8:53] WarKirby Magojiro: stuff about reflections and parameters, I think..

[8:53] Babbage Linden: WarKirby, there is a bug for that in JIRA

[8:53] Babbage Linden: please add any useful information you can to that

[8:53] WarKirby Magojiro will look and comment

[8:53] Babbage Linden: we've fixed many causes of Mono stack traces

[8:53] Babbage Linden: but there may be some remaining

[8:53] WarKirby Magojiro: do you know which one it is ?

[8:54] WarKirby Magojiro: mono is a rather ubiquitous search term

[8:54] Babbage Linden: (the stack trace is a symptom of many problems, not just one bug)

[8:54] WarKirby Magojiro: doesn't narrow much down

[8:54] Babbage Linden: looking

[8:54] Neroelite Braun: babbage are you gunna beon on a regualr basis like this?

[8:54] Neroelite Braun: its nice being able to get questions answered

[8:54] Babbage Linden: yes, i have an office hour every wednesday at 8AM

[8:54] jeaniesing Trilling: Babbage, thank you for your time today... It is truly appreciated...

[8:55] WarKirby Magojiro agrees

[8:55] Babbage Linden: (i've just been off for a couple of weeks over the holidays)

[8:55] Neroelite Braun: thanks babbage. Much appreciated

[8:55] WarKirby Magojiro: An office hour about scripting is something that's been sorely needed

[8:55] Neroelite Braun: smart you having office hours when no one is really on :)

[8:55] jeaniesing Trilling: Would it be alright to forward that info to other scripting groups?

[8:55] Aargle Zymurgy: I'm always here. :-)

[8:55] Babbage Linden: it's at 4PM in Brighton ;-)

[8:55] Neroelite Braun: hahah oh

[8:55] WolfPup Lowenhar: babbage there is an issue with clicking in rc4

[8:55] Mephistopheles Thalheimer: only Australians know how to script anyway

[8:55] Babbage Linden: as late as I can make it and still have a hope of leaving at 5

[8:55] Babbage Linden: (which never happens)

[8:56] Neroelite Braun: make me a linden. I'll work the graveyeard shit

[8:56] Neroelite Braun: shift*

[8:56] Babbage Linden: the Mono stack trace bug is SVC-2908

[8:56] Babbage Linden: please add any new information there

[8:56] WarKirby Magojiro: Ah, I just found it, thank you

[8:56] Babbage Linden:

[8:56] Aargle Zymurgy: nice typo, Nero. should have left it be. :-)

[8:56] Babbage Linden: ok, see you all next week

[8:56] Neroelite Braun: kk

[8:56] Aargle Zymurgy: bye babbage

[8:56] Babbage Linden: thanks for coming

[8:56] Neroelite Braun: bye

[8:56] WarKirby Magojiro waves

[8:57] Neroelite Braun: party in babbages office!

[8:57] Nock Forager: see you in next week thanks babbage.