Call for participation: Web Monday, Aachen Euregio, Dec 3rd 2007

22 11 2007

On December 3rd we will be organizing again a Web Monday here in Aachen. We call it Web Monday Euregio because we would also like people from the surrounding countries (Netherlands and Belgium) to attend and make it more international.

So what is a Web Monday?

Basically it’s a meetup taking place on a monday evening with topics all around web2.0, internet and so on. It consists of a one hour of people arriving and getting to know each other, one hour of 10 minute talks (depends on how many we have) and then open end for networking and getting to know each other. The whole event is free of charge and drinks & snacks will be provided.

Everybody is also invited to give a talk. Last time I gave a talk on the new Second Life Grid Architecture and two guys from rudirockt.de introduced their project.

This time we are also having a talk about Second Life as the guys from second-labs.com will be introduce their Analytics package (actually it will take place in their office :-).

So if you are interested in either participating (and you are in the area around Aachen/Aken/Aix la Chapelle) feel free to sign up on the Web Monday Euregio Wiki page. If you want to give a 10 minute talk feel free to add this to the list of talks which you can find on the wiki as well. You will find all further information such as location on that page.

I hope that some people from outside Germany will come as it would be great to connect also over the borders (which indeed are very close here).

[Web Monday wiki page]

Technorati Tags: , , , , ,





Linden Lab releases more Python libraries as Open Source (technical)

22 11 2007

Eventlet and mulib, two Python libraries have been already released by Linden Lab earlier (during SLCC) and Certified HTTP (CHTTP) is developed in the open already.

So what are these?

  • Eventlet is a networking library written in Python. It achieves high scalability by using non-blocking io while at the same time retaining high programmer usability by using coroutines to make the non-blocking io operations appear blocking at the source code level.
  • mulib is a REST web service framework built on top of eventlet.
  • CHTTP basically wants to implement a more reliable HTTP by ensuring that each message is guaranteed to be delivered exactly once.

Now Linden Lab opensourced further libraries which can be found here. Citing Ryan Williams/Linden Lab from his mail to the SLDev Mailinglist:

  • base.llsd : full-featured llsd parser and serializer for all three wire formats
  • base.lluuid : interface for generating, representing, and parsing UUIDs
  • base.config : global-config-file interface
  • ipc.llsdhttp : HTTP client that automatically encodes/decodes LLSD. Great for web services passing around data.  Works with eventlet beta-1 (not trunk).
  • ipc.saranwrap : wraps a module in a child process that is spoken to via pipes, so as to use eventlet’s socket swizzling around blocking code like MySQLdb.
  • ipc.mysql_pool : pool of saranwrapped database connections
  • ipc.russ : Recursive Url Substitution Syntax.  Build urls through variable expansion.
  • servicebuilder.py : similar to base.config, uses a config file and russ to build urls
  • ipc.webdav : webdav convenience module, this looks like it should be revamped to use httpc
  • ipc.xml_rpc : an xml-rpc module
  • util.named_query.py : named query runner that uses a directory tree of llsd files

Great to see Linden Lab publish all these things (although I have no idea yet if they might be of use to me 😉 ). Documentation is more or less missing on these (and I wish they would have used at least doc strings but this seems to be changing) and of course this is mostly intended to be used with Second Life (while eventlet and mulib as well as CHTTP should have quite nice used also outside this realm). But as they are in the process of creating a standard protocol it’s definitely nice to see them publishing it so we might save some time.

Oh, and all of it is released under an MIT License.

Technorati Tags: , , ,





Standardising Virtual Worlds, an update

31 10 2007

Some time has passed away since I last posted something about the Second Life Grid Architecture Working Group and related efforts (because there are now).

Discussions

So what has been happening on defining a new protocol for Second Life? Well, actually technically not too much, we are still being in the discussion phase. But a lot of discussion has happened. A big one was of course the discussion around Intellectual Property and fears such a new protocol can open the door to all sorts of misuse. There is a lot of detail on this wiki page about it. Summarized the situation is that we don’t want to implement any DRM as it will be hacked anyway but we will keep the permission system as it is (other grids are free then of course to implement their own permission system like a true GPL one) and make sure the objects will stay in the trust domain you define.

Then there was some discussion about alternative region and geometry formats but Zero made clear in his lates office hour that we won’t define a new format for all this. Groups who want to discuss this can do so but in a different place while they still should stay abreast with the protocol work the SLGAWG is doing. Should there be the fear that some doors might get closed which are not being that easy to reopen again, they should say so.

VAGs

