Disk cloning kills Safely Remove Hardware (hotplug.dll)

I love Acronis TrueImage. It’s one of the essential CDs in my toolbox, always handy for backing up data on hard drives, cloning disks and saving a lot of time. Even Seagate is using a custom version of TrueImage for its hard drive installation tool.

By the way, if you’re into Open Software, my second choice is GPartEd – free and just as powerful!

Having cloned so many disks and systems before, today’s seemed to work as a breeze. After all, I was transferring the software between two laptops of the same model, from one with lower specs to another one beefed up with RAM and a bigger hard disk. On the new laptop, Windows started normally and needed drivers only for the new wireless network card. Perfect, right?

Wrong.

Double-clicking the “Safely Remove Hardware” icon in the System Tray returned the following error: “An exception occurred while trying to run Shell32.dll, Control_RunDLL
hotplug.dll”

At this time, I was fearing that either I’ll have to fix some crazy DLL by running sfc /scannow in command line (to check all Windows core files and restore them from the hidden repository) or by doing a repair install. I also suspected the RAM, although earlier tests proved it to be error-free.

Google came to the rescue by identifying a similar problem and its solution here. The explanation makes sense.

Basically, Windows adds in the Registry some code for each hardware component it finds. This also applies to the hard drive. After Windows is cloned on another hard drive, on the first start-up it will obviously detect the new hard drive and create another code for it as well. The problem is that, for some reason, this code is corrupted in the Registry, missing the invisible “Null” character at the end of the “Generic volume” text – the code marks the end of the text. Consequently, the new hard disk’s name is crippled, which in turn crashes the Safely Remove Hardware functionality implemented in the hotplug.dll library. So there, we know what’s wrong.

Why does this happen? It’s not clear to me (or even relevant) if it’s a bug within Windows that shows up only in specific circumstances, or if it’s a bug in Acronis TrueImage. Some people say that Acronis is actually inserting the code for the new hard drive into the registry of the Windows installation it’s cloning, but I find that hard to believe.

There are two ways to fix this, depending on your PC Power User skills and desire to assume risks.

The simple way to fix this is to delete the offending disk from Windows’ list of identified hardware components, restart the computer and let the operating system redetect it and add the code correctly. For this, you right-click My Computer and select Properties, then go to the Hardware tab and click the Device Manager button. Alternatively, go in Control Panel and open System. In the Device Manager window, enable Show Hidden Devices option in the View menu, then expand the Storage Volumes section below and find the offending drive there – you’ll recognize it because of the weird characters in its name, instead of Generic volume. The options now are to right-click on it and select Delete, or double-click the volume and click the Update Driver button in Driver tab, let it find a driver automatically, and restart the computer.

The more complicated way (and somewhat more dangerous) is to find the corresponding registry entry for this volume, double-click it to edit it, then just hit OK without making any changes to it. This will force the Registry Editor to add the missing Null character at the end of the text. More specifically, navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\STORAGE\Volume\somelongcodehere and edit the DeviceDesc key – it should contain the name Generic volume. Restart the computer after finishing opening all keys for all volumes detected by the system.

Another day, another mistery solved :) The new laptop is a snappy little fella, and the cloning saved me probably 10 good hours of installing and configuring everything from scratch. Awesome!

How to work as a web designer

I read rek‘s discussion on Reddit.

In short, after months of working as a web designer for a customer, he got fed up of not getting paid and removed his work from the customer’s web host.

I can relate to the frustration, and I’d be able to pay off the US debt if I had a penny for every time a customer screwed over the web designer. :)

In principle, web design seems a fairly straightforward deal. On one side, the customer has an idea about a web site, is able to articulate it in a very specific way, and has some constraints for implementing it — budget, time, perhaps quality or responsiveness, visual guidelines for corporate stuff, and such. But the customer doesn’t have the technical abilities and skills to implement the idea, so he hires the web designer to implement the request.

