Sam had heard about Onex from Charlie - they're neighbours - so they both decide to try it out. They buy Onex AR glasses and put them on.
Immediately Sam is presented with a 3D room, where turning the head moves the view in sync. In the room are a number of objects: a clock, a calendar, a box marked "contacts". On the walls there are some photos. There's a map on the desk, with a pointer over Sam's home. It has a flickering light, which changes brightness according to how bright is the light around.
There's a TV on another wall, which has a camera symbol on it. Sam touches it and it shows what the camera can see. Sam notices a torch next to the map. Touching its button turns on the flash light on the glasses.
There's a sort of jukebox - it has images of some familiar music. Touching one starts to play it. There's a button on the wall - push it and the glasses vibrate.
By now it's now pretty clear that this room is a virtual representation of the glasses themselves, and their capabilities.
There's a wardrobe on another wall, which Sam touches, and it swings open to reveal an array of avatars.
After messing about with all this for a while, Sam sees that there's a door next to the wardrobe. The door opens at a touch and Sam steps out. Charlie reaches the same point at the same time.
Sam and Charlie see each other and are both presented with a much larger 3D view of many big, room-sized and house-sized boxes scattered around. They both look behind to see if they can get back to the "glasses room" - but there's nothing there.
The rooms and houses around are all very different, some are small single-room size, some big and seem to be buildings with many floors. They assume that you can build in this virtual world - in fact it does all remind them both of Minecraft.
There are avatars - other people - walking around here. Sam and Charlie suddenly and simultaneously realise that their avatars are the plain ones that're supplied to all newbies while they choose a better one.
Not cool. They both poke around in the menu options and find "Glasses Room", so duck back into their little rooms, and go and choose a better image for themselves from the wardrobe.
Sam has heard that one of the things about Onex is that it can link up all of the devices that you and your family own, and allow you to set up your home in virtual reality form.
So Sam goes out and buys a pair of Onex home hubs and sets one up. After some configuration, the glasses room leads to the hub's room. Sam heads out the door from the hub room representing home, and immediately looks back .. yes! There's a small, simple blueish-coloured room right there, and it's possible to go back in again.
Sam walks over to a neighbouring house, and no, you can't enter. Cool. The space appears to be mapped out to GPS location, as the neighbour's house has the same name.
Charlie's come out again and seen this, and has also noticed the chat button, so hits it and enters some rude text to tease Sam. The text appears as a speech bubble over Charlie's avatar.
Sam returns some abuse, then runs back to the hub's room before it gets ugly.
Sam tries to move out of the hub's virtual room using the movement controls, but is drawn back. Eventually Sam realises that it's because the hub is physically close in the dining room: it's broadcasting a beacon to tell your glasses it's close, and to give out its ID in the virtual world.
Moving away to the living room frees up the movement and Sam can go out again into the virtual street to meet Charlie. The two of them start to take a virtual walk up their road, panning around.
They were going to go to the shops anyway to look at fish in the pet shop - Sam knows a fair bit about fish and wanted to show Charlie the options, so they each leave their real houses to test this out. Now, as they walk, their Augmented Reality view follows them, they presume using GPS. They recognise the names of some of their neighbours who have labelled their virtual houses.
When they get to the shops, as they pass the petshop, their view is suddenly drawn in to a virtual view of the petshop. This shows as a room containing a contact card displaying the address, email, phone number, etc. of the shop, plus lots of pet cages. As they pan around, still standing on the street just outside, their view pans around the virtual petshop as if they were inside. They can see each cage has a video showing the animal in the cage - they guess these are live feeds.
They enter the real petshop, and as they pass a rabbit cage, the view zooms right in to the rabbit's virtual cage. They can see the live video, they can see a price ticket, with some descriptive text on it. Looking at the real cage, there's a small, device that's taking the video and broadcasting its ID on a radio beacon, to alert customer glasses that they're near.
As they approach a fishtank, their glasses' view zooms to what looks like a control panel next to the tank's price ticket. On the panel it has numbers for temperature, oxygen, light level, etc. They see that the Onex device on this tank has a wire coming out and going to various sensors.
They discuss tropical fish and accessories for a few minutes - these ones seem a little expensive, but there should be a sale on soon, according to the kind shopkeeper. Smiling at him they leave and return home, tracked again by their virtual selves.
At home, Charlie unlocks the AR feature and tries wandering virtually back to the petshop to check up on some fish and tank equipment prices and to make a baseline for comparison. The shop appears exactly the same way and it's possible to explore the video feeds of the animals at your leisure. Of course, the shop owner can still see Charlie's avatar on a large hub on the counter, and the text - "Hello again! Just checking some prices." - above it. Then Charlie re-engages AR and is zoomed back to the street outside Sam's room.
Sitting right next to the hub, Sam's glasses self is in the hub's as-yet unexplored room and looks around. It's pretty much the same as the glasses's room, with the clock, calendar, contacts, map, those old photos, music, brass sticks and light, wardrobe, camera screen, torch button, vibrate button.
But there's one thing different: there's a lamp standing in the corner of the room. Sam goes up to it and touches it, and it changes colour. Immediately the lamp in the actual dining room changes to the same colour. The hub has discovered the lamp on the radio network and is able to control it from right there!
Odd thing is, though, that the glasses has to be pointed out the window to see the virtual light, but the actual light is on the opposite side of the real room. Sam can see how there's no simple way the hub could know the actual physical location of the lamp. It was lucky it was in the same physical room, in fact.
So Sam optimistically taps the base of the virtual lamp, and yes! a set of arrows comes up allowing you to move it over to the right location in the hub's virtual room. Sam decides that, when doing what the neighbours have done and building a proper virtual house, this room created by the hub will obviously represent this physical dining room.
Sam assigns the hub a position on the mantlepiece, creating this virtual room and managing the connected lamp.
Sam unpacks the other hub and decides that the virtual room of this hub should correspond to the real living room.
Sam wonders how you'd join up the two rooms, that in the virtual public space are next to each other, but in the wrong relative positions. It doesn't take much to discover that rooms can be moved as easily as lamps, and soon the rooms are right up next to each other in the proper relative positions. The door even works between them.
Now, as Sam moves between the physical rooms, the glasses's view and avatar mirrors the motion, zipping between the virtual rooms, pulled by proximity to each hub.
Sam goes out to the real street to see how Charlie is getting on. Charlie's been working on their own family hub and now there's a new room there, created by that hub.
Charlie's also discovered another menu option: to select the "Raw Object View". This shows you the structure of things behind the 3D image. Typical of Charlie to find this, as she's always been interested in finding out how things work and, like all 13-year-olds, seems to be a natural for technology.
Charlie shows Sam how to select this view of any room: it shows the object as a simple table with various properties. All object tables start with a label saying what the object is - like "contact", "photo", "light", or "place" for the room. After that are the properties for that type of thing, such as the name of the room and its shape and size, or the name, address and email.
It also has a list of links (IDs) to the contents of the room. Jumping one of these links takes you to the raw object view of that item, such as the brass glasses orientation object. This has a table with numbers in it that are constantly changing as the hub is rocked.
Charlie goes back, then jumps into the contacts link, and there's a long list. Picking one item shows a single contact object, which again is just a table with name, address, phone number, etc.
Keen to try it out, Sam goes back into the virtual dining room and views the connected lamp in its raw object or table form. As expected, there are numbers for Hue, Saturation and Lightness. Sam can change those numbers in the table directly and once again see the effect on the actual light.
Here's what the raw object view looks like for the lamp:
The property "Within" takes you to the dining room raw object.
Now Sam looks around at the other raw objects in the room, then sees that there's a link from the dining room to the living room. Obvious, really. Jumping that link into the living room's raw object, Sam can see a link back again to the dining room. There's also a link out to the virtual street. Presumably that'll lead to a link to the pet shop.
Sam looks at the newer photos available in a list here. Wouldn't it be nice to make those available on the dining room photo gallery and show them on the hub screen as well? Charlie'll know how to do that.
A quick chat later, and Sam's got the tip: you can grab or copy the link to the photos in the living room's hub, then go to the dining room, and paste the link into the dining room's photo gallery, then label it "More", which extends the list.
Sam appreciates how the whole, potentially endless virtual world comes down to just these little object tables of different types, with properties and links to more objects. There's no big company running everything - each object runs on the owner's device.
Charlie is really excited as she runs into Sam's actual house: "I've found out how to get those fish and tanks cheap!" she says. "You can make programs!"
Now Samantha has always been interested in the idea of programming, because she always thought it seemed like such a great power to have. But at school it was always the boys that did it, because it didn't seem like the girls were expected to be interested. Now maybe this was her chance to try it out, and then to show her own children her new powers.
"I want to make a program that flashes your fancy connected light when the price of something in the pet shop drops," says Charlie.
"OK!" Sam replies, "Let's do it!"
Charlie picks up Sam's glasses and turns off AR mode, then walks up the virtual street to the pet shop. She finds the tank she's interested in and grabs a copy of the link to its price tag object. Putting AR mode back on, she's zoomed back into Sam's living room.
She walks over to the dining room and faces the lamp. Its virtual form appears on the screen, and she goes into its raw object view. She pastes the fish tank link in, and it is added in a property called "Fish Tank Price Tag" - a label constructed automatically from the price tag's type label.
Now, she chooses the "make a rule" function, and the view changes colour. Some properties change how they look. In particular, the Fish Tank Price Tag link becomes a full price tag object table, nested inside the lamp's table.
"Now, I can see the lamp's colour properties and the fish tank price. All I need to do is to make the lamp properties depend on the price property. It's a bit like a spreadsheet formula."
Charlie taps on the price cell and types "< 150". "That matches the price when it falls to less than £150," she explains. She then taps the lamp's table on the right of the light brightness property, then enters the text "100". Next, she sets the colour or hue property to "0". She says this means it'll go bright red when the price condition is met.
Here's what the light rule looks like when it's finished - all the unused properties vanish once you're done editing:
"Even though I edited it on the glasses, this rule is run on the dining room hub," Charlie explains. "That's where the connected lamp object is controlled. But you can go into your virtual dining room wherever you are in the real world, to see what colour the lamp is now, and see if we need to go and buy some fish."
After a week, Sam and Charlie have made amazing progress. They've each used the Minecraft-like ability to build much bigger houses with several rooms. Sam's house is built up in two halves within both hubs, but it's not obvious that that's how it's hosted, as it's quite seamless through these links. They've added portal doors to each other's rooms simply by adding links to each other in the raw room objects.
They've discovered that the street is running on council servers, and has useful info linked from it, like the recycling collection event objects and objects for each streetlamp, showing ambient light and temperature, light brightness, etc. Sam's grabbed the recycling object's links and pinned them to the virtual office wall - every time the council updates the information, she can see it immediately.
She's also got properly into the rule programming features. Sam's been having great fun with the connected lamp, using all sorts of things to affect it. She first created a rule that turns on the lamp whenever the streetlights come on outside.
They got the cheap fish and tank equipment, by the way, the light went bright red at 8:55am on Saturday morning so they were both there when the shop opened.
Sam has since written rules to drive the light colour from: her glasses's orientation; whether she's present in the room; the time of day and outside light and colour; the forecast for today's weather when it's before 9am (from weather objects run on one of the hubs that connects to a weather data service); to synchronise with her relaxation scenes; and so on.
Sam was already thinking of buying a new TV, so went out with her partner to buy an Onex TV, which also runs Onex and gives a very large 3D view into the virtual world. It's also a great home media centre, and with Onex, can be brought into the virtual world and controlled from Sam's glasses. Sam's written a rule to auto-play relaxing music and show gently-changing nature scenes whenever she comes back from work.
Charlie, who is quite sporty, got a wristband that measures her heartrate, etc. This is read by radio onto her glasses - and is then available as another virtual Onex object that she grabs data off using a couple of rules to construct a set of graphs on her virtual room wall showing how she's doing.
Charlie's written a handy rule for her glasses that controls silent mode - while in the house and it's night time, or at school, be silent, else be audible. Being in the house or at school is easily detected by a link from the sound object running this rule to Sam's user object, which holds her current virtual and physical locations - it runs on the actual glasses and ultimately knows its location from GPS and surrounding beacons. Current time is available by a link to a clock object, which can be the local one, or any clock around the world, just through a link.
After a month, Sam and Charlie have started to contribute a large number of rules to the community. You can share your rules just by giving out links to them: they're objects as well, of course. Others can use the rule directly (if they trust you!) or copy them and make small changes.
Sam has discovered just how cheap it is to buy hubs and glasses, and has kitted out every room with a hub, attached to the walls by the doors. Each device needs a power cable, run down the door frame. You can arrange for the device to indicate that its camera is on, not to spook people that they're being watched. Or they can just turn the device off.
Something Sam didn't expect would be so easy was to create a baby monitor and a security camera. The baby monitor amounted to entering via the living room hub and visiting the baby's room, generated by a hub there. All that she needed to do was to turn on the camera of that hub, orient the view and put the hub up on the mantlepiece. The same for the security camera: when away, just drop in to the house virtually and have a look around.
In fact, adding an alarm was pretty easy, too: just grab a link to each camera object and paste them into a list in an object on your glasses. Each camera object has a movement detector parameter, which goes from 0 to 10 according to how much movement is detected. It's a simple rule to make a glasses alert when any movement parameter is above 2.
Sam used the same idea to light up the porch and provide advance notification of someone approaching the house. She also found it really easy to create calendar events that logged when she had such visitors, and how long they hung around the door for.
Sam can call everyone in the house together with a simple rule on each device's sound object that simply makes a sound according to a the pushed state of a big red virtual button in the virtual dining room. This button is part of a house control panel object that Sam built that monitors all the Onex devices around the house. It has meters for network and memory usage, motion, light levels, etc.
Sam noticed how similar Onex rules are to spreadsheet formulae, and looked up how to make use of that. Now, she uses Onex rules to organise the dance/fitness classes she teaches. She has calendar event objects for each Tuesday when there's a class, and attendees respond with RSVP objects. She then keeps account of the subscriptions each week with simple rules to reconcile attendance with incoming receipts.
Charlie made her room's hub into a photo frame, alarm clock and night light with room light control panel. It comes on with swirling patterns and gentle sounds for 30 minutes when touched. It controls the RGB lamp in the room as well, and she created a control panel object with buttons and sliders on it to control everything, working through a couple of simple rules.
Charlie got a Lego Mindstorms robot for her birthday, and is controlling it from Onex via radio, because it's far easier than the supplied visual progamming language. Plus it's more powerful because it's part of the network and she can do things like make it react to people entering the room, or the orientation of her glasses. It also has a 3D virtual version of itself.
Charlie is very creative, and loves making games that involve all the Onex devices around the whole house - using up to 15 rules for the more complex examples of her art. This is especially likely around birthdays and other annual celebrations.
It turns out that you don't have to link in to the council's street and follow all the links from there in your neighbourhood. Indeed, you never have to depend on any central services or large companies - all objects and their animations and interactions can be created and run by normal people. Because of this, you can always choose alternative "planes" to explore, and connect directly to their creators.
An example of this was how a local artist created a huge "installation" virtual fish pool in the streets around: if you grab the ID off a QR code in the petshop window, you're jumped into an alternative plane where there are fish swimming around everywhere.
The artist built colourful 3D fishes that react to each other and to users' presence or touch. They have very simple rules to run their behaviour: swim randomly, if bigger fish close, move away, if smaller fish, move towards, dart away if touched, etc. But these simple rules, when combined through an environment full of fish, produce fascinating and unpredictable emergent behaviours of the whole.
As you walk around the neighbourhood, you can see these fish, and various aquatic plants and ornaments instead of the rooms and houses. They interact with you as you approach. When the streetlights come on, they dart around excitedly.
All Sam had to do to add such a scene to her relaxing TV scene was to copy and paste the rule links and design some fish. Indeed, she made a simple control panel that allows her to turn each rule on and off, to see different effects. She can also select-in fish rules created in the rule-sharing community. It's similar to the Minecraft "modding" community, but much easier to see and change things.
Each fish can be animated on completely separate devices, but interact equally well as fish on the same device. Since any fish is just another link, Sam pastes some of their fish in to her own virtual tank. They don't know about Sam's tank because they only link to the fish around their location, but Sam's fish still react to them.
In the other direction, anyone can contribute to the artwork by creating their own fish to play with everyone else's. Charlie's school created hundreds of different fish to play in the virtual pool.
Contact me and/or subscribe to my blog and/or follow me on Twitter.