![]() |
Site Archive (Complete) | |||
|
ABOUT US |
CONTACT |
ADVERTISE |
SUBSCRIBE |
SOURCE CODE |
CURRENT PRINT ISSUE |
NEWSLETTERS
|
RESOURCES
|
BLOGS
|
PODCASTS
|
CAREERS
|
||||
April 05, 2007
Second Life: A Programmer's PerspectiveBuilding applications for Second LifeDana Moore and Raymond Budd
In Second Life, you can create objects that have credible dynamism, even compared to AJAX and browser-based applications.
Dana is a division scientist with BBN Technologies and is an expert in the fields of peer-to-peer and collaborative computing, software agent frameworks, and assistive environments. Dana's identity in Second Life is ElectricSheep Expedition. Raymond is a software engineer with BBN Technologies where he has designed and developed a variety of web applications and other distributed systems. He can be contacted at ray.budd@gmail.com. Dana and Raymond's most recent book is Professional Rich Internet Applications: AJAX and Beyond (Wrox, 2007).
Having come up to speed in Web 2.0 concepts such as AJAX, Ruby on Rails, and TurboGears, many developers have begun considering the world beyond Web 2.0, asking: "If there's a 'Web 3.0', what is it, and what does it look and feel like?" One possibility is a next-generation Web embodied as a Rich Immersive Environment (RIE) which, instead of appearing to users as a two-dimensional form in a browser, steeps them in a three-dimensional world filled with places to see, avenues to walk, people to interact with, objects and environments to play with, things to buy, and services to access. Applications grounded in such environments require a completely different style of manipulation byand interaction withusers. In short, you need to reconsider what the concept of "interface" means, and how to engage users with your work.
In this article, we examine what's involved in developing for Second Life (www.secondlife.com), an emerging RIE developed by Linden Lab (www.lindenlab.com). Second Life has captured both mindshare and a considerable amount of actual commerce revenue for the participants and creators of virtual value.
What is so compelling about Second Life and other emergent virtual (nongame) worlds? In a 2006 interview, Linden Lab CEO Philip Rosedale explains that when entering Second Life, people's digital alter-egos (known as "avatars") can move around and do everything they do in the physical world, but without such bothers as the laws of physics. "When you are at Amazon.com [using current web technology], you are actually there with 10,000 concurrent other people, but you cannot see them or talk to them," Rosedale said. "At Second Life, everything you experience is inherently experienced with others."
Think of what this would mean to a social site. Instead of posting entries and responses on slashdot.org or digg.com and then reading them from a web page or an RSS feed, imagine conversing in real time with actual peers on emerging stories from real Reuters or CNet news feeds. Imagine opening a storefront site for your next brilliant idea and having it literally be a storefront, where you could, in real time, interact with your user base and potential customers. Imagine a world in which you could multitask by first tending to personal activities from "home," turn attention to "work," then break for "lunch" in an RPG adventure or go to a virtual beach in the middle of the day.
That's the promise that Second Life suggests. But there are several other reasons why it should be on your developer radar:
Second Life: The Programmer's View
The primary attraction for software developers in using a platform like Second Life is the ability to create objects that have credible dynamism, even compared to AJAX and browser-based applications. Virtually every one of the objects you encounter in SL, from beach balls to shopping malls, has been created by a developer or team. A short (and incomplete) description of SL is that it is a huge simulator running a potentially enormous number of finite state machines (FSMs). The scripting environment controlling the execution of every one of the FSMsyours and othersis a C-like language called "Linden Scripting Language" (LSL).
|
|
||||||||||||||||||||||||||||
|
|