Monthly Archive for: ‘December, 2008’

Christmas Presents 2008

0

Here’s what was waiting for me under the tree this year:

Favourite Foods:

Traditional:

  • Five pairs of socks
  • Next Signature Eau de Toilette

Books:

Music:

 

As always, thanks to those who helped Santa.

Previous years – 2007, 2006, 2005

Zero Interest Bug

0

I started my career in professional software development a decade or so ago by testing and fixing banking code that had fallen victim to the millennium bug.

Could the prospect of zero percent interest rates create a similar boom in demand for software developers?

From Contractor UK:

Interest rates have plummeted from 5% to 2% since early October and are heading lower. Some analysts say 0% is not out of the question.

Imagine all the policy bounds checkers and field validation routines that need modifying to handle zero percent interest rates. The entire insurance industry will be clambering to find COBOL programmers able to understand 30 year old code and everybody else will benefit as demand escalates.

Version 1234 of DownloadTitle is Out!

1

It’s worth subscribing to the Microsoft Download Center RSS feed to be amongst the first to get notified of such gems as this. Nice to see they’re supporting Mac OS X!

Presumably it will be deleted soon, so I took a screen capture :-)

download

and yes, I did try downloading the file, and this is what I got:

12:05 PM 12/8/2008
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST 

Snag It

4

Clients regularly ask me “Hey, how do you do those fancy screen shots with arrows, highlights, and torn page effects?”

08-12-2008 16-19-36

Answer: I use Snag It, a funky little program which John initially recommended to me (although he’s not a fan of the latest version). I find it fast, effective and very useful. There’s a free 30-day version, but I use it on a daily basis so was more than happy to shell out the $49.95 asking price for a copy.

‘Ock-a-Ooogle-Ooh

0

I’m about as proud as a Daddy can be.

This weekend Benjamin made a stellar leap from uttering only one and two-syllable phrases (“All Gone”, “Night Night”, “MORE!”) to trying out a whopping five-syllables in one go.

We were sat on the sofa, reading a book about farmyard animals. I pointed to a rooster/cockerel, and told Ben that “they say ‘cock-a-doodle-dooh!’”. The boy looked suspicious and thoughtful, looked at me, and carefully enunciated “’Ock-a-Oogle-Ooh?”

Jocelyn and I were so impressed. Once my mouth had closed I tried to persuade him to repeat the feat, but he shook his head and ran off! He just won’t perform on demand, that boy!

The Wisdom of Crowds

0

So, today the Bank of England dropped interest rates sharply once again.

iStock_000006391911XSmallI usually avoid reading the BBC News “Have Your Say” forums, for therein lies the path to insanity and disillusionment in one’s fellow man. Today was no exception, as I came across this comment from Clifford Feary of Northampton:

“so the savers are being punished ,while those with big debts get help at our expense .,there should be two levels of rates opne for savers and one for borrowers,”

What an economic genius! But what’s more disturbing is that, at the time of writing, twenty-seven other people have recommended this suggestion!

Clifford, can you stop typing for a second and think through why it might not be such good idea for the Bank of England to lend money at a lower rate of interest than they offer on deposits…?

Team Foundation Server 2008 In Action

0

Finally, a great book about Team Foundation Server which I’m happy to recommend to developers:

tfsinaction

I’ve read plenty of TFS / Team System books from the project management and agile methodology viewpoints, but this is the first one I’ve come across that I think really sells TFS to developers.

The first part of the book introduces TFS and software development processes in general, before exploring the improvements in TFS 2008, and introducing VSTS 2008 Database Edition.

Preamble over, the main meat of the book goes deep into the key developer-centric areas of version control and Team Build, where TFS can really improve the quality of life of the average developer! There’s lots of detail on branching models, and explaining best practice solutions to questions such as how to share code between team projects. It’s not all dry theory though, there is plenty of code on show as the author explains some potential customizations and uses for the TFS API.

This is continued in the last two chapters, which dig into administration, customization, and using Workflow Foundation with TFS.

All in all, a really good read, which goes some way to highlighting the awesome power of Team Foundation Server.

Amazon – Team Foundation Server 2008 In Action

MSB3247 – Dependent Assembly Conflicts

1

Earlier today a dev came over to ask me about a compiler warning he was getting when building a .NET solution:

MSB3247: Found conflicts between different versions of the same dependent assembly.

This is basically telling you that one project or dependency in your solution is referencing one version of an assembly, whilst another project or dependency is trying to reference a different version of the same assembly. Unhelpfully, the message and build output don’t tell you which dependent assembly is causing the problem!

To solve this, I reached for NDepend and tried to analyze the compiled assemblies. The conflicting assemblies were both excluded from the analysis and a warning message explained that this was a clash between two versions of System.Web.Extensions.dll – 3.5.0.0 was being referenced by a Telerik UI control, and an earlier version was being used by the developer’s application. This kind of dependency clash is one potential drawback of relying too heavily on third-party controls.

I was going to suggest bringing the application up to date and referencing the newer dll, but a quick squizz at NDepend’s dependency graph revealed that the Telerik assembly wasn’t actually being used by the application at all, and nor were several other referenced components! Deleting the unused references left a slightly leaner, faster-compiling solution with zero build warnings.

Data Loss 2008

6

So, last week I managed to lose eight years’ worth of contact and calendar data. Coming less than three months after posting a blog entry entitled “My Backup Strategy Works!”, this is a little bit embarrassing.

I’ve been contacting friends and family to ask for the lost information, and many people have asked me how this data loss occurred. John Topley suggested that I “blog about how it went so catastrophically wrong, so that others might learn from your misfortune”, so here goes.

iStock_000005307293XSmallI should explain that the vast majority of my personal data (photos, music, documents, etc) is duplicated on two external hard drives – a mains-powered one used by my desktop PC, and a portable USB one which I carry around the city and predominantly use with my laptop. I periodically synchronise most of the contents of these drives using SyncToy. Most of that data is then backed up to Mozy.com.

Where my data doesn’t naturally reside on these external hard drives (e.g. SQL Server databases), I try to ensure that I have scheduled tasks in place to periodically copy backups onto the drives. Unfortunately for me I failed to do this for my mobile phone, or for my laptop’s Outlook data. I didn’t worry about this too much though – the contact and calendar data on these two devices were synchronized on a daily basis, and what’s more my mobile phone was scheduled to back up to a 2Gb MicroSD card every evening.

So what went wrong? Human error, of course. I decided to rebuild my laptop, as it was getting a bit crufty. Then I ActiveSync’d it with the mobile phone, thinking that all the entries from the phone would be copied across to the laptop. But ActiveSync saw only already-synchronized entries on the phone which were not on the laptop, assumed that they had been deleted from the laptop, and synchronized the “deletion” over to the mobile phone. It would be nice to have a confirmation prompt when deleting a sizeable chunk of data!

Then, stupidly, I didn’t check the results of the synchronization. I didn’t realise what had happened until four days later when I went to send a text message. Guess how many days worth of Sprite Backup files I kept on the MicroSD card? Yup, three.

So, lessons learned:

  1. Consider all data (locations, devices) when designing a backup strategy.
  2. Verify data after performing unusual or large synchronizations.
  3. Keep more than three days’ worth of backups.
  4. Don’t write blog posts entitled “My Backup Strategy Works!”.

Why Can’t The Internet Help Me With This?

2

I am in an unfamiliar part of town and want to know the answer to this question:

What is the nearest place to where I’m sitting from which I can purchase a can or bottle of Coca-Cola?

I suppose I’m going to have to resort to asking someone.. :-(