Mugs are Important
July 31, 2004
I just finished reading this blog entry by Clarke Scott. I don’t think Clarke needs clinical help, in fact, for me, mugs are extremely important. The first mug I ever received was from Caboolture State High School just before I finished up working there (Caboolture, Queensland) and moved down to Melbourne.
This mug followed me around from job to job while I was contracting before I started getting back into hardcore coding and found I needed something bigger. I’ve toyed with the idea of taking it out for a run again but to be honest I am afraid of it going missing. My first contract after moving down from Queensland was rather stressful because every few days the cleaners would take the cup and put it in one of the several kitchen areas in the building – grrrr.
Around the time I stopped using the CSHS mug Nicola and I went and purchased some large coffee mugs from Bunnings because the mugs we used at home had a fairly impractical design (triangular handles and vessel). It was also around this time that I moved from a pure contracting into more of a consulting role which meant that I usually changed sites on a regular basis – no point introducing my mug to a new home that it would only be in for a week.
Fast-forward to last Christmas when I got a pleasant surprise in the mail. It was this ASPalliance mug that Steve Smith sent to me. It was as big as the Bunnings mugs so it became “my” mug at home. Unfortunately I left it out on the coffee table the night before I went away on a business trip and my little princess got her hands on it and broke the handle.
I still can’t bring myself to throw it out, especially since I think that if I can get a strong enough glue I can fix it up so it is good as new. That brings me to my current mug, and the reason I was inspired by Clarke to make this post. Its actually a Starbucks mug that I purchased while I was delivering a training course for a client on George Street in Sydney. The Starbucks down the road was the only place I could find a mug at short notice.
At the time the client had just finished moving from another premsises and access to hot liquid storage facilities was limited. This mug was perfect because some parts of the course required me to talk for quite a long time without a break and this way I would have enough tea to last. The problem was that by the end it started to get a little bit cold.
So to finish up – mugs ARE important, don’t be ashamed Clarke – I suspect there are other developers out there with similar stories.
WSE 2.0 SP1 is out!
July 31, 2004
Get your web-services goodness here!
Inductive User Interfaces
July 31, 2004
Folks that I have worked with whilst on consulting engagements may remember that I have mentioned Inductive User Interfaces (or IUI’s) from time to time. I fell in love with inductive user interfaces when I read this old article on MSDN. However, thanks to the joys of RSS I have now been made aware of a new article by Mike Weinhardt called “IUIs and Web-Style Navigation in Windows Forms, Part 1″.
Unless you have been living under a rock you are probably aware that Longhorn includes an interesting navigation model, but there are things we can do now to make our applications more inductive as opposed to deductive.
This article is definately worth reading, especially if you want your users to love you. Mike is an Aussie and also has a blog (subscribed).
Anders Hejlsberg on C# Futures
July 31, 2004
I just finished watching MSDN TV. This time around it was Anders Hejlsberg, the man I personally blame for the features that I love and hate in C#. One of the things that really got me interested (there were several hypotheticals for C# 3.0 and beyond) was what I could call in-line configuration of objects at instansiation. My example would be a private field on a class.
private MyClass m_MyClassInstance = new MyClass() { X = 1, Y = 2 }
Where X and Y would be properties or fields on the class. I easily run out of fingers and toes when it comes to identifying times where I could have used this. You see the way that you would have to do this previously is drop some initialization code into the constructor – not a bad solution, but the above mechanism co-locates the relevant initialisation code with the field itself.