The problem with web design is miscommunication of expectations and roles constraints. Most of the time, the customer has no clue what he wants, is very vague in requests, changes his mind a few times per day, keeps making changes to the initial request. Most important of all, the customer thinks he is in charge of the design, and the project is completed (and should be paid for) when he is perfectly satisfied with the outcome.

That’s wrong.

Firstly, the success criteria for the project must be written down before the first line of code is created. Most of the time, the customer is not in the intended audience for the web project, so his personal satisfaction with the outcome should not be taken into account. Supposed you are asked to design a websites for kids for a toy factory; should you ask the factory management if they like the site, or a bunch of 3 year olds?

Secondly, the project is completed when the web designer delivers all points agreed in the document signed at the beginning of the project. Being extremely specific is the key here: you must be able to prove that the work you have completed is exactly what the customer requested and works exactly the way the customer requested. You also have to be careful that the customer writes down all his assumptions. Make it clear that “if it’s not written down, it doesn’t exist and will not be delivered” so that you don’t end up with complaints like, “but I assumed that the data entry form can be used like an Excel worksheet, so I can insert multiple rows and copy/paste data on screen!” Don’t assume it won’t happen; it has, and it will!

Thirdly, any change request to what was agreed in the original document must be treated as an addition to the initial costs and timeframe estimates. The designer must reevaluate the scope of the design, the new cost and delivery date, and obtain the written consent from the customer for the change from the initial agreement (contract). If you are dealing with a difficult customer who keeps changing his mind, you can limit that by agreeing on an additional fixed fee for each change in the specifications. This will make the customer think twice if they have to pay $200 every time he wants to change (again) the site’s background color.

Fourthly, the web designer is the designer. He is the specialist who knows how to build on the technical aspects to best implement the customer’s vague idea. The customer should only communicate his needs and constraints, and let the designer propose a solution. The designer needs to be very, very clear on who has the designer role and what are the limitations of the customer in this relationship.

There are at least two approaches to establishing the designer role.

On one hand, the web designer can work on order, simply implementing the very specific requests from the customer. In this scenario, the customer is also the designer, and fully responsible for the outcome of the project; the web designer is simply the “robot” who executes each request blindly. This kind of arrangement should be clarified from the beginning and paid by the hour, with the web designer keeping close track of the time spent on implementing the requests. Project can go on for as long as the customer continues to request changes and is willing to pay for it. This keeps the customer happy, but usually leads to poor design results, bad choices on long and even short term, huge costs and demotivated web designers.

On the other hand, the web designer can really be the designer, and supplement his technical abilities with consultancy services and encapsulating his work in a service delivered to the customer. This way, the web designer can fully use his knowledge to propose the best solution for the customer’s scenario, optimizing cost and minimizing the time for delivery. This is the kind of project a web designer will be proud of and will put his heart into. But, it is often a problem with incomplete specifications and assumptions from the customer and managing the customer’s on-going dissatisfaction with lack of control and the “I’m paying for it so you should be doing as I tell you to” kind of attitude.

Last but not least, financial tracking is part of the web design project. The developer must keep track of every hour spent working, and to make sure he is getting paid for it. For long projects, an agreement for incremental payments is recommended, and at least monthly payments for working “on order.” The developer can request a non-refundable percentage of the initial estimate to be paid before any work is done. He should implement restrictions for viewing even the partial work before it is fully paid, so that the customer can’t steal it. (Strong word, but unfortunately very spot-on.) Allowing the customer to view the work on a test server is nice, but sometimes the developer shouldn’t give the customer more than screenshots. Make sure that both parties agree on the intellectual property ownership transfer from the developer to the customer, only on the delivery day and after full payment.

Is there more to add to this quick guide on a healthy web designer job? Sure is — please send in your comments!

Buying a dSLR: Tip #7

Tip #7: Photography is an art which needs a lifetime of learning.

Photography is not the technological aid of capturing whatever your eyes see; it is the art of expressing your own vision of the world, of blending technique, light and color to draw attention to things that make your heart stop and your mind race.

A good photo will tell a story in itself, will make people relate to it and tingle all over with feelings they didn’t know they had. If you are serious about going down this road, go that extra mile of making even your family photos tell silent stories to anyone seeing them.

