Disclaimer

The content of this blog is my personal opinion only. Although I am an employee - currently of Nvidia, in the past of other companies such as Iagination Technologies, MIPS, 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.

Wednesday, February 18, 2009

Wikis & Blogs, Versioning, Lack Thereof, Good and Bad

I learned today

a) that this blog site allows editing of blog posts, even when they are quite old and have been responded to

b) that this blog site does not seem to have versioning

c) similarly,Google docs does not have versioning.

I think this is interesting, because I have long felt that the main difference between a blog and a wiki is that a blog is a "point in time", whereas a wiki is supposed to be updated to be the latest and greatest.

In practice, wikis and blogs shade into each other. Many wiki pages are really "point-in-time", or even flow of consciousness. Similarly, apparently blogs can be edited.

Now, with wikis it is rather typical for a point-int-time wiki page to be reorganized eventually, after a while, to be more of a reference article. Similarly, wiki pages sometimes regress - a reference article may get a lot of conversational stuff added to it.

Blogs, in my experience, do not evolve that way. Given that you can edit the original blog post, I suppose that you could go and edit the comment stream. But I have not seen that done.

If you edit the original post of a blog, then comments may be "orphaned" - they may no longer apply to the revised main page. I.e. they become inconsistent. Now, the edits I made today do not render the blog inconsistent. Mainly, company name. But I wonder how folks who administer large blog sites handle this?

Who should the right to change blog comments? The original poster? But then the point of unmoderated blog comment discussions rather goes away.

I have this rather inchoate vision of a blog/wiki hybrid. Pages start, perhaps, in a blog-like manner. With a title, but also with an implicit date. Comments accumulate in the usual blof like manner.

At some point you may want to "fork" the blog into a more wiki-like, reference, structure. Hit a button, and you get two versions of the original page: first, the blog page TITLE-DATE, with comment stream, and then also TITLE-CURRENT. Cross linked in all possible ways. I.e. you can go from TITLE-DATE to TITLE-CURRENT, back, to all of the comments, etc. Eventually you may want to fork again, to produce TITLE-DATE2.

Automatic version control on a wiki is much like this. All of the information is there. However, it is hidden behind the version control system. Sometimes I think that you want to maintain the versioned TITLE-DATEn topic pages for external viewing.

Ideally: (1) preserve everything under version control. But, (2) automate the process of snapshotting a particular version. Automatically create TITLE-DATEn. Make it possible to give meaningful names to such versions. And automate the process of cross-linking. I think it quickly becomes evident that the links want to be managed by a database, not by hyper-text style links, once again to ensure consistency.

Note: such snapshotting or forking doesn't just apply at page level. It also applies to groupsor webs of pages.

I've been doing much of this by hand when I create a release of a wiki based specification. Of course I want to automate what I now do by hand.

---

I want to do something similar for email archived into a wiki store. I want to preserve the original "point in time" email. But I want to enable the forking and revision of such email into reference material.

---

Back to versioning: I like versioning.

This discission indicates that individual versions need to have different access control. Ideally, a "point-in-time" original blog post or email is read-only - the email, immediately when sent, the blog post perhaps after a small interval. But attempts to edit such read-only blog or email items should produce a copy-on-write type behavior, with automatic renaming, as described above.

Also, although I like versioning, and I think that everything should be versioned, occasionally it is necessary to be able to remove an object, or a version of an object, completely, cleanly, without any hope of recovery. E.g. IP.

Yet Another Outlook Lost Calendar Item

My boss came into my office and said "Andy, do you ever check your calendar?" As in "Why aren't you in a meeting with me right now?" He didn't say it angrily, because he's too calm a guy for that - but he was annoyed.

I'm glad that he actually came to my office. He was able to look over my shoulder and see that there was, in fact, no meeting on my Outlook calendar, on my PC. The meeting was on his calendar on his PC. It was marked as having been accepted by me. But it was not on my PC.

Yet another example of Outlook problems.

Disclaimer

The content of this message is my personal opinion only and although I am an employee of Intel, the statements I make here in no way represent Intel's position on the issue, nor am I authorized to speak on behalf of Intel on this matter.

Saturday, February 07, 2009

Empathy

From wiktionary:

empathy (uncountable)

  1. the intellectual identification of the thoughts, feelings, or state of another person
  2. capacity to understand another person's point of view or the result of such understanding
