Friday, 27 June 2008

Micro-Ode to Proko-Fly

The other day I posted a series of messages on Twitter, in reply to a message posted by OpenSpime enthusiast David Orban.

Twitter, for anyone who has managed to avoid hearing about it, is the first, and still the foremost, micro-blogging service. Each micro-message, called a Tweet, is limited to a maximum of 140 characters, and is supposed to reply to the question "What are you doing now?" But as the following example shows, a Tweet may in fact be any sort of message at all.

My series of Tweets ran as follows.

The Tweets:

dantonsideways To @davidorban: Homer describes a certain warrior as being like a fly in perseverance, endlessly coming back to harass the enemy

dantonsideways My tweet about the fly got me thinking of another persistent gadfly: Proko-fly Neva

dantonsideways Proko-fly : a fly in the big stone soup!

dantonsideways Proko-fly : a fly in the unctuous ointment of the social software interwebz!

dantonsideways Proko-fly a hairdryer? A veritable FLAMETHROWER in the vanity feed of the l33t FIC Digerati!

dantonsideways Hey, I'm almost as much fun as Mitch Wagner! w00T!#@!


It is fitting that this string of Tweets should begin with a reference to Homer, the ancient Greek poet who gave us the heroic epics the Iliad and the Odyssey . Because this short series of Tweets forms in fact a micro-ode to someone I've called Proko-fly, considered here as an almost mythical hero.

Those familiar with Second Life will recognize that I am refering to the infamous Prokofy Neva. If you need to be briefed on Prokofy, you might see my blog post about Second Life Loudmouths. Prokofy is best known for his criticism of what he called the Feted Inner Core (FIC) in Second Life, which is a supposed group of privileged programmers and content creators given unfair advantages by Linden Lab. Prokofy vigorously carries out an odd one-man crusade in defense of the average Jane or Joe, and against what he calls the Bolshevism of internet communitarians, open source and the California Ideology that reigns in Silicon Valley

So why is Danton posting a micro-homage to Proko-fly, when Danton is a fan of open source and internet communitarians? Worse, Danton is a self-confessed "libertarian socialist," whereas Prokofy consistently decries techno-libertarianism and all forms of socialism. Rather than try to explain this mystery, let me at least try to explain the Tweets.

The first Tweet replies to an offhand (and for our purposes irrelevant) message posted by David Orban, about shooing a fly out of his house. Which brought to my mind that simile used by Homer, and then led my wandering thoughts to the number one gadfly in my personal blogosphere: Prokofy Neva.

The story of the stone soup is found in many cultures. Travelers arrive in a village with an empty pot, which they fill with water and place over a fire. They drop a large stone into it, and explain to the villagers that they are making "stone soup," which tastes wonderful, but just needs a bit of garnish. The curious villagers each add something, and the travelers end up with a nourishing meal.

Prokofy applies the stone soup analogy to the business models of open source and social software. He says that the idea that one can make money by giving something away for free is an illusion: creative effort must be paid for. Trying to make money by giving things away free will inevitably result in a pot that contains only hot water and a stone.

The hairdryer incident occurred on Twitter on April 28, 2008. Prokofy was engaged in a vigorous Twitter exchange with several a-list bloggers, including the renowned Robert Scoble. Scoble has over 28,000 followers on Twitter and over 5,000 friends on Facebook. Prokofy in fact likes Scoble, considering him one of the more sensible internet evangelists, but was nonetheless striving energetically to set Scoble straight about internet culture. Suddenly Scoble tweeted the following:

Scobleizer Ian Betteridge just posted on FriendFeed: "arguing with Prokofy is like arguing with a hairdryer."

The original Tweet can be seen here. Around the same time, TechCrunch blogger Mike Arrington decided to shut Prokofy out of his twitter feed. As I remember, Scoble followed suit, though I'm now unable to find the links. (And somewhere Prokofy gave a detailed explanation of the different ways of shutting someone out of your twitter feed, which went over my head.)

Shortly after that, Prokofy had a similar falling-out with Steve Gillmore, as described here. All of these l33t (hacker slang for "elite") a-listers were successively shutting Prokofy out of their "vanity feed", which Prokofy defines as follows:

"His vanity feed (I learned this term just now through talking about this incident with many people) is his RSS of all the mentions of him on Twitter. Not just people he follows, not just keywords, but people who talk about him -- his name itself as a keyword, and people who type '@stevegillmor' to try to get him to hear, even if he isn't following them, in the knowledge that he might look himself up on Tweetscan, and find it interesting to see what someone wrote unsolicited."

