The content of this blog is my personal opinion only. Although I am an employee - currently of MIPS Technologies, in the past of other companies such as Intellectual Ventures, Intel, AMD, Motorola, and Gould - I reveal this only so that the reader may account for any possible bias I may have towards my employer's products. The statements I make here in no way represent my employer's position, nor am I authorized to speak on behalf of my employer. In fact, this posting may not even represent my personal opinion, since occasionally I play devil's advocate.

See http://docs.google.com/View?id=dcxddbtr_23cg5thdfj for photo credits.

Friday, October 03, 2014

The Perfected Self - David H. Freedman - The Atlantic

The Perfected Self - David H. Freedman - The Atlantic:

I read Walden Two in high school, and could never understand how Skinner's work could be perceived so badly.

Chomsky has a lot to answer for.

Activity Details | Basis

I like my Basis watch.

I give credit to my Basis watch for giving me continued motivation for increasing exercise.



I choose the Basis watch when I originally went shopping, a year or so ago, for a QS device.

There were reasons that I choose the Basis watch over other devices:

I particularly like that the Basis watch is a WATCH, not just a wristband or a clip-on pedometer.  It is actually useful for telling time - and I think that, since I started wearing it, not only do I exercise more, but I am probably more punctual, and better at time management overall because I am more easily aware of the time.

