Archive for December, 2006
Why virtual worlds suck…
And why they don’t have to…
So, I’ve been spending too much time in Second Life and broadly agree with Nad’s “The problem with Second Life“.
But why does it suck and what would I want instead? Well first I think Second Life is too much like real-life – the physical characteristics of the world are too similiar too restrictive. Sure, you can teleport; great. And you can fly, albeit very, very slowly. But broadly the things that slow you down IRL are the same things that slow you down ISL.
There are things that aren’t right yet, like how you show search results as objects, for example, but there are others too. ISL today my search results look like a whole load of blobs; arbitrary objects created by the search interface for me to rifle through. This isn’t the fault of those producing search interfaces, but the fault of the engine’s themselves.
The good news is we don’t have to look far for a more imaginative solution. In The Matrix1 Neo needs guns, so guns arrive. He doesn’t move within the world, the world moves for him. That’s the kind of virtual world I want to play in.
In real-life when you want to, say, arrange books on the shelves of a library you have to choose a filing scheme – there are plenty around and they each serve a different blend of different needs. In a virtual library we could ditch the shelves altogether, but if we kept the shelves we could let people re-sort the shelves to meet their own needs – instantly and on-demand.
For that to work for many people at the same time that would mean the world that others are seeing would be slightly different from what I am seeing. That is to say that the while you and I may be stood next to the ’same’ shelves, the books may be arranged differently for me than for you. That might bring usability problems with it too at times, but at least it would be lifting the restrictions of this world.
Imagine, this is like being able to all sit around one TV, but watch your own programmes! I’ve wanted to do that since I was six; imagine the childhood fights that would stop!
If you think about it this is what websites do all the time, if we used a search perspective rather than a browse of the shelves, we could see a shelf as analogous to the search results page of a search engine – that’s seen by millions of people at the same time, but contains results for each of us. What if we could do the same for the shelves? A hundred of us could be stood looking at virtual shelves, seeing different results upon them.
Any aspect of the world could vary, the same corridor of shelving could be 50 feet long for me and only 20 feet long for you – there would be some work to do in mapping where people are stood within each others’ spaces, but that’s not too hard. Imagine what that could mean though. When I search for books now, I could get my own shelf of results – everyone stood in the search “room” would only see their own shelf. I could easily judge how many results I have by the length of the shelf. Perhaps there would be a way for me to collaboratively search and manipulate results with other people I invite to help me.
AFAIK the current virtual worlds don’t support this kind of personalised, run-time, programmatic remodelling of the physical space. And that’s why they suck – they’re too much like this world.
1 This clip, The Matrix, Copyright 1999, Warner Bros
Tidy or Organised
Rachel Davies (she’s a top-notch agile coach if you’re looking for one) discusses the term refactoring and suggests it may be unhelpful.
She suggests calling it Tidying Up instead as then it’s clear what we’re doing.
I agree with Rachel whole-heartedly that the term is somewhat grandiose when talking about the work with non-technical project members, but I don’t think it’s just tidying up – it’s organising.
Metaverse
One of the first things that frustrated me about Second Life was the restrictions on real-estate that are necessary for Linden Labs business model. Having to buy land in a virtual world seems bizarre, unless you’re the one selling it, of course.
What I want is an open-source world server where I can set up my own world and use hyperlinks to join the boundaries of my world others – like a kind of web of virtual worlds.
As none of my ideas are original, it was of no surprise to me to find this… Open Source Metaverse Project
Offshoring…
Over at Virtual Chaos, Nad’s been rambling about offshoring and outsourcing.
The problem though, is that writing code isn’t something you can translate into an assembly line. What I think the people pushing this type of outsourcing failed to comprehend, and seemingly still dont understand is that farming out development overseas doesn’t lead to innovation. … Someone famously once said every line of code is a design decision, I’m struggling to remember who it was [insert clever guys name here]. But that single statement embodies for me what the real problem is with outsourcing projects abroad.
I don’t really see this as about innovation directly. I think it’s all about design. There are plenty of software projects that aren’t about innovation; they’re about cost-reduction or about refreshing technologies (which is generally about cost-reduction) or about well, cost-reduction. Most of what IT departments in enterprise are asked to do is cost reduction – hence most of what enterprise will outsource is also about cost-reduction. Innovation isn’t really a factor.
The indirect quote that Nad references about code being design could well have been from Code as Design: Three Essays by Jack W. Reeves. Jack’s discussions parallel what Nad is saying; that writing code is the act of designing something, not the act of manufacturing something. “Tooling up” is done by the compiler and manufacture is when you press lots of CDs, or on-demand when folks download your RPM or MSI.
The answer you arrive at about outsourcing (and offshoring is just outsourcing with extra big communication barriers and some cultural differences thrown in) will depend on what part of the software universe you feel you’re in. For us, we write commercial software that we sell and maintain for a number of years, the quality of code is important.
But that’s not always the case for everyone. Say you have a legacy application that was not well-written to start with, it’s built on top of old, unsupported languages (say, Java 1.2?) and you need to keep running it with minor changes for a few more years. There is no innovation to be done. The design decisions in-the-small aren’t that important to you as they’ll be better than the ones made last time! Your team in the office are de-moralised by the very mention of the application’s name and you’re over-stretched on new projects that are innovative… Surely that’s a contender for off-shoring?
OLPC HIG
The OLPC (One Laptop Per Child) Project has releases Human Interface Guidelines for the machine.
This is a great piece of thinking and is, aongst other things, the first really good application of Fitts Law that I’ve seen.
I was going to write some stuff up about it, but Mikes Journal has done a great job already.
If you’re into Interaction Design, you might want to follow Nadeem’s occasional ramblings too.
As he says, we are currently looking for talent in this area.
Big, Retro Headphones
I just read over this report:
Sound Output Levels of the iPod and Other MP3 Players: Is There Potential Risk to Hearing?
and it’s great. I bought a pair of Sennheiser headphones a couple of years back mainly because I enjoy my music and wanted to hear it without it being massacred by earbuds.
I wrote some visualisations for Windows Media Player to see what different codecs were doing to the frequency range too…
So, now when I sit in the office looking über cool in my big white retro looking headphones I know that in just a few short years I’ll be laughing at you poor deaf b*st*rds.
Updated: It’s just been pointed out to me that I may be laughing but you won’t be able to hear me so it won’t matter.
ah, now I can read
I’ve been using FeedReader for a while (I prefer email style new to river of news) and it works really well. The interface is calm and it fits the way I work. But a few months back I upgraded my laptop to a higher res one, 1920×1200 in just 15.4″. This looks great, but I do end up making text larger in a few of my apps. I wanted to change that text size in FeedReader and I couldn’t find it anywhere. Then I remembered that the preview pane in FeedReader is just an embedded browser – I wonder… Sure enough, C:\Program Files\FeedReader30\stylesheet contains atom.xsl, emailstyle.xsl and custom(delicious.xml); a quick tweak from
body {
font-family: verdana, tahoma;
font-size: 0.7em;
line-height: 1.3em;
padding: 0;
margin: 0;
}
to
body {
font-family: verdana, tahoma;
font-size: 1.0em;
line-height: 1.3em;
padding: 0;
margin: 0;
}
in both atom and emailstyle and all looks lovely :->
Search
What I'm Doing...
- @moustaki, would you recommend an equivalent to music ontology for visual recordings? 20 hrs ago
- @chriskeene Does the uni have it's own local weather system? (http://twitter.com/chriskeene/status/10314171215 and go left) in reply to chriskeene 1 day ago
- @_philjohn should I expect a late arrival then? in reply to _philjohn 1 day ago
- More updates...
Recent Comments
- Patents are Property – Like it or Not « Chasing the Power Curve on When Patents Go Wrong…
- Arizona Joe on Fixing a plasma TV
- alex_turner11 on Ground roundup of new eReaders at CES on CNN
- negative_charge on Hacking Into Your Account is as Easy as 123456
- infopeep on Hacking Into Your Account is as Easy as 123456
- BenenhaleyBrian on The 18 Mistakes That Kill Startups
- Brian Benenhaley on The 18 Mistakes That Kill Startups
- infopeep on The 18 Mistakes That Kill Startups
- Rob Styles on Ruby Mock Web Server
- Jim on Fixing a plasma TV
Categories
- .Net Technical (8)
- Blog on Blog (6)
- commands I have issued (9)
- Enterprise Architecture (19)
- event (4)
- Fiction Book Review (2)
- Food (2)
- Intellectual Property (9)
- Interaction Design (27)
- Internet Social Impact (43)
- Internet Technical (16)
- IP Law (10)
- Library Tech (19)
- Music (2)
- New Toy (4)
- Non-Fiction Book Review (7)
- Ontologies (6)
- Open Data (7)
- Other Technical (20)
- Personal (36)
- Random Thought (16)
- Resourcing (4)
- Review (1)
- Security And Privacy (11)
- Semantic Web (30)
- Software Business (10)
- Software Engineering (37)
- Talis Technical (9)
- Uncategorized (44)
- Working at Talis (26)
- [grid::blogpaper] (8)
- [grid::fatherhood] (4)
Archives
- February 2010 (1)
- January 2010 (4)
- November 2009 (10)
- October 2009 (4)
- September 2009 (2)
- August 2009 (9)
- July 2009 (12)
- June 2009 (5)
- May 2009 (6)
- April 2009 (7)
- March 2009 (3)
- February 2009 (6)
- January 2009 (10)
- December 2008 (4)
- November 2008 (4)
- October 2008 (9)
- September 2008 (23)
- August 2008 (8)
- July 2008 (1)
- June 2008 (1)
- May 2008 (6)
- April 2008 (14)
- March 2008 (3)
- January 2008 (5)
- December 2007 (6)
- November 2007 (13)
- October 2007 (9)
- July 2007 (2)
- June 2007 (1)
- May 2007 (10)
- April 2007 (5)
- March 2007 (11)
- February 2007 (10)
- January 2007 (13)
- December 2006 (8)
- November 2006 (8)
- September 2006 (2)
- August 2006 (1)
- June 2006 (2)
- February 2006 (2)
- January 2006 (3)
- December 2005 (3)
- November 2005 (2)
- September 2005 (2)
- August 2005 (5)
- July 2005 (8)
- June 2005 (3)
- May 2005 (2)
- February 2005 (1)
- January 2005 (4)
- December 2004 (3)
- November 2004 (6)
- October 2004 (2)
- September 2004 (2)
- August 2004 (5)
- July 2004 (1)
- June 2004 (4)
- May 2004 (4)
- April 2004 (3)
- March 2004 (13)
- February 2004 (6)
- December 2003 (3)
- November 2003 (1)
- August 2003 (2)
- July 2003 (1)
- June 2003 (2)
- May 2003 (1)
- March 2003 (1)
- January 2003 (1)
- October 2002 (1)
- May 2002 (1)
- March 2002 (1)
- August 2001 (1)
- May 2001 (1)
- April 2001 (1)
- January 2001 (1)
- December 2000 (1)
- November 2000 (1)
- December 1999 (1)
- November 1999 (1)
- July 1999 (1)