I’m not much of a gamer these days although I owe a lot of my current computer networking knowledge to having to figure out how to get LAN-based games working when I was younger.

This holiday season I decided to take a few days off between Christmas and New Year and to fill in my time I decided to download and run a massively multi-player online game called “EVE”. It is a space genre game similar to Elite (except that it is multi-player).

The premise of most of these kinds games is pretty simple, you acquire resources and gather experience points to progress through a tree of capabilities. The following picture is a skills map from EVE that I found on the Internet.

skillchart 

That is a pretty impressive diagram but possibly a little bit too much to digest in one sitting. Applied to a commercial scenario, a tech tree might look something like the diagram I added to my post Enterprise Technology & Strategy Games that I wrote a while ago.

What is missing from that diagram is really a sense of time and how each one of the items in the tech tree relates to the overall business strategy. This is really where the idea of “product roadmaps” come in.

A product roadmap is really a diagram with a number of data points laid out over time, the following site has a few examples of different ways you could express a product roadmap:

If I distilled what each product roadmap needs it is:

  1. Product progressions dimension (v1, v2, etc).
  2. Time dimension (what span of time is this going to happen over).
  3. Informational dimensions (what else is happening over time, what is the correlation?).

What I thought it might be interesting to do is overlay both of these concepts, product roadmaps and tech trees to see if more information can be packed into one diagram. Let’s take the example from my earlier post.

TechTree

In this diagram you can see how some of the platform changes and general advancements contribute to the progression of the product. Each advancement comes about because of a specific business context which is anticipated at that time.

One really important thing to note is that as a plan for the future, a product roadmap needs to be flexible enough to change should the business context change.

Summary

I think that Technology Trees and Product Roadmaps are important tools and I think when combined together with anticipated business context that they could be quite a powerful presentation tool.

This is applicable to my role right now because as I work with both internal and external customers we need to be able to understand the underlying business drivers then determine what the key pieces of technology that need to be delivered to achieve that. The bundling of technologies into products really represents logical groupings of technologies that can be delivered together and be useful.

The first novel that I have read on my Kindle is Debatable Space, a sci-fi novel by Philip Palmer. I found the book to be hard reading but I think by the end of it I figured out why I didn’t really like it:

  1. Character development; there was actually heaps of character development in this book, so I can’t fault it. What I didn’t like is that having developed the characters to a point, the author just went on developing them some more, and then some more. I didn’t really get the feeling that I “got to know the characters” because I kept getting side swiped by a new revelation. Half the fun of reading a story is getting to know the character and being able to predict how they are going to react at a macro level.
  2. Narrative style; whilst a lot of the book was written by a subjective point of view I never really felt like I was in the room. I think this could be due to the character development as well – maybe I am such a poor reader that I like to have clearly defined heros.
  3. Adult themes; a certain amount of explicit material is expected in the sci-fi genre. It just seems to go with the territory but this book seemed to take it to the extreme and it didn’t really seem to add much value.
  4. Lack of exploration; one of the things I love about the sci-fi genre is how authors introduce and expand upon bleeding edge concepts such as relativity, nanotechnology, alien life forms etc. This book had those elements present but I would have loved to see more exploration of these topics rather than leaving them as just props.

Despite what might seem like a negative review, I’d love to see the author write another book in the universe that he has created and address some of the issues above, perhaps with a smaller time-scale. I thought the DR robots were an interesting concept, especially the aspects of their remote operation.

amazon_kindle_21 On Saturday last week I was lucky enough to get an early Christmas present, an Amazon Kindle. This little baby has been pretty high on my gadget lust list for quite some time and it was a genuine surprise when I opened up the wrapping.

Of course, readers in the US have had the ability to purchase a Kindle for quite some time but it is a relatively new innovation in Australia because the wireless capability wouldn’t work – even if you did manage to smuggle one in. Now thought it is all smooth sailing and we pretty much have all the capabilities here in Australia that users in the US do.

Now that I am five days in I think I am in a position to provide some feedback. First – the things that I really like:

  1. The form factor and weight is pretty much perfect, I have it in the leather Kindle pouch and it is about the same weight as one of my sci-fi space opera books.
  2. The screen is very readable, in fact I’m just about to start reading the Destiny’s Children series by Stephen Baxter and I’m sad that I have to switch back to paper book format because I can only get the last book of the series in Kindle format (more on that later).
  3. Battery life is amazing. I’ve really only charged it once in the five days I’ve had it and I’m still only half way through one charge – and I’ve been reading fairly heavily.

There are also a few things that I think Amazon could improve with this device:

  1. Navigation and menus; in book navigation is as simple as it could be, and the device really does disappear in your hands. However, when you are not reading content and doing things like managing content it can be less than obvious – for example figuring out how to remove content from the device.
  2. Content availability; there is actually more content than you could ever read available for the Kindle, but they seem to be missing some pretty key authors in the sci-fi section. I’m a lover of space opera sci-fi and so I was disappointed when I couldn’t download anything from Peter F. Hamilton.
  3. Content request system; I’m not sure if this is already being done, but surface all content in the Kindle store so that people like me can request that certain books get converted to Kindle format. I’m not sure what would be involved with this but it would be great to be able to request some books from my favourite author and then have that put into a queue that I can watch.

Overall I would give the device a 4 out of 5 and I do believe that the Kindle, and Kindle-format software will be the defacto standard in the digital book/magazine market. Amazon already has relationships with pretty much every publisher on the planet and they will use that influence to drive content to the Kindle.

