Monday, December 27, 2010

Doing everyday tasks on a Linux CLI environment

In my last post, I detailed the horrific digital aftermath of what happened after I had tested out the Ubuntu Natty Alpha 1 release. In short, I was left with a system that refused to boot into a graphical environment at all and was forced to use the command line to do several tasks that would normally be done in a GUI. I was so surprised at how remarkably easy it was to do these tasks(web browsing, torrent downloading, CD burning) on the command line, I announced my intention of going completely GUI-less for two days.

While the "recovery console" session option found in the GDM login screen would be the closest replication of my X-less ordeal, I found that the xterm window it had was too small to show in snapshots. I decided to log into Gnome, but work solely within a maximized xterm window(alternatively you can use gnome-terminal and toggle full-screen with the F11 button). Here are the following applications I've used so far, grouped together according to general tasks:

File Management:

Midnight Commander
There's a few options when it comes to file management on the console. There are, of course, the built-in shell commands(cd, ls, touch, mkdir, rm,rmdir, etc.) ready to be used with just a few keystrokes. But if you want to navigate your filesystem in a more visual way, you can either use the built-in file navigator in the vim text editor(type ":e ." at the vim command line to activate it), or use the Midnight Commander(mc) file manager to do so. Midnight Commander is a two-paned file manager, allowing you to perform file management tasks in two places at once. It can perform file (de)compression, and includes its' own command line when you need to do precise actions on a selection.

Window Management:

Yes, the Linux command line can have a "window manager" of sorts. That window manager is called screen. It allows you to have multiple terminal sessions, similar to managing tabs in GUI terminal emulators. It's a necessity when you want to run several command line tasks at once and backgrounding will not suffice, or when have logged onto a server via SSH and wish to run something after you've exited the session. It should be available in virtually any major distribution's repositories.

Multimedia:

While it's true the command line is non-graphical, it is certainly possible to do some multimedia tasks with no problems.

For sound recording, you can use arecord to record sound from your microphone, and then pipe the output to an encoder like so:

arecord -f cd -d numberofseconds -t raw | lame -x -r – out.mp3

arecord -f cd -d numberofseconds -t raw | oggenc – -r -o out.ogg

Music On Console
For listening to audio stored on your computer, there's several console-based music players(such as gst123, aplay and the awesome opencubicplayer), but I like Music-On-Console(moc), as it allows you to play music in the background while doing other tasks. It is invoked as "mocp" on the command line(to avoid clashing with the "meta object compiler" used when compiling Qt/KDE graphical applications). While playing music, press "q" to exit back to the command line, but all the music in mocp's current directory or playlist will continue to play. You can simply re-invoke mocp to get control again.

To rip audio from a CD, cdparanoia does the job well and the output can be sent to an audio encoder just like arecord.

You can also master and burn CDs/DVDs on the command line. As I mentioned in the last blog post, growisofs can be used to both create ISO images and burn them to disc.

You can also watch movies on the command line with mplayer by invoking it like this:

mplayer -vo caca movie.avi


Office:

Vim, editing a C header file
Yup, you can do some standard office tasks on the command line. For doing calculations, there's the bc command line calculator. And there's no dearth of command line text editors(nano, vim, emacs, etc.), but there's only two apps specifically geared towards word processing: antiword and wordgrinder.

Antiword allows you to view and convert MS Word files into plain text, PostScript or PDF files. An indispensable tool if working with Word files is unavoidable.

Wordgrinder word processor
Wordgrinder is perhaps the only thing on Linux that can be called a console-based word processor. While it writes in its' own native format, it can import from and export to plain text and HTML files. It supports basic styles and paragraphs, but don't expect anything fancy. Nevertheless, its' better than plain text or forcing yourself to do TeX formatting.

SC spreadsheet calculator
For spreadsheet processing, sc fits the bill perfectly(especially if you like vi/vim). Combined with wordgrinder and abook(console address book), you pretty much have a console office suite at this point.

Internet:

While Web browsing has evolved into a very multimedia affair(Flash, Youtube, Facebook/Twitter, etc.), there's a surprising amount of things you can do on the Internet without a GUI.

ELinks web browser, viewing Groklaw.net
For console web browsing, Ubuntu ships w3m by default. While w3m is okay for viewing individual pages, that's all it's really good for. It's basically like the "less" command for web pages. For a truly decent console web browser, elinks is the way to go. It has bookmarks, download management, color support, CSS support and yet it cuts through all the useless crap(Flash, ads and popups) to get you the content you really want.

For non-interactive web interaction, wget and curl are excellent tools. You can also download torrents with the rtorrent console client(mentioned in the previous blog post and highly recommended).

For email, there's several console email clients to use. There's pine/alpine, the traditional mail command, and mutt. If you're used to using the nano text editor, alpine is the easiest option. Mutt is way more powerful, but requires a bit of configuration to get it working specifically how you want it to.

Irssi, chatting with the Kokua/Imprudence devs
For instant messaging, you can use Finch, the console version of the Pidgin instant messenger. And I've found irssi to be a very capable console IRC chat application.

Google:

GoogleCL manpage
Yes, believe it or not, Google has a command line interface for some of its' services(Blogger, Youtube, Picasa, Docs, etc.). And because of that, it gets it's own section. On Ubuntu, you can install the "googlecl" package directly via apt-get. If your distribution's package manager doesn't have it available, you could download the tarball and compile it yourself.

Graphics:

Montage of previous screenshots
You would think that in a command-line only environment, there's not much you can do with graphics. But strangely enough, that's not the case with the ImageMagick suite of command line tools. With ImageMagick, you could create and manipulate pictures in ways that was once the sole domain of GUI image editors like GIMP. The above picture is a montage of all the other pictures I took while creating this blog post, made possible by the montage tool of the ImageMagick suite. You can make composites, animated GIFs, apply various effects, and a whole lot of other things.

Gaming:

Yes, there's some terminal-based gaming options for Linux. You can connect to various text-based MUD(multi-user dungeon) games on the Internet via the telnet command. A good place to start with MUD games is The Mud Connector. If text-only isn't your thing and require something marginally more graphical, the surprisingly challenging nethack game may be right up your alley. If you've got a bunch of old DOS games lying around, you can use dosbox to play them.

Missed stuff:

I'm pretty sure I've missed a few things, so feel free to let me know in the comments.

Wednesday, December 8, 2010

Ubuntu Unity Desktop Review: The disasterous aftermath

Yesterday, I blogged about the current shortcomings of the Unity desktop environment. What happened afterwards, however, is a horror story with a valuable lesson learned, and also something of a testament as to why the *nix command-line still rocks hard.

The problem started when I noticed that Totem and MPlayer started acting weird. When playing a video, the colors were screwed up. But it was kinda funny how people in videos looked as blue as the Smurfs(I now regret not taking a screenshot when I had the chance). So I thought "Maybe I'll check the repositories to see if there's any updates that could fix this".

So I fired up update-manager, and sure enough there were a lot of updates. I proceeded to install them all, thinking it would fix the movie problems and maybe pull in some improvements to Unity too. After the slightly lengthy download and install process, I was instructed to reboot the machine.

On reboot, instead of seeing the familiar GDM login screen, I get greeted with a black screen with only a "ubuntu login:" text prompt. Apparently the X server failed to start up properly. So I logged in and tried to start it manually with "startx". No dice, and it mentioned something about the Nvidia modules. It was then I knew what had happened: the kernel image and/or the nvidia modules didn't jive together. I then tried installing the nvidia-current package and then rebooted. Still didn't work. So I was left with one option: back up my data and re-install the stable Ubuntu release.

But I didn't have a CD/DVD with Ubuntu already on it. I had to first go to the Ubuntu website, download the ISO, and then burn it to disc all from the command-line.

Luckily, I still had access to the Web, could install packages via apt-get, and I knew my way around getting help in a gui-less situation. First, I installed elinks(a text-mode web browser) and rtorrent(a command-line bittorrent client). I launched elinks and navigated to the torrent download link. I saved the torrent file to my home directory, then launched rtorrent to quickly download the ISO.

The real tricky part for me was figuring out how to burn the ISO image via the command-line. After doing a little Googling, I found that the command "growisofs -dvd-compat -Z /dev/dvd=image.iso" fit the job perfectly. After the disc burn was complete, I rebooted and the live session started up without a hitch.

During the live session, I attempted to copy as much of my user data onto a pen drive as I could. Unfortunately, many of the files were somehow uncopiable(undoubtedly a permissions glitch). But whatever I couldn't backup wasn't anything irreplaceable, so it wasn't all too bad.

Then I launched the Ubuntu installer. The installer pretty much took me by surprise, as I recalled I never actually installed Maverick Meerkat fresh before(previously I had upgraded to it from the previous release, Lucid Lynx). The installer is now so polished I can confidently say it's idiot-proof.

