When a user installs a product on his or her machine, a degree of trust is given to that application, and in return that application is required to meet some expectations. This series explores these expectations.
As a user I make an effort to keep the files on my computer well organised and tidy and I expect the same from the software I use. However years of computer use have revealed that there are very few applications that meet this expectation.
A big part of the reason that this expectation is so hard to meet is because different people have different ideas of what “organised” means and each developer or company imposes their definition of organisation on the defenseless users file system.
To help alleviate this issue Microsoft, have released design guidelines which outline for developers where various types of data should be stored. These guidelines appear to be an attempt by Microsoft to lead their developer community by example, I might applaud this if only Microsoft would adhere to the guidelines they have set.
For me the most irritating demonstration of this comes from the Microsoft Customer Experience Improvement Program. For those who have not encountered it, the Customer Experience Improvement Program (CEIP) is a feature of most major Microsoft applications which periodically provides Microsoft with anonymous usage information.
The general idea of collecting usage information is one that I agree with in principle, however the way Microsoft have chosen to implement the Customer Experience Improvement Program only serves to detract from my usually pleasant experience as a Microsoft customer.
Because data is gathered over time it must be stored. If one were to follow the guidelines set by Microsoft it would be reasonable to assume that data such as this would be written to one of the designated locations for temporary or application application data, sadly this is far from reality.
CEIP data stored as hidden files with names such as “SQM0000008.sqm” in the root of the system drive (usually C:\). This irritates me for a few different reasons
- It’s Disorganised:
The whole point of a file system is to group files logically. The root of the drive is a special place where only the most critical files reside. Usage data is not that special.
- It’s sneaky:
The root of the drive is not for miscellaneous files. Just because the files are hidden does not mean they are not there. “Out of sight, out of mind” is not an acceptable policy because…
- It sets a bad example:
Imagine if a budding software developer saw this and thought “Microsoft did it, so it must be OK”. If we allow that attitude to propagate we are creating a generation of poor developers who will deliver a poor user experience. We are all users, therefore we all loose.