Well I did some simple statistics pulling from WKO+ for the past three seasons. I based a season from December through to end November of the following year.

date from       01/12/2010    01/12/2009   01/12/2008
date to         30/11/2011    30/11/2010   30/11/2009
run duration    45h47:02       82h01:12    65h07:36
run distance    527.126km      957.505km   727.656km
bike duration   15h28:04       115h46:42   158h04:18
bike distance   260.632km      2409.497km  4337.618km
swim duration   6h04:00        30h26:00    36h58:00
swim distance   18.45km        94.031km    104.613km

(Yes, I realise we’ve not quite got to 30/11/2011 yet… so will update the 2011 season once it completes)

The figures include treadmill and Computrainer sessions along with training sessions and races.

I hope that I manage to do more training over the 2012 season – probably slightly down on the 2009/2010 season due to less free time these days. Maybe I should set some training targets for the 2012 season?

The bike average speed varies somewhat due to extensive use of the Computrainer in the 2009 season – due to the ERG training I was doing at a relatively higher wheel speed than on the road the average speeds are inflated.  So the times are probably more useful to compare than pure distances.

 

 

 

Well, I’m still vetting my HTC Sensation to see if it is a worthy replacement for my BlackBerry… Still not convinced as it happens. However, I have resolved one of my problems with it…

IMAP sent/trash/draft folders don’t work properly if you have a “typical” IMAP server with a folder prefix of “INBOX.”. The IMAP NAMESPACE RFC (RFC2342) defines how this works and how clients should handle it. As usual, Google developers figured they knew better than or just chose to ignore the RFC! As a result, the Andoird mail application doesn’t support folder prefixes, let alone automatically working correctly based on the namespace command.

If you are lucky and are using a IMAP server which does not have a personal namespace (Dovecot??) you might find the mail app works OK for you.

You can use the Android K9 mail client. I briefly tried it and it seemed to work. However, it doesn’t seem as “integrated” as the stock client so I gave up on it. It’s not a bad app – it just didn’t grab my attention. Luckily, there is a work around which is partially documented on the Android issues page at (thanks to those who posted there as it got me working on this workaround):

http://code.google.com/p/android/issues/detail?id=1811 in particular comment 83 and comment 84.

The work around is to reconfigure the mail application’s SQLite database to point to IMAP provided folders rather than the default folders which do not work. On the surface it is pretty easy if your phone is rooted – no idea how I’d do this if the phone was not rooted.

The method I used in the end, to get around the SQLite database files being in use, was to boot to clockworkmod-recovery, mount /data, adb the necessary files to the PC, edit the datafiles using SQLite and push them back using ADB.

The updating of the database is the trick. First, the ID of the account to be “fixed” needs to be determined. This account ID is then used to get a list of corresponding folders’ IDs from the mailboxs [sic]. These IDs and names are then used to update the accounts table which is the “magic bit”.

Here is the code snippet of the steps I followed. If you have a vague idea of technical stuff in this area, you should be able to follow the steps.

**boot into clockworkmod recovery
** mount /data on the phone
** connect USB cable to phone and PC and select HTC Sync mode
** check device can be seen by adb:

adb devices

** copy the data files from the phone to your PC (might not have the -shm and -wal files):

adb pull /data/data/com.htc.android.mail/databases/mail.db
adb pull /data/data/com.htc.android.mail/databases/mail.db-shm
adb pull /data/data/com.htc.android.mail/databases/mail.db-wal

** run sqlite on the data files

sqlite3.exe mail.db
sqlite>  pragma wal_checkpoint;            -- to clear the sqlite logfiles...
sqlite>  pragma wal_checkpoint(FULL);      -- to clear the sqlite logfiles...
sqlite>
sqlite> .headers on       -- to make it easier to see whats happening
sqlite> .mode column      -- or .mode list

sqlite> --view the current folders for all accounts
sqlite> select _id, _name, _sentfolder, _sentfoldertext, _sentfolderid from accounts;
sqlite> select _id, _name, _trashfolder, _trashfoldertext, _trashfolderid from accounts;
sqlite> select _id, _name, _draftfolder, _draftfoldertext, _draftfolderid from accounts;

** based on output from above, determine the _id value for the account to modify (1 is used below in example):