Once the install was done, I rebooted and was greeted with an uber-fast bootup from manufacturer splash image to GDM in less than 15 seconds. I'm now still in the process of rebuilding all my lost user data, but I'm back in the game with a couple of golden nuggets of wisdom:
  1. Always regularly backup your stuff, because shit really does happen when you least expect it.
  2. When you're using early alpha software, shit happening is almost guaranteed. Be prepared for it.

However, this experience has compelled me to try a little experiment in the near future. I plan to dedicate at least 2 days of computer use solely within a command-line environment. No desktop environments, no window managers, and no GUI applications at all. Of course this means no SL or YouTube, but I'd like to see how far the command-line can be used to perform tasks usually reserved for a GUI environment. Look out for a future blog post on it.

Tuesday, December 7, 2010

Ubuntu Unity Desktop Review

A few days ago I decided to upgrade my desktop Ubuntu OS from 10.10(Maverick Meerkat) to 11.04(Natty Narwal) Alpha 1. Previous experience upgrading to such an early alpha release told me that this would be very risky and likely I would have to re-install back to the stable release. But after the lengthy upgrade process was completed(took a few hours because I had Gnome, KDE, and LXDE desktop environments previously installed), I successfully rebooted and was greeted with the familiar GDM login screen.

I clicked on my username, entered my password and chose "Ubuntu Desktop Edition" for the desktop session. But instead of Gnome or Unity popping up, it appeared that what I got was a very unfinished and incomplete desktop session. There was no launcher, no panel or even an easy logout mechanism. I was ready to dismiss Alpha 1 as a starting point only for the developers. FAIL.

But it turned out the Unity launcher and panel was present, but required desktop effects to be turned on to use them. So I did just that and this is what appeared:

Ubuntu Unity "Desktop"

Looks like a cross between Gnome Shell and Ubuntu's Netbook UI. What initially annoyed me was that all the entries I created in my Desktop directory were being shown twice: in the launcher and on the desktop screen. And notice the launcher entries displaying a question mark as the icon? That's because it seems the launcher can't display icons that are not stored on the system icon directories. I'd have to hover my mouse over the icons to tell what they really are. FAIL.

But the worst current feature of this release is finding all the applications. You have to click on the Ubuntu logo on the top left of the screen, and Nautilus will appear showing you the /usr/share/applications directory. Ugh. No application menu grouping or sorting by task at all here, just a single directory being spit out in front of you. FAIL.

As far as I can see, the current incarnation of the Unity desktop isn't even a true desktop environment yet. It's still a major work-in-progress, much like when KDE 4 first appeared. No doubt we'll see much improvement in future alpha releases, but for now I'll be sticking with Gnome/KDE/LXDE for my real desktop needs. Unity still needs a lot of work to be easy enough for casual use.

Monday, September 20, 2010

Linden Lab to TPV developers: No KDU for you!(Updated)

During the final months of the now-banned Emerald viewer, one of the major scandals that hastened its' demise was the emkdu library that Emerald used was hacked to send user info to Modular Systems without the knowledge or consent of the user. As a result of the discovery, Emerald was forced to remove emkdu.

In the aftermath of Emerald's demise, Linden Lab has made a few drastic changes. First and most important, they have changed the license of the official 2.x viewer from GPL to LGPL. Second, they are no longer going to release llkdu as a DLL. They will statically link llkdu into the viewer binaries. Third, they are playing copyright cops by threatening to delist, ban or block TPVs that use KDU code without obtaining a proper license(claiming it is a GPL violation).

Why is KDU important? Well, it's the code used to render textures in-world. The advantage KDU has is that it renders textures faster than the open source equivalent, openjpeg. However, KDU's speed advantage seems to be negligible on machines with modern graphics capabilities. So it makes a difference only on lower-end machines.

My personal opinion on it is this: There's only two proper solutions for TPV developers: either switch to a 2.x codebase and obtain a KDU license(not cheap, by the way), or obsolete KDU by modifying openjpeg to match or outperform KDU.

The former solution is apparently what LL is betting TPV developers will not do. They must think that they will simply fall back on stock openjpeg, and as a result virtually all TPVs will be "inferior" to their own viewer. It's clearly a power play by the Lab, once you look at the bigger picture.

However, Kakadu does not have a monopoly on JPEG decoding and rendering. TPV developers can either enhance openjpeg, or switch to another open source library such as JasPer(Google "open source jpeg2000 library" for more possibilities) and work with that. And as a form of protest against LL's power play, TPV developers should temporarily not contribute JPEG library changes back to LL. If LL wants the improvements, they'll have to go out and download them, just like TPV developers do to incorporate LL changes.

Update:  It seems that KDU, if by what folks on SLU are saying is true about KDU vs. openjpeg speed, then ultimately KDU is merely a crutch for older and low-end machines. So ultimately, the KDU problem may solve itself when SL users upgrade their lower-end machines.

Saturday, August 21, 2010

Fractured... OUT!!!(Updated 2x)

It seems Fractured Crystal has finally bitten off more than he can chew, and the entire Emerald gang may soon fork their viewer or call it quits.

What happened? Well, as of a few days ago, Emerald users were unknowingly being co-opted into becoming a part of a botnet designed to perform a DDoS(distributed denial of service) attack on the website of Hazim Gazov, a known distributor of a copybot client who has taken it upon himself to expose the "shenanigans" of the Emerald gang. Hazim quickly discovered what was going on and wasted no time bringing the crime into the public light. The news caught on like wildfire, and given the recent departure of LordGregGreg Back(he quit on ethical principles, believe it or not), the backlash is finally making Linden Lab consider outright banning Emerald.

What happens next is anybody's guess. If LL decides to ban Emerald, it's game over for all of them, including the devs who aren't total douchebags. If Emerald isn't banned, then most likely Emerald will fracture(pun intended) in two.

Either way, it's natural justice against Fractured and Phox. Good riddance to bad rubbish.

"I've got shit to do. I'm TP'ing out." - Fractured Crystal

Update:  Fractured has issued a mea culpa on the Modular Systems blog(jokingly titled "Off with his head"), where he announced he will be "voluntarily" leaving Emerald and hand over control of the project to Arabella Steadham. That still leaves Phox, Fractured's BFF in crime still hanging around, and who's to say Fractured won't simply rejoin the project under a new alt account? Even LordGregGreg has come out completely against using Emerald regardless of Fractured's departure, and started his own fork. Who do you trust?

Update 2:  The Lindens' first official action on the matter... Emerald is no longer listed in the TPV directory.

Sunday, August 8, 2010

MetaGridNet Revamp in progress

As I've previously announced here, I have created a small public OpenSim sandbox called MetaGridNet. It was originally created alongside an Elgg social networking installation. Unfortunately due to persistent spam on the site, I decided to nuke the server and start anew. The MetaGridNet sandbox is still operational, although I did do a fresh install using the latest OpenSim "Diva" distribution(I may set up a basic web site later on). The Diva install has brought with it a couple of new features and one in particular that was sorely needed: a built-in web-based user account creation and management framework(called "Wifi").