By buying a more expensive camera, you will not automatically get the talent of inducing drama, joy, tears or hope into people’s hearts.

Also, everyone’s a critic. Some people can’t even use a point&shoot camera, but boy, aren’t they full of oppinions about other people’s work! Don’t take offense, see what they have to say, ask what they do like and what they’d do differently. Take advice constructively, learn from common mistakes and practice, practice, practice. Re-do some of your work every couple of years, just to see what you’d do differently and how much did your experience grow.

Probably the biggest investment after buying a dSLR should be in the TIME to go out to practice and take those jaw-dropping shots. Good shots rarely find you; usually, you have to work to find them, fine-tune them, create them. You don’t need exotic places; there’s beauty hidden in ordinary things, waiting to be unveiled. Take your time; I know professional photographers which pick 2-3 photos worth saving out of 100 shots captured on camera.

Buying a dSLR: Tip #6

Tip #6: Don’t get caught in the brands war between hardcore fans!

Once you step into the dSLR market, you will notice that owners here are far more polarized around their favorite brands. Some will swear by Canon, while others wouldn’t touch anything other than Nikon (and nothing made outside Japan, God forbid!). A compact group still cries for Minolta’s disappearance from the market as an independent brand, and hates Sony for taking them over, while Sony fans think it was the natural thing to do.

Another small but strong message comes from Pentax fans who divide the digital photography market in “Pentax” and “irrelevant commercial garbage.” Then comes Fuji, and Mamiya, and Hasselblad, and a long list of other brands more or less specialized, each with its own group of fans (and sometimes zealots) which, given even the hint of an opportunity, will blast their appreciation for their favorite brand and despise of anything else.

Heck, I’m sure you’ll even find a couple of guys who’ll favor Kodak above anything else because “they were the first to come up with a digital camera in the early ’70s.” That suitcase with lens and viewfinder wouldn’t be allowed as an airplane carry-on, but it is nonetheless the first digital camera in the world!

Be careful not to get in the middle of this war. Take everyone’s opinion with a grain of salt, and judge for yourself 1) what makes you happy, and 2) which manufacturer satisfies your personal needs better with its line of products. Do ask product owners of pros and cons for what they own, and learn from their experiences. But don’t allow them to choose for you.

One more thing: you’re not choosing a hammer at the hardware store! Treat the dSLR as a luxury item, like an extravagant piece of jewelry. It has to fit you, to make you feel good, to “click” with you, to become a natural extension of your senses. Go out and try all cameras you can find in showrooms, make a list of likes and dislikes, then come back and learn online what you should expect from each one.

Buying a dSLR: Tip #5

Tip #5: Accessorize, accessorize, accessorize!

You’re going to spend quite a bit on accessories. You could get several bags: a compact one (a slingshot, maybe?) for light travelling and shooting as you walk; a bigger one, to fit a few lenses and filters, when you’ll have time to plan a shot more thoroughly. You may want to get a bag that fits your laptop, too.

For travelling or carrying your gear for extended periods of time, you may want to purchase a vest or belt to hang your gear on, and a soft neck/shoulder strap. Nothing kills inspiration and good shots than physical fatigue in your muscles.

You’ll need a lens cleaning cloth and fluid, and an air pump. Given the nature of dSLR cameras, you will get some dust or, God forbid, sand inside the camera, stuck to your sensor. It’s not a question of “if,” but “when.”

Filters: the minimum are an ultraviolet light filter as a fingerprint protection, and a circular polarizer for nature/sky/water/car show shots. You may want to get these in various sizes for each of your lenses, or get big ones with step-up adapter rings; your choice.

Then comes everything else: supplemental batteries, possibly a grip for better handling of portrait shots, memory cards, a memory card reader, external flash, mini-tripod or monopod, a foldable reflective screen. Studio photography has its own long list, starting with flashes, stands, umbrellas, softboxes, backdrops…

Lots of dough invested in accessories — plan your expenses smart.