From these discussions which got a bit unstructured the idea of the Viewpoint Advocacy Group (VAG) was born. Those groups have a special topic such as Scalability, Quality Assurance or Geometry/Physic and they will closely follow the protocol definition. They will also discuss certain use cases under their individual viewpoint. Should there be conflicts between different views then somebody (probably Zero) needs to decide on them. The goal though is of course to reach consensus where possible. You can find more about them on this wiki page.

In-world group AWGroupies

Zha Ewry of IBM founded a group called AWGroupies as a group for meetups in Second Life. Zha also provided some group space for those meetings to take place. Meetings are once or twice a week and there is an agenda on what to talk about here. This group is invite only but if you are interested in the technical details of the protocol definition and want to contribute to a technical conversation there should be no reason not be allowed in.

These meetings are sort of preparation sessions for the office hour with Zero Linden. Results will of course be posted on the wiki.

AWGroupies also have a public subversion repository here: http://openmv.org/cgi-bin/viewvc.cgi/archwg/

The Scope of the SLGAWG

In his last office hour Zero Linden was talking about the scope of this project: The main goal here really is Second Life and how to make it possible to open up the grid and that way also make the architecture more scalable. It is a project for the next 1-2 years. It is not about redefining everything, most of the data structures present in Second Life today will probably also be used in the new architecture. It is also not about being able to host 5000 people on a region because this needs severe rethinking and experimentation about how to do that with all the SL features still intact. For a more general standardization of virtual worlds there is actually the vwinterop project which I will describe later.

The last decision of what is in scope and what isn’t is now defined by Zero should there be problems coming up regarding this. He also promised to edit the wiki next week and move stuff not in scope “elsewhere”.

Coding?

Well, on the coding front not much really has happened yet. We are sort of still in the discussion on how this project actually should work instead of working on something. There are some exceptions of course, like Gareth Ellison who is working on some python based components. From the official site (== Linden Lab) there is only known right now that they want to have an implementation for a customized client logging in to an agent domain at the end of Q4.
But now that Q4 is passing past fast and Zero will edit the wiki I hope that some more official coding is happening soon. I think this is very important because right now probably everybody has their own view on how things might or might not work.

Code can then also be used as a basis for discussion and an example for the ongoing work

Virtual World Interoperability

At the Virtual Worlds Conference and Expo in San Jose earlier this month IBM hosted a closed session with many players from the virtual worlds business, such as AutoDesk, Samsung, HiPiHi, Anshe Chung Studios, Sun, Transmutable, Areae, Forterra, Mindark, IBM, Cisco, Google, Linden Lab, Sony, Multiverse, Intel, Microsoft, Motorola, and Philips. According to Peter Haggar, Emerging Technology and Standards Senior Technical Staff Member at IBM, this meeting was mainly meant to check out if there is interest in creating standards for virtual worlds to make them interoperable.

It seems there is some interest and so a group has been formed which now has a home on the web at http://vwinterop.wikidot.com. This page includes the full agenda for the day complete with presentation slides.

The status of the group is probably “forming”. Not real work has been done except some discussion about how this group might work. So it’s definitely an interesting place to watch and maybe participate. I missed the last meeting unfortunately but will try to attend the next one. Everybody can join this effort btw, just signup at the site. You need to be confirmed but for me this seemed not to be any problem.

So there are definitely interesting projects going on. One a bit more concrete (SLGAWG) and another somewhat broader (VW Interop). Now if the first one just gets a better name than SLGAWG it might be all fine 😉

PS: There is also the press release from Linden Lab and IBM regarding creating e.g. a standard for universal avatars. This is probably more related to the work done by the VW Interop group.

Tags: , , , ,





Webmonday Aachen/Euregio rocked!

23 10 2007


So yesterday we had our first webmonday in Aachen and the region called Euregio which consists of closer parts of the neighbouring countries Netherlands and Belgium. The idea was to get participants also from those areas but somehow we failed in addressing the right people. Nevertheless it was great for a first webmonday in Aachen. 25 people showed up while we were expecting 5 😉

We even had two talks, one about rudirockt.de which is some nice event portal for organising dinners in a city and by doing that meeting new friends (each course will happen in a different place and after that there will be an after dinner party).

The second talk was held by myself and I was talking once again about the new Second Life Grid Architecture which seems a very important topic for me. We had quite a bunch of people in the audience who never have been in Second Life and have been somewhat sceptical about it but in the end they might see Second Life in a different light now. Which is cool! 🙂