Empathy is not just being able to think as if you were in somebody position. Let's call this first-order empathy.

Empathy is thinking as if you were that somebody else, in that somebody else's position. Let's call this second order empathy.

A selfish person, employing first order empathy, would take his selfish viewpoint to that other person's situation - and would imagine what that other person would do, if he were selfish like me.

Second order empath is to imagine what that other person feels. If you are selfish bit they are not, imagine what an unselfish person would feel. And vice versa.

Empathy is not necessarily sympathy. I may be able to imagine what Hitler felt, but I do not feel symapthy for his views.

Wednesday, February 04, 2009

More Software Installation Tedium

A couple of weeks ago, it fell on me to write a new version of a specification document. Since the previous author had used Word 2007, I thought that it might be best if I updated from Microsoft Office 2003 to 2007, on the chance that there were 2007 features that slightly broke the document in 2003.

Company IT's software distribution web pages warned that Office 2007 was unstable on Thinkpad T42s, but ran on T43s, albeit with occasional performance problems. I have a T43p - an obsolete laptop, but one of the most up-to-date laptops that my company gives engineers to use - so I decided to take the chance.

(The Thinkpad T43 seems to have been introduced circa April 2005 - at least that is when reviews seem to be dated. It was considered pretty good ("Wow!") at the time of introduction. I believe that I have had this model for circa 3 years.)

Installing Office 2007 took circa half a day. It ran. Frequent hangs, at first, typically when saving an auto-recovery file. But once I disabled that, it ran well enough for me to update the document.

However, the performance problems that IT had warned about did afflict me. I could not prove that they were due to Office 2007, but it seemed likely.

Therefore, at the first opportunity where I was not rushed for time, I decided to uninstall Office 2007 and revert to Office 2003. The IT web pages indicated that might take 30 minutes to half an hour. I started at 3pm yesterday. It just finished this morning at 9am.

Of course, during that whole time I was unable to get any computer based work done. I.e. I was able to get almost no work done at all, except reading some PowerPoint foil sets that I happened to have printed out. Worse, I could not go and exercise - because the ^%&$^ uninstall/reinstall process required me to hit a button on a dialog box about once every half hour. After I had exhausted my supply of work-related printouts, I read a Margaret Frazer mystery, but only after I had taken my computer home.

While at work, my options were limited. At 7pm, I decided to take m laptop home, and let the install continue while I ate supper. I then read my book while watching the display until midnight.

I do not know how long it lasted past midnight. For all I know, it might have blinked "finished" right after I went to bed. However, since I had, by that time, just started the automated reinstall of Office 2003, I suspect it kept busy for a few hours.

In the morning the Office 2003 installation was complete. I had a few more software upgrades to install - a patch here, a Communicator update there.

Did I mention the half hour Outlook spent "updating personal preferences" and the like?

Finally, by 9am, I am complete.

---

I suspect much of the slowness was due to virus scanning. I considerd disabling the virus scanners, but IT has denied me the ability to do this from the console. I could have uninstalled the virus scanners and then reinstalled them, but I wasn't sure if that would ave been netly faster or slower.

===

As is my wont, I wonder what can be done about this?

Certainly, if the upate process interacted better with virus scanners. E.g. it one were authenticaed to the others.

Much time could have been saved if I could have installed bth Office 2003 and Office 2007 on my system simultaneously, changing only which was the default.

Overall, though, I keep coming back to the thin client / properly administered system model. E.g. if these documents had ben written on Google docs rather than on my PC using Microsoft Officde.

Sunday, January 18, 2009

Swimming Radio and Podcasts

Swimming is my favorite form of exercise (after rock climbing).