To justify shutting Prokofy out, the a-listers generally accuse Prokofy of being a Troll. Prokofy replies that he considers "Troll" to be an outdated concept:

"'Troll' is a concept I do not recognize, do not care about, and don't follow. It is a hangover of MMORPG and The Well culture. It's got to go if we are to have a free and normal Internet. I fail to find anything remotely scientific or objective about this concept, that insider geeks use as a flag or marker to mean 'people we hate who aren't like us and won't get in our tribe'."

Trolls are also said to incite flame wars. Thus I hesitated to use the word "flamethrower" in my Micro-Ode, but it was unavoidable. Hot flame is implicit in the "hairdryer" analogy, so the heroic dimension requires letting it all hang out. Danton stands in awed admiration before the magnitude of Proko-fly's achievement. He has fused the entire a-list together in one massive block of self defense against the truths they hate to hear.

But what brings Mitch Wagner into the last Tweet? Mitch writes for Information Week and also hangs out in Second Life under the name of Ziggy Figaro. I enjoy following Mitch on Twitter because of his laid-back humour, seen for example here, here, here or here.

Also, this makes a complete cycle, going from mild-mannered David Orban, through Prok's heroic struggles with the digerati, and back again to mild-mannered Mitch Wagner. As in Auden's poem about Icarus, the ship that had "seen something amazing, a boy falling out of the sky, had somewhere to get to and sailed calmly on."

Sunday, 22 June 2008

Danton goes Open Source

About a year and half ago I embarked on a voyage of discovery through Cyberspace. I had been just another average internet user until one winter day early in 2007, when I said to myself: "I'm finally going to create that website I've been talking about."

The creation of my first website became a long saga. A friend had advised me to use a software package for dynamic websites, which turned out to be way over my head. I spent weeks struggling to acquire a rudimentary knowledge of HTML, PHP, MySQL, DNS and
web hosting, when I could have had a free hosted blog up and running in a matter of minutes. But I wanted a "real website."

I finally got a few websites running, which lead me to branch out further. I began exploring the blogosphere in greater depth. Then I created my own user page on Wikipedia, under the name of Redeyed Treefrog. And in late November of 2007 I joined Second Life. A few weeks later I created this Second Life blog, which rapidly acquired a larger audience than all of my other websites taken together.

Through my involvement in Second Life, and in particular through reading Prokofy Neva, I began to investigate social software. I would have hesitated to join most social sites using my real name, but I found it easy to sign up as Danton Sideways. Thus Danton is now present on Twitter, Plurk, Facebook, FriendFeed and several other such sites, where my "friends" are for the most part other Second Life avatars. I've become an Early Adopter. Now I'm taking what for me is the next logical step: I'm going Open Source. And I've created for the occasion a separate Open Source blog.

I've mentioned in a previous post on this blog my interest in the approaches to tools developed by counter-culture philosophers such as Ivan Illich and Stewart Brand. I've also stated that I consider free software guru Richard Stallman to be a saint, and Microsoft to be The Beast. So of course Prokofy Neva's continual diatribes against Open Source leave me unswayed. I am personally convinced that Open Source can stand up against the criticism that is directed against it on economic, legal or moral grounds. But I would prefer to leave the polemics to others. Instead of spending my time and energy arguing about Open Source, I'd rather just put Open Source to use.

I recently took a tour of several new grids that use OpenSim, which is the Open Source version of Second Life. OpenSim was created through reverse engineering of the Second Life software. At the risk of skirting the type of polemics I want to avoid, I might observe that reverse engineering is one of the grey areas of Open Source practice. In some cases it clearly involves infringement of Intellectual Property rights, but in other cases Open Source is more a matter of legitimate establishment of universal compatibility through open standards. Thus the IBM PC became the main international standard for PC computer hardware, because so many companies could easily make IBM clones. A rather different case is OpenOffice, the open source office suite released by Sun Microsystems, which provides a legitimate alternative to the detestable monopoly of Microsoft (the latter still uses every trick in the book to subvert the establishment of universal standards in this domain). And the benign, or at the least neutral, attitude of Second Life towards OpenSim has been explained as a form of enlightened self-interest: if the Second Life software becomes the basis of a new widely-used standard, this could reinforce the position of Second Life with respect to its competitors.

After taking my tour of the OpenSim grids, I wanted to learn more about the OpenSim software. I had to learn to use IRC, so that I could follow the discussions on the #opensim channel on freenode. I downloaded the IRC software program XCHAT, and on June 3d I connected to the #opensim channel as user "Danton." I got chatting with someone called "nebadon," and gave him the link to my blog post about the OpenSim grids.