The benefit of this is immediate: Metaverse travelers can now easily set up a MetaGridNet account by going to the account registration page and login any third-party viewer(except Emerald because it's not optimized for OpenSim use) with the login URI "http://metagridnet.com:9000/". Or if you're already on a grid that uses Hypergrid protocol 1.5, you can perform a Hypergrid jump.

Stay tuned for further updates.

Victoriana triumphantly returns!

I had previously blogged about Victoriana and Tinytoriana, a Victorian-themed Second Life estate that had been forced to leave SL due to gigantic permissions screwups caused by Linden maintenance routines. The decision to leave and the resulting close-down caused a lot of sadness in SL residents.

However, I'm very happy to report that Victoriana is rising from the digital ashes over at InWorldz! I had found out about it this afternoon while in a group chat with fellow Raglanite tinies. After checking the map, I had teleported to Victoriana Square to take a brief look. Later on in the day after I got home from work, I had checked out Tinytoriana, a place made specifically for Victorian tinies. If there were any differences from when the estate was in SL, I couldn't notice them. So there's relatively little readjustments structurally, despite the fact that LittleBlackDuck Lindsay is still in the process of reconstructing the Victoriana estate.

Nevertheless, it's heartening to see this wonderful estate get a "second life" again, thanks to InWorldz and OpenSim.

P.S. - For a future post, I may try to get in touch with Mr. Lindsay to ask him some questions like why he decided to pick InWorldz, how he reconstructed his estate, what the future holds for his newly resurrected estate and more.

Monday, July 5, 2010

Guide to the Metaverse, Part 3: H-Town, A showcase grid

Continuing my trips to OpenSim grids, this morning I heard that the residential architecture company Hometta has opened their OpenSim interactive showcase grid, H-Town, to the general public. I had heard a lot of buzz about it recently and felt it was worth a visit, so I promptly registered. After registration I hit upon a stumbling block as the viewer offered for H-Town(a slightly customized Hippo viewer) was only for Windows and Macintosh. However, after a failed attempt to use Wine to run the Windows version of Hippo, I had found the instructions necessary to login with the regular Hippo viewer(on Linux).

Upon login, I landed at the Welcome Area, where there were several display signs that would take you to the house shown on the display. The grid itself, while technically small(only 3 regions), is well designed and certainly looks like a modern suburban neighbourhood in development. The houses already up are wonderfully built and are scripted to give visitors an interactive, hands-on experience. My personal favourite was the Draft House, and given that there's more houses coming soon, I'll be sure to make subsequent visits.

The Hometta folks have put a lot of effort into developing H-Town, and it shows. In my opinion, H-Town is a great example of utilizing OpenSim to showcase RL architecture to potential customers, and as a tool for architecture protoyping.

If you're into architecture or are looking to find a dream house to build, checking out H-Town is definitely worth a shot.

If you want to check out the other places where I've been, all of my "Guide to the Metaverse" posts are now tagged "metaverseguide".

Wednesday, June 23, 2010

The Google vs. Viacom decision: How Virtual Worlds benefit from it

The big news just came out: Google has beaten Viacom on summary judgement. The case was about Viacom claiming that Google/YouTube knew that copyright infringement was happening on their site and was therefore exempt from the DMCA "Safe Harbor" provisions.

These two snippets from the decision sum up the reasons for the judgement perfectly:
General knowledge that infringement is 'ubiquitous' does not impose a duty on the service provider to monitor or search its service for infringements ... the burden is on the owner to identify the infringement

What Viacom was trying to do, in layman's terms, was attempt to force Google/YouTube into taking the burden of enforcing copyright beyond traditional copyright law and the DMCA. If Viacom prevailed, it would mean YouTube would have to review each and every video uploaded to their site and determine if the video infringes someone's copyright.

This decision is good news, not only for website operators, but also for virtual worlds. As an example of how virtual worlds could have been negatively affected if Google lost, one only needs to look at the long dead virtual world There.com.

There.com residents were split into two classes: consumers and content developers. To become a developer, you had to enroll in the developer program. When you create content, you can't simply start selling it on the spot(like with SL/OpenSim). You must submit the content to There.com's review staff. If the content doesn't pass the review for reasons such as inappropriate content or perceived copyright infringement, you can't sell or use the content inworld.

The problem with this approach is that the review staff weren't copyright owners or authorized agents of copyright owners. Yet they actively played "copyright cops" even in the absence of proper DMCA procedure. This, despite the approach successfully enticing RL companies into creating presences in There, actually endangered their ability to invoke the DMCA Safe Harbor provisions in court.

It's not hard to see that this sort of "copyright police state" scenario is very possible in SL and OpenSim grids, because SL/OpenSim's situation is practically identical to YouTube. Copyright infringements happen quite often in virtual worlds, but it's practically impossible for the grid operators to police the entire grid for copyright infringements. They would wind up dedicating all of their time taking down content they think is infringing someone's copyright instead of properly operating, running and improving the grid. It's an undue legal burden.

That's why the decision states that the burden is(rightfully) on the copyright owner, not the service provider, to identify(via DMCA notices) infringements. The service provider isn't liable to legal action unless they do not follow DMCA procedures. That's Safe Harbor in a nutshell, folks. Be thankful for it.

Update: Via one of my favourite YouTubers, Thunderf00t, I have found a jaw-dropping 18 minute video of Mike Mozart of JeepersMedia catching Viacom doing the exact same thing they accused Google/YouTube of doing. Using Viacom's logic, the YouTubers whose videos got uploaded to Spike.com without their permission could sue Viacom(not the "uploaders"). And since Spike.com(formerly iFilm.com) claimed to "screen all videos uploaded", they may lose Safe Harbor protections under the DMCA. So Viacom, maybe you should rethink filing an appeal, and be happy the judge ruled in Google's favor. You actually benefit from it, believe it or not.

Friday, June 4, 2010

Emerald vs Other 3rd-Party Viewers: Who Can You Trust?

Most of us know that the Emerald viewer is the most popular third-party viewer in Second Life today. Many of it's users will quickly tell you of its' dozens of features that put the official viewer to shame. But ask them this question and you will get some surprising answers: "Do you trust the Emerald developers?"

Those who quickly answer "Yes!" either haven't gotten enough information about them or are willfully ignorant of their shady histories. Those who answer "No" do know about the gang's griefing power plays, but think that there aren't any decent alternatives or "I can't live without Emerald feature X".

Whenever a person decides to switch away from the official viewer, trust in the developer(s) is a crucial factor. In this blog post, let's take a look at the Emerald developers and the Imprudence developers(the viewer that I use) and see how we can compare them in the context of trust.

Let's start off with the Imprudence developers(Jacek Antonelli, McCabe Maxsted and Armin Weatherwax). Okay, so they have a blog, a wiki, a forum, a source code repository, an issue tracker and a mailing list, for starters. So on the surface it's fairly professional. But wait, what do we see in the "Imprudence Links"? Ah, a privacy policy! Very nice. And also in the wiki we find out that the developers hold weekly public meetings(called ImpDev meetups) and publish full transcripts of the meetings. Bonus points on transparency. Another crucial factor is that all of the developers appear to have clean records in SL.

So it seems the Imprudence folks are on the up-and-up.

Now let's see how Emerald stacks up. Well, they seem to have the same basics as Imprudence(blog, wiki, source code repository, etc) and a privacy policy also, but let's dig deeper. Well, looks like the blog has completely disabled comments on all posts. They hold "office hours" but it appears the last thing even remotely resembling an office hour was posted Feb. 6th, 2010. Also, their latest "project" to be outed, Onyx, has gone from a public list of known malicious viewers to a page requiring a username and password to view. So that means they have chosen not to be transparent in the face of public scrutiny.

Then there's the illicit pasts of Fractured Crystal, and Phox/Lonely Bluebird. Fractured's history is that of a typical serial copybotter/griefer. Phox has been caught bragging about stealing stuff, loves to smoke weed, and claims to be able to have the ability to estate manage the entire SL grid. While the other Emerald members' pasts aren't entirely clear one way or the other, it's apparent they are complicit with Fractured and Phox's grid shenanigans.

So now I ask you folks: are all those blingy Emerald features really worth trusting a known copybotter, a kleptomaniac stoner, and a group who has the entire SL grid by the shorthairs(via Onyx)? Who can you really trust? how will you "weigh the scales"?

Update 6/20/2010: The Emerald gang has radically overhauled their ModularSystems site, restoring the comments feature. But all the old comments(and blog posts from April and earlier) are long since nuked, and now there is absolutely no mention of Onyx on the site(navigating to onyx.modularsystems.sl now yields a 404 error page). Oh, and the personal blogs of the gang on the site are gone as well.

Monday, May 31, 2010

Linden Prize Countdown: The Prokofy Factor

In about 24 hours from now(give or take), the winner of the Linden Prize will be announced. I await the announcement with not a sense of excitement, but actually with a sense of fear because there is a very real possibility that the Lindens will choose a finalist that frankly shouldn't have even made it past the gate.

Another reason why I'm dreading the announcement is that as of this point, the biggest chicken booster of them all, Prokofy Neva, has been pretty silent on the matter since the Linden blog post on the sionChickens where she vowed to "fight with every fiber of my being against those worldviews that seek to obliterate the normal, the ordinary, the simple, even the tacky, the mass-taste, the quick buck". Ugh.  I took this to mean that she'd come out swinging hard on her blog, doing everything she can to fight the good chicken fight and badmouth the actual deserving finalists more than she already has.


Her lack of commentary since the Linden blog post is unusual. It's just not like her to leave it alone when there's so much legitimate criticism of her beloved virtual fowl going even stronger now than before(over on SLUniverse, the Linden blog post on sionChickens got the most discussion of all the finalists).


So why the silence? Did she decide she's said all she needed to, and let things come as they may? Or has she somehow gotten the inside track on who will win the Prize? More likely the latter, but I suspect we won't find out until after the winner is announced tomorrow and Prok will inevitably make her own blog post either decrying or gushing over it.

Update: The winner has been announced, and it's not the chickens, thankfully. However as of yet there has been no reaction from Prok. Still, congrats to the Tech Virtual Museum Workshop. You guys deserved it.

Sunday, May 30, 2010

More on why Sion Chickens should not win the Linden Prize

As I had stated in my previous post on the fowlness surrounding the Linden Prize(pun intended), sion Chickens do not deserve to win the Linden Prize, much less be on the finalist shortlist simply because they do not meet the stated criteria.

But there's two more reasons why the inclusion of virtual fowl isn't kosher.

First, there's the humanitarian/charitable nature of the Prize itself. Over on Massively, Tateru Nino hits all the regular beats on the subject. In the comments, Maggie Darwin postulates that the Lab may claim the Prize as a charitable donation in their tax filings, and awarding the Prize to such an overtly successful for-profit, commercial operation may endanger that claim. However nobody beyond the Lab itself, its' partners and investors are privy to that sort of information and the Lab is under no obligation as a private company to divulge it to the public.

Then there's the very vicious actions of Sion himself. When one chicken farmer threatened legal action after Sion released a botched update that harmed many farmers' businesses, Sion actually made the thuggish threat of cutting off the food supply to all chicken farmers unless the criticising farmer backed off. Under pressure from fellow farmers, the critic sheepishly did so. Then to make sure no farmer would ever dare again speak out against the Fowl Empire, Sion crafted a new EULA which allowed him to cut off a farmer's chicken-use rights "for any reason or no reason at all" and even blacklist those who were seen as against Sion "for any reason or no reason at all".

Doesn't sound much like a humanitarian, charitable, or at least benevolent person, does it? Sounds more like the actions of a dictator, really.

So let me ask the folks at Linden Lab, if they happen to read this before June 1st: Why are you considering an entry that not only does not meet the criteria, but also whose proprietor has engaged in behaviour that is completely against the spirit of the Prize? Or do you simply not care about the legitimacy of what you publicly outline as a humanitarian prize?

Tuesday, May 25, 2010

Why Sion Chickens DO NOT deserve to win the Linden Prize

I wasn't going to blog about this, as so many other bloggers have roundly covered it. But then Prokofy Neva wrote this bogus piece on her opinion on why SionChickens should win the Linden Prize and all other finalists are unworthy.

She believes that SionChickens make RL better because it's a "socializing, fun, and a money-making opportunity on line". If this is her reasoning why SionChickens deserve to be on the same list as Virtual Helping Hands, then I propose that every in-world creator/merchant should be eligible, from Stroker Serpentine down to the prankster selling a plain 0.5m plywood cube on XStreet.

This flies right in the face of the what the Linden Prize is supposed to recognize: "an innovative inworld project that improves the way people work, learn and communicate in their daily lives outside of the virtual world". SionChickens have as much positive impact on the real world as Tamagotchi babies do on parenting: none. Just because Prok believes they have an impact doesn't prove anything.

Chicken fans, ask yourselves these questions: 1) Has buying, raising and selling virtual chickens improved the way you work in RL? 2) Has it improved how you learn in RL? and 3) Has it improved how you communicate in RL? If you answered "No, it hasn't" to all three questions then kindly explain in the comments why it should still be considered worthy of the Linden Prize, because I just don't get it.

