OVW Meeting 5

The next open virtual world meeting will take place next monday @ Bar Knut, Ottensen 18:00 h.

Topics:
  • Current developments
  • Roadmap
  • License
  • Idea exchange
Place: Cafe Bar Knut, Ottensen 22765, Hamburg, Germany
Date: Monday, 21.12.2009, 18:00 MET

Come join us.
It is open for everyone, devs, users, donators, press...

Thoughts on Testing

While programming we write extensive tests. Tests are extra program code, which checks many functions. Basically every piece of code must be tested and be testable all the time. This is the programmers way to make sure, that a complex program works, even if things change over time.

The new client has now more than 100 test functions, each checking a group of functions. The upcoming portal just reached 50. Both are growing quickly with the number of feature blocks in the code. Sometimes we spend complete days writing tests. This sounds much, but it is worth the time, because tests easily spare much time later that would be spent debugging. Writing so much test code is a part of agile development.

Read more about testing on my blog

Donations Status & Upcoming Release

Dear Reader, this is a quick update on the donations status and the upcoming first release we are working on heavily.

The good news first: to the left you can see a sreenshot of the chat software we will publish soon. We are coding the last lines and have to integrate the software into the new installer. Surely some polishing has to be done but now we can see the end of the tunnel.

And now the very good news. You reached goal 1 for this quarter! We are thankful and proud. But that does not mean the project does not need your donations anymore. Keep up the good spirit and do not forget to grab a copy of Adobe AIR, so you can use our our little program.

Working on an Installer

We are currently working on an installer program. We were very happy with the weblin installer, which is a small EXE and downloads a separate ZIP file. We aim for a similar design. It might not do automatic updates in the first version, but we are currently laying the foundations for it.

Tell us if you have suggestions or experiences with the old installer you want to share. Now is the time to improve things.

Database Technology for the new Web Site

In the next months, the OVW web site will grow. When we add items, it will be an item trading platform. Later it will grow into a serious social network web site with all the "Send message", friends, feed, etc. We do not know yet how far we program our own stuff or if we use external services. After all, there are already enough social networks. Anyway there will be much traffic on the Web site.

From weblin we learned, that there will be millions of users. Weblin had up to 27.000 concurrent connections with more than 10.000 of them browsing the web, chatting and trading at the same time. We must make sure, that the web site works for 10.000s of concurrent users, because the weblin numbers are surely not the end.

Parallel to the client we already work on a the server/backend code. It will be just the necessary stuff to let the client run for you without much registration. But it is the foundation for all parts of the web site which will be added later.

I just posted an article on my blog about the database design for the upcoming OVW web site and item platform.

Get Ready for the First Release

We are working hard to finish the first version of our "chat browser" but there is something you can do while you are waiting:

Please download Adobe AIR and install it. AIR will be necessary to run our software. It is widely used and perhaps you already have it installed, so do not worry that it might harm your beloved computer.

I added an AIR download link to the sidebar. Just follow that link and you will get more information about AIR in your preferred language.

Goal-o-meter

There is now a picture from Google Docs available, which shows how much of the Donations Goal 2 is already achieved:

% of Goal 2 Reached:

Donations and Cost Explained

I added an explanation and a graph to the Donation page. The graph shows our past costs, expected costs in the next 3 months, and the donations.

We defined 3 goals. We are very close to the first goal and we hope to reach the second goal. Read more on the Donation page.

Users Hit our Test Server

We installed an XMPP server on our test server some weeks ago. We use this server for internal chat testing. The test setup also includes a database and a web server.

Last week suddenly a large number of clients hit our test server. Over the course of 2 days the numbers grew quickly to several thousand connections. It seems that there are many clients out there using our test server for chat on web pages.

Although this puts load on our small test server, we decided, that we would try to support these chats and let them continue. It turned out, that our test server can cope with the load. But the ongoing chats are sometimes disturbed by our internal tests. When we run tests or re-configure the server, then it happens from time to time, that the chat is offline.

