User:Andrew Linden/Office Hours/2008 10 28

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