Note: As of this writing, Sion Chickens is due up next to be profiled on the Linden Blog. Perhaps then we'll find out exactly what the f*** the Lindens were thinking including such an inappropriate entry as a finalist.

Update: The Linden blog post has been made, and it utterly and completely fails to convince why sionChickens are Linden Prize-worthy. Here's my comment to that blog post, if the Lindens decide to censor it:
I'm sorry, but this blog post does not explain in any form how sionChickens can be representative of an inworld project that has improved the way people work, learn, or communicate outside of the virtual world, as the Linden Prize page so clearly tells us.

In fact, it actually confirms the objections of many who believe sionChickens are not worthy of the Linden Prize.

The technologies used in sionChickens and sionCorn are no doubt innovative, but the purpose of the chickens isn't to teach how to use these technologies(If it were then breeders would be able to scientifically figure out how to optimize breeding and such). "Virtual World Tamagotchis" would be fairly descriptive of the purpose of sionChickens.

Sunday, May 23, 2010

Guide to the Metaverse, Part 2

Continuing my travels to OpenSim-based virtual worlds, we come to two worlds that aren't for general use, but are very important nonetheless: Meta7 and ScienceSim.

Meta7 is a world showcasing an innovative technology called LightShare. LightShare allows region owners to share their WindLight environment settings with users via LSL script. Aside from LightShare, Meta 7 sadly doesn't offer much beyond most other OpenSim worlds. However LightShare alone makes it at least worth a look, especially if you're an OpenSim admin or a viewer developer looking to spice up your grid/viewer.

ScienceSim is for those who wish to use OpenSim for scientific and bleeding-edge research, simulation and education. The uber-geek's virtual world, if you will. If "Fern Lifecycle and Population Genetics Simulations" are your cup of tea, then ScienceSim is right up your alley. Just be sure to change your starter avatar's chin if you choose the male starter avatar(unless you're Jay Leno).

There may be a part 3 soon, but in the meantime I highly recommend taking a look at the grid list at Hyperica, as there's a heck of a lot more grids out there than I could realistically travel to.

Friday, April 23, 2010

The Axe Falls on Woodbury, thanks to... Emerald?!

The news about the massive banfest against Woodbury members has been getting major discussion over at SLUniverse and on Prok's blog, and it turns out what did them in was that they decided to grief the wrong griefers. Allegedly, Tizzy Teardrop put a bounty on taking down Emerald's beloved CDS, which got the ball rolling. But what most likely pushed the Emerald devs into throwing WU under the bus was the recent video made by Cam Scientist, a Woodbury member who publicly outed the fact that Fractured Crystal should not be anywhere near SL according to the TOS, starting from the first time he got an account banned and also that Onyx is a griefer/copybot viewer.

This, of course, embarrassed the Emerald devs and even put a few holes in their perceived reputation. So they obviously decided to offer up Woodbury as a condition(or leverage) to get on the third-party viewer directory. It's definitely no coincidence both events happened nearly on the same day.

My personal opinion on this is, "I don't really care". I have no sympathy whatsoever for the banned Woodbury griefers, and this doesn't change my opinion of the Emerald devs one bit. It's just a classic case of no honor amongst thieves.

Tuesday, April 20, 2010

The Second TPV developer brown-bag meeting: Wow, what a difference!

As noted in the previous blog post, the second brown-bag meeting between third-party viewer developers and Linden Lab has happened earlier today and from reading the transcripts, this time around it went way better. No griefing, sim crashing or voice problems, and the consensus is pretty much that the policy is much more agreeable as a whole.

What was discussed this time around is more "small stuff", like issues with the policy and content import and export. While Section 2(b) hasn't really changed at all, Joe Linden did recognize that there is a genuine need for extended metadata to help address legal uses of non-creator export, but the policy won't change until that happens. Fair enough, in my opinion. There are ways for creators of permissive content to get around it(host it outside of SL, collaborative builders can export their parts of builds and share it with their collaborators until the build is completed).

Also, Joe specifically wanted to address the Imprudence team about their plans to drop support for SL. This is a very positive sign for me personally, as I do prefer Imprudence not just for the viewer itself, but because I find the developer team to be very professional and upfront. It's also a positive sign for SL in general as well, as it shows the Lindens do not want to see a mass exodus of development support to OpenSim-based grids(although they have inadvertently strengthened OpenSim viewer support).

The only thing about the meeting that didn't change, sadly, was that again it seems no developers who are already listed in the TPV directory were in attendance. Maybe some of them didn't want to attend out of fear they would get the third degree, although it seems that given the policy changes it's just water under the bridge now and their input would be welcomed.

All in all, though, it's a 180% turnaround from last week's debacle and the first positive change I've seen from the Lab in a long while. I feel like doing a headbob:

The New Third-Party Viewer Policy: A Thing of Beauty and A Joy Forever

As noted in the previous blog post, the Lindens have quietly changed their third-party viewer policy. The changes, unlike the previous revision which amounted to nothing, address the majority of the issues raised by TPV developers and results in a more clear and simpler read for those who it's intended for.

The single biggest change is in Section 7(d), which now reads: "You assume all risks, expenses, and defects of any Third-Party Viewers that you use. Linden Lab shall not be responsible or liable for any Third-Party Viewers" Previously, the first sentence had ", develop or distribute" tacked on at the end, which put the sort of legal liability that LL themselves disclaim onto third-party developers. The new wording now makes it clear that was not the actual intent of the clause.

So with this change, for most legit TPV developers, there's nothing to fear from this policy anymore and it may even be totally okay to go for self-certification into the viewer directory(IANAL, of course, but that's my personal opinion).

There may be a few nagging issues left, such as Section 2(b) which restricts content export capability to creator-only. However, that merely applies to when on the SL grid. So it's possible to either simply have creators host permissive content outside of SL, or just have full-perm content export disabled only when on the SL grid. However for non-SL content exporting, I'd strongly recommend some sort of mechanism to convey usage beyond SL's crude C/M/T checkboxes.

