Saturday, March 10, 2012

The most successful user interface and app platform in the history of computing is being killed

I came across a very interesting case study on the Windows UI. Absolutely worth reading for any Windows enthusiast: Windows 95 User Interface: A Case Study in Usability Engineering. It evoked many nostalgia-inducing thoughts in me. Microsoft had really got its act together with Windows 95 and reached a GUI breakthrough. But they didn't stop there, Microsoft continually refined the Windows Shell in IE4/Windows 98, Windows 2000/Windows Me and perfected it in Windows XP (yes Windows Me shell which it shared with Windows 2000 was a huge step ahead of the Windows 98 one). With Longhorn which eventually shipped in a drastically altered form as Windows Vista, the shell had been heavily changed, in some parts for the better, but in many areas, for the worse. Still it offered a decent user experience. It's a shame Microsoft is totally abandoning these ground-breaking concepts of Start Menu, Taskbar and the desktop while moving on to the Start Screen, whose paradigms of multitasking, switching, launching, searching, notifications etc are all inherently inferior and far less advanced. No one at Microsoft, not even the UX designers have a clue how bad it is. They are just scared of Apple and their growing ecosystem - the flourishing iOS platform, and probably live by the expression "Imitation is the sincerest form of flattery". And it's not like Windows veterans haven't given the Start screen a fair go and tried to adapt to it with an open mind. Problem is it is less advanced than the Start Menu - the same problem that plagues Microsoft since Vista - create something new and great but it doesn't do all the great things the old one did, not even half of them and then they force their choice on you.

Microsoft should have adapted and extended the existing shell concepts to a touch-friendly UI with a larger surface area. Instead, they re-imagined the concepts of launching, switching and multitasking for the Start screen and in the process, will end up completely ruining the carefully designed Windows GUI. The very reason Metro was introduced was because the existing Windows shell didn't work for touch-based GUIs. Why it didn't work is because the surface area is smaller and designed for the mouse pointer, instead of the fingers of your hand and because touch-based UI also has to incorporate gestures. That part is fairly true, but somewhere in the process of re-imagining things, Microsoft forgot how well the Windows Shell worked for mouse and keyboard. They just don't understand that there is no reason why there must be a unified interface. Add to that their really evil decisions to force a choice on the user ever since the Vista era and to engineer a UI without backward compatibility. With the Start Menu gone and the Start screen no longer having a taskbar, we truly have a disaster on our hands.

The Windows Shell was a masterpiece of usability engineering and now they have ruined the experience by declaring it "legacy". How dare they even call desktop apps and environment as "legacy". Windows Vista, Windows 7 added some truly wonderful features like Start search and jump lists but they also slightly ruined the shell in both releases because Microsoft UX is doing a really lousy job overall since Vista. Windows 8 will completely deprecate it. I expect future releases of Windows to also incorporate the Windows File Explorer into Metro in a dumbed-down form and kill its powerful desktop avatar.

Windows loyalists with a sharp eye, and good understanding of usability and backward compatible interface design immediately noticed the mis-steps in Windows Vista and Windows 7. Vista UX was a disaster for reasons more than just bad interface. The ecosystem hadn't caught up, the stability was questionable and parts of the OS were a work-in-progress. These were all addressed in Windows 7, except of course, the interface issues. However, the core UI concepts of the Windows Shell were so good and remained the same. With the rest of the Vista issues gone, this was good enough for the average crowd, which is why Windows 7 was a success. It's a sad day for Microsoft Windows fans who saw how great the UI was.

Now as for as this Metro UI is concerned on the tablet form-factor, what Microsoft is doing with Metro isn't bad, it's okay but it's nothing special, it still requires more effort to switch seamlessly. And it certainly doesn't match the smooth multi-tasking which the taskbar and Start menu combination offer on a larger screen. Why they couldn't adapt similar concepts to Metro is beyond me. And then, neither the iPad, nor Android-based tablets are doing anything that innovative with the tablet UIs. But at least they are more beautiful than Metro.

Jim Allchin, the guiding father of Windows, is no longer with Microsoft and Microsoft needs a leader who can guide them on user experience of building products in a backward compatible way, I don't believe the current leadership is committed to backward compatibility. Microsoft is not Apple, and if they stop caring about backward compatibility and choice like Apple do, they won't survive.

Windows was a rather unique platform, it was not as closed, proprietary, locked down and controlling as Apple, it was not something like free software or Linux which doesn't reward its developers. Windows wasn't as dumbed down as Apple products, yet at the same time, Windows didn't burden you with so many overwhelming choices (like Linux distros) that it's difficult to make a decision. That all changed after the release of Vista and Windows is today a totally locked down and dumbed down software platform. Apple's platform looks more open, more customizable and more powerful to me right now. Windows 8 is a product of you not objecting to Microsoft removing features in Windows Vista and Windows 7.

On a lighter note, Windows 8 can be summed up as in the following video:

Saturday, March 3, 2012

How to install Windows XP on today's hardware or immortalize it

So if you have realized by now that Windows XP offered you the best computing experience and everything after that is a reduction in productivity and usability, here's how to install Windows XP on your modern computer. Yes, don't believe the fanboys who tell you that XP won't run properly on "modern hardware", Windows XP runs just as well on a modern multi-core computer. The kernel of Windows 7 and Windows Vista operating systems may be optimized a little bit more for multi-core processors, no one's denying that, but that doesn't mean Windows XP will run with any considerable slowness as right from the very beginning, at its fundamental core, Windows NT-based systems have always been engineered for symmetric multiprocessing and scale in performance very efficiently with modern hardware. The most common issue you are likely to run into when trying to install Windows XP on a modern PC is SATA/AHCI driver availability. Specifically, when you try to install Windows XP on a computer with AHCI/SATA mode enabled, setup will halt at a blue screen (BSOD).

