Tuesday 17 May 2011

Messy Imaging

There are some scenarios that DISM doesn’t work in as you would expect. When I set up a reference image for a new platform, because of my imaging topology I have images that are pre-sysprep, post-sysprep and post-dism. Generally I would choose a pre-sysprep image, but then it has to be mucked around with and sysprepped before it is ready to use. If I only had one laptop, maybe it would seem simpler to use the post-sysprep image?

Well, it seems not all images are equal. We got an Elitebook 8540 laptop, it’s the only one the school will ever have. So I thought that a post-sysprepped image with the use of DISM to give it the right drivers to start up would work. I did something similar last week with a 6710b and used the pre-sysprep image because it would need to be cloned. The problem is that for my 8540p, the post-sp image doesn’t work. It bluescreens before the Windows 7 animated moving pieces of logo have even finished circling. But if I use a pre-sp image exactly the same way, there is no problem.

So it appears there is a good rationale for having three image generations – apart from the sysprep limit that forces us to have pre-sp images in the first place. Perhaps there is not a need for a separate post-dism generation (the dism stage is done on the post-sp image to prepare it for final deployment). At the moment the process for readapting an image to a new platform is to copy the pre-sp image from another platform, dism it to remove old drivers and add new ones, and move the serviced image to post-dism for deployment prototyping. Once the image has been prototyped on the target platform there is then a series of pre-sp, post-sp and post-dism stages for the reference image for the new platform. In this case some of those steps might be skipped.

So it would appear there is some difference between an image that has been sysprepped and one that has not when it comes to servicing the image offline so that it can be reused on a different platform.

Wednesday 11 May 2011

Resetting a bootable VHD for another hardware architecture

Today I tried putting a laptop bootable VHD image onto a different laptop. I had tried this before and it wouldn’t boot. There are two problems actually:

  • The VHD file when expanded to its full size (126 GB) which happens at boot time, was then too big to fit on the available space of the HDD. Microsoft has a new Blue Screen of Death number (0x135 I think) that comes up when this happens.
  • The VHD had to be serviced with driver files for the different laptop so it would actually be able to boot up Windows on this laptop.

To solve the resize problem is quite involved. The VHD has to be attached to a virtual machine, defragged and then shrunk in that VM. In this case defrag didn’t itself achieve anything beyond what shrink itself could do, but the latter did bring the size down to 72 GB which should be acceptable.

This page here gives one methodology with the steps you can use. I simplified this somewhat and just shrunk the partition in Disk Management of Computer Management. I then moved the VHD back to the server it was originally on and then ran a tool mentioned on that page called VHDResizer to size the VHD to the partition size. This basically works by creating a new VHD file and copying the existing one to it. The web page as mentioned above probably allows much greater levels of resize but it already took so long to get the VHD defragged and so on that I cut out some of the steps in the web page and just lived with the VHD being larger than desirable.

The next step is DISM using in this case the Chipset drivers for this laptop which are the ones that contain disk drivers, finally the disk got copied to the laptop and rebooted, which worked. Finally!

Sunday 1 May 2011

Don’t get burned by Trademe’s restrictive shipping fees policy

I’ve operated a personal Trademe account for a couple of years. I only traded a small amount of stuff and haven’t had to ship anything that I can remember. Earlier this year I opened a work account and started to sell surplus computer equipment that we had had, which has brought in a small but useful amount of money for us. However, in doing this I have run into points of disagreement because Trademe seeks to regulate and restrict shipping costs in a way that is, in my view, completely at odds with the rest of the way their site operates. The auction process is a form of arbitration or negotiation. In effect the final sale price of goods is arbitrary and arbitrated in a way that is only lightly regulated in a system like Trademe’s – as it should be.

But when you get to shipping charges, Trademe has this clause which says “You may only charge reasonable amounts for shipping”. If you ask for that to be broken down, it comes to “You may only charge for the physical cost of packing” and “You may only charge for the amount you pay the shipper” (for example the fee for ParcelPost or a courier”. In actuality, when shipping goods, you are likely to incur additional costs. In our case, I would expect it to take me about half an hour to pack the goods, and there is likely to be fuel cost for me to deliver the package to a post shop. There is no logical reason why a shipping fee can’t include these costs. I think that most people would feel that these would be “reasonable”.

Every time that I have spoken to Trademe before to ask a question about how things work, they have always given me an explanation. This is the exception. They have not explained why they have this draconian restrictive shipping fees policy, nor are they open to having their policy challenged. It may be argued that the extra costs should be factored into the price of the goods themselves. This results in a higher price for buyers who are coming in to pick up goods. You could give a discount but this is possibly contrary to Trademe conditions as well as, like many things on their site, discouraged by financial penalty. It may be OK for a business to operate this way but many small traders are doing this part time or as a hobby, do not have a shipping department at their disposal to dispatch goods in the most efficient way, and therefore are doing it themselves and will incur the extra costs. Every other business that is doing mail order can charge the shipping they wish and the parties to trade can negotiate directly on shipping charges.

The only reason I could see for this policy is to push up the sale price and therefore, Trademe’s commission on the sale. As I have noted, in real life the cost of shipping, outside of doing business through Trademe, is one of those things that people can always negotiate. People are questioning the charges and fees that Trademe imposes, some of which are ridiculous (a fee to put a reserve on goods, a fee to change the closing time of the auction etc). Therefore there is room to question other parts of how Trademe operates and the possibility they might be abusing a dominant market position. The major competitor to Trademe is the Sella site which has managed to mop up Zillion and Sellmefree among others. I expect their popularity is far less but they have the correct policy on shipping fees, that it is by negotiation. I have had my fingers burned twice by Trademe over the shipping fees and they won both times because of the restrictive rules and (excessive) penalties they impose. I also believe strongly that there are traders who refuse to ship goods because of Trademe’s policy, and that other traders are interpreting “reasonable” as I would interpret it and as most “reasonable” people would interpret it.

Given the exorbitant price that Trademe was sold to Fairfax for (some $750 mlllion – who would pay that for a simple website) they are a “big business” and their policies and charges need to come under scrutiny as is the case for all big businesses.