October, 2008

WiX Techniques Updated

My whitepaper on WiX techniques has been updated to correct an error.

The previous version of the whitepaper omitted the definition of the "PreventDowngrading" custom action, necessary for proper upgrade behaviour.

The related blog posts (on versioning and upgrading) have also been updated.

Linq Aggregates

Catching up on my blog reading, I came across a gem demonstrating use of the Aggregate() method from Linq's Enumerable static class.

Worth reading.

Contravariance and Covariance at last

It seems the information deluge has started, and the first piece of good news about C# 4.0 is the introduction of contravariance and covariance for delegates and interfaces.

Charlie Calvert has a useful summary that I'd suggest you read.

On first glance, it looks as though the support hinges on adding a in and out modifiers to type parameters as hints for further use.

The right knowledge for each problem ...

A friend emailed me an interesting quote:

"... what little evidence we have about programmer productivity points to a productivity distribution that's skewed with a long tail of incompetence"

-- Larry O'Brien

However uncomfortable it might make you, I believe there's a certain amount of truth in this quote.

Whatever happened to responsiveness?

I've noticed a disturbing trend - it seems that all kinds of systems are getting slower and slower, almost as though usability is being deliberately sacrificed for other factors.

Multitouch and the Mouse

Reading today about Apples new line of laptops, I was reminded of comments that Paul Thurrott made on Windows Weekly about the viability of touch screen interfaces.

The basic point Paul made was that he doesn't want to be touching his screen - his iPhone gets all messy, and he doesn't want the same to happen to his main computer.

I'd add that the idea of waving my arm about in front of my existing monitors all day sounds inconvenient and tiring!

Understanding the Office UI

So I'm involved with a project that's includes finally deploying Office 2007 throughout the office, and the #1 source of comments from users is the Ribbon. While some like it, most don't - and some are downright creative in their commentary.

Leading up to the release of Office 2007, I read the blog of Jensen Harris, the "Group Program Manager of the Microsoft Office User Experience Team" (what a job title, eh!).

Foundations of Programming

foundationsCover.jpg

Karl Seguin, one of the CodeBetter bloggers, has written a book on programming fundamentals, covering topics from "YAGNI" and Unit Testing, to Domain Driven Design and Dependency Injection.

The book is well written, engaging and informative - recommended.

On Thresholds

I had a production system go down this week - one minute no problem, the next, critical functionality stopped working.  Worse, it didn't die because something broke - it went down by design. And did so without warning.