At the time I was looking, the Basis watch was the only well-known device that reported heart-rate. (Although I have since become familiar with how often the Basis has aliasing probems: e.g. I will be working out on the treadmill, my pulse will be rising - 100 bpm, 120, but then it will drop down to 70 all of a sudden, when it should probably be reading 140 bpm.  (Hmm, I just realized that this "aliasing" may be happening when my steps per minute and my beats per minute are almost the same.  I wonder if that is related.)

Also, the Basis watch, at that time, was unusual in that it measured skin temperature and Galvanic skin response.  I have a long interest in trying to measure mood or mental state... but so far have not seen a useful correlation.



While the Basis device, the watch itself, is great,

the Basis website and software sucks.

Basis has limited graphs and analytics on their website.

Basis does not make it easy to get your own data
(but see http://www.quantifiedbob.com/2013/04/liberating-your-data-from-the-basis-b1-band/)

It seems to be well known that one of the most important features of fitness or activity monitors is sharing information with a support network - family, friends, people with similar health and fitness goals.

But as far as I know, there is absolutely no "official" Basis ability to do this.

Not only not on the Basis website,

but neither does Basis interface to any of the many apps and websites such as Lose It

that aggregate data from multiple devices.

I know that Basis is owned by Intel,

and that Intel has ambitions in eHealth.

Perhaps Intel doesn't want to allow you to share your own Basis data,

and would prefer to hold it hostage until

they provide their own Intel Health solution?


Anyway, I am just writing this as I nerve myself up to get a non-Basis device

that talks better to the world.

I may keep my Basis watch - after all, it is a good watch and a good pedometer.

But it falls short on the social aspects of fitness and activity tracking.


Good device.

Probably good software inside the device, as evidenced  by upgrades to distinguish running and walking.

Bad software outside the device,

in the Android app

and in the webpage.

Friday, September 19, 2014

Two Email Accounts => Can Only Keep Up With One

If I have more than one email account - e.g. work (Outlook) and gmail (personal) I can only ever keep up with one of them. I can only regularly drive one of them to zero, in the GTD manner.

Any of the various "unified mailboxes" {c,w,sh}ould help

- except that my employer doesn't want me to have corporate email outside their control, and I don't want personal email on my employer's email system.

And even if that were not the issue, using separate email systems avoids embarassing errors, like cross forwarding.

It would be nice if unified email systems had some sort of "Are you really sure that you mean to forward a TOP SECRET company email to a public mailing list?" filter/query applied to outgoing email.  Actually, for that matter, applying to saving email to the filesystem "Are you sure that you want to save your tax refund message from the IRS on a company share drive?"

Keeping separate email systems reduces the chance of such an error.  But it comes at the cost, of having two email systems.  And it seems that I can never keep up with two at the same time.  I am either keeping up with work, or with personal.

One of the costs of keeping two email systems is - what do they call it, cognitive overload?  Gmail does some things one way, Outlook a different way.  Or not at all, Or vice versa.  Two different tagging and folder systems. Two...  Using both regularly educates me as to their relative strengths and weaknesses - e.g. I recently accessed Gmail through IMAP on my personal copy of Outlook, because Outook is much better a handling large amounts of accumulated email than Gmail is - but I really don't want to become an expert in comparative email systems.

Another "advantage" of two email systems is scheduling.  E.g, I can try to restrict myself to never look at personal email during work hours, and vice versa. But...  well, how many of us can get away with not looking at work email on the weekend? Or overnight?  During a project crunch?

EMACS Gnus solved this years ago with mail reading topic modes.  You might have one order for reading messages, both in inboxes and folders, at work, one after work, one for "quick check", one for handling your mailing lists...   Two email systems is just a hack, a kluge, a poor approximation.

Plus, not reading personal email at work means that my wife and others have to use text messaging as the "high priority" emal equivalent.  Which means that thee is a third messaging system.

So perhaps I am wrong when I say "If I have 2 email systems I can only stay caught up with one of them."

Perhaps it is that if I have 3 messaging systems - Outlook, Gmail, and SMS Text Messaging  - I can only stay caught up with 2 of them.  Or maybe it is N, N-1.

Wednesday, September 17, 2014

Agile Documentation and Manuals - Testing

Should The User Manual Be Agile:

'via Blog this'

I have spent far too much time writing and maintaining manuals (for computer architecture) in the last year.

Since I have drunk the koolaid of Agile Development in software (test driven design, refactoring, pair programing) and have tried to evangelize Agile Methodologies for hardware development and computer architecture (with limited success - e.g. Intel has adopted something like scrum, although I hesitate to call it agile), I naturally think about how to design Agile principles to writing and maintaining technical documentation, computer architecture manuals, etc.

Of course, Ward's wiki has some pages on this: Should The User Manual Be Agile. WriteTheUserManualFirstIsWaterfallManualAsSpecificationWriteTheUserManualAsYouGo...  Of course, Ward's wiki is very stale. I recall discussions on agile mailing lists such as the [XP] mailing list.

But quick googling does not find much in the detail that I am thinking about.

A big frustration in my current work is that I had more automation in the documentation and manusl in my undergraduate RAMM/RISC/SEISM computer project in 1985 than I do now. I generated much of the manuals from high level descriptions of instruction encodings, and so on - in fact, I actually generated the instruction encodings.

However, over time I encountered much resistance to tools that generate correct documentation. So in some ways I have switched to emphasizing tools that can VERIFY that handwritten documentation is correct. Although I am still happy to generate whatever can be generated.

Of course, either of these approaches - generate or verify, automatically - requires the ability to automate. It is easy to automate text based markup - nroff, LaTeX, XML, SGML. Wiki markup. It is harder to automate when you are dealing with obsolete versions of binary formats like FrameMaker's binary .fm files.  (MIF helps, but is limited.)  Semantic markup helps a lot, as do wirdprocessing macros with meaningful names.

As many of the references point out, testing manuals and other documentation can be challenging.  There is simple stuff - spell checking, automatically checking table of contents.   Literate Programming techniques can be fruitful.  I believe the Itanium manuals defined instruction semantics in terms of pseudocode that could be extracted and run in a simulator.

But there are other steps.

Thursday, September 11, 2014

More hassle switching sound devices ...

More hassle switching sound devices this morning:

In a Fuse meeting.  Started up using the internal speakers and microphone on my tablet PC - NOT the headset mike that I prefer to use.

Manually changing default audio device via Control panel did not switch over - apparently Fuse reads the default devices when it starts, and uses those for the rest of the session.

In the past I have been able to find a clickable way in Fuse to change the active audio device - but could not find it today.

Exiting and reentering Fuse would probably have worked - but the meeting was running, and I did not want the interruption.


Later, after undocking and returning, I received a Google Voice call.  Made the mistake of picking it up on my PC using Google Hangouts.  Same problem.

The default sound devices had changed back to the internal speakers when undocking disconnected the headset mike.


There are many apps to change or switch sound devices, e.g. audioswitch - Switch between default audio input or output + change volume - Google Project Hosting:( 'via Blog this')

All that I have tried change the DEFAULT audio device.

What I want is to change the ACTIVE audio device. Possibly on a per-app basis, although personally I have not seen the need.

I also want the DEFAULT sound device to change according to what sound devices are plugged in. Rather like the way Windows remembers that if I have a particular set of monitors plugged in, I want one arrangement of resolution and orientation.  I.e. software configuration dependent on hardware configuration.

I.e. when undocked with no headset, use the internal sound devices.

When docked, I get a headset, plus external speakers.  In my case, make the headset the default.

I also wish that my sound devices, like a headset, had a button that did something like "signal OS to make this the default or active sound device". And mute and volume control...

Tuesday, September 09, 2014

Lumo Lift arrives - no app - annoying proprietary charging interface

A while back I bought a LumoBack - a QS device that detected posture.  Work on a lightweight strap with velcro strap around waist. Overall I liked it - especially when I realized that it counted steps pretty well, better in many ways than my Basis watch.

Unfortunately, I lost mine - I found it annoying to have the lightweight strap around my waist, when wearing an actual belt.  I determined that I could take the LumoBack off the strap, and put it on my actual belt.  Unfortunately, after a few days of doing this, with occasional buzzing reminded me to maintain good posture, I realized that the LumoBack had fallen off my belt.  I conjecture that the plastic loops were stressed by the real belt, in ways they had not been with the original.

I would have bought a replacement, except the LumoBack was no longer for sale.  It was replaced by the LumoLift, worn at the collar.

Received my LumoLift yesterday.  First impressions:

---+ Overall Good

Nice small device.

Magnets hold it on through clothes.

Worn just under collar bone.

Advised not to wear on loose shirts.  Has worked okay on all the shirts I have tried so far.

Magnets hold tightly enough that twice I have stripped off a shirt and tossed it into laundry hamper, forgetting to remove the LumoLift - and had to go dig in the hamper when I realized I was no longer feeling the occasional buss when slouching.

User interface on actual device good:  double click to "snapshot", i.e. calibrate, triple buzz acknowledge; press and hold to toggle enable/disable buzzing when slouching, single buzz to acknowledge on, double buzz off.

In this respect better than LumoBack, where I frequently had to recalibrate using the Android app.  Actually, the LumoBack had similar UI on the device, but I seemed to use the Android app most.   It is a good thing that the LumoLift does not depend on the app as much as LumoBack did - since there is no LumoLift app yet.

The LumoLift seems less sensitive, out of the box, than the LumoBack was.  Fewer false alarms; necessary because no Andoid app to control sensitivity.  But it accepts slouched postures - I have to stand almost upside down to make it start buzzing. Perhaps when the app is available...

---+ No App Yet :-(

No Android app.

iOS app possibly available (unclear, I have no incentive to investigate).

Windows desktop app available "real soon now".

No Android app supposedly because Google Android's BLE (BlueTooth Low Energy) support is immature and unreliable.  This may be consistent with the flakiness of the LumoBack, which required frequent resets.

---+ No Pedometerr ... ?

At least not until the app is available.

I liked the LumoBack enough that I would recommend getting it instead of an activity watch.

But the LumoBacl cannot play there.

---+ Non-standard USB Charging cradle

* I am annoyed that the LumoLift has a custom charging station - USB, sure.  But this means that I cannot simply plug the LumoLift into whatever USB charger I have close at hand with a standard micro-USB cable  - at my desk at work, at home, in car.   Instead, can only charge up at one place.

Carrying around the charging station is suboptimal: since I have several such devices.  E.g. my Basis watch.

Indeed, one of the reasons that I liked the LumoBack so much was that it used a generic microUSB charging connector.  On several occasions I was able to charge it up, when my Basis watch was out of charge.  Now my LumoLift and Basis watch are equally non-functional.

Buying extra charging stations - perhaps. After all, I have a total of 4 chargers for my laptop, albeit one being a universal (home, work, cottage, backpack). I used to buy multiple cell phone chargers, back when cell phones had proprietary chargers.  But now that most cell phones have standard USB chargers, I just buy multiple USB chargers.

Perhaps it is good "gouge the consumer" marketing to require extra charging stations be bought by those of us who want ubiquity.  Although, at the moment, you cannot purchase extra charging stations from Lumo. (I think Basis does sell extra charging stations, for a "gouge the consumer" price).

Although "do not ascribe to malice too quickly that which can be explained by stupidity". Or lack of standards.

Perhaps the designers of LumoLift and the Basis Watch realized that USB micro connectors are unreliable.  Certainly an impediment to a QS deviced, that you might want to wear into the shower after a workout. (Easy to do so accidentally - I haven't yet forgotten to take off my Basis watch, but already, in les than one day of wearing my LumoLift, I have changed shirts twice without taking it off the old shirt.  Which I think means that the LumoLift is non-obtrusive.

Micro-USB is unreliable.  The Basis watch has 4 metal pads, the LumoLift two.  Probably these connectors are more reliable.  But they need pressure to make contact: on the Basis watch provided by a wraparound plastic cradle, on the LumoLift provided by magnets.

I am not aware if the LumoLift and Basis watch's power contacts are standard.  Not found in a quick google.

I do rather wish that the LumoLift and Basis Watch had chosen to use the same sort of TRS connector (headphone jack, TRRS, Tip/Ring*/Sleeve, mini 3.5mm Apple, submini 2.5mm).  Not standard USB, but reasonably common.  Good enough that iPods can be made waterproof for swimmers.

I can understand that such a "shaft" may be a pain to design around.  And that it is annoyingly thick.  Still, I wish that the LumoLift and Basis watch used connectors that were reasonably widely available.