QRLs are not SLurls … but they play that role on the 'Net.

We’ve created ordinary http URLs that teleport you to places in-world in Qwaq Forums, Being programmers, we could not resist the pun of calling them QRLs. The most common uses today are:

  • meet me here – telling someone where to meet, in IM, email, or calendar invite
  • I was here – recording a history of where you were in a bookmark or some sort of audit trail
  • go there – even if working asynchronously, you can tell people where to go to explore more from a Web page, blog, or wiki

Most programs will recognize http://… and turn it into something clickable that starts your Web browser if it is not already started. Our QRLs produce a page that displays instructions, which is nice if you don’t yet have the Forums client installed. But if it is installed, the page can automatically launch the client and place you directly at the designated location.

Continue reading

Places, Everyone!

Related to the URL addressing concepts discussed here, there is the question of how to denote places within a 3D world. I really like having names for these.

A typically engineering way to map out locations in a model is with coordinates. There are a couple of problems with this.

Numbers are generally pretty meaningless to users. I hate dealing in part numbers or account numbers rather than product and account names. Numbers just aren’t as mnemonic as a single name, and in 3D it takes a lot of numbers (six numbers of several decimal positions each) to describe the position and orientation you need to be in so that you can see something of interest.

Worse, a position and orientation are only interesting because of the things you can see and do there. If those things change (e.g., move, rotate, or change size), the coordinates for you to work with them are then different. We’re also interested in doing things in cooperation with other people. While it is true that unlike the physical world, several avatars can be in the same place, it is often cognitively and socially nicer to position a group of people around some item of interest rather than stacked up on top of each other.

Our client architect Brad Fowlow has led the development of several ways to address this by interactively or automatically creating a rather sophisticated set of named places from within-world.

Continue reading

A Great Miracle Happened There

One of the really great things about the WWW, as opposed to the Internet in general, is that the Web separates the concept of naming from everything else. A URL is bit of text that names a resource. You can type it. Except for some long URLs used by banks and in ecommerce, you can often even remember it. But most importantly, you can include the text in some other technology such as an email, an instant message, a calendar invite, a Web page, or even in a book or piece of paper. It can be sent and stored. The URL can be transmitted through this separate non-WWW media, and it still works on the other end.

When you name something, you have power over it. Like the dreidel mnemonic of the title, names help you to remember stuff. You can speak clearly about places and objects instead of just using misunderstood pronouns and long descriptions. And best of all, if you know something’s name, you can use it in casting a spell. (We call them programs.)

So a big part being able to work with virtual worlds, talk about them with other people, and use them in programs is to have a name – a URL that corresponds to each interesting thing about a virtual world.

Continue reading

Subsumption Assumption

Ack, this was sitting in my drafts folder for nearly a year. At the time I started it, someone had asked about how one might use Croquet virtual worlds to subsume other technical functions in the same way that the World Wide Web has incorporated other resources and functions. I did five minutes on the taxonomy of the problem-space.

I should have just answered with this video of Intel’s John David Miller demoing the use of Twitter from within a Qwaq Forum. He fills in the stuff on the Twitter Web page (crappy hand-held video, below) and then I love how the audience guy asks, “And then you can bring the result in to the world?” JDM answers that it already is, and dollies back to show that the whole interaction has been in world the whole time.

Reminds me of this from way back when.

OpenLaszlo == Ajax

OpenLaszlo, for which I am the documentation guy, now compiles to DHTML as well as to Macromedia Flash (swf). That means that you can take the same LZX source and compile it to either swf or DHTML, and it will just work. So there is now a completely OpenSource stack for doing web apps.

OpenLaszlo is much more robust and full featured than any other Ajax toolkit. And, the architecture includes a client abstraction layer, which means that we worry about browser inconsistencies so you don’t have to. The upshot of all this is that if you want to build a real web application, you should use OpenLaszlo instead of some Ajax toolkit. Of course if you just want to spruce up a web page, Dojo or Rico or something like that might be appropriate. But I think you would have to be nuts to use them for building a real application.

We’re not yet shipping a “production” version — that’s scheduled for “sometime in 2006”– but the prototype version is getting more robust by the day, and there is a very credible demo up on the website.