Of course, certain folks who are against third-party viewers as a whole will be decrying the changes as "LL caving in to TPV developers" and "they're giving the store away to the copybotters". Reading through the policy, it's clear that's not what happened. The policy now more clearly delineates the difference between a compliant viewer and a malicious viewer(see Sections 2 and 7) and the enforcement terms(Section 8) have not changed(not counting the addition of 8(f), which merely makes clear the policy isn't intended to screw with the GPL).

Given these changes, I may not have to close down my store in SL after all. But I will continue with my current plan of opening up on other grids. It's a happy day for me :)

Update: BTW, the second brown-bag meeting has happened today. The transcript of the meeting can be found here(big thanks to Latha Serevi for the transcripts!).

Sunday, April 18, 2010

Updates on the Third-Party Viewer Policy debacle

Joe Linden recently hosted a brown-bag meeting for third-party developers to discuss the TPV policy. Unfortunately the meeting accomplished very little in terms of reconciliation or possible policy revision. This was due to griefers at the meeting teleporting around and crashing the sim(those griefers sadly being some of the people attending the meeting), and expected major problems with voice.

What was interesting about this meeting is that as far as I can tell there were absolutely no third-party developers in attendance who were listed in the Lindens' third-party viewer directory. That left Joe with virtually no solid support on his side. Also there were a few people there who weren't developers at all: Wut Moorlord of Woodbury/w-hat(a known griefer) and Angela Talamasca, who basically represents anti-open source folks like Prok. Then there's the shady trio of "ex-griefer" Emerald developers Discrete Dreamscape, Fractured Crystal and Lonely Bluebird. So with that unique blend of folks there, it's no wonder it came out a disaster for both sides.

What I took away from the meeting transcripts, however, is that the Emerald devs are going to do exactly what I theorized to several friends: that the Emerald developers are going to secretly negotiate a deal with the Lindens to become the only allowed general use third-party viewer on the directory(KirstenLee's viewer doesn't count as it's meant as a specialist viewer for photographers and machinima creators), with a side deal that Onyx(the copybot/griefer client the Emerald devs use amongst themselves) will be exempt from the policy, making it a Linden-blessed copybot/griefer client under the veil of "penetration testing for the Lab". Meanwhile all of the honest devs of general use third-party viewers will get bullied out of SL to appease the Lindens and their Emerald buddies. I have very little hope that the next meeting will be anything different or produce anything positive.

So in a nutshell, for general SL use it's either the still-craptacular Viewer 2.0, Snowglobe or risk your data and privacy with the Emerald devs in exchange for jiggle boobs, fancy selection beams and lag-inducing extra attachment points. Ugh.

Update: Regarding Emerald, Prok has a new blog post up which connects almost all of the dots about these folks who, in all honesty, should have been perma-banned from the first TOS/CS violation they committed(feel free to skip her usual open source=evil BS, of course). What Prok misses, however, is the connection between Onyx and Gemini CDS. Yes, CDS will ban all copybot viewers detected, except Onyx since it's an Emerald "project". Combined with the TPV policy going into effect, the Emerald devs can run roughshod over SL with no one the wiser, with only the above choices left for SL residents.

Update 2: Surprisingly, the Lindens have quietly amended the TPV policy. From what I'm reading of it, the changes are precisely what the TPV developer community asked for. I guess that blows apart the piece of my theory of Emerald colluding with Lindens to run all the other legit TPVs out of town. However that doesn't change the likelihood of CDS and Onyx collusion.

Saturday, April 10, 2010

Update on MetaGridNet

Just a quick update on the status of the MetaGridNet OpenSim grid. First off, a few days ago I had begun subdividing a part of the megaregion into 1024 meter parcels. These parcels will become the start of a rental program that I will be launching soon to help lessen the costs of hosting the grid and website. Once I figure out how rent payments will be done(most likely via PayPal) and create a decent covenant, I'll officially launch the rental program.

To get a MetaGridNet OpenSim account, you must contact me as per the instructions of this blog post.

Also, I will soon set up some freebies to help new users get started with building and scripting. So stay tuned, more good stuff is yet to come!

Friday, April 2, 2010

Leaving Second Life and embracing OpenSim

Today I announced that my shop, NixTech, will be closing down on April 30th, 2010. The reasons behind it are related to the Third-Party Viewer Policy that will take effect on that day.

It's no secret that I prefer certain third-party viewers(Imprudence and Hippo, specifically) over the official LL viewer for many reasons(OpenSim support, content backup and restore, better performance, etc). Since many of the developers of third-party viewers have rejected the policy for several good reasons, after April 30th if I use any third-party viewer I run the risk of being banned.

Now, I could simply use the official Viewer 2.0, but to be honest it is a disaster of a viewer in comparison. It suffers from major slowdown, rezzes everything at a snail's pace and still consistently sucks up over 100% CPU use. It is absolutely not good enough for normal use, unless the Lab fixes these problems by April 30th(highly unlikely).

So as it stands, that means I won't be able to stay in Second Life for a long session(greater than a 1/2 hour) without suffering severe performance problems. This in turn affects my ability to run a shop in SL and offer support to my customers. Even my ability to merely socialize in-world will be adversely affected. So I decided to close it down on the 30th and convert the plot into my own residential spot(as I had it before I opened up NixTech). I will continue to have a presence in SL, but due to Viewer 2.0's volatility it will be a greatly diminished one.

However, this doesn't mean NixTech will be dead. I will continue to offer support to customers who have bought my items in-world or via META-life. I have already exported a good selection of my creations to my hard drive, and I plan to re-open NixTech in an OpenSim-based grid(most likely InWorldz) where legitimate third-party viewers are welcomed.

This was a decision not taken lightly. I've been a Second Life resident since 2006 and I've hung on through many events that have sent other people packing: the Linux client's sub-par quality before Tofu Linden fixed it up(no sound, no media, no shiny, not even copy/paste back then!), the gambling ban, the Lab pushing voice chat against the community's input, the OpenSpaces fiasco, and the XStreetSL freebies tax. This third-party viewer policy was simply the last straw and I can't just lie down and take it anymore.

See you all on the other side of the metaverse :)

Monday, March 29, 2010

How to access MetaGridNet sandbox via Hypergrid

As I noted in my previous announcement of the MetaGridNet social networking site and OpenSim sandbox, I had noted that it's possible to access the sandbox via Hypergrid teleporting. Here's how you can do it:


1. Download and install the Hippo OpenSim viewer. It's the only viewer that currently fully supports the Hypergrid technology(I did test with Imprudence, and it technically worked but it rendered the sandbox all botched up).

2. Log into OSGrid and teleport to a Hypergrid-enabled region such as Aesthetica.

3. When you get there, open up the map screen and enter this into the region box: "metagridnet.com:9000", then click Teleport.

Please note that for ReactionGrid users, to get to MetaGridNet you must first make a Hypergrid jump to a grid whose position coordinates are closer to MetaGridNet's(due to Hypergrid not being able to reach regions further than 4096 regions in a single jump on the map; thanks Maria!).

I do have a few rules for Hypergrid visits, though:

1. No griefing, harrassment or drama.

2. When you are done, please save your works, otherwise they may get deleted.

Otherwise, have fun!

Sunday, March 28, 2010

MetaGridnet: A social ecommerce website and OpenSim sandbox

If you recall, I had previously blogged about my successful, but laborious attempt at setting up an OpenSim installation on my hosted VPS server. Well, recently I redeployed my server and decided to do something bigger as a challenge: create an OpenSim installation, but with a social networking site to accompany it. The result is MetaGridNet.

MetaGridNet's social networking features include user blogs, Twitter-like microblogging, user pages, a forum, file uploading, and an online marketplace. And now as of this writing, MetaGridNet also has its' own 2x2 region OpenSim environment. Currently, you can set up an MetaGridNet account via the website, but there is no website page to create accounts for the sandbox(yet). To get a sandbox account, you must contact me via email and provide your avatar's name and password(Your data will be kept private). The login URI for the MetaGridNet sandbox is http://metagridnet.com:9000.

P.S - I do have Hypergrid enabled as the sandbox uses the Diva distribution of OpenSim. I'll provide details on how to Hypergrid to MetaGridNet in a later blog post.

Saturday, March 27, 2010

Skills Hak files bogus DMCA takedowns on Youtube

In the last post I made about Gemini CDS, I had linked to a video on Youtube that shown an instance of copybotting being done while the content that was ripped was supposedly "protected" by Gemini CDS(Before anyone accuses me of anything, no I was not the one who made the video). Shortly after I published the post, the video was taken down from Youtube "due to a copyright claim by Simone Phuc".

At first, I had merely thought that the takedown was because of the music track that was in the video. Later I remembered that in those sort of cases, Youtube merely removes the audio. So it wasn't the music track.

So then I started searching for similar videos. There were a number of videos, yet all were completely taken down by this same "Simone Phuc". Why? The videos themselves did not violate anyone's copyright(music tracks notwithstanding). And for certain, the person who made all these takedowns could not own all the products that were shown copybotted. But there was one obvious link in all the videos: These videos documented Gemini CDS failures.

So the only possibility is that Simone Phuc is Skills Hak, and she is attempting to stop embarrassing evidence that her product is failing from reaching enough of the public.

This is absolutely wrong, not only for Skills but also for her clients because those videos are clear, documented proof that copybotting had occurred, and the victims affected could use them to prosecute the thugs. Skills/Simone's takedowns then amount to obstruction of justice, and also abusing the DMCA(even if Skills tries to claim trade secrets, DMCA is *only*for copyright claims).

To Skills, I say this: Do the right thing and stop abusing the law to hide what are obvious product failures. What you should have done was inform the victims of the copybotting incidents and show them the videos as proof. This would actually help you and your product because it would show customers you actually care about them and their investments in SL.

To Gemini CDS users, I say this: Because Gemini CDS doesn't detect or prevent the actual act of copybotting, you may or may not have been the victim of copybotting in those videos. But since Skills has taken down the videos, you might never know unless you come across copybotted versions of your content in SL(which at that point is too late). There's no good reason to be victimized twice.

Friday, March 26, 2010

Imprudence Developers take a stand against the Third-Party Viewer Policy

This past Tuesday I had the privilege of attending a "weekly ImpDev meetup", where Imprudence viewer developers and those(like me) interested in it's development would meet and discuss various issues, like bugs, feature ideas, and anything else related to Imprudence. The meeting, however, turned out to be the most important meeting not just for Imprudence, but for other third-party viewers as well.

The meeting was about how the Imprudence developers should respond to Linden Lab's final wording of their third-party viewer policy. Earlier today, Jacek Antonelli broke the news of their decided response. While it echoes the general response of the TPV developer community, it states it in a very professional and respectful manner towards users, developers and even Linden Lab. Jacek also announced that while Imprudence cannot agree to the TPV policy as a whole, they will honor the parts of the policy that are reasonable and do not legally endanger the project.

This response is already having a ripple effect, as it has seemed to inspire Luna Viewer developer, Fred Rookstown, to continue developing Luna but with similar changes as Imprudence. It would also seem other viewer developers will follow suit, with the possible exception of the Emerald developers as they may be secretly negotiating with the Lab to get some sort of exemption from the policy in exchange for some changes made to Emerald(most likely gutting import/export, grid manager functionalities and a few controversial features).

While this marks a very sad day for SL, conversely it's a red-letter day for OpenSim-based virtual worlds who will benefit from the increased viewer support and likely incoming users. The ball is now in Linden Lab's court, and how(or even if) they respond to this will set the status quo in SL open development possibly for years to come(if SL manages to last that long, though).

Wednesday, March 24, 2010

Victoriana & Tinytoriana: A case study of how SL is losing it's soul

Very early this morning, the Alphaville Herald broke the news that the "mayor" of the Victoriana and Tinytoriana communities is to leave Second Life for OpenSim, as will the communities.

The reasons he gave for his departure read off as an indictment of the Lab's mismanagement on nearly every level. Here's the money quote:
This lacklustre response from Linden has brought to light a great deal of uncertainty in our little community about the future of Victoriana and the Linden grid itself. I’ve seen a number of people in the past few weeks re-evaluate their own personal investment in SecondLife, and sadly a number of them have chosen to leave the grid for fear of losing everything they’ve invested money in. It’s a very very sad thing to see good people go (especially long-termers who’ve been around for a while) for fear of "what will happen to them" come the next maintenance rollout/asset server failure/grid issue.

That pretty much says it all. This person had invested $30,000 over two years+ to acquire 13 sims and build a sizeable community on it. Common sense would dictate that the Lab should have given his problems some modicum of attention and care due to his very considerable investment towards Lab employees' paychecks. But he didn't, and this was the proverbial "straw that broke the camel's back".

I wish Mr. Lindsay and the Victoriana/Tinytoriana community the best of luck in relocating to a new home. While I've never had the pleasure of visiting your community, I hope to do so during my travels to other grids.

The Lab, on the other hand, should be very ashamed. Communities are the lifeblood and soul of the grid, and should be fostered with reasonable care and attention. This is a fact of the metaverse that seems to be ever lost to the Lab under Kingdon's reign.

I still hold out hope the Lab can stop it's looming downward spiral into financial ruin, but with all the recent bad decisions it's been making, it's becoming much harder to hold on to.

Tuesday, March 23, 2010

My comment on opensource-dev maiing list

Just a quick post to show my first comments in the opensource-dev mailing list. It's a response to Joe Linden about his views on the current controversy surrounding the third-party viewer policy:


Tony Agudo to Joe, opensource-dev


(Delurking here just to throw in my $L2; standard IANAL disclaimer)

Joe, most of the TPV Policy *is* reasonable and nobody(except obviously malicious viewer creators) is disputing that requiring reasonable, common sense responsibilities to keep viewers honest is bad at all, it's simply that Section 7(d) can open a can of worms for third-party viewer devs by not clearly stating something along the lines of "You assume all risks, expenses, and defects of any Third-Party Viewers that you use, develop, or distribute in the context of the broader sections of this Policy. Linden Lab shall not be responsible or liable for any Third-Party Viewers". Without a clarification such as that, as an example, a third-party viewer user who believes the viewer is causing harm to his/her SL experience(supposing the "harm" is merely a glitch or bug that occurs in normal development, or even if it's not the viewer but the user thinks it is), that user can point to specifically that section of the TPV Policy and claim "By this, you *are* legally liable for my problems, I can actually sue you". The Lab's own ToS completely disclaims responsibility for the official viewer and has pretty much protected the Lab against such actions in a majority of cases. It's what has kept the development cycle in the Lab from becoming a legal minefield, I'm sure you agree. What the third-party devs are asking is that that legal threat shouldn't be thrust on them via the TPV Policy and it be made clear and unambiguous if they're to continue developing for the benefit of the SL grid without fear of nagging lawsuits. That's not an unreasonable request, is it?