You can find another summary in german on my german blog and you will find there also the videos of the two talks. Attached is the slideshow of my presentation:

[link to slideshare]

Tags: , , , , , ,





New Client looks

22 10 2007

It seems that soon we will have some new looks for the Second Life client. One is done by Benjamin Linden and thus will replace the existing look of today at some point and the other is the OnRez viewer which will debut on Wednesday in conjunction with the airing of the CSI:NY episode about Second Life.

So here are the two screenshots:

Linden Lab viewer

(The long term goal here is btw to make the official client more easily skinnable in general)

OnRez viewer

Technorati Tags: , , , , , , ,





Lessons learned from the Plone Conference streaming

11 10 2007

So doing the streaming for a Plone Conference is quite a stressy task at times. You mostly run around trying to get the right people, you are searching for a possibility to plug into a sound source and you are trying to get a good network connection. Sound was working in the end after I check the mixer myself and managed to get a long enough cable (wireless mic would be nice but is expensive). And instead of having a dedicated line I had to share the wifi connection. But in the end it worked better than expected and I had 2 streams running, one to ustream.tv for the website and one to StreamGuys.com for Quicktime to use it in Second Life.

So should you plan to stream a conference or any other event live, make sure you

  1. arrive early, 3 days in advance might not be too little time. Make sure, the technical staff is around, too.
  2. bring enough long cables with you (or buy some in the area).
  3. have a power connection. Make sure you have power adapters should you be in foreign countries.
  4. check in front if there really is a dedicated line for you (not sure how good a 3G connection might work but it can be better than nothing and especially not shared)
  5. setup a Second Life venue far before the event
  6. prepare a streaming website (basically showing a ustream.tv widget) also ahead of the conference. This should be announced early and should also contain up-to-date information. A CMS like Plone is of course quite useful for managing such things.
  7. announce the life streaming early on as many channels as possible. Prepare a text and send it out to your blogs, to news sites, as group announcements etc. (create a group ahead of time or use existing ones)
  8.  have a good enough Quicktime Streaming Server. You might want to look out for a sponsor which should be easy to find for interesting events. If there is a budget it is even easier of course. As for our sponsor, StreamGuys, I can only say that it worked like a charm.
  9. don’t forget to hit the Record button on ustream.tv also. This way you directly have an archived version of the video you can link to.
  10. you link to the agenda of the conference and eventually convert it to Second Life times (something which I hadn’t time to do yet).

Of course I knew some of these things before but you forget quickly 😉 Especially doing the website before leaving is a very good idea as you probably will have enough stress already on location.

So if you want to join today’s streaming of the conference (starting in about 1 hour), join us via web or Second Life.

(photo by Aaron van der Lip)

Tags: , , , ,





Plone Conference 2007 in Second Life

9 10 2007

Plone Conference 2007

We are doing it again! After the great reception of streaming the Plone Conference last year to Second Life it will also happen again this time. From Oct 10-12 about 340 Plone fans and experts will meet in Naples for the Plone Conference 2007, over 50 people will give over 60 talks in 4 tracks. Topics will range from Beginner’s tutorials to highly technical details about the Open Source Content Management System Plone.

And you can be part of this even if you are not in Naples yourself. Just join us for the Plone Conference in Second Life. We are working hard right now to make streaming possible. The great thing is that Second Life also helped in finding a sponsor for streaming. Some months back I was visiting a Cisco event where the keynote of the Cisco CEO was streamed live to Second Life. The stream was provided by StreamGuys and we talked a bit about streaming into Second Life. This turned out to be a great connection as they are now sponsoring us to get the stream from Naples to Second Life. Thanks to StreamGuys!

For more information check out the Plone Conference Streaming Page.

Technorati Tags: , , , , , , , , ,





HTML on a prim is getting ready for prime time

2 10 2007

Firefox wallpaper

Now Linden Lab seems to be eager to ship feature after feature. First Havok 4 was announced (of course this is not really about a new feature but about reducing the crash rate) and is now even available in beta, then Windlight seems to make some progress (and we even had a First Look some time ago) and now we hear back from another long awaited project, called HTML on a prim which Linden Lab prefers to call “Web Media” (on a prim) because it’s supposed to be much more than just HTML.

Earlier today there was a little meetup with Callum Linden, the project leader for the Web Media project. He presented us the state of the project as well as future directions. There is even a wiki page available now which gives quite a lot of detail actually and it’s nice to see some more formal use case descriptions on there. That’s how I like it 🙂

