Sane spreadsheets

A lovely little tutorial on ways to write understandable spreadsheets.

As someone who has been guilty of spreadsheet spaghetti code in the past, I should probably pay more attention to this. In particular, colour-coding inputs and outputs makes a lot of sense.

Powershell and SharePoint

Unfortunately, I don't know who to thank for this ripper tip about SharePoint:

Any installation of WSS 3.0 or MOSS 2007 is no complete with PowerShell. Why? Because it makes situations like this so easy.

Save the following as SharePoint.ps1:

Version=, Culture=neutral, 

function Get-Site($absoluteUrl) {  

Writing a Charter

Another post on the nuts and bolts of putting together business documents.

A charter or terms of reference (TOR) document outlines a basis for the exercise of authority by a group. The group may be an existing team, or specially formed for the purposes of fulfilling the charter or TOR.

Balanced Scorecards and KM

Knowledge Management is a discipline often accused of running programs whose success is essentially unmeasureable. This then leads to accusations of "not delivering value", and sometimes even the scaling down or elimination of KM programs within the organisation as another "failure".

ePub: an option for simultaneous content development?

One of the problems with developing high-fidelity printed content (e.g. in PDF) is that it is not very accessible, despite all the improvements in PDF accessibility.

In fact, it is an Australian Government requirement that websites should never use PDF as the sole means of communicating important information -- for example, a fact sheet.

But if the printed fact sheet is still needed, are there any alternatives to developing the content twice: once in Adobe InDesign, and once for the web?

Best comments page for a news item: Eunoia

As anyone who has been around the traps on the Internet knows, comments pages are brutal; as often as not home just to devastating insults rather than insight.

But Eunoia is a new book by Christian Bok in which each chapter only uses one vowel.

I find it amusing that even those in this BBC article who think the book is a bit of a w*nk can't help but be alliterative in their commentary.

How to Design XML Documents

  1. Design your XML documents so that they are well-suited for processing by your applications today.
    1. If your XML is intended to be a transport between relational databases, design your XML to be flat, with easy mappings from XML to (relational) database tables.
    2. If you intend to use and manipulate the XML data directly, design easy XPath access points for XSL transforms and XQuery application.
  2. Eliminate nonessential markup (tags). Only use tags that are actually used by your applications today.
  3. Identify likely future expansion points to the XML. For example, would new data members be captured by adding a new attribute? A new element? A new namespace?

Back online! is now almost fully back online, complete with a shiny new theme and upgrade to Drupal 5.

The last thing to do is to retrofit my "links" module to work with Drupal 5.

Response to "Knowledge Management 2.0"

A response I have submitted to the editors of Federal Computer Week:

While not denying the benefits of effective collaboration, calling it "Knowledge Management 2.0" is an unfortunate designator that vastly undersells the scope of Knowledge Management activities.

Yes, KM should include programs that foster collaboration. But KM programs can go far beyond this.

KM can facilitate continuous process improvements through the observation and managed intervention of knowledge exchange patterns within teams and groups. KM can improve /how/ people think about the knowledge they acquire and how they subsequently act upon it.

Drupal Apps

UPDATE: Fixed some errors which prevented a true vanilla install.

Drupal has a very powerful framework for building Content Management applications, but it's also got some great features for general web application development. In particular, Drupal 6 comes with a very powerful Forms API which greatly simplifies data capture and validation.

I've been working on ways to remove the dependency on core Drupal modules (particularly the 'node' module, which just isn't necessary or useful in some cases) and produced a patch which can be installed using the Drupal "profile" method.

Syndicate content