That evening I learned from the #opensim channel that there was a meeting inworld on the OSGrid to discuss OpenSim. I logged into the Wright Plaza sim and found about 30 avatars standing around, talking about technical problems. Most of them appeared in the default Ruth avatar, but some had elaborate avatars, and a few were dancing wildly. Nebadon suggested I give everyone the link to my post, which several had already read and found well-written. After a few minutes the public chat went strangely silent, but the dancing avatars were still prancing madly about. I went back to the IRC chat, where I was informed that the sim had crashed. In Second Life I have had my viewer crash, but have never experienced the crash of a whole sim, so I failed to understand that the avatar dance scripts keep on going in one's viewer, long after the sim itself has crashed.

I started trying to fool around with the OpenSim software itself. I downloaded a binary version, and got it running in standalone mode on my home computer. Around that time I discovered that Ugo Trade has written a series of fascinating posts about OpenSim on her blog, including one that gives a list of OpenSim blogs, and another that introduced me to TribalNet.

As I tumbled further down the rabbit hole into the subterranean depths of OpenSim, I began to conceive of writing a series of blog posts describing what I found. But the present blog is devoted to the adventures of Danton Sideways in Second Life. I therefore reactivated an unused blog for Danton Sideways that I had created several months ago, as described here. I gave that blog a new name referring to "Open Source", and have already posted on it an article describing how I got OpenSim running in standalone mode on my PC.

News about Danton Sideways in Second Life will continue to appear here on the present blog. Henceforth, news about Danton Sideways in OpenSim will be given on Danton's Open Source Blog. How many separate lives can one little avatar have?

Monday, 2 June 2008

Alternate Second Life Viewers

After finishing my last post, about the open source grids operating under OpenSim software, I started studying alternate Second Life viewers. (The viewer, also called the "client," is the part of the Second Life software that you download onto your hard disk, and that enables your computer to communicate with the distant Second Life servers.)

Most, but not all, of the alternative viewers are open source, and some are still in early stages of development. All of them work with the Second Life grid, and many also work with the open source grids. This capacity of the same viewer to communicate indifferently with the Second Life grid or with the Open Sim grids is particularly interesting, since it prefigures the "3D web." Imagine a viewer that allows you to teleport from one virtual world to the next, almost easily as we now click from one webpage to another. Such a "3D web" may be just around the corner.

The official Second Life viewer

Before looking at the alternative viewers, it may be worth saying a word or two about the official viewer. The viewer must be downloaded and installed on your hard drive before you can connect to the Second Life servers, so the newbie experience generally starts at the official viewer download page . This download page also gives a definition of the various categories of Test Viewers (Release Candidate Viewers, First Look Viewers and Beta Viewers).

The current viewer is Version Number, which is what I have on my computer. The entire list of versions is given here. It can be seen that Linden Lab is currently up to Release Candidate 1.20.8.

I will definitely avoid using the latest Release Candidate myself, because my computer is a few years old, and is already stressed out by version I would have willingly stayed with an older version but, one day a few months ago when I tried to log on to Second Life, the system forced me to switch to the new viewer. The new viewer produced weird and undesired visual effects, in the form of shifting triangles of colored light streaming from my avatar. Using Google I found a post on the JIRA which linked this problem to my graphics card, which is an ATI Radeon X300/X550. I followed the advice someone posted on the JIRA, and installed an older version of the driver for my graphics card, since the most recent driver is incompatible with the current viewer. Using the older graphics driver solved the problem of the colored-triangles. However, to adjust to my downgraded graphics driver, Second Life automatically set my draw distance to 64 meters, so my avatar is now myopic. A great many residents seem to be having similar problems, which shows how critical viewer issues can be.

As I told in my previous post, the official Second Life viewer has gone open source. You can even try to compile it yourself, if you want to. First you download the source code, and then you follow the elaborate instructions, which start here and, for windows users, continue here. I tried to follow these instructions, as told in a post on my other blog, but I got overwhelmed by all of the other programs that I had to install to make this work, and gave up about half-way through.

Alternative open source viewers

The official Second Life wiki has a long page on alternate viewers. This list includes several open source modifications of the official viewer (such the Able, Dale Glass and Nicholaz editions), one closed source modification (Onrez), one extensively rewritten open source viewer (RealXtend), and a number of miscellaneous other viewers. A curiosity is the Marine Edition, codename "RestrainedLife," which is a viewer designed to enhance the BDSM experience, in conjunction with simple scripts to make attached objects undetachable, prevent chat and otherwise restrain one's consenting BDSM partner.