So what is Web Media actually all about? As mentioned already it is not just about putting HTML on a prim in the form of a media texture and thus like we do it with videos today. It is all about an extensible system which also allows 3rd parties to provide handlers for completely different formats. One idea which came up during the meeting was a simple text rendering engine to get rid of the limitations of xytext (while being a great tool done by smart people it’s still sort of a hack). So one part of the work is apparently decoupling the actual rendering module from the logic. What comes then will come in 4 stages. As only the first stage is sort of fixed so far only for this a rough date is given.

Stage 1: Getting static HTML on a parcel

This work is supposed to take 2 months and Callum is doing everything to ship this before the end of this year. Of course it’s very brave to give a date but I think the main point here is that it’s being worked on. In stage 1 also the refactoring of the current implementation to allow for the pluggable architecture described above. Static HTML here means that it won’t support forms or anything like that.

Stage 2: Extending the system

In stage 2 Linden Lab will work on enabling more than one stream per parcel (he says a handful). This is of course great news as having only one stream is quite limiting and parceling up ones land is annoying, too. Especially as you can have different sorts of media on one parcel then (like HTML and a video), this makes sense. Callum said also, that support for media on a HUD will be implemented then. The question here maybe remains how the details are. It would be great to put your music or video stream on a HUD and just carry it around with you. Having dynamic HTML on a HUD would also allow for a better way of implementing search or information interfaces (so the Reuters HUD could simply be a web page which makes things quite easy). As these requirements came up more during the conversation there’s nothing about this in the wiki yet.

Stage 3: Making things dynamic and interactive

So here the fun begins, both for security experts (sort of) and users. This stage will actually contain separate phases in itself. First of all single user interactivity is going to get implemented. This means every website you see on a prim or HUD can only be seen by you (of course people can see the same URL but if you do any input only you can see this. It’s basically like everybody having their own browser). I’d think that even this step will enable quite a lot of possibilities, beginning with the search/info interfaces mentioned before (actually an info interface could already be implemented with stage 1 if there is no clicking involved).

The second phase will then what he calls “poor man’s shared browsing”. In this scenario URLs, clicks and keyboard input will be passed around between users on a parcel. I am not sure how good this will work. We might try out beforehand by getting a bunch of USB mice, connecting them to one single computer and everbody trying to browse the web simulatanously ;-). But if done right and maybe only one person being allowed to click at one time this might be nice for tutorials etc.

The final stage is true shared browsing. In this situation the actual browser sits on the server and delivers it’s graphical output to the prim. Again I am not sure how good this will work and Callum also said that having the browser implemented on the server side can be quite tricky. Additionally it’s not very useful for highly dynamic sites using Flash or AJAX like components. The implemenation in the end will probably be a mix between these 3 alternatives and parcel owners can then choose which one to use.

Callum was making clear that he definitely is looking for more input especially for stage 3. This is where all of you can participare by adding your use cases to the wiki page. What would you need and do with HTML on a prim?

Stage 4: Implement the holy grail

The holy grail is actually to implement full support for web on a prim. This means that you don’t put media textures on a parcel but instead you can define them on a per-prim-basis. According to Callum this is a completely separate project though and we might come back to that with another meeting.

Problems to solve

So the main problem to solve is actually security esp. when it gets interactive. If many people can see the same browser page instance then it needs to be defined who is allowed to input data into forms, click on which links and so on. If everybody can click and type everywhere and they are logged into your account you might soon have a different password or worse things. And with a shared browser you’d also have shared cookies for authentication. This sort of sounds scary to me and thus this definitely needs to get tackled.

What else might be nice to have?

Of course some more feature requests came up during discussion. Here are some parts of the discussion:

  • We have Quicktime support only now as this can be implemented easily cross-platform and along with GStreamer on Linux it gives a wide range of media support.
  • Flash is complicated to get it running. Callum was making some progress on windows but not an any of the other platforms. But it’s definitely something they wish to implement for obvious reasons. Flash playback works though but the interactive part is what’s the hard part. This means that Flash videos will probably work after stage 1.
  • With support for multiple streams different streams can also be played on in different heights (e.g. on each floor one TV at the same location)
  • Users should be able to turn these streams off or get a confirmation before starting it. This is important for people who are afraid of eventually giving out their IPs to foreign people (which you do all the time browsing the web anyway but we all know that some people are very sensitive to that so this should probably be an option).
  • Interaction between LSL and Web would be nice, e.g. in form of some JavaScript calls which do not control the browser but your SL client. This would allow in the simplest case to teleport you somewhere by clicking on a button.

Conclusion

