User:Andrew Linden/Office Hours/2008 10 28

From Second Life Wiki
Jump to navigation Jump to search

Transcript of Andrew Linden's office hours:

[11:03] Simon Linden: I'm multitasking, so ping me if I'
[11:03] Simon Linden: I'm not responding
[11:03] Andrew Linden: how do you want your ping?
[11:03] Simon Linden: Hi Arawn
[11:03] Arawn Spitteler: I was just getting that camera oscillation, with my back to the fence. I hope that means we aren't on the next release.
[11:04] Arawn Spitteler: Hi, Andrew, Simon. Where's everybody else?
[11:04] Andrew Linden: We're definitely not at the next release yet.
[11:04] Simon Linden: yes, this is still 1.24.9
[11:04] Andrew Linden: ah ha! turns out 1.25-Server is up on the aditi grid
[11:05] Andrew Linden: it made it there on Friday
[11:05] Andrew Linden: which means it is open to the public, and that camera oscillation bug fix can be tested and verified
[11:05] Andrew Linden: (or re-opened... let us consider all options)
[11:06] Arawn Spitteler: Hi, Ella, Gaius, Gaius is finally rezzing
[11:06] Andrew Linden: Ok, since 1.25-Server is now on the open preview grid (aditi) I need to go find all the "fix pending" bugs and add comments
[11:06] Arawn Spitteler: I haven't my browser open, yet. How's SVC-2931 doing?
[11:06] Andrew Linden: for anyone who happens to be watching those public jira items.
[11:06] Gaius Goodliffe: Hello. Sorry to pop in in the middle of the convo -- if you're saying the camera oscillation bug is fixed, I'm gonna have to kiss you. :)
[11:07] Andrew Linden: SVC0-2931 has not yet been updated
[11:07] Simon Linden readies SL movie capture
[11:07] Gaius Goodliffe: Heh
[11:07] Arawn Spitteler: It's supposed to be in the preview, so give him a Beta Kiss
[11:07] Gaius Goodliffe: Ah okay, it can wait until it deploys main grid.
[11:07] Gaius Goodliffe: ;)
[11:07] Andrew Linden: Test it first
[11:08] Andrew Linden: Ok so Simon proposed some ground rules for this meeting...
[11:08] Andrew Linden: no discussions about OpenSpace regions
[11:08] Andrew Linden: Actually, I think that is the only rule
[11:09] Andrew Linden: there is nnnnnooooooo..... rule number two
[11:09] Simon Linden: I think it was specifically 'no discussion of @#$@ OpenSpace policies' -- I'm unhappy enough :(
[11:09] Gaius Goodliffe: Roger that.
[11:09] Gaius Goodliffe: I did have a performance issue I wanted to ask about...
[11:09] Andrew Linden: I have not yet read the internal email thread we're having about it
[11:09] Simon Linden: If there's a specific OS issue that's not just 'performace is bad' we can discuss it
[11:09] Arawn Spitteler assumes this will be discussed Thursday, at 11AM: You might like to go see the fun. Is it possible, to set an avatar for Streaming Media?
[11:10] Andrew Linden: What is going on Thursday 11 AM?
[11:10] Simon Linden: You mean the textures on an avatar are streaming media? Cool
[11:10] Arawn Spitteler: I was unable to log in, with the RC, earlier, and Bleeding Edge got me to Help Island.
[11:10] Andrew Linden: I think he means... right now we can specify streaming media on a per-parcel basis
[11:10] Andrew Linden: so why not have a streaming media setting per-avatar?
[11:11] Arawn Spitteler: No, Video Streams on Textures is old, but an avatar that can act as a streaming media server, so you guys can watch Jack TV, on Thursday Morning.
[11:11] Simon Linden: Probably because too many streams would be a way of overloading clients
[11:11] Simon Linden: Ah, I see .. that's great. Do you know how they do the vidoe capture?
[11:12] Andrew Linden: also, right now the SL client only has one channel for streaming media... the avatar setting would conflict with the parcel one
[11:12] Simon Linden: I've had a pet feature idea for a while ... pipe the video output of the viewer as a virtual camera so it can be used by any streaming software
[11:12] Andrew Linden: Make it so Simon (in your copius spare time)
[11:13] Gaius Goodliffe: It woudl be nice if those with more powerful computers to do like you do with particles - adjust how many streams we cna view at once. Make it 1 by default but allow people to up the number...
[11:13] Simon Linden: I haven't been able to find the 'cut and paste' camera source sample code
[11:13] Andrew Linden: hehe
[11:13] Andrew Linden: So Gaius, you had a question about performance?
[11:14] Gaius Goodliffe: I was just wondering if openspaces deliberately cull events? I've noticed events not getting delivered reliably in openspaces. Even when there's no apparent load...
[11:14] Andrew Linden: State the question, but we reserve the right to discard it... if it violates Simon's ground rule.
[11:14] Simon Linden: No, I don't think there's any deliberate culling of events
[11:15] Arawn Spitteler: Might be overloaded.
[11:15] Simon Linden: The script performance might be really low, however, and they are getting dropped or it's getting overloaded
[11:15] Andrew Linden: Oh, script events.
[11:15] Gaius Goodliffe: Hmm. I have missiles that explode on contact in full sims, but in openspaces they frequently collide and keep going. I saw one bounce off various targets four times before finally getting its collision_start event.
[11:16] Simon Linden: The time spent on scripts is calculated as "whatever's left over in the current frame" with some minimum
[11:16] Simon Linden: So if it's running at less that 45fps, it will be the minimum
[11:16] Gaius Goodliffe: I've also seen examples of llSay(somechannel, text) getting discarded, like you say something 10 times and only 5 are received by the target.
[11:16] Andrew Linden: Uh... Gaius, that might be aggravated by one of the bugs in SVC-2511. You should test on the preveiw grid.
[11:16] Gaius Goodliffe: I shall try that, see if it makes any difference on preview.
[11:17] Simon Linden: yeah, Andrew, you fixed up collision events recently, right?
[11:17] Arawn Spitteler: Are open sims old enough, to be on preview?
[11:17] Andrew Linden: Not recently... months ago.
[11:17] Simon Linden: But it's coming out in 1.25? Or should it already be out?
[11:17] Andrew Linden: but it didn't get in before MONO... so it has been sitting around for 1.25-Server, yes.
[11:18] Gaius Goodliffe: Ah cool. I seem to be ahving a lot of collision related issues lately. I'll make a trip to preview this week...
[11:19] Andrew Linden: ah yes Arawn, I spoke with Michael Linden about the railroad system
[11:19] Andrew Linden: SLRR -- he says they are working on a replacement system now
[11:19] Andrew Linden: the moles are working
[11:19] Andrew Linden: supposedly there is about 9 miles of track to overhaul
[11:19] Andrew Linden: they are going to tear it out and replace with new track (new script system)
[11:19] Arawn Spitteler: I think that would be just the start
[11:20] Arawn Spitteler: Tuliptree to Jubata?
[11:20] Andrew Linden: dunno which regions or where it is
[11:20] Andrew Linden: also don't know the ETA of the project
[11:20] Andrew Linden: however Michael hasn't forgotten
[11:21] Andrew Linden: and no one wants to dissect Nigel Linden's scripts, so I think they are going for a rewrite.
[11:21] Arawn Spitteler: Scripts are likely easier for the Sims to handle, but Collision is easier conceptually, for new builders. How does a Sniffer cross a border?
[11:21] Andrew Linden: Too bad Kitto isn't here
[11:21] Andrew Linden: perhaps he could try to sell some working trains to Michael and his moles
[11:21] Andrew Linden: yeah, they are fighting with border crossings
[11:22] Andrew Linden: that is one of the things the RR moles were working on.
[11:22] Arawn Spitteler: Kitto might be able to debug Nigel's Scripts, but Garth Fairchang certainly should.
[11:22] Andrew Linden: Yes
[11:23] Arawn Spitteler: If we're going to cross borders, I've no idea what a sniffer could do.
[11:23] Andrew Linden: what is a snifffer?
[11:23] Arawn Spitteler: A nice feature would be, if a script could ask to sense, "In that sim over there."
[11:23] Gaius Goodliffe: "sniff" on a chat channel. Ping and listen for the response. This works reliably, even across borders.
[11:23] Andrew Linden: ah
[11:24] Arawn Spitteler: Huggers collide with the rails, sniffers look for them, and I don't know what the Bots do, but those are the three types of Rail Vehicle
[11:24] Andrew Linden: I think they were experimenting with sniffers
[11:25] Andrew Linden: I wonder where the preview release notes are published these days
[11:25] Andrew Linden: Anyone know?
[11:26] Arawn Spitteler: It shouldn't be impossible, to get the Nigel Rail Running, but the trains would have to have their hugs retooled, and the Bato Solution wouldn't hurt on the rails, but it requires a regular Linden Touch, on the restart button
[11:27] Arawn Spitteler: Who's the IC ofPreview Grid?
[11:27] Andrew Linden: IC?
[11:27] Arawn Spitteler: In Charge, who decides when to update the snapshot
[11:28] Andrew Linden: Oh, there is a team. I call them the #deploy team since they tend to hang out on our internal #deploy IRC channel.
[11:28] Andrew Linden: Almost anyone on that team should know the answer to that question.
[11:29] Andrew Linden: The main IC's are Josh Linden and Prospero Linden
[11:31] Andrew Linden: Simon, what are you working on these days?
[11:31] Simon Linden: Odds and ends ... mostly bugs and minor projects
[11:32] Simon Linden: There are some avatar improvements that I'm getting involved in (one new texture getting passed around, I'm not sure what it's used for yet)
[11:33] Andrew Linden: I'm working on some internal tools and will probably continue on that project for another two weeks at least.
[11:33] Simon Linden: I did recently get into the issues with controls, and will be looking at the restriction and problem with only one script being able to take control events
[11:33] Simon Linden: There are some more internal performance things I want to move along as well
[11:34] Andrew Linden: ok thanks, just curious
[11:35] Andrew Linden: Arawn, you attend other Linden office hours right? Whose hours to you attend?
[11:35] Arawn Spitteler: Depends what I can catch. Often CG's, Sometimes Michael's or Jack's.
[11:36] Arawn Spitteler: I used to do Zero's, but suffer some language limitations, and sometimes Documentation
[11:36] Gaius Goodliffe: Oh, any news on the "ghost objects" issue? I remember last time Andrew was wondering the the ghost objects show up in the parcel prim count. I can now confirm they do, although you can't return the object from the About Land > Objects tab. You see the prims there, but they can't be manually returned or auto-returned.
[11:36] Andrew Linden: Oh, do they get all technical in Zero's office hours?
[11:37] Andrew Linden: I suppose that makes sense. That is one of the main hours for discussing open platform protocol stuff.
[11:37] Arawn Spitteler: The only meaning I know for POST is Power On Self Test
[11:37] Andrew Linden: hehe
[11:37] Andrew Linden: POST, GET, DELETE
[11:38] Andrew Linden: the three communication types of a RESTful protocol
[11:38] Arawn Spitteler: What's REST?
[11:38] Andrew Linden: REST = ... I'll have to google for it
[11:39] Gaius Goodliffe: hehe
[11:39] Andrew Linden: REST = representational state transfer
[11:39] Arawn Spitteler: The Acronyms don't tell as much, as they used to. I could give you the formula for NaPalm, and that might still be top secret
[11:39] Andrew Linden: http://en.wikipedia.org/wiki/Representational_State_Transfer
[11:41] Andrew Linden: Oh... it seems I forgot the PUT method
[11:41] Andrew Linden: although... seems like you could do without PUT and just use POST
[11:42] Arawn Spitteler: Put goes with Get
[11:42] Andrew Linden: oh well, supposedly one of the reasons HTTP has been such a success is because it is a RESTful protocol
[11:42] Andrew Linden: REST describes the general qualities a protocol must have to be "good"
[11:43] Andrew Linden: that's what I gather, anyway
[11:44] Andrew Linden: I'm not involved in the protocol design, and I've got too much stuff to do as it is, so I haven't been keeping up to date with that project
[11:44] Arawn Spitteler: I read another article, that said Structured Programming would eliminate Memory Leaks.
[11:44] Andrew Linden: And it has eliminated them... just use JAVA
[11:44] Simon Linden: That's sort of like saying "safe driving will eliminate accidents" :)
[11:44] Andrew Linden: ... except when the JAVA engine itself has memory leaks
[11:44] Andrew Linden: or resource leaks (almost the same thing)
[11:45] Andrew Linden: The problem with such paradigm's is when the paradigm's fail
[11:45] Arawn Spitteler: Single Point of Return, is what it mentioned.
[11:46] Simon Linden: That is good programming practice ... I can't stand it when I find a routine with a lot of return paths
[11:46] Andrew Linden: <_<
[11:46] Andrew Linden: >_>
[11:46] Arawn Spitteler: But you still have to leave little piles of data product, lying about, with no idea of who will ever ask for it next.
[11:47] Arawn Spitteler: Some sort of Archive Algorhythm is needed.
[11:48] Arawn Spitteler: That's going to morph, with system resource upgrades.
[11:48] Andrew Linden: I got lost
[11:49] Andrew Linden: So we don't have many pressing issues that need to be raised today.
[11:49] Arawn Spitteler: I think we drifted. Anyways, I should learn enough about Structured Programming, to do some intelligent scripting.
[11:50] Andrew Linden: Should be end the hour early? Or do we want to talk about misc stuff?
[11:50] Arawn Spitteler: miscellaniae, leads to the best ideas.
[11:50] Arawn Spitteler: Would it be possible, for a script, to ask for an early sim transfer?
[11:50] Andrew Linden: Earlier today I saw an article about the "new interest in virtual worlds"...
[11:51] Andrew Linden: lemme see if I can find the link
[11:51] Andrew Linden: "Early sim transfer"? You mean some sort of region crossing optimization?
[11:52] Andrew Linden: No... I lost the link
[11:52] Arawn Spitteler: Yeah, maybe run a script in another Sim's engine, or just ask for the wearing avatar to be in the other sim. "I'm going that way!!!"
[11:53] Andrew Linden: well... the main problem with that is LSL scripts can only run on one region... we don't have any mirroring features for them
[11:53] Andrew Linden: so the region that the script is in must wait until the last minute to save the script state off...
[11:54] Andrew Linden: it would be hard to try to save it off, send that over, and then journal new changes to state and stream them over
[11:54] Arawn Spitteler: So, it would be a protocol to optimize, "Which Sim Do I Want To Be In?"
[11:54] Andrew Linden: I guess to sum up the idea I'm talking about... save the object state and send it over
[11:55] Andrew Linden: early, and then only send the diff changes to that state at the last minute
[11:55] Arawn Spitteler: Which is currently triggered by exiting the boundaries of a sim
[11:55] Andrew Linden: that is one of those projects that is easier said than done
[11:55] Simon Linden: Sorry gotta run to another meeting .... bye everyone
[11:56] Arawn Spitteler: It's just as easy as picking up that little piece of paper, that the entire library is resting on.
[11:56] Andrew Linden: there are a lot of corner cases... the object never actually crosses would be the biggest one
[11:56] Andrew Linden: in which case the original state was sent over for nothing
[11:57] Arawn Spitteler: Yeah, electing which Sim a Script is running on, could be taken to excess.
[11:57] Arawn Spitteler: Still, Sniffers should be able to cross region boundaries.
[11:57] Andrew Linden: right now the simulator code has direct access to the LSL script in memory
[11:58] Andrew Linden: if the script were on a different process, or different server
[11:58] Andrew Linden: then accessing the data of the script would take much longer
[11:58] Andrew Linden: it would have to go through some weird cross-process pipeline
[11:58] Andrew Linden: or network pipeline
[11:59] Andrew Linden: so I think the most likely improvements to genera cross-region problems and border crossings could be fixed by simply smarter software
[11:59] Andrew Linden: that is... optimizing the existing parts that are slow
[12:00] Andrew Linden: cause if you can't optimize those...
[12:00] Andrew Linden: it's just going to be a mess when the system gets even more complicated.
[12:00] Andrew Linden: er... a bigger mess
[12:01] Arawn Spitteler: It's a mess, I'm sure. Sensor could be replaced, by asking the Specified Server as to what's in a Bounding Box.
[12:01] Andrew Linden: That is... if you can't optimize the simple system... what makes you think you can optimize the complex one?
[12:01] Arawn Spitteler: Scalable Optimizations?
[12:02] Andrew Linden: Yes, the Sensor query needs an overhaul.
[12:02] Arawn Spitteler: I wonder that Gravity doesn't shut down, when we cross Region Borders.
[12:02] Andrew Linden: Perhaps a general query like "what is in this box?" would be useful
[12:02] Arawn Spitteler: BoundingBoxQuery?
[12:03] Andrew Linden: however... I think a better way to optimize would be to supply a more specific query, and only return hits for the specific hits
[12:03] Andrew Linden: in other words... let the deep-down C++ code cull the sensor results better
[12:03] Arawn Spitteler: With Wild Cards, so we can ask if there's anything thsat starts "Kitto Track #"
[12:04] Andrew Linden: right, searching by "regular expressions" would help (wildcards)
[12:04] Andrew Linden: and if the search could better specify its range of interest, that would help
[12:05] Andrew Linden: ... if the simulator could cull the relevant objects quickly
[12:05] Andrew Linden: turns out, our own object culling system is not very fast or clever
[12:05] Arawn Spitteler: Object Culling for Sensor?
[12:05] Andrew Linden: that is, the culling of the LSL sensor pipeline is not very smart
[12:05] Andrew Linden: Yeah
[12:06] Arawn Spitteler: The term, Awful, comes to mind.
[12:06] Andrew Linden: Perhaps. There are different levels of awful.
[12:06] Arawn Spitteler: A box wold make more sense, than a cone.
[12:07] Arawn Spitteler: Havok doesn't use Solids of Anticipation, does it?
[12:07] Andrew Linden: well... a box is a little ambiguous... there is an AAB (axis-aligned box) which is not to be confused with a local box
[12:07] Andrew Linden: AAB's can be optimized much easier
[12:08] Andrew Linden: however, they are counter-intuitive, perhaps, to a LSL scriptor who is focusing on the local orientation of their object
[12:09] Andrew Linden: alright, I've got to go too
[12:09] Andrew Linden: Thanks for coming.
[12:09] Gaius Goodliffe: Nice seeing everyone :) Take care
[12:09] Arawn Spitteler: Glad to have you
[12:10] Arawn Spitteler: I think I've solved the problem of the Wankel, by the way
[12:10] Andrew Linden: You mean the Wankel engine?
[12:10] Arawn Spitteler: Yeah, they have aluminum housings, that chill the air, you're trying to get work out of.
[12:11] Arawn Spitteler: Stratified Charge, of a Direct Fuel Injector, should work until they have better housing materials.
[12:11] Arawn Spitteler: Aluminum Nitride might make sense.
[12:12] Andrew Linden: Hrm... perhaps. I don't know enough about the problem to really say.
[12:12] Andrew Linden: the only Wankel engine in production these days is the one in the Mazda RX7, right?
[12:12] Arawn Spitteler: It seems to obvious, to me, so there might be some problems that it leads to.
[12:12] Arawn Spitteler: Renesis, as far as I know.
[12:13] Arawn Spitteler: Elegant Engine, but I think it's got basic material problems.
[12:13] Andrew Linden: the engines are small and light... but the complexity of the emissions systems tend to make up for the saved mass
[12:13] Arawn Spitteler: That's because they're letting the flame touch the housing.
[12:13] Andrew Linden: Yeah, they weren't able to make the RX7 engine until the material science could produce the right alloys
[12:14] Andrew Linden: I expect electric vehicles to come into fruition before the Wankel engine reaches its full potential.
[12:15] Arawn Spitteler: Electrics have distoance trouble, or would have dominated the Century
[12:15] Arawn Spitteler: They're trying to run them on Nuclear Power.
[12:15] Andrew Linden: right, so it comes down to the battery
[12:16] Arawn Spitteler: I'd like a Diesel with a battery, but the Wankel still has potential
[12:16] Andrew Linden: batteries have been improving, but the improvements have not come fast or in spurts
[12:16] Andrew Linden: it has been a gradual improvement curve
[12:16] Andrew Linden: but it is still going up
[12:16] Andrew Linden: and then super-caps are approaching from another angle
[12:17] Arawn Spitteler: Super Caps sound like a virtual rechargable battery, but we both have to go.
[12:17] Andrew Linden: Ok Arawn, see you later.