Thursday, November 26, 2009

Clique Space(TM) and MUVEs.

Another question was raised through an ongoing conversation with the same person who raised the question of Clique Space and Google Wave. What's the difference between Clique Space and a Multi-User Virtual Environment, or MUVE?

Specifically, the statement was made that anyone can connect to a MUVE through "any device", so I think the definition of any device needs to be clarified as it may relate to both a MUVE and Clique Space.

The fact that MUVE and Clique Space both provide a virtual environment is obvious. A device, however, in a MUVE provides a gateway for a user to interact within that environment, whereas in a Clique Space, the device provides activity state to a Clique Space, and may be controlled by the Clique Space in ways that are specified by the Media Profile that the device is Connected through.

In a MUVE, a device provides user access to a virtual environment where that user can do things with others in that medium according to the way that medium functions. The Clique Space environment, however, connects with a device to collect changes in device's state according to its native medium, and control that device in the medium in which that device is operating. Clique Space does not attempt to provide a substitute for an existing media; it compliments a device's functioning so that changes in device state might be centrally recorded and possibly controlled according to concerns that cut across media into issues such as user preference and organisational role.

In this way, a user in a MUVE might use the device one uses to connect to the MUVE to additionally connect to a Clique Space. The MUVE connection is expressed as a Clique Space Connection to this device (known to Clique Space as a Client Device; possibly the device that the user uses to obtain access to the MUVE, or possibly the MUVE provider itself) over a Media Profile that is appropriate for that MUVE. The Clique Space can collect status from the Client Device, and may also control the way the Client Device operates. All this may depend on which other users this particular user is working with, which other Client Device(s) the user has Connected to the Clique Space, which users are affiliated to which organisations in Clique Space, amongst a combination of these and other degrees of access freedom.

Any device has possibly a much wider scope in Clique Space than it does in a MUVE. Can, for instance, a physical car have any meaningful place inside a MUVE? On the other hand, a car might be connected in Clique Space, and its status (engine on/off, speed, fuel level, fuel mixture, tire pressure, engine temperature, etc) might be recorded by Clique Space. This information might be relevant, for instance when placed along side the chatter that happens between the driver and the driver's pit-lane mechanics, the driver's physical condition, the driver's (and car's) location, and the weather. All of the devices that collect this information might be similarly connected to Clique Space to particular Media Profiles, through particular user Accounts, and under particular organisation Affiliations. Fuel mixture might be monitored while the car is racing, and may even be adjusted by mechanics in the race to maximise fuel efficiency and power. All of this information could be available on one device activity log to be reviewed after a race.

To what extent might one also connect other non-collaborative devices to a MUVE? A MUVE is designed to represent an individual's interaction with objects and other individuals in some type of virtual environment. I contend that this concept is different to Clique Space in that a Clique Space collects data from a whole host of virtual and physical environments, and facilitates both an identity and device activity coordination layers on top of all devices so connected.

MUVE's are apparently used as teaching environments, and so to compliment, enrich, and diversify the learning that might be done in these environments, users might connect their MUVE session, as well as other other physical devices they may be using in the exercises being conducted to a Clique Space so the instructor can see and possibly control the functioning of all his or her pupils' devices.

I think a Clique Space is definitely something thoroughly different, yet complimentary, to a MUVE...

Wednesday, November 25, 2009

Clique Space(TM) and Google Wave

