Tuesday, October 31, 2006

Alternative desktop

Some interesting ideas here: http://elevate.sourceforge.net/

Weirdest reason for feature competition?

This is the weirdest way I've yet seen for a feature to be written: http://duncan.mac-vicar.com/blog/archives/140

[more 3D stuff once the Rocky Horror Medical Show has ended!]

Saturday, October 14, 2006

{aside} Second Life as a business tool

The following quote from the title link caught my attention:

"The next version of Second Life will be seamlessly integrated with the Web, making it easier for real-world businesses to sell items through SL. For example, a retailer like L.L. Bean could have a “door” to an SL store on its Web site, inviting people to jump from 2-D browsing into a 3-D saunter around, where an avatar with your exact mea­surements could try on clothes for you. Or a consumer-electronics company could offer in-person technical support from an avatar who had a precise 3-D replica of, say, that new digital camera you couldn’t figure out, and could show you which button you needed to push. As the wall between the Web and Second Life grows thinner, having an SL account might become as common as having an e-mail address."

One thing bothers me tho'. SL is server based. Altho' they have promised to release their code as FOSS (presumably looking to emulate Apache), until they do that, all data hits their servers, in their country.

Still think it's a neat idea tho' :-)

3D environment for software design

Designing anything is an activity fraught with difficulty: software design especially so. It's easy enough to check whether physical widgets fit together, but software is virtual. It has no physical presence, even once it exists. All too often people will agree on a set of documents and diagrams, yet have radically different expectations of the eventual product. The most detailed specifications and the most complete UML diagrams are about as useful as reading poetry in Morse code. (Which fact bodes ill for MDA ...).

There has to be a better way.

Our avatars sitting around the virtual table in our virtual office already have one advantage, as mentioned in my previous post: everything said and done by them will be recorded, and the content of that recording is searchable. What else can they do?

A lot of the tools will be evolutions of what we are used to. The virtual whiteboard, as an example, can be subject to version control, and the diagram thereon spontaneously self-organise. Releasing the diagram from the surface, to float in 3D above the table, is also an option. Scale can be applied; IOW one blob in this diagram can be zoomed in on, to reveal its finer structure, or out from, to show its meta relationships. Avatars can share one view of their work, or each have their unique point of view. Colour, shape, texture, even apparent movement, can all be used to indicate some attribute of the diagram. Textual content etc. can be collaboratively added and edited. Ideally the diagram can be made active, becoming a high level simulation of the software required.

Instead of a mass of text and diagrams, the engineers can be given a working model of the desired system. A model that is not only the definitive expression of the design, it is also the ultimate means of testing that design.

{a walk-through of designing the bookselling application in this environment will follow}

Wednesday, October 11, 2006

3D demo continued

[ok, so this is my next-but-one post :-)]

Here we are (or, rather, our avatars are) gathered around a virtual table. Our task is to produce a project plan for the creation testing and deployment of a bookselling application.

Said application is to
  • allow the import of inventory from various sources into a common 'stock'
  • enable the adding, editing, and deleting of individual books, updating the stock
  • produce export files in formats suitable for uploading to various sales sites
  • record orders received for books from those sites
  • produce cancellation lists for any other sites that an ordered book is listed on.
  • do anything else the people at the 'table' insist upon
Will it be a web application, or traditional? Will we focus first on eBay or Amazon or AbeBooks? These questions and much else besides are as bones to be fought over.

If this was a real-world meeting, one person would be tasked with keeping minutes. Unless they are a trained stenographer, they will not be able to record each word spoken; especially if they also wish to participate. Even if they have the skill, if more than one person speaks at a time, information will be lost.

In our virtual world everything is recordable. What's more, it can be replayed from any angle, from any point of view, with only the avatars of interest 'activated'. The environment itself takes our minutes, better than a horde of humans could.

Remember our First Law of the Network Reformation: identity is the foundation of interaction; and the second: That which I produce, I control. In order for this meeting to happen, the participants had to prove who they were, and agree to allow the others, plus their bosses etc, to replay the event. Usually this will happen automatically. On logging in you have to identify yourself, even in the 2D world. The invitation to the meeting will have had T&Cs attached, which made plain what usage the recorded event can be put to. All those at the table have accepted those T&Cs (whether they read them or not!)

[The meeting etiquette of a chairperson and only one person at a time speaking might not be appropriate in this environment: further thought needed.]

Assume the meeting is drawing to a close. Action lists are being agreed. It's not uncommon for the cry "I didn't agree to do that!" to arise. At which point we have a choice: re-argue the issue, or replay the meeting.

[Ideally speech recognition will have occured, so a text search can be done on keywords. Alternatively, a Fast Fourier Transform comparison be done over the audio stream, if the participants repeat the key terms.]