Most users do not know about these technical issues. They just use the chat and this is ok. Since we allow the chat to continue, we feel the obligation to provide a reliable service. We know that it is very annoying if it suddenly stops working in the middle of a chat.

We consider renting an additional server exclusively for the chat. Then we can separate our test environment from the ongoing chat of real users. A full root server costs about 50 € per month. We are currently integrating a donation feature where you can help to support the chat server. We plan to spend this money anyway to make things safe and reliable, but we hope to cover some cost by donations.

Request for Ideas: Domain Name

We are currently searching a name for the software and a domain name for the download. There is some discussion in the forum about a name and maybe you can help. To narrow things down a bit, I will explain our current idea.

The key term is "Avatar". What we are creating is an avatar for the Web. We do not make yet another avatar system. This will be the first instance of THE avatar architecture for the Web and beyond. THIS avatar architecture is more general than the so called walled gardens of virtual worlds. All these closed avatar systems can provide their avatar as a web avatar. From the point of view of the Open Virtual World project, all virtual worlds are just very sophisticated avatar generators. Your real identity is on the Web. You live on the Web every day. Sometimes you dive down into a virtual world. But the Web covers them all. In a few years the separation between closed virtual worlds and the Web will come down. There will be just the Web (or the Net) where you walk around with an avatar and sometimes you enter a specialized world with the same avatar. Yet the outside world, the Web, will always be the largest world.

You have a web browser, Internet Explorer, Firefox or another browser. You use the browser to see the Web. The software you are using is called a Web Browser. "Web browser" or short "browser" is the category name. "Firefox" is a product name. The thing that it shows is the "Web" or the "Internet". You use an "Internet Explorer" to explore the Internet. This is a product name very close to the category name. The domain http://www.internet-explorer.com/ would be a good place to download that product.

What we are now searching is a category name and an associated product name and a domain name for the software download.

What is the product doing? It shows avatars. It gives you an avatar. Your are surfing the Web, but you do not see anyone? Just install an "Avatar". The Open Virtual World project makes "Avatars". "Avatar" is a very general term used in many areas. It is the term of 80x80 pixel images in forums, it is your character in Second Life (and soon the name of a movie). We believe, that what we start now will be THE Avatar. There will be other products, but the category name will be "avatar", maybe "web avatar", but like "web browser" it will be shortened to "avatar".

When the Web was invented, it was called the Web, because it is the World Wide Web. They did not call it any special product name, just THE Web. It is not operated by a single company. It is open and for everyone. The same is true for our project. Therefore we think, that the client software offered by the open Virtual World project will be one of the first products in the category "Avatar".

We would use the domain avatar.com. This is what you will download and install: an avatar. Where do you get an avatar? of course, from avatar.com. But as you might guess, the domain is already taken. This is where you can help. Maybe you have an idea how to call the product and the domain in the general direction of "avatar".

We are also still open to totally different suggestions. But "avatar" is our current direction.

Avatar Display Showcase 2: Heads Up Display

We did a new showcase example of the avatar display! It's more complex than the last one, but it shows some new features you might be interested in.

This time it's mainly about how you interact with the interface; how to chat and how to launch other actions. You might notice that there are some differences in the way we are doing it to weblin and/or rocketon.

Have fun playing with the showcase.



