Profile Hell – The Reality of Windows User Profiles
This article is part of Helge’s Profile Toolkit, a set of posts explaining the knowledge and tools required to tame Windows user profiles.
A user calls the help desk to report a strange malfunction of an application. What does the help desk technician do? Analyze the root cause of the problem? Probably not. Most likely, the user’s profile will be deleted and the problem will have gone away. Happy ending? Not at all!
Deleting entire user profiles because of malfunctions caused by small data inconsistencies reveals a great deal of helplessness. While the user can work with the faulting application again, he or she has lost thousands of personal settings configured both implicitly and explicitly. The help desk technician, on the other hand, has learned nothing from the case, except a brute force way of closing a call. The next time a user rings with a weird problem the technician will be all the more eager to repeat the procedure.
Deleting is Cheap
Who is to blame? Nobody, really. Given the prehistoric user profile design Windows still uses in its latest incarnations, the help desk technician has no other choice but to delete the profile. Trying to get to the root cause is way too difficult and time-consuming a task to perform routinely several times a day. It is so much cheaper to just delete everything and have the user start from scratch.
Why is that so?
Finding a Needle in a Haystack is Expensive
Because user profiles are a mess, a chaotic agglomeration of data. Applications can write what they want, where they want, in what way they want into the profile. Among the piles of data junk each Windows user profile stores, there are, however, quite a few hidden gems: the settings a user actually has configured. That is the stuff users care about.
Take your favorite web browser, for example. It comes with hundreds or thousands of factory presets, most of which you could not care about less. But I bet there are a few tweaks in your configuration you would not like to live without. Unfortunately, those settings dear to your heart are buried among all the other default stuff.
And it gets worse. Not only are the valuable settings from individual applications intermingled with worthless data, some applications store their configuration all over the place, effectively creating a mix of settings from multiple programs. This makes it virtually impossible to easily identify and extract a single program’s settings. By the way, Microsoft is especially good at this mixing business. Try to identify all storage locations for (Internet) Explorer settings. I would say you are pretty good if you can do that in less than a day.
Untangling the Gordian Knot – How?
The inadequacies of Windows user profiles have led to the development of quite a few profile management products. Most of them have their merits, but none can solve the fundamental problem inherent to the structure of user profiles: there is (practically) no structure.
The current situation is not dissimilar to the one of the internet. Designed long ago with different objectives in mind than we have today, patched again and again, it somehow works – astonishingly. But for how long?
Will it be possible to gradually improve user profiles with each new release of Windows, maintaining critical compatibility while at the same time cutting out more and more dead wood? What do you think?