I have had a recent conversation with someone that seemed to me to slightly degenerate into a defence of Clique Space against Google Wave. As I am only one person (one who doesn't exactly revel in the chance to defend himself in the spontaneity of a verbal conversation), here are my arguments in writing so that I might have a chance to defend them after considering any counter-argument that might be given. Clique Space hasn't been defended yet, so I'm taking the conversation I had earlier as the opportunity to do so here.

I'm usually a better person in writing.

Yea, I know I might be pitching a battle against a pernicious software leviathan which can cover a multitude more angles than I might to protect and advance their market interests. However, I believe there is no point in doing this because 1: I feel that Clique Space will complement Google Wave, 2: I don't think I have the energy to make a gallantly effortful but fatefully doomed defence against a software giant with an army of lawyers, 3: etc.

Google Wave looks very functional and useful. Google Wave, however, is not Clique Space. If Google Wave tries to become Clique Space, Google might render itself in breach of my patent, but I don't believe that has happened yet.

Let me list a few differences:

1: Google Wave uses a centralised model. It appears as though Google exclusively owns the implementation, manages its content, and keeps record of all of the content and contributors for ever. Clique Spaces (specifically, as I intend, the public Clique Space) are designed to be real-time systems which do not keep the information they capture. Apart from where caching might be necessary to ensure the stability of a Clique Space and the continuity of its activity stream, no device activity would be persisted by the Clique Space system itself. It is the user's responsibility to record their own interactions while connected to a Clique Space system. In fact, I envisage that an activity stream might be added to a wave that shows the coordinated activity of several collaborations over different media.

2: Google Wave does not model different media so much as aggregate the content generated by different media. Hence, Google Wave does not model itself. As far as it appears, this concept appears foreign in Google Wave. Clique Space, however, can be thought of as a set of devices who's individual and collaborative behaviour is itself modelled through the provision of a set of specific Media Profiles. Every device that Connects to Clique Space needs to work through a Media Profile. Some devices might not extend the Clique Space's functionality, but rather introduce completely separate functionality of their own. Media Profiles model this functionality in the Clique Space device activity stream, and this activity stream is available to any device that, through connecting to a Media Profile that extends the Clique Space functionality, is equipped to capture (and possibly persist) it.

3: Google Wave appears to be able to control the interaction between individuals, but not to the degree that it can in Clique Space. While there appears to be some way to withhold a whole or parts of a wave from the view of individuals, I can see no facility through which access might be suppressed based on membership of a group, or the functioning of a particular media. This might evolve, but yet its granularity might not reach the degree that is achievable on a Clique Space where collaborations can be mandated, permitted or denied depending on the characteristics that comprehensively cover device activity of any type.

These characteristics include the functional characteristics of a device though a Media Profile, the user's individual identity given in an Account, the user's membership of some organisation in an Account Profile and particular attributes of their membership through an Affiliation, the association of a particular user to a specific device or a particular set of technical characteristics of two or more devices through a Connection, the association of a group of users associated particular organisational membership to a particular medium and its technical properties through an Active Affiliation and, the origins of a particular collaboration members through a Participant that is either anonymous or from a foreign Clique Space.

4: Google Wave has no concept of anonymous users. All users must have an account to use the Google Wave system. Because a collaboration under a defined medium might contain members who are not connected to a Clique Space, Clique Space might be configured to permit anonymous Clique Participants. Let it be stressed again: Clique Space has nothing to say about the medium over which a collaboration happens. It simply collects and it might also have the ability to control changes in device status through a Media Profile that devices have connected to.

5: Yea yea, Google Wave does show some type of time-based device activity (the thread grows as time advances) but the concept is not so developed when illustrating a time-line of collaborative activity. Clique Space records activity of as many collaborative and non-collaborative devices as Media Profiles might exist to capture information from them over an interval of time, and to the extent that a Media Profile has been designed to capture this activity. This recording has the ability to be depicted in reference to that time interval, and would map the relationship between device usage, user identity and affiliation, and Clique Space origin.

6: From a purely technical perspective, I believe Clique Space draws on a similar phenomenon (a Clique) that the nervous systems of animals (including ourselves) use for doing things from coordinating muscular activity to encoding memory. I remain to be convniced that Google Wave uses this same phenomenon in any way demonstrably useful to its function.

PS: All possible trademarks mentioned in this diatribe are the property of their respective holders and no revenue has been, or is ever expected to be received by me through their use in said diatribe apart from any revenue that may result as an indirect consequence the success of any argument I may have made. I had to use these marks for the reader might not have known who I was talking about had I not.

I have no knowledge of the technical details of the Google Wave implementation.

Sunday, November 22, 2009

The "Clique Space(TM)" of Clique Spaces.

I have found it necessary to put a lot of thought toward expressing my concept in its implementation, and the most current (and possibly by all measures, the most intense) thought has been put toward the idea of a particular Clique Space manifestation that is used to group other Clique Spaces that a particular device (Agent or Client Device) knows of.

Now, an Agent Device might have complete access to all the Clique Spaces to which it is a member. That's good for the Agent Device, but not so good for the Client Device; if any Client Device had the same freedom, implementing security and anonymity may be a trickier proposition. Additionally, a particular Client Device might certainly not have the capacity to share in access to all the knowledge contained in a Clique Space, even though as just one cooperating member of a collaboration, an Agent Device doesn't require total knowledge of a Clique Space.

Anyway, for any given Clique Space, a Client Device is given information about elements that relate to the activity of users in that Clique Space that the device's operator is interested in, and has the privilege to view. The most obvious candidates are all the elements that relate to the Client Device and it's operator, and any other Client Devices that are Connected under the Account of the first Client Device's; i.e., other devices that have been registered by the same operator.

The Client Device hence receives a subset of the Clique Space through which it is connected. This Clique Space is (or rather, the relevant parts of it are) 'Projected' into the Client Device. Hence, I have called the Client Device's copy of the Clique Space it is Connected to a "Clique Space Projection".

So, how does an Agent Device manage its membership to more than one Clique Space? This question had me thinking for several weeks, and I have come up with a nice use of the Clique Space Projection to do this.

You might think it sufficient that an Agent Device simply have a collection (an map, perhaps) of Clique Spaces. That might work, but I've evolved this simple model a bit. I thought to myself that it might be better if this collection (which must exist if an Agent Device is a member of multiple Clique Spaces - it has to know each of them) were itself, a Clique Space. One might ask one's self, for what point?

Well, for this point: a Clique Space contains Clique Space elements. A user might want to view and operate all these elements (no matter from which Clique Space they may be derived) together. Similarly, the elements in one Clique Space might be related to what is transpiring in a federated neighbour. All of this activity might only work properly if it were able to be grouped together in a super group (I think this is a subset of the power set) of Clique Spaces.

Now, a device can capture all of its own activity within any Clique Space if it were to have a Clique Space that was a single point of access to the elements in the projections of all the Clique Spaces that the device was Connected to. Hence, an Agent Device, being a member of (Connected to) several Clique Spaces, not only possesses a corresponding Clique Space Projection for each, it possesses a Clique Space that contains every element that is in each of these Clique Space Projections.

Similarly, a Client Device contains not only a Clique Space Projection for every Clique Space it is Connected to, but a Clique Space that contains every projected element of every Connected Clique Space.

I have been droll, and called this Clique Space the "Clique Space Projection Clique Space".

Before I go. Some time ago, I solved the following problem: how does one administer an Agent Device that is connected to zero Clique Spaces. My solution was to distinguish real (as opposed to projected) Clique Spaces between "Device Clique Spaces" and a "Collaboration Clique Spaces". This concept has a similar Agent Device - Client Device symmetry when I realised that a Client Device must be connected to at least one Clique Space before it can be used within this environment. It is quite dandy to realise that a Client Device can be administered within its own Client Device Clique Space.

So, the elements of a "Client Device Clique Space", and, as they are known on Agent Devices, an "Agent Device Clique Space" can be projected into a Clique Space Projection on both the Client and Agent Devices respectively, along with similar elements on connected Collaboration Clique Spaces, and all these projections of Connections and other elements that the device possesses can be accessed from the one Clique Space as manifest on Agent and Client Devices: the Clique Space Projection Clique Space.

Sounds good to me...

Thursday, November 19, 2009

Passwords suck!!! Clique Space(TM) solves this.

I went round to my mother's earlier today to use her wireless network. I could not log on owing to the fact that I had deleted my connection to her network. and had forgotten the WPA password. After getting frustrated that I could not recall the password, I reset her router, and comprehensively stuffed every thing up. I left, indignant in my conviction that she needs to record her password somewhere.

Now, one should be able to connect one's router to a Clique Space. Once obtaining a connection to one's Account, the router's Connection would then be Activated against an Affiliation between the given Account and an appropriate Account Profile. One accesses one's router by Connecting a web browser under the same Account and either Activating an affiliation between this Account and an Account Profile that gives the requisite access, or by Activating an Affiliation for a different Account and a similar Account Profile if connected under a different Account.

Something really has to be done about the password garden. I hesitate to register with software services because I don't want to manage all the passwords this saddles me with. Yea yea, I know there are things like OpenID that might do this, but they're not as powerful as Clique Space, which might probably compliment OpenID's functionality.

Friday, November 6, 2009

Telephony integration and Clique Space(TM).

I'm a little more relaxed in this post; my computer has been returned and I have found my data to be intact.

Now to the substance of this post...

People may confuse Clique Space with telephony integration toolboxes like the open source Asterisk or identity systems like OpenID, only to ask themselves what the difference is. I have been asked similar questions before, so I will try to explain the difference here.

Telephony integration has recently become popular as organisations try to integrate all the communications technology that have grown organically through the ebb and flow (or should that rather be flow and ebb) of technology trends. Obviously, organisations are looking for a way to integrate all this technology so a user doesn't have to remember different ways of operating different devices; a growing frustration.

As far as I can tell (I haven't truly studied the subject, so come to these conclusions from a position of ignorance) a telephony integration toolbox is a library of middle-ware adaptors and other gadgets that allow a device of one type to interface with a device of another type. This is something that adds value to the current and ever increasing types of devices, and its value is probably justified as far as I have been able to understand. One might use a telephony integration library to integrate mobile phone networks with VOIP networks, or to translate between IM text and audio.

I'm not good at remembering thousands of trivial facts, and telephony integration requires the developer learn by rote, a lot of protocol minutiae. Minutiae is something I have habit to avoid, and instead, prefer to remember general concepts. Clique Space is a concept that generalises user, device and collaborative behaviour.

Clique Space does not facilitate telephony integration, or any other middle-ware function known to me when I registered the patent. I am still yet to find a technology that approaches what Clique Space is at this point in time. In fact, Clique Space is so very different to any middle-ware technology. A Clique Space may sit above a middle-ware platform and may even straddle different ones; multiple competing platforms exist even though this contradicts their existence. The use of Clique Space over any middle-ware platform or platforms would at least be orthogonal to, but may even compliment the platforms over which it is used.

This is how.

I don't believe I have to know about how a middle-ware platform might function, yet I know that it must function through the cooperative action (a collaboration) of a collection of hardware and software devices. Needless to say, these devices could Connect themselves to a Clique Space system as Client Devices. Each Client Device would use one or more suitable Media Profiles that would model the Client Devices' individual behaviour and their collaborative behaviour as Cliques so this behaviour could be controlled and recorded.

A Clique Space merely models (and may, depending on the way particular devices function, control) the individual and collaborative behaviour of devices which are registered within it. It might be considered a tool for telephony integration itself, although it can be used in many more contexts than this. In this sense, Clique Space is not middle-ware in the same sense as telephony integration is. Unless a Media Profile might make use of Clique Space's own transport mechanism, Clique Space does not facilitate a transport layer allowing one kind of device to talk to another. However, it does allow device compatibility to be modelled in a hierarchy of Media Profiles so this compatibility might be communicated to any other Client Device that has the ability to View a Clique Space.

Hence, I believe it can be demonstrated that Clique Space occupies its own valuable niche in a world where the management of a growing number of devices will impress on users the practical necessity of Clique Space's use. Clique Space also integrates this management of devices with management of user identity and affiliation in a seamless whole. I'll probably talk about user identity and affiliation in a later post although I've already covered it somewhat in earlier posts like this one.

... and if proof can be shown, I'll gladly accept proof that I'm wrong. I'll be able to let this go if I am.