The eleventh reason jubling reckons everyone should learn C.

27 11 2006

I found this link to ten reasons every programmer should learn C. Some of the items on the list are inaccurate, or misleading at best. Given that I decided to add to the list:

You should learn C because that is what I learnt and I don’t want to feel like a dinosaur when 80% of the worlds programmers have moved on to more productive pastures.

Did I just light a fuse?

 





Storing gigabytes on a piece of paper.

27 11 2006

Wow – is this for real? Looks like this chap is using symbols and a printer to generate a sheet of paper with a large amount of information embedded onto it. It will be interesting to see if this catches on. As a read-only format I guess it needs to run the gauntlet just like all the other formats do. I think that the cost of read-only media hasn’t been an issue for some time, but the cost and availability of drives seems to be more of an issue.

Update: Related link.





Online RSS Reader Usage

27 11 2006

Stuart Brown over on the “modern life is rubbish” site/blog/whatever has posted up an article about who is using what to read RSS. He shows a breakdown of he readers (mostly online).

I think that one thing that will start skewing these results is applications that sit on top of RSS platforms like the one built into Windows Vista. I think when developers start targetting that technology a lot of this stuff is going to look like it is coming from Internet Explorer 7.0.





Controlling Processes vs. Facilitating Outcomes

27 11 2006

I wonder how many people in the workforce know the difference between controlling processes and facilitating outcomes. My guess would be not many. If you look at how people are introduced to a role today they tend to be given a walkthrough of the processes that they have to follow to get their job done - the outcome might be mentioned but the important thing is “the process” - you know, that thing between you and the outcome.

Let us imagine that we have the following grid which represents the start of a process, and he outcome, along with some intermediate steps.

The steps in the process have been wired up such that each piece is executed sequentially, even though it is possible that some of those steps dont need to performed - the have just “always been done that way”.

Along comes your impatient person and identifies that they can have the outcome that they want just by bypassing the other steps in the proces - they are outcome focused.

The problem with being outcome focused is that process steps can sometimes produce outcomes in their own right. For example - lets say that I have just gone out and purchased a laptop outside of the standard corporate procurement process and have expensed the device. The problem is that the standard procurement process included steps to notify the accounting department that we now have a new asset.

So - who is right? The process controller (procurement officer), or the outcome facilitator (the person with the credit card). You will probably never get agreement on which way is best but what is for certain is that there is a perception that “the process” is too slow and long winded.

What if it was possible to optimised the process? Over years of operation many processes explicit steps which are no longer required, yet the people executing the process don’t know that (especially common where there is no feedback mechanism). Through a process of continual refinement it may be possible to eliminate uncessary steps in the process.

One way to do this is to be explicit about the outcome that each step involves. For example - if we take the ficticious laptop procurement process we could spell it out like this.

  1. Identify laptop the purchase, this ensures that you are getting the laptop that meets your requirements.
  2. Send laptop cart to procurement officer who will then check the order for minimum specifications and make the purchase on the corporate card, this means you don’t have to use your own credit card.
  3. When the laptop is received send the serial numbers to the accounting department. This will allow them to depreciate the asset over time and arrange any necessary insurances.
  4. Enjoy your new laptop!

I think that this helps everyone because unless you can explain why a particular step in the process is performed and what value it adds then it is a candidate for being dropped.

Now - with systems like SharePoint 2007 natively supporting Workflow we need to be careful not to turn the entry points into our processes into a black hole. A workflow should be as transparent as possible so that when someone kicks it off they know when to expect a result and what they can do if they need to try and make it go faster.





New Microsoft Homepage?

27 11 2006

I just hit microsoft.com as I was trying to diagnose a network issue and notices that I was redirected to labs.microsoft.com - looks like the big software house is about to release a new version of their homepage.