When Windows XP was released, there was no SATA, there was only IDE. Intel standardized the SATA disk controller and host bus adapter interface into an universal interoperable standard called AHCI. In simpler terms, this means, you need AHCI drivers for Windows XP if you wish to use it on a modern PC with AHCI enabled in the BIOS. If your BIOS permits it (most BIOSes do), you can set it to IDE mode and install Windows XP from the original disc or the CD you burnt as you were always used to doing without any issues.

But if you turn on AHCI (recommended), you need to supply Windows XP "Text Mode Setup" (the one you see when you begin XP setup from CD) with AHCI drivers. To do this in the simplest way possible for non-geeks, you need to first determine which disk controller your motherboard chipset has. The F6/AHCI drivers can be downloaded from the website of your motherboard's chipset manufacturer or disk controller manufacturer. For example, if you have a motherboard from any manufacturer, but with an Intel-based chipset, you need to go to Intel's driver download website to download F6/AHCI drivers. Once you locate and download these, simply download nLite and slipstream (integrate) the F6/AHCI drivers into Windows XP setup. Now you are all set to install Windows XP.

The next step involves transferring the updated Windows XP setup files to a CD or even better, to a USB flash drive. To make this easier, I recommend you to download WinToFlash and use it to create a bootable USB flash drive with Windows XP setup. Set your BIOS to boot from USB, start XP setup and now you can install Windows XP, just like you could install it before SATA arrived. 

Now, that you know how install Windows XP natively, here's how to further immortalize your copy of Windows XP so Microsoft can't kill it by working with its partners to pull driver support and forcefully make it obsolete:

1.  Virtualization: Use a product like Parallels Workstation Extreme. With virtualization, drivers get out of the equation and you can forever run Windows XP. Parallels Workstation Extreme will also virtualize high performance graphics and network with near-native performance. Currently, Parallels Workstation Extreme works with any Intel CPU/chipset with both VT-d and of course VT-x, as well as high-end workstation-class GPUs like NVIDIA Quadro series (which have a technology called SLI Multi OS) or AMD FireGL/FirePro. This is groundbreaking stuff actually, as for the first time, you will be able to virtualize Windows XP with high performance graphics. (Update: Parallels tells me, that Workstation Extreme will also work on consumer grade high-end hardware like Intel Core i7 Extreme and NVIDIA GeForce/AMD Radeon GPUs. The chipset/platform should support VT-x and VT-d). Although, note that I haven't personally tested Workstation Extreme on consumer grade high-end hardware.

2.  When security upgrades end for Windows XP, run as standard user and use SuRun to elevate apps as admin that don't run as administrator. In fact, even now, you should switch to standard user accounts and start using SuRun. SuRun behaves exactly like Windows Vista/7's UAC.

3.  If you are an end-user/consumer, get the last supported high performance consumer platform: Intel Sandy Bridge-Extreme (X79) chipset and Core i7-3960X on which you can run Windows XP with full AHCI support. With the next chipset revision, Intel may not release AHCI and chipset drivers for Windows XP.
4. If you prefer to run as administrator, you can lock down most apps and run them as ‘Basic user’ using Software Restriction Policies. Follow this guide to run any program as Basic user instead of Administrator.

Friday, March 2, 2012

Windows 8 shows the problem again of UX getting severely dumbed down & feedback being ignored at Microsoft

Windows 8 Consumer Preview is here and there are no improvements to the problems I pointed out to Microsoft. I reported these through the Send Feedback Tool, through the B8 blog and forums and email. All in vain.

Explorer still auto sorts all files. (Problem since Vista)
You still can't manually arrange items in Explorer. (Problem since Windows 7)
The servicing (CBS) store still grows in disk space significantly with every installed update so your free disk space reduces over time. (Problem since Vista)
Updates still install dog slow compared to XP. (Problem since Vista)
Explorer Status bar still hides important details. (Problem since Vista but worse in Windows 7)
-  Everything is “simplified” and has less options
-  The new Task Manager still has the same problems I pointed out. (New issue in Windows 8)
You cannot customize your window appearance like title bar size, caption buttons etc. (New issue in Windows 8)
-  Start Menu is gone.
-  Shutdown, Logon and Logoff sounds are gone (New issue in Windows 8)
-  Network Map is gone. (New issue in Windows 8)
-  Flip 3D is gone. (New issue in Windows 8)
-  Chkdsk scanning details at startup are gone. (New issue in Windows 8)
-  Once again, many shell features are broken
-  Personalization features are further removed

.....see the full list here.

But Microsoft doesn't care. They only know how to force their changes on users and say "This is by design". Even bugs are "by design". Before or after the product ships, no design changes requested by end users are made. They only create the illusion that they are listening to their customers and making changes based on their feedback. Regressions in functionality are not fixed with top priority. Microsoft has become a company just like Apple. They think they know what's best for everyone. Their software has far too limited configurability.

They do listen to a handful of customers. But that's 0.000000000000000000001 percent of a billion customers. Rest of them face constant migration fatigue and loss of functionality in an "upgrade". How would you feel if you were forced to dump your old house or old car (okay even if that's fair enough given it's getting obsolete), but you have no choice but to buy a new one and let go of lots of things because the new one doesn't have the things the old one did, and then you are stuck with that inferior product that you paid more for and got less value?