Windows Gripes

Since I posted the state of my Linux Gripes it seems only fair to weigh in on my current dislikes in Windows Vista, the more so since it is my day to day OS. I would not say they are critical gripes, but then neither are my Linux Gripes. Both are capable operating systems that can be used in production environments. Which you use will depend on which annoyances you are least sensitive to.

My first Windows Gripe is about configurability. Why the heck are things like the background for the login screen and icons buried in executables and dynamic link libraries? Why is the login background, not configurable to be any random graphics file from the registry or, better yet from the GUI? The same could be said for the task bar. Why can’t I apply a random image to be the background of the toolbar or pick an arbitrary color instead of using the weak control in the personalize menu?

Why must I use a program like Stardock’s Window Blinds (which I loathe for its intrusiveness) to apply icon themes, why does Vista Ultimate not provide such a tool and many other configurability tools? While I am comfortable that Windows does not ship with application software like a Word Processor, tools to configure the OS ought to be part of the OS. They could have left off the side bar and given me a tool to easily change the login screen, icon themes, the look and feel of the tool bar and the look and feel of the window frames and widgets and I would have been a happy camper.

The second gripe is with some of the default configurations. Out of the box Vista is configured with the DHCP Broadcast Flag enabled. Since many wireless routers in the wild that provide DCHP services for their networks do not support this feature, wireless support was sort of broken.

The results of the combination of the default setting and a DHCP server that does not support Broadcast Flag is an intermittent and seemingly random inability to connect to the internet on boot or recovery from suspend to ram/disk. This problem is not only hard to diagnose, its hard to explain to someone to get help with diagnosis.While the solution is trivial once the problem is known, it probably effects many Vista users and is the sort of thing that could be easily prevented if the default settings were for the world as it is, not the world as Microsoft wishes it were.

Another setting that falls in this category is the SMB setting in Vista’s security options that requires the use of NTLMv2 protocol. NTLMv2 is not supported by older versions of Samba and this gives rise to lots of “Vista does not support Samba” threads on support forums, which is patently untrue. While NTLMv2 is more secure and supported by current versions of Samba, there are lots of deployments in the wild that do not support (and will not support for years) NTLMv2. The default setting should have been for the way things are. I am sure you could come up with additional examples.

The last major gripe category is philosophical rather than practical and applies to all versions of Windows. The registry bites. It bites not because it is complicated, the sum of all the settings for a modern operating system is going to be complicated, but because it is undiscoverable.

Undiscoverability refers the the lack of a mechanism inside the registry to figure out what a particular setting does. As cumbersome as the text file settings in Unix/Linux are, at least you can open them in a text editor, read them and figure out what they do. This is especially true since most of these files are heavily commented. Good luck with that kind of thing in Windows. Windows was designed to keep people from twiddling with it. What I can’t figure out is why.

Since the registry is a database, why not use it some way to store comments related to registry entries so that users could easily search for entries they might wish to edit. For example HKEY_CURRENT_CONFIGSystemCurrentControlSetControlVIDEO{90A8002E-6E2A-4586-888B-B2A34708C312}
000Mon00000120 looks like it might have something to do with my monitor, but what? I’d like to know but the Registry gives me no way to know. This makes /ext/X11/xorg.conf settings look downright reasonable and easy to understand.