Category Archives: Uncategorized

Nursing Diagnosis is NOT Software Engineering: Amazon’s crazy book categorization

I’ve actually noticed this for a few years, but there is something crazy going on with how categorizes its Computer Science/Software books.

One of my favourite ways to find new books is to use the “wisdom of the crowds” and browse through Amazon’s bestseller lists. If I find a book I like I always check the bestsellers in it’s categories in the hope that I can find some other gems.

The problem is I always end up getting frustrated because there is so much garbage in the lists: I would say at least 40% of the books are miscategorized.

Is this some sort of ruse by publishers to get their books featured in more places? If so its bloody annoying and doesn’t do anyone any favours.

Let me show you the bestsellers for the Software Engineering category:

Software Engineering Bestsellers List on

How can we fix it?

Instead of just whining about it I spent 30 minutes going through the top 20 and using the feedback form to contact Amazon about the problem. As you can imagine this got boring quickly.

Then I figured the easier way might be just to go through and tag all the books as miscategorized (spelt with a ‘z’ to make it easier for our American friends) and not software engineering.

One very handy tip is that you can tag Amazon books quickly just by pressing typing ‘TT’ on your keyboard. It bring up this window so you can instantly tag a product:

Fast Tagging on

The end result is something that looks like this:

Miscategoized  Tags on

If enough people (i.e. YOU dear reader) tag these products, it should be pretty straight forward just to email amazon and say:

Oi! Amazon!

Please find all your books tagged as miscategorized and fix them. In particular please remove all the books tagged not software engineering from the Software Engineering category.


So here’s the call to action: Visit the bestsellers for the Software Engineering category and tag at least the top ten books!

ReSharper 5: release date Q4/2009?

Update: The free-upgrade promotion for ReSharper 5 started on October 15th, so you are safe to commence buying licenses :)

I contacted JetBrains today because I am looking to buy a ReSharper 4.5 license but I’m hesitant to buy it if the release of version 5 just around the corner. I emailed sales and this is the response I got:

Hello Jack,
Yes, there will be a promotion period 1-2 months before ReSharper 5 will be released. A certain release date is not known yet, but it is said to be in Q4/2009.
If you have any additional questions, I am happy to help.
Best regards.

If things do go to plan and JetBrains hit Q4, that means we will hopefully see the “promotion period” (i.e. free upgrade) start at the latest in November 2009. I am hopeful it will be before that because I am not sure I can last much longer without my ReSharper fix! :)ReSharper Logo

One thing I remain curious about: Are JetBrains going to branch ReSharper into two versions: one each for pre/post VS2010? Because there is no way they are going to be able to back-port all the amazing features that are possible with WPF in VS2010. Makes me suspect that ReSharper 5 is still going to predominantly target VS2008 (with VS2010 compatibility), and ReSharper 6+ will be VS2010-only.

SQL Server 2008 Express with Advanced Services does *NOT* include Service Pack 1 (SP1)

This is a very short post just to say that I spent 10 minutes trying to track down the answer to the question: Does SQL Server 2008 Express with Advanced Services include Service Pack 1?

It’s strange but I could find no blog posts that focused directly on this question, the official download page does not mention it, and I did not want to have to download every SQL Express distribution to find out.

Eventually I did find a post that revealed the answer, entitled “Servicing SQL Server 2008 Express”. Here is the key quote:

Starting with SQL Server 2008, we won’t be shipping new packages of “Express with Advanced Services” or “Express with Tools” with Service Pack 1.  To update these editions, you will need to run the full Service Pack 1.

So the answer is a pretty clear No – the SQL Server 2008 Express with Advanced Serviced/Tools packages do not include service pack 1. And by the way, the full service pack 1 mentioned in the quote is approx 300 MB.

I have updated my SQL Server 2008 Express direct download table to include whether or not the download includes SP1. In summary only the “runtime” download includes SP1… the rest you will have to patch manually.

Don’t know about you, but I’m mildly annoyed by that conclusion.

Microsoft Expression Web 3 UI Built With WPF; Expression Studio Moves Forward