But, I find swimming lengths in pools boring. Therefore, I decided to try to get some entertainment, som redeeming value: a swim-water-proof radio or MP3 / podcast player, so that I can listen to radio and, ideally, books or Teaching Company (http://www.teach12.com/) lecture series on tape. (I am not much of a listener to music.)

Googling narrowed it down to

Swimp3 from Finis (http://www.finisinc.com/products-swimp3.shtml) - 150$. Bone conduction, v2-256 MB.

Speedo Aquabeat MP3, 1GB, 116-150$ - earplugs

Swimman (http://swimman.com/) waterproofed iPod shuffle (2nd genration) - 250$ - earplugs

Plus various other waterproofed cases,

Since I am not yet rich enough that 150$ is mad money, I decided to try the Swimmer's Choice Radio (http://www.gearedtobefit.com/pd_swimmers_choice_fm_radio.cfm) - 40$


The Swimmer'sChoice Radio worked well enough, I suppose. However, it failed the second day of use. I cannot recommend it.


Fortuitously, I encountered a friend at the pool who had the Swimp3. He let me try his. He recommended it highly. The results were good enough that I purchased my own, and have used it fr the second day today.

I quickly learned that, as I normally swim, the Swimp3 was audible when my ears were underwater, but not when they were above water. E.g. I could hear it throughout crawl / freestle, but not when I lifted my head to breath for breast stroke. My friend Mike had never observed this, saying he always used custom fit earplugs. A cheap pair of wax earplugs, and this problem was "solved".

However (1) wearing earplugs has disadvatages, e.g. when my daughter is calling for me, and (b) it is not clear to me that the bone conduction is of much value - my brief experiece with the SwimmersChoice radio indicated that earphones work as well as bone conduction.

Possibly better:

(a) the earphones can be used outside the pool. The bone conduction headset works a bit, in quiet places, but not where it is noisy. Unless, again, I use earplugs.

(b) I find it hard to hear talk on the Swimp3. I may be forced to fall back to music. It doesn't matter so much if you miss a few notes in a song; it matters a lot if you miss a few words in an audio book.

Nevertheless, I am reasonably happy with the Swimp3. I had a nice long practice today, and never got bored.

OLPC XO vs. ClassMate 2goPC

---+ BRIEF SUMMARY:

Last year's OLPC One Laptop per Child) XO PCs, running Linux, were one hell of a lot easier to get up and running than this year's Atom based Classmate 2goPC, running Windows XP.

The XO was up and running, and being played with by my daughter, in a few minutes.

The Classmate 2goPC has taken hours.

---+ DETAIL:

Last year I got my daughter an OLPC XO for Xmas. Actually, 2, or a total of 4 under the Buy 1 / Give 1 program. The XO was up and running within minutes.

However, the XO had some limitations:

a) My daughter has had problems using the Windows PCs at school, because the XO's user interface was so different.

b) The XO's Sugar interface is idiosyncratic, to say the least. No printing. No files. They say, essentially "Humans forget, therefore computers should too." Althouh my daughter has figured out how to deal with this, first, it is useless learning, and secondly she regularly loses data.

c) Because the XO is not a standard PC, it cannot run all web software E.g. my wife bought my daughter a "Webkinz" toy, whose tie-in website does not seem to run on the XO. ActiveX? Flash? I dunno.

Obviously, some of these problems can be solved by uninstalling the OLPC XO software, and/or running vanilla Linux software. But that somewhat defeats the point of the XO.

Therefore, I gave in and decided to buy my daughter a Windows PC. Fortunately, the Atom based Classmate 2goPC was available, under an Employee Purchase Plan. (Unfortunately, the plan did not include the Classmate Tablet 2goPC, which I would have bought instead if I had known it were available.)

I meant to purchase the 2goPC for Xmas, but website issues got in the way... ultimately I only gave the 2goPC to my daughter today, as a late Xmas present. She unwrapped it this morning circa 8am.

First delay: the instructions say to charge for 6 hours before using. I could probably have used it plugged in, but just in case...

At 3am my daughter came home, anxious to try her new PC. We power it up...

The usual delays, after asking for PC name, etc.

Next delay: Internet Explorer hangs configuring itselg. Like, a 45 minute long hang. So we reboot.

This time it comes up. OK, let's run Windows update... Microsoft Update... Much downloading and several reboots later...

Microsoft security Center is warning about no virus scanner. Fortunately, my employer has a homeware program, whose single license for use on an employee PC I am not using. So I install that... sevceral more reboots later, including rebooting the company PC that I was transferring from...

Upshot: my daughter's 2goPC seems to be working now. 6:19pm. More than 3 hours since we powered it on; almsot 10 hours since my daughter unwrapped the Classmate 2goPC.

This compares unfavorably with the several minutes required for the OLPC XO last year.

Worse: my daughrer was able to get the OLPC XO up. Daddy (I) had to sped several hours supervising the Classmate 2goPC. My daughter, quite understandably, lost interest.