Sunday, November 8, 2009

The most detestable feature in Windows 7

For a long-time user of Microsoft Windows, not to mention a 15 year pro Windows software developer, Windows 7 is a tremendous step in the right direction. It is Windows Vista SP2. It is also Windows Vista perfected. It is also Windows Vista with the UAC dialed down a notch. It is also Windows Vista with better support for MPEG-4 and Blu-Ray. It is also Vista after the hardware and software industry have figured out that Microsoft is serious about imposing regulations on what software can and cannot do. All those sayings are essentially correct.

Like Vista, Windows 7 presupposes--that means it essentially requires--the existence of a fairly powerful DirectX 9.0C GPU. Unlike Vista, Windows 7 has begun to exploit the programmability of the GPU to perform many mundane tasks. We call this domain of programming GPGPU, General Purpose use of Graphics co-Processor Units.

So why the hell should you care about that? A good GPU is about 10 to 20 times more powerful than its companion CPU on average, that's why. This is also true on a dollar-for-dollar and watt for watt basis. Pick your CPU and GPU at the same price point, and the GPU is likely to be 20x stronger than the CPU. For example, the new Radeon 5770 can roast the the most recent Core i7-870 on all empirical benchmark tests.

All this means Windows 7 can get be a hell of a lot faster, if you don't fag-up by going with an Intel GPU.

Now after giving Microsoft its due, it is time for me to spill the beans about the worst and most detestable feature of Windows 7. When you move any window towards any border of the screen, said window has a tendency to expand. It may expand to fit vertical space, or may expand to fill the whole screen. It does this relentlessly. It will not stop. I have investigated the web for some sort of a key or registry setting I may throw to shut off this horrendous feature, but so far I have had no luck.

So why is this the most detestable software flaw in Windows 7? Because we have large screens these days, that's why. I personally have a 30 inch screen form Dell. The express purpose of a 30 inch screen to have more than one window open at a single time. I am good at positioning my windows, than you very much. I don't need any help to do such an infantile thing. Words cannot express how much anger the sudden explosion of a Window has caused me. I have wasted more time shrinking windows after they have taken over my screen... I can't tell you... I am absolutely livid about this "feature".

Implementing this brain-damaged feature is one large step in the direction of defeating the entire purpose of large high resolution screens. I want to make it clear that large 2048x1152 and 2560x1600 resolution screens are the future of our industry. Soon, we will see the birth of the 3840x2160 screens at much larger sizes; such as 55 inches. It is categorically preposterous for any software engineer to presume that all users will always want to fill all that space with just one Window, anytime you bump a screen edge.

Who would have thought of such a dumb idea? Who the fuck ordered this feature? Who gave this nonsense idea the green light? How did this get into the beta, much less the final edition? How could you not include a switch to turn this off? How could you not loudly publish disclaimers, stating that this feature is not for everybody, and explaining how this feature could be turned off?

Let me give you a concrete example of how you just fucked up one important workflow in an industry where Microsoft is struggling to make some headway. Let's suppose you do 3d visual effects for Hollywood movies. Let's suppose you do those Visuals with Modo 401 and XSI 2010. Let's suppose you composite 3d elements with 2d digital film using EyeOn Fusion.

This is a complex process. There are a lot of parameter settings for any rendering and any composite. How you set those parameters greatly impacts the realism of the final product. You many need to try it 6 to 20 different ways to find the most realistic combo of parameter settings. To determine which combo is best, you may need to set up 6 instances of VideoLan side-by-side on your 30 inch screen to see how they look. When those windows explode to cover the entire screen, the visual tester is going to be plenty pissed.

This reminds me of any other wretched issue. There is another nasty feature in Windows 7. When you have a screen crowded with windows. Passing one window over another causes all the other windows (that don't have the focus) to suddenly minimize. Oh boy is that fucking stupid! Who in the hell though of that? You need to implement a drug testing program in Redmond Washington right away. Too many designers are showing signs of brain damage.

Memo to Microsoft: We need off switches for both of these features! Get to work!