Monday, November 17, 2008

Vision, Orientation

Maybe a multi-axis accelerometer could provide useful extra input for computer vision applications? By sensing up, the direction of g, the acceleration due to gravity, an accelerometer could provide an extra clue for vision algorithms searching for floors and walls: the first should be perpendicular to "up", the second parallel (usually!).

If your sensor isn't stable, or is always upright, this input won't be so useful, of course.

If at first he doesn't succeed...

I watched our Smallest Crew trying to retrieve his own "soother" last night. Very small hands grasped clumsily for it, held it awkwardly, then jerkily moved it mouth-wards, tiny brows furrowed with concentration.

Several times the prize fell; but each time, little hands caught and brought it back. Eventually, it made it right into the waiting mouth, in the correct orientation... but as the hands fell back, a finger caught in a handle, and the soother went flying...

Slow and clumsy, but persistent, and improving. The Captain and I were very impressed.

Friday, November 14, 2008

Difference between Aunty and Mum

One evening, a family birthday part is warming up nicely. Baby son is sitting in his rocking recline, and having fun with Aunty.

Then... (in slow motion)

....a champagne cork starts to ease from the neck of a bottle...

...Aunty dives for cover behind the fridge...

...and Mum does a Secret Service Agent-style dive to save her son...

That is the difference between "Aunty" and "Mum".

Wednesday, November 12, 2008

Playtime on the farm

On a wet and windy Saturday, I sat for the first time at the wheel of a tractor, and tried to figure out how to make it go... lots of levers, but which for gears? Eventually, I located a "high - low - reverse" lever similar to that in a 4WD pickup or a jeep... and after some very surprising results, figured out that the knob was loose, indicated "R" where "L" should be, and vice versa. Later, I got to play with lots of other levers - turns out a tractor hitch has controls for lowering and raising - and also to play with a lifting-arm mechanism at the front. What a versatile machine this is... couldn't help feeling that what all that power really needs is to provide better control inputs and an extra degree or two of freedom. Ultimately, I suppose, something like this...

Next toy: a teleporter, which isn't quite as sci-fi as it sounds. The big feature on this machine is an arm capable of being extended to 40ft or so; the "hand" at the end can also be tilted up or down. The controls were hydraulic, very powerful, very responsive. Out near full extension, the law of the lever makes itself felt at as control inputs to the lifting arm rock the cab. Just as well the outrigger legs were well bedded down - my wife's brother-in-law was perched on that "hand". Interesting machine.

Wednesday, November 5, 2008

On Debugging

Note to future self: there are two ways to debug. Know when to switch.

Alpine Style
The vast majority of debugging can - should - be done this way. When climbing a mountain "Alpine-style", one carries the bare minimum of gear, and moves as quickly as possible to the summit and back; a sort of vertical sprint.

Siege Style
Alpine-style mountaineering works well on the great peaks of Western Europe; conquering the great peaks of the Himalaya required a different approach. Huge teams traveling with equipment loads measured in metric tons treated peaks like K2 and Everest as natural citadels, fixing ropes and ladders up the ramparts, inching a string of camps with infinite care and labour towards the summit.

Everest: a classic "Siege" target. Photo: Pavel Novak

If a day of simply strolling a debugger through suspicious methods doesn't work out, it is time to switch tactics - whatever the behavior of the defect is, it is too complex to be easily followed. Stop expecting easy insights, and instead instrument anything potentially relevant with log files or console output. Keep an open mind: after all, if you haven't spotted the cause already, anything is possible.

p.s. This is also be a good time to improve your unit tests

Tuesday, November 4, 2008

Dry Water

Okay, from a strictly chemical point of view, 3M's Novec 1230 isn't the plain old dihydromonoxide we have known of old... but that is a good thing.

This fascinating liquid (video here) evaporates with incredible speed, does not conduct electricity and is apparently non-toxic. Perfect for, say, filling vulnerable voids in a home-made U(nderwater)AV to pressure proof 'em, or having a weirdly dry water fight.


In shelves, boxes, jacket pockets, I accumulate notebooks, usually small, usually blue. Their pages are sample-bottles filled from my stream-of-conscious and rendered as scribbled text or hasty sketches; fragments of diary or travelogue, shopping lists, recipes, plans for furniture, mechanical devices, algorithms, hasty records of interesting facts.

Notebooks are tough, portable, convenient - but also easy to lose, hard to search, hard to share. So I started another blog.