New Features demonstrated above:
  • 3D Avatars (MD2, Collada will follow)
  • Vector Avatars (the teddy-bears)
  • Scaling Control (lower left right corner)
  • Chat Console (we call it doormat)
  • Chat Bubbles (with different text sizes, depending on text length)
  • Folding Radial Menu (it's draggable)
  • Avatar animation (jump & wave implemented)


The trickiest part might be the new radial menu. Our version is based on the atom interface. If you follow the link, you can read about the advantages a radial menu has.

As always: This is not the final interface and it may be buggy. We are trying to publish every single bit of development to let you be part of the process. So give us your feedback because it matters...

Open Virtual World Forum

There is now a forum at http://forum.openvirtualworld.com/

The forum is for general discussion, proposals, and comments. The is also a developer section where you can ask (and answer) questions about module programming, the API, cross platform portability, translation, protocols and all the other dev topics.

The forum is linked here on the page in the top right menu.

Roadmap Update

The roadmap has been updated. Dates have been shifted because we want to make some parts a bit easier for testers. We decided to provide a Jabber account. Originally we planned an "early release" which needed much more user skills. We will now run a Jabber server for you, so that the client simply starts after installation and you do not have to get an external Jabber account on your own. So we have to set up at least a bit of a server infrastructure, which includes setting up the web development earlier. That also drives us into vacation time and "costs" 10 more days.

The chat release will be very "raw", i.e. it has no avatars, just a chat window. But we want to release early and often to get your feedback. Not only from users, but also from developers.

Of course, we won't leave you without avatars. The display showcases show what we plan. They are also already test beds for front-end implementation while the back-end was not ready. There will be avatars (soon) and items on web pages (a bit later).

Note: the roadmap is linked in the link list in the top right corner of this page.

Jumping right into the Code

For the start I created a simple HTML-based test user interface. It shows the avatar scene on a web page without any fancy stuff, just the data. Using the test interface, I can check what exactly happens between client core and display.

(This is not the final display. There are other showcases for the final display with all the animation, transparency and eye candy.)

The client has a 2 tier architecture. There is the back-end, which has all the data structures and does the protocol processing. And there is the front-end, which does all the display, animations and user interaction.

The image shows 3 columns. The left column has controls where I can enter/leave web pages by entering their URLs. It also has an input area to request data from the back-end. The center column is a very simple display of the avatar scene. It shows 3 avatars: The same avatars which are shown by weblin (in the lower part of the image). They are compatible! I can chat and move, and even put my avatar to sleep. Everything is still very raw. The right column shows the communication between back-end and front-end.

All this is written in HTML. I could write it in C++ or Java, but it would take much longer. The first real display will be in Flash. This shows the flexibility of our 2 tier architecture. Anyone can write a display module like I did in a few days. Maybe someone contributes a specialized displays for power-chatters once we publish the API.

The Team Grows: Heiner Wolf Joins in

http://createordie.de/cod/news/Open-Virtual-World-Avatare-unterwegs-im-Web-051038.htmlThe Open Virtual Worlds Project is happy to announce a new team member: former weblin founder, CTO and Chief Scientist, Dr. Heiner Wolf.

Heiner is the inventor and evangelist of Layered Virtual Worlds. Since 1996 he works on his vision to populate the web with avatars. He wants to make the web a social place where people meet, chat and play casual online games.

Heiner developed the first avatars on the web in a European research project. In 2005, very early in the age of web avatars, he wrote the Webmobs Manifesto. When the Web 2.0 came up, he founded Zweitgeist, the company behind weblin. Heiner developed the weblin client and portal software. Under his guidance as CTO, the weblin team created an incredibly stable and scalable system with millions of users. The Open Virtual World Project welcomes the former weblin brain.

Heiner is always on, even on a one day holiday trip. When roaming the web his avatar is called "Tassadar" or "Planta Velocia". Heiner likes reading science fiction literature and real science articles. He loves watching Stargate, Star Trek, Star Wars and everything that has a SciFi skin. Of course, EVE-Online is his favourite online game.

Update: recent press links (hi spider)

My Weblin Post Mortem

You might not know, but I worked for/on/at weblin from 2007 until early 2009. I invested some energy, brains and creative output in that "little chat tool" that attracted about 3 million users.

In my opinion (writing as the former weblin lead ui & game designer) the reasons for it's "failure" are neither its clumsiness, it's far too simple interactive elements, nor it's lack of monetary prosperity. The real reason is a quite simple one: confidence.

We were up & running. We had enough users to experiment with virtual goods and advertising to find the right way and the right balance to make it work for this target group between MMORPG players and socializers. We were working on serious game design. We were working on 3D technology and better interfaces for a layered virtual world that hasn't been explored before. We were learning.
We were on schedule.

But at one point the confidence in our success was gone. Parts of the management lost it and so the investors lost it, too. And if your investors loose confidence in you and you need them, you're out.

So farewell weblin. We will try to pick up the pieces and do what has to be done.

OVW Meeting IV

I am happy to announce that the 4th open virtual world meeting will take place this very thursday. Come join us.

Topics:
  • Schedule
  • License
  • OpenID & registration
  • Weblin & stuff

Place: Haus 73, Schulterblatt, Hamburg, Germany
Date: 13.08.2009, 19:00

Weblin

Like most of you, we got the news, that weblin is about to go down. This is sad news for us. Weblin is a great system which once had millions of users and it has a very good and strong community.

Actually, we are weblin users and have been for a long time. We like the concept of meeting people on web pages. So, we decided to create an open source version. We are planning to use the same open protocol to make our client compatible with Weblin. All users of different clients should be able to chat and connect. The user should have the choice of clients and competition will make clients better for the benefit of the all users.


Now it appears, that weblin drops the ball.
We will pick it up.

We are sad, that users of our client will not be able to meet weblin users. Anyhow, people will meet and chat and play on web pages. The time will come when there will be other clients in the biggest of all virtual worlds: the Web.

State of the Avatar

We are a bit behind schedule.

Not much, but we want to make things very good and solid. We are an open source project and we create an open architecture where other developers will be able to contribute plug-ins and features. The architecture we create now will be around for a while to come. If issues come up, then we solve them thoroughly even if it is more work, than just what's necessary to continue.

Next week we will hold an open meeting to discuss the schedule. The meeting date and location will be announced here soon. Anyone is invited.

Open Source License

Client and server software will be available under an Open Source License. The only question is: which one? There are various possibilities with different implications.

Should it be "infected" by GPL? Pros: changes will be publicly available and it makes the use of GPL code for the project possible. On the other hand, most desired libraries are under LGPL and can be used unmodified anyway. Cons: commercial enterprises might refuse to invest in GPL code to protect their investments. We want commercial use as much as possible. But do we really want commercial applications, which do not feed back their changes?

Should it be under a "free to use" BSD license? Pros: anyone can use it without publishing changes. Commercial applications are possible without restrictions. Cons: we might not get improvements back. This also means that the commercially operated code is not under peer review and thus might be at risk.

What are the licenses of other infrastructure projects, like Apache? Is the Apache License GPL-alike or BSD-alike? The "Derivative Works" in Apache's section 2 sounds more like BSD. Big projects seem to have no problem omitting the "infectious" part of GPLv3 section 5c. For example Hadoop, developed commercially by Yahoo, contributed to the Apache foundation, and used heavily by other companies is under Apache License.

What is your favourite license?

Avatar Display Showcase1: Movement

Have a look at our first little demo. What you see down there is the way we think the avatar display should work with avatar movement.

The user experience is not the final one but all basic issues should be matched.
We worked on how you move your avatar, how the display behaves when you scale the scene, what the display shows when you resize the underlying browser. To try it, download the flash file and open it in a browser.

Other fun issues (like the HeadUpDisplay, avatar interaction and lots more) will follow. But for the time being, just play around with this:

Check out the flash file

To say it one more time: this is neither the final display, nor the polished version of the avatar movement / stage behaviour. We need more time and your input to get things done.

Pre-FAQ:
  • No, there won't be wallpaper on every page you visit, it's just to show the movement.

  • No, we don't want to do pixel-art avatars as default.

  • The wallpaper was made by squidfingers.

A Module Needs a Name

We are building a modular system. Anything is a module. The configuration database, the protocols, the avatar display, the buddy list, i18n, anything.

But there is one very central module. Some of us call it the "facility manager". It manages URLs, chat rooms, participants in rooms, and it builds a model of the user's presence. Display modules query the "facility manager" and enumerate the data structures of the presence model. The "facility manager" knows who is in which room, it knows what happens in rooms, and it mediates between protocol modules and display modules. The "facility manager" uses protocol modules to enter chat rooms. It gets network events, builds the presence model, and presents it to display modules.

The "facility manager" is the model in MVC. But neither "model" nor "facility manager" are cool names. The thing needs a name. A real name, a cool name. So, that we can talk about the thing. Any ideas?

Open Meeting 3

Locations and displays:

  • There will be multiple displays per location. If URLs of 2 browsers point to the same location, then both browsers will have the same display. This means, that multiple "displays" can be attached to a single "location".
  • A chat window will be regarded as a "display". As a (positive) side effect, it will be possible to be in a room with only a chat window, but without a browser window.

Browser tabs:

  • Browser tabs will keep you entered, but you won't see people since you do not see the web page. A tab change will not leave/enter.
  • Only the status will change so, that other people know, that your tab is not active. There will be a special status for "active, but not on this page".

Roadmap timeline:

  • The roadmap has been updated with dates for the next milestones. Please see the roadmap page.

Place: Haus 73, Schulterblatt, Hamburg, Germany
Date: 18.06.2009, 13:30

Our shiny new Headquarter

We moved into our new HQ this monday!
From now on the open virtual world project will be developed right from the roof of the "Schanze", a central district of Hamburg, Germany.

The office is on the top floor of an old factory building with lots of space, light and air.

The photo shows the kitchen/conference table and parts of the roof-deck (on the left).

Now the equipment is set up, the keys and passwords had been handed over and we continue work at a gorgeous new office.

we happy.

Platforms

Our Open Virtual World client will be available for Windows and Mac.

The client will be programmed in a platform independent way. It can be ported to other platforms as well. The client will also be available for Linux. But we may need your help to do this as quickly as possible.

Beyond that, the architecture will be documented and libraries will be available, so that anyone can create a similar and compatible program in any programming language.

Protocol

We decided to use existing chat protocols for the Open Virtual World. People who meet on Web pages will actually meet in chat rooms hosted by chat servers.

We will start with XMPP, because it is extensible, modern, and because it gains more and more speed. XMPP is THE open instant messaging and chat protocol.

Later we will add other protocols. We are building an open architecture, that can use different protocols. XMPP ist the first. But IRC and others will follow. It is not really important which protocol people use to meet. The important point is, that they meet on the Web.

Why don't we create our own protocol? We have very much experience with chat and communication systems. We know that features of chat systems map nicely on the Open Virtual World. There are already well known protocols with all the features we need. There are client and server coponents. Even more important, there are people with know how. People, who already run chat servers. People, who know how to program additional components.

We need these people. We need YOU to make the Open Virtual World as rich as the Web.

Open Source and Competition

We are creating an open system. The software will be available with an Open Source License. We do not believe, that we can sell the client or server software. Therefore we publish everything and use the benefits of Open Source in return.

Of course, later we have to earn money to operate some servers at least. We will create and offer virtual goods. You will be able to get virtual resources, to craft virtual goods, to trade, use, and sell them. We will also sell additional virtual goods, which you can use to craft even better virtual items. But you do not have to. The system will be open and free to play.

We strive to create an open virtual world on the Web similar to weblin and RocketOn, but better, richer, more important, and more open for your participation. We do what weblin could have done. We think what weblin did not think of. We have more ideas than they had. We plan what weblin did not plan.

The open virtual world will be THE virtual world on the Web. It will be open just like the Web with millions of clients, and servers, and many services. We will create services for you and we hope, that other people will do the same. We believe, that competition makes this virtual world as interesting and diverse as the Web itself.

Roadmap

We are developing a layered virtual world system with social game mechanics. We are starting with technology decisions, then we implement the base system. Finally we will add advanced features and content.

Hello World

Welcome to the temporary home of the “Open Virtual World” project.
Our goal is to create a virtual world client similar to rocketon or weblin – but under open source licence and for all operating systems.

Until the project has a real name, we will try to establish a straightforward communication channel on this blog. So from now on, you will be able to find and discuss all news and updates regarding the development of our / your software right here.

Detailed information about the “greater vision” of this project, the technological approach, first previews and the repository will follow as soon as possible. But meanwhile feel free to drop us your comments and suggestions or get in touch if you want to join in.