All this sounds great to me and by looking at the use cases for stage 1 it should already adress quite some use cases (examples are listed here). And should it be possible later to add HTML to your HUD and at some point even to perform some text input there (not really sure actually in what stage form support for individual users get’s tackled) we should have a quite decent solution.

And again I would like to invite you to participate by providing use cases. Some are listed already, many are hopefully waiting in your brain to get added to the wiki page!

Technorati Tags: , , , , , , , ,





Second Life Grid Architecture Meetup tomorrow

22 09 2007

If you want to know more about the new Second Life Grid Architecture which Zero Linden talked about in this blogpost you should join me tomorrow at 11 am SLT in our sim Stadt.

I will try to summarize what the Second Life Grid Architecture group is about, how you might be able to help and describe the proposed architecture a bit. I don’t plan to go too much into technical details as they are not set yet anyway.

So if you want to come, Sunday 11 am SLT ist your time! 🙂

Technorati Tags: , , , , ,





Linden Lab reveals the future of Second Life

14 09 2007

Many people these days have certain ideas of how a virtual world of the future might look like. And most of them agree on the fact that it needs to be distributed and open source. Some people also say that they are waiting for a virtual world after Second Life as they only see today’s limitation of it ignoring that Second Life is of course not finished (and according to Robin Linden never will be. But that’s quite obvious, the web isn’t finished yet either).

Now Linden Lab was talking here and there about a) opening up their servers to make them open source, too and b) to make it possible to plug your own servers into the grid. As you might know many businesses demand such things as they want to host their own content themselves. They also made clear that these two things need to happen simultanously which means that there will be no open source server before the grid will be opened. This is due to business decisions I guess. Now opening up the grid is not that easy anyway as it involves many issues such as permission issues, topology maybe, object movement and so on.

How to go from there?

Now the big new here is that Linden Lab does not want to think about all this privately inside their offices but instead they want to discuss all this publically. For this to happen Linden Lab created the Architecture Standards Working Group which had it’s first initial meeting yesterday. It consist of a bunch of Lindens mainly hosted by Zero Linden and a bunch of residents who met mixed reality like in San Francisco and in-world connected by some audio gateway (which more or less worked 😉 ).
This does not mean though that this group is fixed. It was more meant to present initial ideas and get the discussion rolling and actually everybody is invited to participate! No decision have been made yet and everything presented is not set in stone yet. In fact there are workitems which are about verifying the architecture and thinking about alternatives.

How to learn more about all this?

According to Zero and Rob Linden they are working on getting all the information presented at the meeting into the Wiki as fast as possible. The raw IRC chatlog in which Rob and other have been taking notes has been posted to the sl-dev mailing list (unfortunately the archive did not work because of PGP issues). The agenda of that meeting can be found here.

How can people participate?

The discussion of the architecture will be done completely in the open which means with the existing communication channels: Wiki, Jira and the Open Source Mailinglist. Categories for this will be setup shortly.

There have been workitems defined during the first meeting which need to be worked on. These workitems will not be owned by a person but many people can actually do work for a particular item. What needs to be done is very broad. One topic is collecting possible use cases and user scenarios which this new architecture needs to fulfil. Another one is finding missing pieces in it and again another one is actually writing code. But as you can see there might be some work to do for everybody who is interested in this project.

There will also be follow-up meetings. Who gets to participate in these will simply be decided by whether they have done some work for the project or not. How these meetings will look like is somewhat open though. I guess there will be many sort of meetings, some just in-world, some mixed location like the first one and some maybe just in San Francisco (although an in-world event should be addable easily then). Of course there are also the office hours of the Lindens involved, mainly probably the one of Zero Linden.

A little bit maybe about the coding part: The new architecture is supposed to be very modular and pluggable and thus one can imagine a future system with components from many parties. All these need to work together and all the underlying interfaces and protocols need to be stable. To get to that goal it is needed that people indeed do write code to implement some of these components. One of the components could in fact be OpenSim, another one maybe a new search engine. So we need a lot of people coding stuff to get as many components independantly implemented as possible and try to cross check if every component works with all the others. That’s the way to find flaws in the protocol.

Soon I will follow up a post in which I will go more into detail about how the proposed architecture will look like and the story in how all this came into being (as much as Zero shared this with us). The slide above shows the proposed login process of the new architecture btw.

But all in all good times ahead and a Hurray! to Linden Lab that they really made the decision to do all this in the open!

Update: I started the project on the Second Life wiki and please feel free to add use cases, ideas and questions.

Tags: , , , , , ,