(*going back to lurking*)

Monday, March 22, 2010

The Third-Party Viewer Policy: Take 2, but still as shoddy

According to Tateru Nino at Massively, the Lab has made and released changes to the third-party viewer policy at the request of the opensource-dev community. Sadly, however, they still f*cked it up.

The only change I see, on a casual read is this sentence in the third paragraph of the preamble: "This Policy does not place any restriction on modification or use of our viewer source code that we make available under the GPL."

But still, that sentence directly conflicts with Section 7(d), "You assume all risks, expenses, and defects of any Third-Party Viewers that you use, develop, or distribute.", which violates the GPL's disclaimer of liability.

The best and shortest response I've heard from the open source community makes what they think of the "rewrite" crystal-clear: "You first", as in "If you want us to take responsibility for our viewers by violating the wording of the GPL, then change your ToS(Section 5.4, specifically) to do the same for your own viewer as well".

Now that the Lab has stated that they will not be planning any further modifications to the policy, the ball is now in the third-party devs' court to decide what to do in light of it. Boy Lane(developer of Rainbow viewer), and Fred Rookstown(developer of the Luna viewer) have already stated their intents(Both have simply called it quits on their viewers). Tomorrow the Imprudence developers will meet in-world to discuss what to do regarding the policy, but there's a strong possibility that most popular viewers may abandon SL altogether and throw their weight into OpenSim-based worlds in order to avoid being shackled down by LL.

As TigroSpottystripes Katsu put it: "It's own-foot season, and this time LL brought the big guns."

The hitchhiker's guide to the metaverse

(Apologies to Douglas Adams, but the title fits what I've been doing)

Lately I've been hopping around various OpenSim-based grids to research which one(s) would be viable replacements given that Second Life may be irreversibly heading in the same direction that There went. So here's the rundown of the grids I've been to as of this writing:
  • OpenLife: OpenLife was the first OpenSim-based grid to have an in-world currency, and that alone set up OpenLife as the first possible competitor to Second Life. Unfortunately, the OpenLife folks had forked OpenSim and chose not to release their changes back to the OpenSim community. While this is technically allowed because of OpenSim's BSD license, this act had basically turned OpenLife into a non-OpenSim grid.
  • InWorldz: A currently small but growing OpenSim-derived grid similar to OpenLife. You're actually pretty likely to catch the founders and devs of this grid right from the first time you login to InWorldz, which is nice.
  • OSGrid: The first non-Linden Lab grid I've ever been to, and without a doubt the biggest OpenSim-based grid. While it currently lacks an in-world currency(intentional because it's a non-profit grid), it's more or less ground zero for OpenSim development.
  • ReactionGrid: And for something completely different, there's ReactionGrid. ReactionGrid is a lot like OSGrid, but with some very distinct differences: ReactionGrid has a solid revenue model by being an OpenSim grid hosting company, their OpenSim grids are hosted on Microsoft's Hyper-V technology, and grid operators are free to modify their grid server functionality if they wish. ReactionGrid is targeted at educators and businesses for collaboration, but there 's nothing stopping grid operators into purposing their grids for other uses.