sqlite> select * from mailboxs where _account=1;       --where 1 is from _ID above
sqlite> --below command is more succinct and useful...
sqlite> select _id,_undecodename,_decodename,_shortname from mailboxs where _account=1;   --where 1 is _ID above

** the above will give a list of folder IDs and corresponding names. Hopefully, the _undecodename, _decodename and _shortname fields are equal. If not, then I’m not sure which you’d use in the step below – some trial and error might be needed, but I’d start with the _decodename values.

** if you have a large number of IMAP folders and a “typical” IMAP server, the following should list the three needed folders and their associated IDs:

sqlite> select _id,_undecodename,_decodename,_shortname from mailboxs
   ...> where _account=1 and
   ...> _shortname in ("INBOX.Drafts","INBOX.Sent","INBOX.Trash");

** Once you have the folders’ _id values you use them in the commands below, changing the _sentfolderid, _trashfolderid and _draftfolderid values to correspond with those shown in the above step. Note to change the where clause to reflect the correct account _id used above.

sqlite> --update the folder details
sqlite> update accounts set _sentfolder = 'INBOX.Sent', _sentfoldertext = 'INBOX.Sent', _sentfolderid = 23 where _id=1;
sqlite> update accounts set _trashfolder = 'INBOX.Trash', _trashfoldertext = 'INBOX.Trash', _trashfolderid = 9 where _id=1;
sqlite> update accounts set _draftfolder = 'INBOX.Drafts', _draftfoldertext = 'INBOX.Drafts', _draftfolderid = 27 where _id=1;

sqlite> --exit from sqlite
sqlite> .quit

** back at your DOS prompt, delete the files on your phone (maybe mv instead for backup purposes?? – your choice) and push the updated files

adb shell rm /data/data/com.htc.android.mail/databases/mail.db
adb shell rm /data/data/com.htc.android.mail/databases/mail.db-wal
adb shell rm /data/data/com.htc.android.mail/databases/mail.db-shm
adb push mail.db /data/data/com.htc.android.mail/databases/mail.db
adb push mail.db-wal /data/data/com.htc.android.mail/databases/mail.db-wal
adb push mail.db-shm /data/data/com.htc.android.mail/databases/mail.db-shm

**reboot the phone and hopefully all is working with the correct folders!!

adb reboot

 

Note: If your phone has sqlite3 installed on it and it is rooted, you may be able to issue the above sqlite commands without having to boot into recovery mode. I’m not sure how well the mail app would behave with it’s configuration changing while it is running.

Note2: You do this at your own risk, etc etc. It worked for me. It might work for you – or it might not.

 

I’ve recently been comparing a HTC Sensation with a BlackBerry 9780. There are plenty of reviews and comparisons on the web about the merits of various devices. I am going to list the pros and cons I have noticed of the above two devices:

BlackBerry 9780

Pros:

  • More business oriented with associated security policies and features
  • Tight MS Exchange and Lotus Domino integration
  • Actual keyboard makes typing easier

Cons:

  • Small screen and keyboard
  • Relies on centralised server model – BlackBerry and carrier infrastrcture

HTC Sensation

Pros:

  • Larger screen and touch sensitive makes application usage easier
  • Larger application market place and hence more functionality on the go
  • Inbuilt IMAP / POP client

Cons:

  • Large screen makes single-handed handling difficult
  • Touch screen results in error touches esp with using the camera
  • Poor battery life
  • No alarm functionality to wake phone when turned off (I’d like to be able to turn off to save battery overnight)
  • No “always on” or “auto-reconnect” VPN option. You need to re-authenticate to VPN server frequently
  • No task list / notes synchronisation with MS Exchange
  • Inbuilt IMAP client does not support the INBOX prefix option (work around possible)
  • Large market place results in many gimmicky apps
  • No sync of Exchange tasks or Exchange notes
  • Not possible to create repeating appointments with an end date

 

Overall I like the HTC. That said, it’s clearly not designed as a “phone and mobile Outlook” device with apps as second priority like the BlackBerry. The HTC (and most Android devices to be fair) are clearly about applications and “the cloud”*. The HTC Sensation is a little big for sticking in a pocket and the battery life is worrying – having to charge it every day with not much usage is a tough sell.

So for the moment I am sticking with the 9780 as my “main device” for phone etc but I am still evaluating the HTC 🙂

 

* I hate the term “The Cloud” – it’s just a new word for the Internet really….