There will still be a need for 'minutes', in the form of some sort of summary. As a document, perhaps, with all the usual date, time, participant list, the T&Cs (which the 'document' itself has the means of enforcing), statement of purpose, and actions etc agreed. But this is an active (and 3D) document. Touch the participant list, and mini avatars appear. Touch an avatar to get their personal details (to the extent that you have their permission to), and a transcript of their actions within the meeting. Back to the document. Below the statement of purpose is a window, entering which allows you to review (but not to partake in) the meeting. A mouse click or hand wave displays floating menus, allowing you to control the review in great detail.

We can do more. Let's add the 4th dimension, time. A structure of 'wires', perhaps, appears behind the document, showing who said what to whom in relative time. And yet more. Let's decorate the meeting structure with links to stuff referred to in the meeting, such as web sites and file formats and existing applications or components. And comments and corrections and -

But I'm getting ahead of myself. My next post on this topic will examine some of the tools that mighr be available to the people involved in this virtual meeting. Tools that mere physical reality doesn't allow.

Tuesday, October 10, 2006

Fit to type!

Slim Geek puts a whole new meaning on the "keep fit by cycling to work" idea :-)

[But why the CRT monitor? Tut ...]

Monday, October 09, 2006

Paper still has its uses (monitors make bad airplanes). Terminals are still appropriate for some tasks. WIMPs are best for the personal editing of document-like material. But for socialising or other forms of shared experience, we need something better.

Current 3D interfaces are 2D windows onto a simulated world. Controlling an avatar is not totally intuitive. One day we will have true VR, so the point of consciousness can coincide with the point of action; but for the time being we are stuck with the separation: avatars we must be.

Current demos of the technology are too twee for the business opportunities to be taken seriously; which is a pity, as 3D promises to do for social interaction what 2D technology did for document production: make the process vastly more efficient and (over?) productive. So what might a "sanitised for business" demo look like?

A distinct lack of purple dinosaurs and white rabbits, for a start. Each avatar will be soberly dressed, genderised (ideally personalised with regard to clothing), but recognisably human.
The face should be a real image of the person represented. The 'spaces' in which we interact should be office-like, with chairs and tables and whiteboards etc. Each avatar has a 'home' room, into which they can retreat for privacy.

Which brings me to the First Law of the Network Reformation: identity is the foundation of interaction. Any person or service that cannot be uniquely and accurately authenticated is not able to participate. But the Second Law is of near equal importance: That which I produce, I control; IOW the data streams that my authenticated identity produces are shared and stored strictly as I wish, or have actively agreed to.

The first law ensures trust, and the second privacy. Spamming, as an example, may never be impossible, but it should become traceable. As another example, when I vote in a national election, whom I voted for should remain secret, but that I was entitled to vote must be accurately ascertained. (These are issues I'll return to.)

Back to our demo. Imagine a virtual table around which are gathered several avatars with colleagues faces. The task before us, and how it might be performed, will be the subject of my next waffle.

[footnote] Although the boss sees the sober-suited avatars, as does anyone watching on a 'public' monitor, a neat hack would be to enable the participants to customise their view of the others' avatars. One participant might decorate the boss with horns and a pitchfork, another with a glowing halo, and a third change them into a donkey (albeit one with a human face). Only the customiser sees their preferences.

Whether the above is achieved or not is moot; but one critical ability will be colour control. Colour blindness is surprisingly common. Other accessibility issues, such as how the deaf will hear and the blind see some 3D equivalent are important issues. If the personalisation of the experience is designed-in from the start, much can be achieved.

Sunday, October 08, 2006

UI thoughts

Being of a certain age, I have witnessed a progression of UI's: real paper, 80x24 terminals, WIMPs, and now, the web (a backward step as a UI, IMO).

At each stage, I saw resistence:
  • Paper users treated the IBM XTs with Lotus 123a that landed on their desks as just more Spawn of Management, and ignored (or sabotaged) them as long as they could get away with it.
  • DOS users took perverse pleasure in running one application at a time fullscreen in early versions of Windows. The idea of doing multiple things simultaneously was just more Spawn of Management.
WIMPs eventually won, and are with us yet. But what comes next? And how will it be resisted?

What WIMPs and the web don't do well is enable socialisation. True, there are blogs and IM and video conferencing and allsorts of other new methods of communicating; but more satisfying than them all is - well, some examples will make the case better than a bland statement:

Which is the more satisfying action:
  • telling that annoying person spamming your IRC channel to FOAD, or
  • fragging them into gory chunks?
Who feels more real to you:
  • the barely lip-synced floating head of your boss in NetMeeting. or
  • your companion avatars in a MMORPG?
OpenCroquet is one possible pointer to some of the features the next UI might have. There are valid criticisms of the paradigm; e.g. working on text-based objects in such an environment is awkward; but they generally miss the point.

{to be continued}

Amazed! No breakages

So long as JavaScript is on, anyway.

Now all I have to do is decide which of my myriad topics of interest to start with.

[Q: how do you toss a hypercoin? Or get one from ...]

Fx: hops up to the podium

It's a sign of age, perhaps, that starting this blog was a fraught decision. Kind of like starting a new job, blindfolded...

Now to twist some knobs and whack some buttons to see what breaks :-)