The main open source modifications of the official viewer were described by Caleb Booker in a post from September 2007. The Able Edition, made by Able Whitman, works just like the main viewer but adds visual muting, thereby blocking out ad farms and other visual annoyances. The Dale Glass Edition (see also the Dale Glass blog) adds a number experimental features for dealing with griefers. These include a proximity detector which shows the names of other avatars in the area, as well as the avatar age and whether there is any payment information on file, and a detector indicating the source of particles and sounds.

The Nicholaz viewer was built by Nicholaz Beresford with a focus on stability, usability and performance. I've heard residents say that the Nicholaz viewer helps reduce frequent crashing and similar problems with the official viewer. The Nicholaz release called EyeCandy is to be used together with version of the official viewer. Since I am using that official viewer, I installed EyeCandy, which involves simply copying the executable (".exe") file and three small XLM files into the same program directory where your Second Life viewer is already installed. Then instead of launching the Second Life viewer you simply launch the Nicholaz executable file (I put a shortcut to this on my desktop). It is easy to launch either the official viewer, or the Nicholaz viewer, as you wish. I found the Nicholaz viewer to be pretty much the same as the official viewer, the most noticeable difference being a button that says "release keys," to use when a script has taken control of your keys.

The Kirstens viewers are compiled for high end intel based machines for best performance or to fix specific problems, and have proved very stable. The instructions say to copy the executable file into your Second Life directory, as for the Nicholaz viewer. I did not try the Kirstens viewer, but it of special interest because the OpenLife website proposes a download of a modified Kirstens viewer (see below)

The realXtend viewer

The realXtend viewer is part of an open source virtual world platform that was discretely developed during several months by two companies, Admino and Ludocraft, before they suddenly revealed it to a group of OpenSim developers that they invited to Finland in January 2008. Sakai Openlife, of the OpenLife grid, who was among the guests, describes this event as follows:

"Friday morning we all met. Firstly wow, it was great to meet most of the others from the OpenSimulator project, I don't think it had been done before, and whilst things may have started quiet it didn't take long for us all to Gel together and get talking! And then we met the guys under the banner 'RealXtend', this was interesting why had I flown more than 14,000km across the planet? Who were they and what had they been doing? Questions were flying in everyone's minds and we started to get some information. 2 Companies Admino & Ludocraft had been working furiously in the background over the past 4 months, 'extending' the function of the OpenSimulator Project, they had done this with the afforded generosity of Juha Hulkko.

So what did they want global domination? No. Were they Anti-Linden? No (actually Chris Collins from Linden Labs was there too). Did they want to take over the OpenSimulator Project? No.

They wanted to move forward, extend as the name suggests features & methods for greater user function and versatility of the code & it's application."

After the participants in the Finnish meeting returned home, floods of information about realXtend starting showing up on various blogs. The realXtend platform is made up of two parts, which are:

* realXtend viewer, an open source browser for virtual worlds,
* realXtend server, an open source server based on OpenSim.

The realXtend viewer, based on the Ogre 3D engine, allows the use of meshes in place of primitives. As explained by Ugo Trade, a prim is a solid, while a mesh is a series of triangles in 3D which can make any arbitrary surface. Prims are more compact and lower cost to render, but most 3D programs build meshes by default, in order to support proper 3D models. And since one mesh can replace many prims, the difference in computing cost between meshes and prims is smaller than one would think.

On the server side, reports Adam Frisby of OpenSim, realXtend adds features such as Python scripting support, and a new server called the ‘Avatar Server,’ which allows transporting your avatar's appearance from one OpenSim simulator to a completely different one, without any shared grid infrastructure.