While I'm not a big fan of Microsoft technology, I have to give it up to the ReactionGrid folks. Their business model is solid and professional, but they don't gouge the customer like how SL does with land(Same can be said of most other OpenSim-based grids that have region purchasing options, of course). OSGrid is where you want to be if you want to keep up with OpenSim development and testing, and freely experiment around. OpenLife and InWorldz basically aim at providing an economy experience similar to SL, minus the land gouging.

This is by no means an exhaustive list or review of virtual worlds, just my opinions of those I've checked out so far. There's several others I'm interested in checking out, so stay tuned for a "Part 2" blog post in the near future.

Sunday, March 21, 2010

How Gemini CDS fails to stop copybotting

Yet again, there's another cache of apparently copybotted content being sold on XStreetSL. And this has been discovered long after Gemini CDS was released into the wild to prey on the paranoia of content creators. Wasn't this "wonderful tool" supposed to be the "silver bullet" against copybotting?

No, it's not, because of it's biggest and intentional flaw: it does not stop or detect the act of copybotting at all. Yes, it's stated purpose is to merely detect "copybot viewers", but users are hyping it up beyond belief(see "silver bullet" reference above).

A copybotter can get around CDS via a few methods. The easiest (though costly) method makes use of online marketplaces that use "magic boxes" for delivery. All the copybotter has to do is go to a sandbox or other place where CDS is not used, purchase a copy of the content to be copybotted via website, then copybot the item once delivered and sell it to recoup the monies used to purchase the original copy. So if you're a merchant at XStreetSL or any of the other major online marketplaces, CDS won't protect your online listings, even if your "magic boxes" are within proximity of a CDS.

Another method of course is to play the cat-and-mouse game where copybotters continually update their ripper clients to avoid CDS detection, and Skills Hak has to update CDS in response. This will eventually end in one side "giving up" out of frustration or exhaustion, as all cat-and-mouse games do. My bet on this is that Skills will eventually give up, once people start to realize what a sham CDS is, given the other methods below.

Also CDS cannot prevent thieves from camming into a CDS-protected parcel and copybotting that way. Or stealing textures, animations and sounds by obtaining the UUID of the content via LSL or digging through the texture cache directories of any viewer.

Then there's using GLIntercept in conjunction with the official viewer. It's highly doubtful that CDS can detect GLIntercept, unless CDS does somehow force a user's viewer to peek around the filesystem and report to the CDS webservers what it finds. This would be in violation of the Second Life ToS if it were the case.

If you're still thinking CDS does work, take a look at this video I found after Googling "Gemini CDS Ban Relay":


I rest my case, folks.

Update: Apparently the main detection method of Gemini CDS has been discovered. It triggers the viewer to contact a specific URL, where the site weakly encrypts the details of the avatar and the user-agent HTTP request header details(which is how the viewers are detected), then sends the information off to Skills' secret database. This means defeating Gemini CDS detection(at least at this level) is now as trivial as blocking the URL at the router/firewall level(or by disabling Quicktime with the -noquicktime command-line option).

Update 2: The video I linked to has apparently been taken down due to a DMCA copyright claim. At first I thought it was simply because of the music track that accompanied the video, but normally that would just result in the audio of the video being disabled. But apparently Skills Hak and the Gemini staff are actively trying to suppress videos that demonstrate how ineffective CDS is at stopping copybotting. The videos themselves do not infringe *any* of Skills or Gemini's copyrights, so the takedowns amount to abuse of the DMCA and as suppression of free speech. <snarky sarcasm>I guess Skills has been taking DMCA lessons from Kalel Venkman</snarky>.

Monday, March 8, 2010

A Cross-Grid Content Store: An idea whose time has come?

This morning my thoughts drifted into thinking about the inevitable screw-over XStreetSL merchants are going to get real soon. Then I took a second look at a comment Imprudence viewer developer Armin Weatherwax left on that blog post(emphasis mine):
lol, I admit my thought is a bit far fetched... having those archives gives of course the possibility to exchange content in "new" ways, like from torrents or git repos. So maybe XStreet would have become less interesting for open content anyway - well, we'll never know.
Given not only the coming XStreetSL changes but also in light of the controversial third-party viewer policies and ToS "content trap", I now think Armin's idea isn't as far-fetched anymore. A far better solution than "torrents and git repos" would be an online store like XStreetSL, MetaLIFE, or Metaverse Exchange(the goals of MVX match the cross-grid store concept, but it currently just supports Legend City and SL) but would deal in content archived in the HPA format. This would kill a couple of birds with one stone:
  • No need to deal with "magic boxes", which are prone to delivery failures whenever the region the box is hosted on fails for whatever reason, and potentially costs you sales.
  • Easily make content in one virtual world, and be able to sell(not just give away) it to residents of any world that can use HPA-capable viewers such as Meerkat or Imprudence.
While these are excellent points for this idea, I can also see one point against it: The nature of content import at the moment circumvents the in-world permissions system(on import, you are the creator of the content as far as the system knows), as there is no content metadata to properly address it, which can lead to copyright infringement if not used responsibly. So as it is, it's a trade-off: sacrifice reach for control(walled garden), or sacrifice some control for reach(public park).

So, would this concept be feasibly possible? Ideas, thoughts, criticisms?

P.S.- Also, take a quick look at OpenSimWorlds and MyOpenSim as a couple of prototypes as how such a store might look like.

Thursday, March 4, 2010

Are CDS users planning to go social with their vigilantism?

As I got home from work today and brought up my Twitter stream, I came across this tweet from Ann O'toole which made my heart sink like a rock:
we need one of them oauth thingies to tweet copybot network detections so everyone will see the rate of shoplifting in #Secondlife
So, it's not enough that they're perma-banned everywhere Gemini CDS is used,  their info kept in a database forever labeled as "potentially dangerous"; now you want to add the internet equivalent of public stoning as a feature?


I do expect Ann to be a bit controversial, but this is beyond the pale. I could see this "feature" being implemented in one of two ways: on detection it either tweets to the user's Twitter account with a hashtag to enable CDS users to find all detections twittered, or detections get twittered to a specific account for the purposes of publicly browsing names. This idea throws the possibility of innocence or false detection even further out the window while extending the networked vigilantism beyond SL.

Here's a couple of questions that I would like to ask CDS users and Skills Hak if this idea were to get implemented:
  1. If it were implemented as to tweet to the user's Twitter account, will there be a way to automatically delete the tweet if an accused avatar successfully appeals, or will they have to make their case with the CDS user or Twitter itself?(The question is similar regarding the second implementation, just replace "CDS user" with Skills Hak).
  2. If you're so fed up with the Lab's "refusal to deal with the copybot anarchy", then why not involve the Department of Justice? Why turn to networked vigilantism when involving authorities higher than LL may get a better outcome(DOJ gets wind of rampant "copyright infringement" in SL, DOJ investigates and finds LL lacking in enforcement, DOJ threatens to sue on behalf of copybot victims, LL wakes up and gets strict on enforcement thanks to DOJ legal threat, everybody's happy)?
  3. What will you do if a falsely accused avatar(or a group of falsely accused avatars) decides to sue the entire CDS system on grounds of defamation of character and vigilantism(The entire CDS system refers to the individual users all the way up to Skills Hak)?
Again, I'm not defending copybotters at all here, I'm pointing out the vigilantism and escalation being encouraged by this system and it's users, and it's clear potential to harm innocents and the falsely accused. If this idea were to make it into CDS, then it has the potential to make the JLU scandal look trivial in comparison.

Caveat emptor, folks.

Monday, March 1, 2010

The External Grid Selector script, version 0.3

This new version of the grid selector script no longer detects any third-party viewers, because virtually all major third-party viewers now have a built-in grid manager. The only viewer that does not have it is the official one, including Viewer 2.0. So this version will only detect versions of the official one, including Snowglobe.

Without further ado, here's the script:

========================
#!/usr/bin/env bash

#Second Life Grid Selector and Client Launcher
#A simple grid manager for the official Second Life viewer
#(C) 2010 Jose A. Agudo aka Second Life resident Antonius Misfit
#Licensed under the terms of the GNU General Public License v3 or at your option any later version

viewer=$(zenity --list --title="Viewer Chooser" --text="Choose a viewer:" --column="Viewers" $(find SecondLife*/secondlife Snowglobe*/snowglobe))

#retrieve grid "database" which is simply a bash array variable sourced from a file
if [ -e $HOME/.grids.db ];then
source $HOME/.grids.db
else
cat > $HOME/.grids.db << EOF
#Feel free to add grids here
grids=("Second_Life" https://login.agni.lindenlab.com/cgi-bin/login.cgi "Localhost" http://127.0.0.1:9000 "3rdrock" http://grid.3rdrockgrid.com:8002/ "OSGrid" http://osgrid.org:8002/ "InWorldz" http://71.6.142.199:8002/)
EOF
source $HOME/.grids.db
fi

main()
{
action=$(zenity --list --title="SL Grid Launcher" --text="Choose a grid:" --column="Grids" --column="Login URI" --print-column="2" ${grids[@]:0} "Exit" "Exit")
case $action in
Exit) exit;;
*) $viewer --loginuri=$action;;
esac
}
main