A few months ago I asked a question on Somasegar’s blog about the new Expression Web 3, specifically whether the UI would be getting updated to match the rest of the Expression suite.

Having downloaded Expression Web 3 this afternoon I can safely say one thing: Expression Web 3 definitely uses WPF. The screenshot below was taken using Snoop, a utility that lets you do 3D exploded views, and shows all the layers in the Expression Web UI.

Expression Web is built with WPF

This does not confirm whether Expression Web is using the same UI framework as Expression Blend, in the sense that a similar look and feel could be achieved independently, i.e. without the two teams working from a shared UI code base. It’s hard to pick out any UI elements that are definitively shared with Blend, except perhaps the tool windows. Without delving into the code, it’s my guess we are seeing the first steps of merging the UIs (perhaps some shared styles) but we do not have a unified code base yet. Another thing which is obvious: the finesse of Blend is certainly not yet present in Web – just witness the number of retro-fitted Win32-esque dialogs:

 One of many fugly dialogs. Yes this is real!

So what?

To explain why I am so interested in Expression Web’s UI we have to delve into the background of Expression…

It’s no secret that Expression Studio was never written from the ground up as suite of closely integrated tools. It was basically pulled together out of thin air when some marketing guy at Microsoft noticed they had a collection of upcoming software packages that could fall under a single “creative” banner. That banner was Expression.

OK, that’s the cynical explanation. :) Microsoft had a very good strategic reason to create a new design suite…

Microsoft had early realised the importance of having a large developer community. In fact today, the software ecosystem built around Windows is pretty much the cornerstone of Microsoft’s business.

Expression Studio 3 box

But as time passed expectations of how software should look & feel began to sky rocket. With software, as with most things in life, sex sells – just look at Apple’s resurgence for proof of that. Software had finally become less about features, and more about usability, enjoyment and style (users want to experience “Delight” as Shane Morris likes to put it).

The problem is, the people with the skills to improve UX – well, basically they live and breath Adobe. While Microsoft owns massive developer mindshare it owns very little designer mindshare – both ingredients are required to build compelling applications these days. Microsoft needs to capture designer mindshare and get them comfortable using Expression suite.

Practice what you preach

The problem is: if your design tool looks/feels like a turd (e.g. Web 2), why is any designer going to take you seriously? And if a designer doesn’t take you seriously how will you gain designer mindshare? And without designer mindshare how can Microsoft win the UX battle?

They can’t. That’s why when you looked at previous versions of Expression suite there was definitely a bad smell left by the inconsistent UIs. This may be subtle to some people but it’s what UX is all about – you might have a a good software product, but if your supposed suite of applications clearly don’t share the same UI framework (or dialogs boxes look like they were lifted straight out of Windows 95!) you are going to be judged and punished by the market.

That’s why its good to see Expression Web move to WPF – it was the biggest eye sore in the suite. I should add that I am a very big fan of majority of Expression, in particular Blend’s UI. It’s just that when you are selling a tool for designers/creative’s you better make sure you practice what you preach because you will be judged very harshly. Considering the pressure that is on the Expression teams (again a big shout out to the amazing job done by Unni, Lutz Roeder etc on Blend) and the standards they have to live up to they have done reasonably well. Unfortunately in this market segment they simply cannot rest :)

Step in the right direction

For end-users, the eventual unification of Expression Studio into a single, compelling UI framework will do wonders for the Expression UX, increasing user productivity and hopefully growing Microsoft’s designer mindshare. For Microsoft it will allow them to develop the Expression suite more efficiently, meaning higher quality, more frequently released applications. It will also continue to demonstrate that Microsoft are serious about using their own technologies and that WPF is a viable.

As a random aside, I am hopeful that one day Microsoft decide to take Expression a step further, growing the suite to include a Photoshop- or Fireworks-like tool, and thus create some genuine competition in the moribund designer tool market; perhaps even break Adobes dominant position it has abused for so long (see prices they charge!). Whether you like Microsoft or not there is no doubt that competition in the creative suite market benefits us all.