Monthly Archives: November 2004

Structured vs. Unstructured Data

Darren Neimke arrived in Canberra last night so he could start out at a client site with me on Monday. We were having a chat over lunch about the applications of various pieces of technology. Darren is getting into InfoPath and SharePoint at the moment and I’ve always been a big fan of the WikiWikiWeb.

I think both of us realise that the technologies that we are passionate about don’t necessarily work in every situation – but how do you figure out that something is appropriate or not? I think there is a very coarse grouping that you can make. Structured and unstructured . . .

Work with me:

  • Expense Claim = Structured
  • New Product Idea = Unstructured?
  • Leave Form = Structured
  • This Blog Post = Unstructured
  • My Brain = Definately Unstructured
  • Bug Report = Structured (depending on who fills it out)

Thats just a simple list. But I think there is a theme in the structured data area – its business as usual stuff. Things that you can build ahead of time and expect to get an ROI on. Unstructured data is all about coping with things that are out of the ordinary. For example – I don’t have a form to log my discussions with Darren


I was thinking about some of the discussions I’ve been having lately about how the methodology (gasp – I used the M word) we are using to manage a software project doesn’t exactly conform to the organisational standard.

The funny thing is – what we are doing is currently working whereas the previous methodology (even allowing for other influences on the project) wasn’t. I’ve been in this situation before, quite often organisations buy into one particular project management methodology – they even hire experts in its application to guide their staff in its use on an ongoing basis. Its a huge $$$ investment.

Then – into my head poped a term – SunkCostDrivenMethodology. Its very similar to the SunkCostDrivenArchitecture that Martin Fowler documented. I think we have a meta-anti-pattern here.

My blog is one year old.

Wow! One year ago I decided to start a blog for both technical and personal subject matter. I didn’t really know what to expect when I started and if you look back over my history in those early months you can see I was posting fairly irregularly – maybe the content was better?

I’ve decided that I am going to celebrate by blogging for another year and encouraging some other people to start blogging. The first target is my wife (Nicola) who I think has lots of interesting things to say but (incorrectly) assumes no one wants to hear them. What should her domain name be?

Here is a list of some of my favorite posts over the past twelve months:

Thanks for coming with me on the trip!

T&E: Cast and Crew

I’ve been meaning to follow up on my post about our Time sheeting and Expenses system here at Readify. Since I made that post some things definitely got put on the back burner as one of the teams I am currently working with drive towards their first release that is going into production.

We reached a critical point last week when we found we were hunting down our last few bugs and making a few minor feature changes so I feel comfortable looking at some of the slightly lower items on my task list – back to T&E.

So – when I left you last I was talking some of the issues with the time sheeting system and mentioned that I intended to spend some time gathering requirements and doing some prototyping. This post is intended to speak to the first of those two items.

The first thing that I need to do is introduce the actors and the kinds of hardware and infrastructure that they have access to.

Obviously the MSN messenger looking dudes are people, I’ve actually chosen the names of real people who I think are representative of the user community.


Its always good to start with the boss. Graeme is the guy who we all submit our time sheet and expense claims to and he expects them to be submitted on time and be correct for his reports. I sent Graeme an e-mail a few weeks ago and he got back to me with this set of requirements.

  • Consultants should record their times on a daily basis.
  • Consultants should be able to enter their times offline and then have them sent in the next time they are online.
  • Consultants should be able to correct times after they are uploaded with no side effects.
  • Top level work categories should be easy to add, current categories are Training, Consulting, Internal Systems, Professional Development and Leave & Admin. Examples of ones to add are Curriculum Development and Marketing Support.

On top of the above Graeme also has two key reports that are dished up from SQL Reporting Services.

  • Daily Totals by Consultant
  • Daily Totals by Reporting Category

Doesn’t sound too bad eh?


Who’s Mark? Mark is our token customer, and I had produced this blog entry a week ago he probably wouldn’t have been listed here. However Mark asked me last week to fill in a time sheet specific to his organisation.

Normally we don’t produce timesheets for clients, especially for the shorter term engagements, but for longer ones its reasonable for customers to want to kill another tree to produce another piece of paper (on top of the invoice). Actually most people recognise it is a duplication of effort but like Mark, they need to adhere to some organisational policies about time tracking.

Our current system doesn’t support printing from the front-end application which all consultants run on their laptop, and even if it did it doesn’t have the essential filtering functionality to produce a report just for a particular customer.

An absolute requirement would be the ability to produce a filtered report which could then be transposed onto the clients time sheeting format.


Darren is our most recent hire, and as such is an innocent when it comes to filling in timesheets (late). I’m going speak for Darren here (Darren – if you want to add to this just leave comments), but there are a couple of really important things.

  • Should be easy to download and install the time sheeting application.
  • Should be easy to use without any direction.

Thats pretty simple eh? Thats because Darren isn’t jaded enough yet to have my set of requirements. Here they are!


Disclaimer: I am one of the worst time sheeting users EVER! Thats why I know that something needs to be done to encourage me to do my timesheets in a timely manner. The boss tried to do it at an organisational level by linking our expense reimbursements to having our time sheets in on time at the end of the month, that has pretty much worked for me except that I do tend to rush the job a day or so before it due.

So my key requirement is that whatever the eventual solution is, it needs to encourage me to fill in my time sheet regularly. There a couple of ways off the top of my head that I think it could do this:

  • The application runs as a tray application and pops up a balloon to nag me.
  • The system sends me an e-mail if I haven’t filled in my time sheet for seventy two hours and points me to a web-page to enter the details.
  • The system sends me an SMS message every seventy two hours to nag me to open up the app to fill in the sheet.
  • We use MSN alerts to remind us through messenger (I wonder if MSN alerts supports private corporate services like that).

If anyone out there has any bright ideas feel free to leave them in the comments.

What about the hardware?

This is really a reference to the kinds of devices that we collectively have access to. All consultants carry around a laptop and almost everyone also carries around a SmartPhone or a PDA (or both!). This basically means that if we get the back-end architecture right we have scope to skin the front end of this application in many ways.

For example, if we opt for the SMS message approach then it would be handy to have a time sheeting app on the SmartPhone that could submit information via GPRS. This would obviously mean that the service interfaces would have to run pretty light bandwidth wise otherwise it could get expensive.

The unspoken language of the coffee station.

I’ve been meaning to post up a few blog entries that I had hived off with BlogJet recently. A few weeks ago I was heading back upstairs to the office after having lunch with Joseph Cooney.

Joseph wanted to grab a coffee so we swung a left. As we approached the coffee station the attendant grabbed a expresso cup and started making a double expresso. Joseph put some money on the counter and walked to the other end to wait. Not a word was exchanged . . .


Australia needs a sci-fi channel.

On one weekend recently TV1 decided to run a StarTrek Deep Space Nine marathon starting from around 7:30pm on Friday to about the same time on Saturday. It was great, I could put my feet up and code, do a bit of house work and all the time indulge in one of my favorite pastimes which is watching science fiction television.

Its kind of sad that the only time I get to do this is when my wife is away because she isn’t really a big fan of the genre. Ironically she really likes StarGate the movie but detests the series – go figure! Personally I really look forward to the double episode on Thursday night.

What Australia really needs is a sci-fi channel with 24/7 sci-fi. It would be like the Comedy channel only it wouldn’t suck. I am already a Foxtel Digital subscriber and I’d happily give up another channel for this priv.