========================

How Third-Party Viewer Developers are going to feel the pain

In my previous post, I described exactly how inter-grid content creators are going to become walled out of Second Life. But the Second Life® Terms of Service and third-party viewer policies will also bite third-party developers, hard.

In particular, the ToS and third-party policies place restrictions on GPL usage and distribution for viewers that connect to Second Life, as I've blogged about it before. Also, Section 2(b) of the third-party viewer policy will affect the major third-party viewers(Emerald, Meerkat, Imprudence etc) because they all have content export capability. If a third-party viewer developer wants their viewer to comply with the policies, then they will have to somewhat cripple that functionality(no full perm export, creator-only), despite legitimate use cases that warrant it.

A third-party viewer developer now has this hard choice to make: either cripple certain functionality and accept restrictions on usage and distribution, or rewrite their viewer as "not for Second Life use" and as a result lose much of their current user base in Second Life.

From the discussion going on in the opensource-dev mailing list, it seems virtually all third-party developers are going to take up the latter choice. But that may wind up to Linden Lab's disadvantage in the long run, because that means those viewers' innovations will be re-geared to benefit Second Life's biggest competitor: OpenSim-based grids.

Sunday, February 28, 2010

Second Life about to wall up content

Ann Otoole calls out Linden Lab in her latest blog post, spelling out how Second Life is about to become a completely walled-up garden starting on April 30, 2010. She frames the discussion in the context of textures, but her argument also applies to objects, clothing/body part items and scripts(to a much lesser extent).

From April 30th onward, the Lab will be vigorously enforcing Section 2(b) of the third-party viewer policy, which also happens to be a part of the Second Life® Terms of Service.

In the opensource-dev mailing list, Lindens are suggesting content creators who wish to allow inter-grid use of their content should host it outside of the Lab's grids and services. The implication of that is that Second Life is unsuitable as a host or distribution channel for such content. For LSL scripts, that's not much of a problem because if a script's code can be viewed in-world, it's simply a matter of copy/pasting text, the Lab can't really stop that. But for other types of content(especially prim and sculpty-based objects) made for inter-grid use, the policy and the ToS combine to form a content license trap.

For example, let's say I'm creating a prefab house that I wish to be used in both Second Life and other grids. I create and host the content on my own server, by using a third-party viewer to export it to a zipped archive. I create a specific license allowing inter-grid use(or use an open license). Someone who wants to use my content logs into Second Life and imports the content in-world. Now, here's the big question:

When my licensed content is imported into Second Life®, what happens to the license for that specific copy? According to the ToS and TPV policy as it is today, my license(parts of it at least) no longer applies to that copy and can only be used within SL and it's rules. In effect SL becomes a content trap and a walled garden, both for permissively-licensed content(Creative Commons, open source, public domain etc) and proprietary content with inter-grid use allowances. So to preserve the license and the rights to my content, I must have a clause in my license that prohibits import to grids whose policies or ToS conflict with my license, otherwise the importer loses the right to use my content.

That kinda sucks, right? Well, not all hope is lost and in my next post I'll detail the painful choices third-party viewer developers and their users may have to make in the wake of the third-party viewer policies, and how this ties to content creators.

Saturday, February 27, 2010

The Third-Party Viewer Policy: The shoddiest policy from the Lindens

As I noted in the previous post, coinciding with the release of Viewer 2.0 was the release of a third-party viewer policy created by Linden Lab. At the time I had read it, I did not think much that it was a bad policy nor think it would negatively impact third-party viewer developers.

I was wrong.

In fact, there's so much wording in the policy that not only negatively affected developers, but also violates terms of the GPv2.

For example, the GPL explicitly disclaims liability of a developer, yet the policy puts it on after the fact. Also, the GPL states that you may not impose further restrictions, conditions or terms of distribution beyond what the GPL specifies. The policy does exactly that.

But my biggest beef with the policy is Section 2(b), which flat out bans export of full permission content without the legal consideration when the creator of a piece of content grants exportability to the content's users. This effectively kills content licensed under Creative Commons, open source, public domain and other content whose license allows exportability.

There are other issues as well. In fact, as it stands no third-party viewer can be in compliance with the policy and be able to distribute. But thankfully, as Tateru Nino's Massively article points out, the Lab has brought the policy back to legal for a rewrite(this has been confirmed in the opensource-dev mailing list). Here's to hoping they get it right this time!

BTW, the only folks who are seriously lauding the policy as it is now, are those who are opposed to third-party viewers in general, so that should be a clue as to what's wrong with it if still in doubt.

Thursday, February 25, 2010

My Impressions on SL Viewer 2.0: the good, the bad, and the ugly

The other day I had gotten the word that Viewer 2.0 had finally been made available to the general SL community. I've had the chance to give it a test run and while I generally approve it as a major step forward, there are a few annoyances that I found. So here's my quick rundown of the good, the bad, and the ugly of Viewer 2.0:


The Good

I'll start with the new features introduced besides the new UI. The most welcome new feature is Shared Media. Ho..ly... crap! A truly functional web browser on a prim. It's per face, per prim, can have several media elements, and puts parcel media to shame. Flash content works(though I've yet to test on something HTML5-friendly like Theora). I've used it to do a tweet completely within a prim that has Shared Media enabled on a face. So we can expect some pretty crazy media mashups from machinima makers and artists soon.

There are two new clothing pieces introduced in Viewer 2.0: tattoos and alphas. Tattoos are pretty self-explanatory. Alphas are basically the replacement for invisi-prims on avatars to hide body parts, used for non-human avatars like tinies and dragons.

Now I'll get right down to the new "web browser" UI design. While residents who have become very used to the old viewer's design will no doubt find the redesign frustrating at first, once you start to find where all the menus have moved to, you'll find that virtually no feature sets have been actually removed. Landmarks are still in your inventory(as some like Prok feared they would get replaced with a "bookmark"-like feature), the build tools are practically unchanged(with the exception of adding Shared Media settings to the Texture tab), and chatting/IM has gotten a bit easier to keep track of: profile pics are shown before each line of chat and when an avatar says multiple lines of chat in an IM before anyone else, those lines are grouped under that avatar's name automatically instead of having the name repeated every single line.

There's more stuff about the viewer that I like, but I'll defer that to this blog post from Second Tense, as it is covered in pretty good detail.

The Bad and The Ugly

I have to lump the two categories as one because quite frankly, I don't see any serious UI or feature issues that would put me off using Viewer 2.0 when it becomes the mainline official viewer. That being said, there is one major thing that needs to be addressed: it's seems pretty laggy that it's consistently sucking up over 100% CPU usage. Granted, it will get worked on, but it has to be said now because it can be enough of a turn off for some folks.

And while I said that virtually no feature sets have been removed, there does seem to be one thing missing, though I'm not going to crumple up in despair about it nor ignore it either(Well, it's still there although not as clean as in 1.23 according to Prok).

Also, it appears they are changing their open source release strategy by attempting to label Snowglobe 2.0 as the source code for Viewer 2.0 and onwards. That may particularly irk third-party viewer devs a bit, especially in light of the new third-party policies and registry launched alongside Viewer 2.0. I'm irked simply because there are no Linux binaries of Snowglobe 2.0 available yet(this has happened before, and I'm not gonna slog through trying to compile it). Also, Linden Lab needs to be reminded that when you release any GPLed viewer to the general public, you must provide the exact sources used to make it, not the sources to a distinct derivative, as Snowglobe is(unless it is the exact sources with just the name and logo different, then it's okay).

Verdict

Viewer 2.0 is a big step forward, though there will be shock and adjustment pains. If you can get through the initial shock, then you'll find there's a lot of stuff in 2.0 you'll like.