I downloaded version 0.21 of the realXtend viewer from the realXtend download page, and installed it with no problem. To my surprise it worked fine for connecting to Second Life, but not for OpenLife. When I type the OpenLife URI ( into the "Connect to" box, realXtend first takes a very long time to get past "Initializing World", then hangs permanently on "Connecting to Region." However, the OpenLife website offers a download of a special RealXtend Openlife Edition Viewer v0.2. That might work better for OpenLife than the standard version of realXtend, but I would have to uninstall the version I currently have, so I've left it at that. The OpenLife website also offers a download of a special OpenLife version of the Kirstens viewer (see above), but I have not yet tried that either.

The Onrez Viewer

The Onrez Viewer is a closed-source viewer originally created by the Electric Sheep Company to be used with the CSI New York Virtual Experience. The viewer's name also recalls the Onrez website which provides online shopping for Second Life items.

When the Onrez viewer was introduced in October 2007, Hamlet Au noted that its main innovation was to allow in-world web browsing (supporting html, but not plugins such as Flash). I installed the Onrez viewer easily, and when I connected to Second Life I found a special window open in the middle of the Second Life view, displaying a website called The Loop . At first there was no browser line in this window, so I was stuck on that page, but I closed the special window and then opened it up again by clicking on the button saying "The Loop," at top right of the screen, , and the browser line appeared.

What I disliked about the Onrez viewer was that the menu layout is rather different from that of the official viewer, and is thus hard to find one's way around in. Also, every time I log out the viewer crashes and my system gives me an error message.

Lite viewers

In July 2007 a UK teen student called Katharine Berry announced on her blog that she was developing an ajax-based client for Second Life, which she called Ajaxlife. The story was picked up by Hamlet Au, who got the tip from Gwyneth Llewelyn.

This client only permits a limited set of functions, such as local chat, instant messages and a basic map, and thus removes the need for a powerful graphics card. But as noted by Hamlet, Ajaxlife also allows you to connect to Second Life without even downloading and installing the viewer. The user instead logs on to the Ajaxlife website, which in turn logs the user into Second Life. This allows users to get past corporate or academic firewalls, which may block access to heavily interactive websites. Hamlet reported that Katharine was thinking of making a version that can run on the user's own machine, but in that case the firewall problem remains.

As Katharine explained to Hamlet Au, Ajaxlife uses JavaScript to handle the User Interface. The connection to Second Life is handled by a C# program running on Katharine's server, which uses libsecondlife to deal with SL connections. AjaxLife handles maps with an entirely separate system: once a day a libsecondlife bot of Katherine's logs into Second Life, downloads all the map images, and saves a copy to her server, so that they can be called up as needed.

Katharine at first announced that Ajaxlife would be open source, but there are no currently available downloads of the source code. In March 2008 she released a version that added the ability to delete inventory items, which Hamlet Au called the Ajaxlife Killer Application. A few weeks ago, on May 18th, Katharine announced on the Ajaxlife blog implementation of version 0.3.3.

I tried AjaxLife for the first time a few weeks ago, as way to connect to Second Life using my newly-purchased Asus eee, which is a tiny, low-cost netbook, with a low-performance graphics card. Logging on to Ajaxlife, I was able to use IM, to open inventory directories, and to edit saved notecards, but the group functions only allowed me to IM the entire group, without giving me the list of members. I was also able to log on with no problem through my firewall at work. But the last few times I tried to log in, I got error messages.

In October 2008, a few months after Katharine's initial announcement, a Japanese company called 3Di introduced the MovableLife website, which likewise promised access to Second Life "using only a web browser." I logged in to MovableLife and tried to IM a friend, but while the friend could read everything I wrote (as I learned later), all I could see was their first reply repeating endlessly. My reaction, besides finding the site useless, was to think "OMG I've just entered my Second Life password onto this site." The MovableLife page says somewhere in small print: "We do not store your Second Life account information on our servers, it is transferred directly to the Second Life servers." I sure hope that is true.

Web-based access through a third party site remains an interesting solution for those who want to connect to Second Life through firewalls. But in order to overcome the worry about password theft, the easiest solution would be for Linden Lab to provide such an interface themselves.

Similar in many ways to Ajaxlife is the Sleek viewer, which was released in July 2007, just after Katharine Berry's initial announcement. According to a comment by Oz Spade, Sleek had actually been around since 2006, and was developed using libsecondlife not by a company, but by one person.

The Sleek viewer is a light-weight viewer that allows access to Second Life for a reduced set of functions such as sending IMs. Reasons for using it include having a low-power graphics card or wanting to multi-task on older machines, as mentioned by this user, who compares it to an old-fashioned multi-user dungeon.

The Sleek download is a zip file, from which you extract 12 files into one directory. To launch the viewer you just click on the executable file. After logging in to Second Life, I was able to see which of my friends were online, send IMs and see resident profiles. I was even able to use search to find residents by name. However, the inventory function did nothing more than show me inventory directories: when I tried to open them they appeared empty. And when I tried to use Sleek at work, the firewall blocked it.

On April 1st 2008 the Sleek blog announced that Sleek had been bought by Microsoft, but the date would make one somewhat skeptical of that announcement.