Open Source Meeting/2007-08-16

From Second Life Wiki
Jump to navigation Jump to search

Transcript of Open Source Meeting from 2007-08-16

Special guest: Steve Linden

Agenda:


[14:06] Rob Linden: thanks everyone for coming (I'm sure more will trickle in
[14:06] Rob Linden: as you might have seen, Steve Linden is here to discuss the viewer roadmap
[14:06] Rob Linden digs up url
[14:07] Steve Linden: Hi all
[14:07] Steve Linden: http://wiki.secondlife.com/wiki/Viewer_Roadmap
[14:08] Rob Linden: thanks Steve
[14:08] Steve Linden: So, to introduce myself, I am a Studio Director at Linden Lab, in charge of most client focused development.
[14:08] Torley Linden: Good to see you all here today!
[14:08] Rob Linden is amused at Bridie trying to sit down
[14:09] Bridie Linden: / sorry Steve!
[14:10] Steve Linden: Sorry folks. Serves me right for running a debug build
[14:10] Steve Linden: So, as I was saying, I am coordinating development of User Interface, Rendering, and overall Viewer Stability efforts.
[14:12] Steve Linden: Over the course of the next six months, my hope is to more actively engage the Open Source community in active development of Linden Lab directed projects.
[14:12] Steve Linden: This will not directly affect the existing process of contributions related to bug fixes or change proposals
[14:13] Steve Linden: Although we do hope to streamline that process.
[14:13] Steve Linden: What we hope to do is to help coordinate efforts related to projects that Linden Lab has identified as important to the overall success of Second Life.
[14:14] Steve Linden: As a first step in that process, we are using the public wiki to outline the Viewer focused projects that we have in development.
[14:14] Steve Linden: That Viewer Roadmap paget ( http://wiki.secondlife.com/wiki/Viewer_Roadmap ) is an initial step in that direction.
[14:15] Steve Linden: Another page many of you might find helpful (it's linked from the previous one) is http://wiki.secondlife.com/wiki/Viewer_Software_Overview
[14:15] Steve Linden: My intent is to continue to update and expand these resources.
[14:15] Steve Linden: The next step in the process will be to identify projects which lend themselves to community efforts
[14:15] Rob Linden: have people gotten a chance to review any of this before this meeting?
[14:16] Steve Linden: These projects will become associated with Public Jira tasks
[14:17] Steve Linden: Mostly we anticipate initial community contributions on User Interface related tasks, as these have two properties that lend themselves to coordinated development:
[14:18] Dzonatas Sol has looked
[14:18] Steve Linden: 1) Many UI related tasks will directly benefit 3rd party devlopers (for example, Skinning)
[14:18] Steve Linden: 2) Some of these tasks will involve a great deal of, for lack of a nicer term, "gruntwork"
[14:18] Steve Linden: For example, our long term goal is to make the entire user interface scripted, interacting with the client through a well defined and documented API
[14:19] Steve Linden: The process of putting together that API and converting C++ code to User Interface scripts will be very labor intensive, so we will be able to use all the help we can get.
[14:20] Steve Linden: I expect that many developers will have projects that they are personally invested in, say for example, avatar customization.
[14:20] Branco Merlin: hi all
[14:21] Steve Linden: Once we lay the initial groundwork, we will set up projects along the lines of "Here is the approach required to make this set of code data driven and customizable. If you would like to see this happen sooner than later, follow these guidelines and we will make sure it gets integrated into the code base"
[14:21] Steve Linden: Now, having said all that,.
[14:21] Steve Linden: Much of this is still a ways out.
[14:21] Steve Linden: So some patience will be required. We have a lot of internal refactoring to do, and that is going to take some time.
[14:21] Steve Linden: Right now we are focues primarily on stability.
[14:22] Steve Linden: So if you look at the roadmap, the projects that are coming up on our plate now that Voice is wrapping up are:
[14:22] Steve Linden: * LLViewerApp
[14:22] Steve Linden: * Viewer Statistics
[14:22] Steve Linden: * Viewer Crash Reporting
[14:22] Steve Linden: * Viewer Memory Manager
[14:23] Steve Linden: * # Viewer Frame Sync
[14:23] Steve Linden: (All listed on http://wiki.secondlife.com/wiki/Viewer_Roadmap)
[14:23] Steve Linden: Roughly in that order.
[14:23] Steve Linden: So, at this point, any questions?
[14:24] Adam Xinpeng: Be nice if we could get the crash reports for customised viewers
[14:24] Feep Larsson: Steve, does the Viewer Memory Manager project imply that Linden will be discontinuing use of SmartHeap?
[14:25] Dzonatas Sol: Steve, can we expect the discussion pages of the wiki to be a good area to work out details, or is there another plan for a forum on items?
[14:25] Kooky Jetaime: Adam Nick has improvised a crash rep for his
[14:25] Kooky Jetaime: Lord knows I've sent him a few :)
[14:25] Adam Xinpeng: Hrrm, I might bug Nick then -- Nicholaz I presume?
[14:25] Steve Linden: Re: Crash Reports: Actually, the plan is to investigate shipping the Viewer with debugging information (at least line numbers) included so that we can dump the stack locally for those interested (and improve our crash reporting by providing light weight crash reports)
[14:25] Kooky Jetaime: Yes
[14:26] Adam Xinpeng: Cool thanks.
[14:26] Steve Linden: Re: Smartheap: Ideally we would like to find an Open Source solution for memory management. At a minimum we need something that enables us to better track memory leaks and bloat.
[14:26] Kooky Jetaime has a new memory leak
[14:26] Feep Larsson: Good to know. Thanks, Steve.
[14:27] Steve Linden: Re: Discussion: Yes, please feel free to use the discussion of those pages, by all means!
[14:27] Gigs Taggart: What does "Art driven UI" mean? That seems at odds with the idea of using a scripting language API.
[14:27] Adam Xinpeng: I'm guessing that means XML+TGAs
[14:28] Steve Linden: "Art Driven" means no more "programmer art" :) For example, the volume sliders are currently made up of a triangle and a rectangle, which is silly. It was easy to implement at the time, but the volume slider should just be a regular slider with custom art.
[14:29] Kooky Jetaime: ah..
[14:29] Gigs Taggart: so... like skinned standard widgets?
[14:29] Steve Linden: Other examples include floater backgrounds, the look of tabbed panels, etc. Everything should be customizable without touching the code.
[14:30] Tao Takashi: sounds good :)
[14:30] Ryozu Kojima: The only thing I can think to ask about is: Custom Assets, I remember there being talk about a custom prim type for open source devs to use, any other types of custom assets might be useful.
[14:31] Gigs Taggart: when you speak of scripting, are we actually executing logic, or simply a sort of graphical description language?
[14:31] Steve Linden: So, I'm not sure what else to go into. The page that we are most hoping to get communtiy involvement in, as I mentioned previously, is the User Interface Roadmap
[14:31] Rob Linden: http://wiki.secondlife.com/wiki/User_Interface_Roadmap
[14:32] Steve Linden: I was hoping to get to that sooner, but we have decided to focus internally on stability for a while, which I am sure most residents will support whole-heartedly, so that roadmap is going to be pushed back a bit.
[14:33] Steve Linden: The first step, "XUI Code Cleanup" will probably be tackled as part of stability - we know that the way we handle callbacks is fragile so we will be dealing with that at least.
[14:33] Stephany Linden: / we feel that pushing some things out in the name of stability is an acceptable trade-off...
[14:33] Adam Xinpeng: It's a tough call - part of what makes SL interesting is the new developments.
[14:33] Boroondas Gupte: apropos UI, when are UI changes considered to have failed beta tests? (like the now Communicate window didn't seem to be very popular amongst testers)
[14:34] Stephany Linden: / popular and working as expected are not always the same thing though :)
[14:34] Steve Linden: I still hope to start "Skinning" sooner than later, since it is such a huge win for everyone, ourselves internally and others who wist to do small changes to the UI.
[14:34] Boroondas Gupte: ic
[14:34] Stephany Linden: / for better or worse :)
[14:35] Tao Takashi: hey, it will bring all those winamp skinners to SL ;-)
[14:35] Ryozu Kojima: What's the proposed distribution model for skinned UIs, out of world downloads, or in world assets? (I imagine the former, wish for the latter)
[14:35] Kooky Jetaime: Combination?
[14:35] Kooky Jetaime: Outworld download with inworld pointers
[14:35] Steve Linden: Yes, "popular" is a very tricky thing to measure. One more reason to push for a more flexible UI - with a proper API someone could distribute a "skin" with a different look and feel.
[14:35] Gigs Taggart: it would be nice to tie skinned UIs to RegAPI
[14:35] Gigs Taggart: for more custom experiences
[14:36] Tao Takashi: but I guess it will be more out-world assets and thus the client would have to download a skin itself
[14:36] Steve Linden: We may make skins distributable as assets, *however* we will not make any attempt to protect UI scripts.
[14:36] Ryozu Kojima nods.
[14:36] Steve Linden: In addition to the difficulty inherit in doing so,
[14:36] Steve Linden: Security will be a major issue
[14:36] Kooky Jetaime: yea
[14:37] Boroondas Gupte nods
[14:37] Steve Linden: So allowing people to see exactly what a script is doing, in addition to making sure that a script can not, say, pay someone without explicit authorization built in to the client, will be crucial.
[14:37] Kooky Jetaime: definatly
[14:37] Ryozu Kojima: Yep
[14:38] Gigs Taggart: so we are talking about a fully scriptable UI then, actually executing logic.
[14:38] Tao Takashi: basically the same issues like with LSL I'd assume
[14:38] Alissa Sabre: When opening up a lot of customized skins to be distributed by residents, I want to see a better translation mechanim is in the beginning
[14:38] Adam Xinpeng: I'd probably go the same route as LSL
[14:38] Kooky Jetaime: Though you should also have some built in safegards as well
[14:38] Steve Linden: Gigs: That is the long term goal, however there are many intermediate steps.
[14:38] Kooky Jetaime: because not everyone will be able to read the code
[14:38] Adam Xinpeng: Have a "This skin will be able to do * X Y Z" prompt when you first equip it
[14:38] Rob Linden: we've got a lot of folks who've contributed some great stability fixes (crash fixes, etc), what sorts of things would you all like to see from us to help that effort out?
[14:38] Feep Larsson: Seems like some actions will need to be validated on the sim.
[14:38] Adam Xinpeng: just like the "This object wants to take your money"
[14:38] Alissa Sabre: Not all UI designeres speak all world languages
[14:38] Tao Takashi: how does the Render Roadmap relate to all that btw?
[14:39] Gigs Taggart: I assume the ability to break out and disable 3D rendering is related to this also.... for headless automated agents with a scripted hidden UI?
[14:39] Tao Takashi: of course I want all that in that roadmap tomorrow ;-)
[14:39] Steve Linden: So, the 'Render Roadmap' sectionm is focused on improvements to the 3D rendering
[14:39] Adam Xinpeng: Is there any chance of getting Meshes onto the pipeline?
[14:40] Steve Linden: Part of the overall Viewer Roadmap however involves better separating the 3D rendering from the UI / functionality (i.e. "Second Life API" or SLAPI)
[14:40] Steve Linden: I am hoping that by the end of the year it will be possible to build a lightweight UI only client
[14:41] Dzonatas Sol: That separation is something I'm interested in for a future involvement. I've already started the binary plug-in, which could tie in.
[14:41] Steve Linden: Soon after that I hope to introduce a "console" where the SLAPI can be accessed from the command line, e.g. "teleport Ahern 100,100,100"
[14:41] Boroondas Gupte: :-)
[14:42] Steve Linden: Intiially simple things like teleporting and opening windows will be available, probably fairly soon actually.
[14:43] Steve Linden: We are already expanding the "slurl" namespace for the "Search" project we are working on.
[14:43] Steve Linden: This will allow embedded web pages to interact with the client, mostly by opening existing UI (like someone's profile)
[14:44] Tao Takashi would like to be able to control some SL library via Python :)
[14:44] Tao Takashi: I know it's theoretically possible with libsl
[14:44] Gigs Taggart: yes, is an end point of this some sort of daemon client?
[14:44] Adam Xinpeng: Tao: There's a pylibsl out there. Google for it.
[14:45] Steve Linden: Well, once we create a proper "SLAPI" we will be able to package that up as a library. We probably wount build a python library ourselves, but it should be easy for others to do so at that point.
[14:45] Tao Takashi: but it adds some sort of complexity with Mono and IronPython etc. (which is why I once started my own python based libsl)
[14:45] Steve Linden: And of course, if there is significant demand, we may do an official python wrapper
[14:46] Steve Linden: I can certainly think of good uses for it for automating some of our internal QA
[14:46] Tao Takashi: a LL based library would probably also better in terms of code integrity (not sure about the word) than an external one like libsl
[14:46] Enus Linden: (amen to that)
[14:46] Steve Linden: Although we will certainly enable very simple "batch" file execution more or less immediately
[14:46] Tao Takashi: it will certainly open up quite a lot of possibilities :)
[14:47] Tao Takashi: see if I'd have that right now I could upload textures with it :)
[14:47] Tao Takashi: (automatically)
[14:48] Tao Takashi: but there are more than this project underway to make it easier to use outside assets, so we will see what is finished first
[14:48] Steve Linden: The one behavior we have to work out is how to represent "blind" clients; we know people are running them already, it makes sense for us to allow these clients to indicate that they can not see the world and represent them appropriately (e.g. a "ghost" or something
[14:48] Adam Xinpeng: I've been in favour of having non-human clients get a different coloured name
[14:48] Adam Xinpeng: maybe green instead of orange
[14:49] Tao Takashi: yep, this makes sense
[14:49] Adam Xinpeng: An optional thing that third party clients can show during login.
[14:49] Ryozu Kojima: Like that idea
[14:49] Tao Takashi: a ghosted avatar might look nice :)
[14:49] Kooky Jetaime: That sounds nice :)
[14:49] Tao Takashi: ghost and bw
[14:49] Alissa Sabre: Color-only identification on some important thing is not a good idea in general.
[14:49] Delta Czukor: Sounds good to me
[14:49] Poppy Linden: since you don't have orientation, maybe go back to UFOs? :)
[14:49] Ryozu Kojima: You keep reminding me of other things, heh, like, transparent avatar skins and llTeleportAgent =P
[14:50] Alissa Sabre: it effectively kicks out color blinds
[14:50] Steve Linden: We also however want a solution for people who just want to do say voice and IM so they do not have to be located anywhere in particular
[14:50] Kooky Jetaime: I'm thinking of the Ghost Avitars from "Disclosure" right now
[14:50] Kooky Jetaime: Just a ghost template body w/a picture head
[14:50] Steve Linden: No point in having "ghosts" take up simulator resources in the welcome area for instance
[14:50] Tao Takashi: then again what about bots? Like some automated greeter? not sure if they should be ghosted
[14:50] Rob Linden: everything we've been talking about so far has been medium / long term stuff. anyone have any questions about how to better collaborate in the short term? are current communication channels working for everyone? anything we should be thinking about?
[14:50] Ryozu Kojima: The idea of giving avatars their own "instanced" space for such things would be easier, I imagine, once we go to Agent Domain/Region Domain
[14:51] Steve Linden: Anyway, that's kind of a separate discussion, but maybe worth brainstorming offline.
[14:51] Steve Linden: I have 10 more minutes, any other questions or suggestions for me?
[14:51] Alissa Sabre: Well, on the course of collaboration
[14:51] Tao Takashi needs to update himself on all the channels in use right now actually
[14:52] Tao Takashi: hope there's a wiki page about it somewhere
[14:52] Alissa Sabre: Steve, don't you have a plan to disclose your _already_worked_on_ long term projects to open source devleopers?
[14:52] Tao Takashi: (as I need to give a little talk on that topic this weekend)
[14:52] Alissa Sabre: I mean source of your prototype or research
[14:52] Adam Xinpeng: I'd like to see more on plain renderer improvements, I mentioned meshes already - but what about stuff like speedtree?
[14:52] Gigs Taggart: I'm not in favor of anything that adds more proprietary dependancies.
[14:52] Dzonatas Sol: Rob, do we need to promote SLDev more?
[14:53] Kooky Jetaime: hehe.. I'm still wondering why Python is sudddenly needed in the code
[14:53] Rob Linden: can't hurt
[14:53] Kooky Jetaime: speaking of more dependancies
[14:53] Ryozu Kojima: Is it "needed" or just wanted?
[14:53] Rob Linden: http://wiki.secondlife.com/wiki/SLDev
[14:53] Steve Linden: So, regarding active long ther projects that are currently in development
[14:53] Kooky Jetaime: You can't compile the source without it, or at least I couldn't.
[14:54] Steve Linden: Those are (Viewer fouces only):
[14:54] Steve Linden: "Windlight", "SL Search", and finishing up "Voice"
[14:54] Dzonatas Sol: Kooky, python is used for scripting more than just the viewer, like for building the client, it is also readily to implement/expose in the viewer.
[14:55] Tao Takashi: looking forward to the next windlight FL :)
[14:55] Kooky Jetaime: Dzonatas, its still yet another dependancy you have to have to have...
[14:55] Steve Linden: The rest of our focus at this point is on stability and then the UI projects. After Windlight finishes we will probably start another render focues project, but I personally will be pushing for some stability work first.
[14:55] Kooky Jetaime: It wasn't there a few versions ago
[14:56] Steve Linden: /One last thing : since we are focusing on stability, any *clearly reprodcable* crashes will be appriciated. Plese continue to write these up in Jira and be sure to include hardware and driver info. (The "Viewer Statistics" project will make it easier to report that sort of info)
[14:56] Dzonatas Sol: Kooky, can I refer u to SLDev, we had a discussion there in much broader view
[14:57] Torley Linden: For anyone who doesn't know about JIRA -- the public Issue Tracker, see: https://wiki.secondlife.com/wiki/Issue_tracker :)
[14:57] Gigs Taggart: I've started wrapping the client in gdb at all times, I'm crashing so much lately :)
[14:57] Feep Larsson: Steve, is anyone correlating the crash reports in JIRA to combine duplicates and/or suspected duplicates?
[14:57] Torley Linden: Bridie Linden does Viewer Crash triages every Wednesday @ 3 PM PDT!
[14:57] Bridie Linden nods
[14:57] Torley Linden: http://wiki.secondlife.com/wiki/Bug_triage
[14:57] Soft Linden: That's part of the Monday triage as well, and the preparation for that.
[14:58] Rob Linden: any help we can get on that front is GREATLY appreciated
[14:58] Feep Larsson: Cool, thanks.
[14:59] Steve Linden: Feep: As Bridie and Torley mentioned, we are triaging those ourselves, but any additional help (linking similar crashes, writing up good repros, listing hardware / driver info with repros) is much appreciated
[14:59] Rob Linden: please, skim through for the "Crashes" component
[14:59] Torley Linden: *nod* There's a lot of gaps, and we appreciate the help with filling in that info.
[14:59] Rob Linden: if you see issues in there where someone needs to upgrade their driver, comment
[14:59] Steve Linden: Thanks everyone!
[14:59] Rob Linden: bonus points for IMing the original reporter to help refine a report
[14:59] Torley Linden: Feel free to close duplicate issues and point Residents to the actively open ones we're focusing on too.
[14:59] Torley Linden: =D
[15:00] Torley Linden: Thanks for enlightening us Steve!
[15:00] Benjamin Linden: Thanks Steve!
[15:00] Gigs Taggart: thanks, later all
[15:00] Feep Larsson: Thanks for your time, Steve!
[15:00] Bridie Linden: What Rob and Torley said! ANd help w/triage agenda too!
[15:00] Rob Linden: thanks everyone for coming, and thanks Steve for presenting the roadmap!
[15:00] Adam Xinpeng: Seeya Steve
[15:00] Bridie Linden: thanks Steve!
[15:00] Kooky Jetaime: Everyone to Ben's place
[15:00] Dzonatas Sol: Thank for your time
[15:00] Kooky Jetaime: hehehe
[15:01] Tao Takashi: thanks Steve! :)
[15:02] Rob Linden: k....looks like the donut got moved when I had perms set wrong....I'm going to move it back now
[15:03] Adam Xinpeng: Aha! Liana!
[15:03] Dzonatas Sol gone again for awhile with kids... See you all .. maybe next week
[15:03] Adam Xinpeng springs
[15:03] Boroondas Gupte: any chance to get sit target prims on it?
[15:03] Liana Linden: ?
[15:03] Liana Linden: Help, I'm levitating?
[15:03] Adam Xinpeng <-- Adam Zaius's secret alt
[15:03] Ryozu Kojima giggles.
[15:03] Liana Linden: Oh, wait. It's ok, I'm in SL.
[15:03] Ryozu Kojima: Not so secret ;)
[15:03] Adam Xinpeng: Ssh! Heh.
[15:03] Tao Takashi: who again is this Xinpeng?
[15:04] Ryozu Kojima's stomach grumbles.
[15:04] Tao Takashi: don't eat the donut though
[15:04] Delta Czukor: heh, I give up trying to sit on this thing ;P
[15:05] Adam Xinpeng: Heh yeah
[15:05] Adam Xinpeng: You guys need to build a proper open source meeting area
[15:05] Ryozu Kojima: What would be "Proper"?
[15:05] Boroondas Gupte: one with sit targets
[15:05] Adam Xinpeng: Big. With room to show stuff.
[15:05] Adam Xinpeng: Screenshots, diagrams, etc.
[15:05] Delta Czukor: Maybe an actual building with chairs
[15:05] Tao Takashi: piles of open source code? :)
[15:05] Ryozu Kojima chuckles.
[15:06] Ryozu Kojima: Procedural prim faces would make life so much easier
[15:06] Liana Linden: An open source meeting area.... hmmm...
[15:06] Ryozu Kojima wants to slap a text box on a prim face
[15:06] Tao Takashi: we just tear a piece of the prim facades here aside and what we see then is source code :)
[15:06] Tao Takashi: only partly open yet though
[15:07] Liana Linden: what other things would you want to see? It'd be like a 3-D sldevlist.
[15:07] Rob Linden: It's proper....it's got at least....FOUR prims
[15:07] Adam Xinpeng: I'd probably make it so you have links and information about all the Open source stuff there for people who come past randomly
[15:07] Adam Xinpeng: and build a decent ampitheatre for these office hours.
[15:07] Ryozu Kojima: Sounds about right
[15:07] Liana Linden nods. nods.
[15:07] Adam Xinpeng: I'm happy to build one, I can do it on my flight to chicago (nice 18 hours)
[15:07] Adam Xinpeng: Do it in opensim then import it back onto the main grid.
[15:08] Tao Takashi: glad that it's only 9 hours for me to Chicago ;-)
[15:08] Boroondas Gupte: at SL4B there was a ubuntu-logo turned into a ring of couches. what about something like that (using either the SL or the opensource.org logo)?
[15:08] Rob Linden: k...I should get going. thanks again everyone. great meeting