0672329980 Full disclosure, I received a review copy of ASP.NET MVC Unleashed from the author – Stephen Walther (actually, more precisely Ruth Walther who I worked with long ago in the early days of INETA).

Whilst I didn’t purchase the hard copy of this book I’m seriously thinking of purchasing a soft copy (in Kindle format) so I can always have a copy handy as a bit of a quick reference. Most of the time I find that books come in two forms, front to back cover reads, or indexed references. This book sits somewhere in the middle because if you haven’t used ASP.NET MVC before it would probably be a good idea to at least do one pass front to back to get an appreciation of what is possible with this exciting framework.

But I also find this book to be a bit of a cookbook for how to use MVC in your own applications so in a way its good as a reference as well. As usual Stephen’s writing style is very approachable and he does a good job of explaining key concepts and expanding on them with examples.

If you are looking to get into ASP.NET MVC I would strongly recommend this book. If you are just getting started with ASP.NET I’d also recommend Stephens other book, ASP.NET Unleashed as a bit of a primer.

  1. You are still using Internet Explorer 6.0 as your corporate browser standard.
  2. You are still using a version of Windows south of Windows XP.
  3. You are using Windows XP and have no plans to upgrade to Windows 7.
  4. You have all the standard applications installed Word, Excel, PowerPoint but none of them work properly because they were customised heavily during deployment.
  5. You can’t access Google without special permission.

OK – I might just be throwing stones now. Anyway – check this out.

Rosebud Film Festival

November 13, 2009

I’m sitting in the Rosebud Cinema for the Rosebud Film Festival. Just watched Cloudy with a Chance of Meatballs. Pretty funny, pretty corny.

Like most organisations, when recruiting Readify conducts a series of coding tests. I won’t go into those tests in detail but one thing that I reflected on today was more around the evaluation of those tests and the difference between “good code”, “acceptable code”, “bad code” and “not my code”.

As we grow we have to distribute the recruitment evaluation process across some of our more senior developers/consultants rather than just relying on a few people (people tend to do tours of duty when it comes to recruitment effort).

The problem is, even amongst the reviewers there is some differences in the way people would implement things. Someone’s “acceptable code” might be what I call “good code” because of its simplicity.

Unfortunately, code reviews will always be subjective. So it is important for candidates to do the absolute best job they can do without flipping over into over-baking any particular solution. Likewise it is important for reviewers to learn to distinguish the difference between “acceptable/bad code” and “not my code”.

Ahead: A time of optimism.

October 16, 2009

The last eighteen months has been a rollercoaster from an economic point of view. Around the world the financial empires crumbled. Australia faired better than most with its regulatory controls but we still felt it. Looking ahead the future looks much brighter, the economy seems to be fighting its way back and people are starting to be optimistic about where things are going.

Optimising is the birth place of creativity, and for a software developer you want business to be thinking creatively.

As a professional services provider, Readify is well practiced in the process of filling in timesheets to support billing functions within the business. Consulting tends to be a T&M style engagement so turning those time entries into money isn’t a major problem (although you wouldn’t have AR/AP staff if it was a complete no-brainer :P ).

Moving into the project delivery space like Readify is puts a slightly different spin on timesheets. We effectively engage on T&M projects but because we utilise Scrum (or Scrum-butt variant depending on the client) we run into an interesting situation when comparing time estimates against sprint backlog items and timesheet actuals.

Going through the sprint planning exercise recently we sit our ideal day at about five productive hours of development per day, meaning that there was about three hours of other stuff not accounted for (not necessarily unproductive, but potentially unforeseen).

The problem is, when you have a team of four people that means that you might end up with 60 hours of “other stuff” and the client rightfully questions why they are paying for this.

It’s About Business Value

As we talked through the issue I pointed out that we really need to compare the submitted timesheets against the business value delivered, not the submitted timesheets against the estimates. Submitted timesheets include the 3 hours of “other stuff” which is difficult to track in a software project.

At the end of the day, dividing submitted hours by the estimated hours in a sprint backlog really just gives you a number and completely ignores the business value delivered. I think that this is probably the biggest argument for using a non-numerical sizing mechanism like T-Shirt sizing (S, M, L, XL) rock-paper-scissors style over planning poker.

I’d much rather have a conversation about value delivered to determine in the first instance whether there was some, and secondly how to optimise it sprint on sprint. I think when you get back to this you start being able to focus on what is really important. If you didn’t get much value out of this sprint then maybe the product owner didn’t prioritise correctly.

Whilst it is a bit of an overhead the team started tracking time in a timesheet to do some task analysis. Hopefully after a few sprints we’ll be able to talk intelligently about what some of this “other stuff” is and suggest ways to optimise it.

Yesterday I was sitting in the lobby of the hotel waiting for my ride to a client meeting. A MacBook user walked up to me an commented on the slightly different power adapter on my MacBook Air (as compared to say a MacBook Pro). We talked about the relative performance of a few of the different models and then I mentioned that I was actually running Windows 7.

A lot of people aren’t even aware that Windows 7 is on its way. I ended up having a bit of a conversation about how Windows 7 runs very well on my MacBook Air – much better than Vista.

Overall I think the feel around Windows 7 is very positive in the technical community and I think with that Microsoft is going to be very successful with this new release. Vista got such a bad name so early that it was impossible to recover from and as much as people despised Vista, their XP environments are starting to get a bit long in the tooth.

Besides – if you are a Mac OS X user, Windows 7 is much more interesting than Apple’s latest offering. Their latest marketing material reads like a bunch of “mediocre and proud of it” statements.