- A FOSS manifesto: We don't need no stinkin' users!
- A classic NT/Windows 7 gem from the blogosphere
- The mythical "Vista application"
- Handicapping the Windows 7 alternatives
- Intervention: How to salvage Windows 7
- Windows 7: R.I.P.
- Desktop Windows: Is it time to "cut and run?"
- Microsoft to logo applicants: Support Windows 7...or else!
- Windows 7 gets all "touchy-feely"
- Windows 7 gets all "touchy-feely"
July 08, 2008 | Comments: (0)
A FOSS manifesto: We don't need no stinkin' users!
They make it so easy! Just when I think I've run out of story ideas for lampooning the FOSS movement, along comes some idiot with a taste for shoe leather to reenergize my rant engine.
This time around it's Jason Harris, a developer in the KDE community. Mr. Harris' beef is with users: He thinks KDE doesn't need any. In fact, if you're not contributing something to KDE -- code, bug reports, man pages -- he could care less whether or not you use KDE. And if you complain about KDE -- its bugs, features, or development direction -- you're lumped in with the "poisonous minority" who "gnash their teeth."
To people like Mr. Harris, creating FOSS isn't a means to an end -- it is the end. The cycle of code/debug/test/code-some-more is perpetual. It's why projects like WINE take over a decade to complete. And it's why Linux continues to flop on the desktop.
When developers stop caring about end-users -- or worse still, begin to think of them as an unwelcome annoyance -- a platform is doomed.
Witness the KDE 4 debacle, a classic case of developers losing touch with their user base. What the community wanted was a better KDE 3.5. What they got was a completely new windowing system with all sorts of bizarro abstract UI concepts and lots of missing functionality ("What do you mean I can't resize the windows?").
KDE's faithful argue that there are good reasons for the changes -- that the lazy, freeloading users should just shut up and let the developers work. Never mind that initial KDE 4 builds left even veteran users baffled. The development team knows best. Noncontributors should keep their "poisonous" rants to themselves.
The irony here is that KDE 4 actually incorporates some interesting ideas. The attempt to shift away from the traditional disk/folder/file hierarchy is laudable, and the rich filtering features -- though buggy -- show real potential. Even the new UI's name -- "Plasma" -- is cool (though I'm still not sold on the whole "Plasmoid" nomenclature).
Unfortunately, it looks like KDE 4 is falling victim to the same phenomenon that undermines virtually all FOSS projects: A group of developers loses touch with their users and mistake the journey (writing the code) for the destination (actually releasing something useful).
Say what you will about the evils of commercial software development, but at least we have a tangible goal in mind from day one: Ship something! And, preferably, something users will actually want/buy!
Posted by Randall Kennedy on July 8, 2008 03:00 AM
July 01, 2008 | Comments: (0)
A classic NT/Windows 7 gem from the blogosphere
One of the best parts of blogging is the opportunity to interact with readers. Through the comments mechanism attached to virtually every blogging platform, both fans of a blog and its detractors have an opportunity to voice their opinions. And sometimes, the contents of a blog site’s comments section surpasses – in terms of intrinsic value – the original posting.
Case in point: The recent rant by Mahmoud Al-Qudsi over at NeoSmart.net. In his posting, Mr. Al-Qudsi is attempting to discredit the anonymous author of the mysterious “Shipping 7” blog, a person who claims to be a Microsoft insider working on the next version of Windows. After blathering on for several paragraphs about what he believed were amateur “mistakes” in one of the “Shipping 7” author’s web postings – and how this should discredit the blog as a source of insider info – one of Mr. Al-Qudsi’s own readers (username “AnthonyTP”) takes him out behind the proverbial “woodshed” for a quick lesson on Windows history and architecture. What follows is one of the most concise, accurate and informative defenses of the Windows NT architecture I’ve ever read:
NT is NOT like *nix kernels or even other MACH variants like OS X. There is a large element of simplicity to its complexity when it is broken down.
The basic NT kernel and design is also very modular, so by comparing it to the Linux kernel is going to get you into trouble.
NT is a hybrid kernel that took a fairly elegant approach to kernel design, especially for the early 90s, as it was a new conceptual kernel of the time, taking some existing kernel architectu[r]al models and some of the best kernel theories that had not been implemented before.
For example NT has some MACH conceptual ideas and lightweight kernel API set for performance, but then hands this off to increasing levels of APIs co[m]plexity. This gave NT the ability to be very lightweight at the core, but have extended functionality that didn't weigh the core kernel down.
NT's HAL for example was under 64KB, and even on Vista is still 256KB(slightly larger in Vista x64), which for modern hardware is still extremely small. Going from the HAL to the lower kernel and API layers is still very small, especially compared to other OS kernel models in use today. This is how and why the MS Embedded OSes (XP/Vista) can and do work so well, as NT was simply broken apart as needed for the Embedded versions to make them very light (As in used in a router light).
The essential design of the NT kernel is both object based and a client/server model. This is not normal, or something that you will find in any other consumer level OS out there.
What the client/server model of the kernel of NT allows is the light core kernel with limited APIs secondary NT APIs and then subsystems for the actual OS clients that run on top of it. This is why even Win32/Win64 is just a subsystem that sits on NT, and can be ripped off of NT at anytime, as MS has demo[n]strated for YEARS.
The client/server kernel design of NT is also how MS can and does include a BSD or V5 UNIX subsystem for Vista, as the UNIX subsystem is just another OS sitting on the NT kernel client/server model. The UNIX sub[s]ystem in Vista is equal to Win32/64, as they are both sitting on the NT kernel in the same way. Win32/64 only has preference as it is the the default OS subsystem. By both Win32/64 sub[s]ystem and the UNIX subsystem running together on top of NT, they both get the drivers and benefits of the NT layered kernel, but also can cross communicate via the NT kernel, and all of this happens with no emulation layers.
For people truly interested in the NT design, source code of the NT kernel can be obtained from Microsoft for academic purposes, just search www.microsoft.com and be a teacher of some sort.
This gives academic minded people access to and a greater understanding the NT architecture from the HAL to the API layers and subsystems that run on it.
Based on the NT design, I would have to correct you in asserting that ripping out EXT3 from Linux would be as hard as adding in Reiser as a comparison. NT and Linux kernels are VERY different in this regard. Take the recent Linux arguments about the HardLocks code that is giving Linux trouble with multi-processor granularity.
Changes to the older hardlock mechanism in Linux requires a substa[n[tial amount of work and tricks to bypass, and is why things are not going so well. With an NT design, something like this is API wrapped at a low level, and changing the mechanism would be rather simple, not require someone to sift through 9000 lines of code to change the setting.
Another example would be Vista, and Microsoft adding on a Video driver model. (Not just new drivers, but a new model of how they are handled from the kernel as well.) This was easier on NT than it would be on a Linux or even OS X kernel design because of the NT design. This is also how Microsoft was able to add in the new WDDM while still allowing the XP drivers(XPDM) to operatate on Vista if needed. That alone would be a nightmare situation for both driver and kernel level feature support if this was tried on Linux or OS X.
The WDDM not only splits the video driver to a shared kernel/user level model, but it works with the NT kernel of Vista to things no other consumer currently can do. Features like transparent GPU RAM vir[t]ualization, an OS level scheduler for the GPU, creating a pre-emptive state of GPU multitasking controlled by the OS (WDDM), and even multi-GPU processor support that works with the GPU multitasker. The WDDM in Vista allows several 3D applications on screen at the same time, and gives them all extra VRAM than what is available on the GPU hardware, and because the OS handles the multi-tasking, no applicati[o]n can steal the GPU to halt responsiveness, but yet even with demanding games running at the same time, they only lose a few FPS running side by side compared to them running exclusively full screen.
So you can see that dropping in the WDDM to Vista was a good achievement in that it works as transparently as it does, but this would not have been possible if it weren't for the NT achitecture that allows for massive kernel level conceptual changes by adding in new API kernel level constructs that layer on the lightweight lower level NT kernel APIs.
After taking a bit of this in, you can maybe get a glimpse of the simplicity and the complexity of the NT architecture and why the MinWin used at the demo[n]stration that started a lot of this, is no different than the internal MinWin that Microsoft has used and showcased internally for years. It is nothing more than the NT kernel at the basic level with select API layers used, which is something that can be fairly easily done with NT. And yes technically the NT kernel can be fairly small when you remove the upper level kernel level API interfaces and especially the subsystems like Win32/64 that sit on top of them.
This is why when people call for Microsoft to write NT from scratch, many OS engineers/theorists like myself scratch our heads at the level of understanding. Rewrite Win32, sure why not, rewrite NT, a sadly bad idea. NT is more advanced and useful than what people give MS credit for, especially if lightweight, extensible, fast, and modular are your design goals for a kernel.
Also a thing of note, you call BSD a kernel, it technically is a set of APIs, an 'interface' to a kernel not an actual kernel, and on OS X would be the API wrappers around the modified MACH system calls, not the OS X kernel.
Like I said, powerful stuff. Personally, I knew (or at least suspected) much of this already – after working with, and developing for, a platform on a daily basis for over 15 years, you tend to pick-up things. Still, it was nice to see the case for NT’s internal sophistication/purity so eloquently presented by someone with the technical chops to pull it all together (sort of like a poor man’s Mark Russinovich, only less confrontational towards Linux).
It also reinforces my belief that Microsoft blew it with Vista by burying what is still a technically sophisticated, state-of-the-art OS under a mountain of consumer-focused crap. As an original NT purist (I literally wrote the book on “Migrating to Windows NT” back in 1993 – look it up), I’ve bemoaned each new concession to the Windows 9x/Me team holdovers, from win32k.sys in Windows NT 4.0 to the god-awful “Luna” UI theme in XP. For people like me, Vista is an abomination – what happens when big decisions are left in the hands of the “crayons and construction paper” crowd.
Oh well, at least we still have Server 2008...
Posted by Randall Kennedy on July 1, 2008 11:59 PM
June 24, 2008 | Comments: (0)
The mythical "Vista application"
I love analysts. Whether it's predicting tomorrow's next big thing or sounding the death knell for yesterday's industry pacesetter, analysts never run out of new ways to get it wrong.
Case in point: Windows Vista and the "app gap." According to Evans Data Corporation (EDC), less than 10 percent of developers are writing for Microsoft's current state of the art. The majority (49 percent) are still writing for XP, while a small, but growing, contingent (13 percent) are focusing on Linux. Meanwhile, the myriad major media outlets continue to decry the lack of new Vista applications. "It's the OS that nobody wants," they say, and developers are "reacting accordingly."
Of course, they're wrong. Again.
You see, there's no such thing as a Vista application. Just like there's no such thing as an XP application. Or a Windows 2000 application. Developers who write for Windows rarely target a specific version. Rather, they select a particular API framework -- for example, MFC/ATL or .Net -- and proceed from there. Whether or not the resulting application runs on a given Windows version depends on what, if any, version-specific API extensions the developer employs in their project.
For the majority of application types, this is a nonissue: They use the generic API functions, which allows them to run across any version of Windows that supports that framework. And since Microsoft does a good job of back-porting new frameworks to its legacy OS platforms, developers are rarely faced with a choice between rich API functionality or a broad installed base (the notable exception being video game developers, for whom leveraging DirectX 10 means committing to Vista).
So the entire Vista "app gap" argument is a bit of a straw man. The real question should be: Why aren't developers leveraging the various iterations of the .Net framework? As anyone who follows Microsoft's development road map will attest, most of the company's cutting-edge API evolution is taking place within .Net. In fact, when the "experts" talk about new programmatic resources in Vista -- Windows Presentation Foundation (WPF), Windows Communication Foundation (WCF), and so on -- they're really talking about the .Net framework 3.0. And since .Net 3.0 is available on down-level platforms (such as Windows XP), the argument circles back around to a question of .Net acceptance among developers -- and why they have (so far) shunned it.
The answer is twofold: First, developers don't like to target APIs that aren't broadly available across the installed base. Despite Microsoft's aggressive support of down-level versions, there's still a big difference between "available" and "available after downloading 20MB-plus of complex libraries and having them installed across various parts of your system." The fact of the matter is that .Net doesn't ship as part of Windows XP, and that means that developers need to convince users to first install the required version of the .Net framework before they can install a piece of software -- not always an easy sell, especially in the locked-down world of enterprise IT.
As the first OS to ship with the .Net framework installed by default, Vista was supposed to encourage development of .Net 3.0 applications. However, since it also supports legacy Win32, COM, ATL, MFC, and down-level .Net framework applications, there's no real shortage of Vista programs. In fact, unless you've just got to have that latest and greatest WPF/WCF framework functionality, there's little to motivate you, the developer, to make the jump to .Net 3.0, or even 2.0. Assuming you don't bump into the User Account Control (UAC) mechanism, your "legacy" Windows application probably looks and works great under Vista as is. I know, because that was the case with my own code: A few tweaks to accommodate UAC (mostly shifting some temporary files away from newly protect directory structures) and my applications and services were running like champs under Vista -- just like they do under Windows XP, Server 2003, and Windows 2000. Why fix it when it ain't broke?
The second reason developers have shunned .Net is that it's slow. Many common functions simply take longer under .Net, forcing developers to choose between API sophistication and raw performance. Not surprisingly, most developers choose the latter, as I was once forced to do when I discovered that the .Net equivalent of Performance Data Helper (PDH) was all but unusable for real-time sampling of Windows performance counter data. As a result, I'm forced to maintain an aging (circa 1997) Visual Studio 6 code base while waiting for Microsoft to finally streamline .Net to a point where it's a viable alternative. It's an old story and far too common among Windows developers.
Bottom Line: When analysts (and their media accomplices) decry the lack of "Vista applications" they merely trumpet their own ignorance.
I'm guessing it's a Mac thing: So many of my contemporaries have been caught up in the reality distortion field that the idea of a link between API functionality and OS version has become an accepted part of the conventional wisdom. It's an honest mistake, equating Apple's archaic patchwork of version dependencies to Microsoft's imperfect, but far more flexible, API sprawl.
Too much fruit will do that to you.
Posted by Randall Kennedy on June 24, 2008 03:00 AM
June 17, 2008 | Comments: (0)
Handicapping the Windows 7 alternatives
It's been an interesting couple of weeks on the desktop OS front. Microsoft's big reveal regarding Windows 7 and its Vista heritage sent many of my blogospheric contemporaries scrambling to justify their myriad off-base predictions. Having anticipated this outcome weeks ago, I was free to ponder an even more radical set of possibilities -- specifically, which of the current crop of Unix-based OS is best positioned to knock off Windows 7 come late 2009.
Note the timeframe qualifier above. I'm not interested in what's available today. Rather, I'm looking 12 to 18 months out in an effort to divine what kind of competitive landscape Windows 7 will be born into. As Microsoft churns away at its typical, glacial development pace, emerging challengers, such as Ubuntu and OpenSolaris, continue to evolve. How far they get during those intervening months will determine what percentage of those coveted XP fence-sitters finally choose to abandon Windows altogether.
Ubuntu: Once the poster child for Windows-to-Linux defectors, Ubuntu has lost some of its coolness factor. Consecutive lackluster releases, plus a "pass the buck" mentality toward lingering kernel issues, have tarnished Canonical's once unassailable reputation. Add to this Mr. Shuttleworth's obsession with the emerging ultra-low-cost PC segment and you have a recipe for disaster.
There's still time for the company to come to its senses -- to take responsibility for more than just the packaging of its distro. With two or three major releases between now and Windows 7's earliest, most optimistic delivery target, Canonical has an opportunity to shore up its position as desktop Linux torch bearer by dumping Gnome, embracing KDE 4.x, and doing whatever it takes to improve reliability across a greater range of hardware configurations. Do that, and it might have a shot at securing some of the more open-minded XP defectors.
OpenSolaris: A true dark horse candidate, OpenSolaris has the pedigree to be a real challenger to Windows, at least in the enterprise. Sporting a clean, battle-hardened kernel architecture, OpenSolaris is what Linux wants to be when it grows up: mature, robust, and confident. Unfortunately, all of the FOSS folks are too busy playing with their GNU tinker toy to be bothered with supporting a platform that may or may not be compatible with their "free as in air" ideology.
And this means that OpenSolaris remains a few revisions behind the times, as evidenced by the down-level iterations of Gnome and related utilities in the 2008.5 release. Still, if Sun ever decides to get serious about OpenSolaris, it could make a run at the title.
The Solaris-derived foundation is solid. What it needs is expanded device support and a concerted effort to port the best of FOSS to its currently anemic repositories. As Microsoft continues tripping over its own consumer/media aspirations with each new Windows release, the time may soon be ripe for the reemergence of a more "responsible" solutions from the Unix standard bearer.
Mac OS X (or XI): Lately, it seems as if Apple can do no wrong. The iPhone is a hit, its laptops are trendsetters, and OS X is held up as the perfect marriage of form and function.
Yet, despite all this success, the company continues to cut itself off at the knees by refusing to license OS X outside of its own hardware. I'm convinced this is partly out of fear; Apple knows that if/when it releases OS X to the masses, it'll have to support it on the same hodge-podge hardware environment that makes Microsoft look so bad. And tarnishing the image of the revered OS X is not a possibility Apple wants to entertain.
Which is too bad because, given enough hardware support, a platform-agnostic OS X could put a major dent in Microsoft's installed base over the next year and a half. However, such a move requires vision, not to mention a modicum of courage -- both of which seem to be in short supply over at 1 Infinite Loop.
Note that I'm not listing Windows XP here since I believe that, post-2009, hanging on to this rapidly aging platform makes little sense. If you're going to reject Microsoft's upgrade path, then do yourself a favor and go all the way. Try one of these emerging competitors. Chances are, given another 12 to 18 months of development, more than one of them will begin to rival Windows XP as the best alternative to Windows 7 -- a.k.a. Vista Reloaded.
Posted by Randall Kennedy on June 17, 2008 03:00 AM
June 10, 2008 | Comments: (0)
Intervention: How to salvage Windows 7
I had an interesting conversation this past week with Ben Rudolph, former marketing guru at Parallels and now a member of the Microsoft Windows 7 team. Apparently, my recent pronouncement of death for his new charge struck a nerve. In addition to setting up a flurry of conference calls with his fellow team members, Ben picked my brain a bit about what I felt they needed to do/say to salvage their next generation desktop OS.
Always willing to interject myself into others’ business, I offered the following "pledge" points for Microsoft to ponder:
- Performance. Pledge that Windows 7 will perform as well as, if not better than, Windows Vista on identical hardware. Show the industry that you can do more than create bloated software. Show us that you can be disciplined when you need to be, that you can write clean, efficient code that doesn't leave us wondering where all the GHz have gone.
You've already stated that Windows 7 will be based on the Vista core. It shouldn't be too hard to squeeze a few more optimizations from that battle-hardened NT kernel of yours while also holding the line on the "cycle creep" that doomed 7's predecessor. Right now, this is Job No. 1 for Microsoft. - Compatibility. Pledge that that Windows 7 will deliver a better migration experience than Windows Vista. After performance, the perceived lack of seamless backwards compatibility is the most pressing issue for IT fence sitters. Encouraging companies to bite the bullet now with Vista because Windows 7 won't help them is not the message you want to be sending.
Leverage some of that slick new legacy application integration technology you've acquired (SoftGrid, Kidaro) to help smooth over the rough spots. There's really no excuse for providing anything less than flawless Win32, COM/ATL/MFC and down level .Net application support, even with UAC enabled. You have all the tools in your portfolio. Time to put them to use. - Usability. Pledge to take all those powerful-yet-buried technologies and bring them to the surface with Windows 7. Start by understanding what's relevant to IT and then focusing your UI development energies accordingly. For example: Previous Versions, a more robust driver model, and deeply-integrated Windows Search? Relevant to IT. Aero (including Flip 3D), Media Center, and the Windows Sidebar? Not so much. Yet which features got the lion's share of PR when Vista launched?
Stop trying to "out-Mac the Mac" on the UI whiz-bang front. Just expose the myriad compelling technologies you already have under the hood and let the IT community be the judge. It's telling when you see the industry media tripping over themselves to lavish praise on something like "Time Machine" when Windows has been doing the same thing better, and with more data storage flexibility, for years.
Finally, Microsoft needs to communicate better, and by this I don't mean just under-promising. The "cone of silence" around Windows 7 has to end. The recent, anticlimactic comments regarding Windows 7's architecture and the subsequent misguided attempts to push Vista at 7's expense have set off a panic in the IT community. Now it's time to open up and start explaining why not reinventing the wheel is a good thing and how, without a kernel overhaul, you can still improve (faster, more compatible, easier to use) on the Vista experience.
It's not too late for Microsoft to salvage Windows 7. As I've stated in the past, Moore's Law is on their side. If they can deliver a richer, more compatible version of Windows Vista, without causing additional code bloat (and maybe wringing some extra throughput out of what's carried over from Vista), they have a decent chance of winning back some of the IT shops they alienated along the way.
Posted by Randall Kennedy on June 10, 2008 03:00 AM
June 05, 2008 | Comments: (0)
Death throes. That’s how I’d describe the latest barrage of white papers from Microsoft. The company’s flagship, Windows Vista, is thrashing around in the shallows like a wounded animal, fighting in vain to escape the inevitable. As with any good life and death struggle, there’s a great deal of screeching and wailing – “Vista’s not a failure, we’ve sold over a 100 million licenses!” Then, in a final flurry of “hooves and teeth,” it succumbs – another victim in the vicious OS circle of life.
A bit too melodramatic? Perhaps. But when you analyze the tone of the company’s recent spin efforts you can’t help but detect a hint of desperation. After all, Microsoft’s marketing teams have tried almost everything to get customers to switch to Vista, from extolling the product’s virtues to trashing its predecessor, Windows XP. Yet the product remains radioactive – almost nobody wants it, and those who do won’t admit as much for fear of looking the fool.
Now we learn that there’s no point in waiting for Windows 7 because, according to Microsoft, “it’ll be just like Vista.”
Talk about eating your young! Microsoft is now publicly trashing their next version in order to salvage their current dud. Never mind that they’re killing the very positive mystique surrounding Windows 7. Company executives are hell bent on proving that the Vista “Refuseniks” were wrong, and they’re not above using force to achieve their goal.
That’s right, hidden within their latest propaganda piece is the not so veiled threat that customers who bypass Vista risk widening the very compatibility chasm that dissuaded them in the first place. That’s because Microsoft has no intention of making it any easier for customers to upgrade to Windows 7 from XP than it is for them to upgrade from XP to Vista today.
Bottom Line: If you don’t like the migration path as it currently stands – with the spotty backwards compatibility and steep resource requirements – then tough luck. Windows 7 won’t help you.
Frankly, it’s a terrible attitude. I daresay it’s almost abusive, like the ranting of some spoiled child. Microsoft’s mad because we won’t come out and play with Vista, so they’re going to punish us by making Windows 7 just as difficult to stomach. It’s pathetic.
As I said before, desktop Windows is doomed. Version 7 was the platform’s last, best hope. Now it looks like Microsoft is going to kill it out of spite - one final, desperate act before the end.
Windows 7: R.I.P.
Posted by Randall Kennedy on June 5, 2008 12:00 PM
June 03, 2008 | Comments: (0)
Desktop Windows: Is it time to "cut and run?"
Cutting and running. A bad idea for chainsaw massacre movie villains, scissors-wielding grade school students and the occasional foreign incursion. But what about IT? At what point does further investment in a platform or technology cease to make sense?
Until now, I've been advising Vista fence-sitters to wait for Windows 7. However, last week's "big reveal," in which Microsoft finally confessed that Windows 7 will be nothing more than "Vista warmed over," has forced me to reconsider my position. I'm now more convinced than ever that Windows is doomed - at least on the enterprise desktop. What Microsoft's aging (in the U.S., NT is almost old enough to vote) OS needed was a heart transplant. What it got was a new name, a fresh change of clothes and an A.M.A. discharge from the ER.
It's not enough. The IT community deserves better. Microsoft's loyal customers deserve better. The folks from Redmond owe us a fresh start; a clean break; a path to the future free from legacy baggage. Basically, they owe us a new Windows.
"MinWin" was a good start. Unfortunately, Microsoft executives seem to lack the will to see it through. It's easier to keep re-warming the same stale bits over and over again, safe in the knowledge that the Windows customer base will lap it up all the same. Monopolization has its privileges.
Of course, the secret to maintaining a de facto monopoly is to not push your customer base too far. Every industry segment has its breaking point, a fact Microsoft learned the hard way with Windows Vista. With Vista, they ignored IT, choosing to instead kowtow to big media and the DRM crowd. The result was an unprecedented backlash as angry IT shops spurned Vista and drove the Save XP campaign to international attention.
Now we learn that Microsoft's one chance to get it right - to atone for its sins and perhaps salvage some modicum of respectability - is really just another PR stunt. Windows 7 will be Windows Vista "Part Deux." Same clumsy, monolithic architecture. Same crippling legacy baggage. Whatever hope may have been sparked by the whole "MinWin" fantasy has now been officially snuffed out.
If I sound frustrated it's because I am: At Microsoft for refusing to leverage its vast technical resources to address Windows' myriad shortcomings; and at the customer base for agreeing to take each new batch of Windows lemons and make lemonade.
When will the Windows community wake up and realize how much power it has? We've already demonstrated what can be done when enough of us decide that, hey, we really don't like lemonade all that much. Vista is a debacle precisely because we decided "enough is enough" - and because a viable alternative (XP) still existed. Microsoft's response? Try to squash the "rebellion" by pulling the rug out from under us (i.e. XP's impending expiration date) . Talk about sour grapes!
That's why I say it's time for the Windows community to take a hard look at alternative platforms, like Linux and Mac OS X. It's over there, on the other side of the fence, that the real innovation is occurring. By contrast, Windows - including the over-hyped version 7 - is an architectural dead end. We, as a community, need to accept this fact and move on.
Posted by Randall Kennedy on June 3, 2008 03:00 AM
May 29, 2008 | Comments: (0)
Microsoft to logo applicants: Support Windows 7...or else!
Lessons. Lessons. Everywhere you look, there are more lessons to be learned from the Vista debacle.
Don't overpromise. Don't under-deliver. Get the ISV/IHV community involved early and often. And most importantly, make sure that whatever changes you introduce are indeed "fully-baked" before the OS goes out the door.
Judging by the level of secrecy surrounding Windows 7, it seems that Microsoft has taken the first two lessons to heart. Now comes news that Microsoft is revamping its logo requirements for vendors wishing to obtain the company's "Certified for Windows Vista" seal of approval. In addition to the normal mountain of test documentation and paperwork, companies seeking logo status will have to provide an additional set of results from a special compatibility test tool that will ship with the first Windows 7 beta.
Note: This does not mean that the products in question will need to pass the test -- just that the vendors seeking certification for Vista must provide the results data for their product running under the Windows 7 beta, too. Click here for the gory details (see pages 36-37).
It's all part of Microsoft's effort to address point number three above. By requiring that new logo applicants at least try their products under the beta -- and then share the compatibility results data with Microsoft engineers -- the company hopes to identify potential trouble spots early in the release cycle, giving it more time to address them and/or work with vendors to correct any problems the tool identifies.
Frankly, it makes a lot of sense. Microsoft has leverage over its vendor partners in the form of the aforementioned logo program. Using that leverage to prod these partners into testing against the next Windows seems like a judicious way to ensure a smoother migration across the myriad components of the Microsoft ecosystem.
Now, as for lesson number four -- not shipping "half-baked" changes -- well ... only time will tell. But I have to admit, I like what I'm seeing from this leaner, more-focused Windows development team. Kudos to Steve Sinofsky, the true "anti-Allchin."
Posted by Randall Kennedy on May 29, 2008 08:37 AM
May 28, 2008 | Comments: (0)
Windows 7 gets all "touchy-feely"
What a difference a week makes! Just last Friday I was dissecting Microsoft's latest pro-Vista marketing spin and lamenting the lack of corroborating evidence to my "ready for Windows 7" missive over at the Windows Sentinel blog. There must have been something in the Kool-Aid at that annual Memorial Day picnic, because when the employees returned their previously hog-tied tongues were suddenly loosed.
First, there was the interview with Steve Sinofsky, in which he emphasized how Windows 7 would build on the foundation laid with Vista. Then came the Windows Vista team blog posting by Chris Flores stating that there would be no "new kernel" in Windows 7 (sorry "MinWin" fans) and that their goal was to run on the "recommended hardware" they specified for Vista.
[ Read more on the Windows 7 touch-screen features in our news story. ]
In other words, I was right. About Windows 7. About its Vista underpinnings. About everything. My detractors (and by now you are legion) may commence with the crow consumption.
But the "pièce de résistance" had to be the Windows 7 "demo" conducted during a Walt Mossberg/Kara Swisher interview with Bill Gates and Steve Ballmer. Though the video (scroll down the page a bit) of the demo portion of the event is a bit grainy, you can at least make out some aspects of the cool Surface-derived UI direction that Microsoft is taking with Windows 7. Someone else mentioned seeing a Mac OS X-like "dock" in the video, however, I couldn't make it out -- though I did glimpse a couple of objects that seemed similar to the "wheely" things you can see in this collection of supposedly leaked Windows 7 screen shots.
Bottom Line: Nothing revolutionary -- just a logical integration of multi-touch principles into the core Windows interface. More important, it's all stuff that you could build easily using the Vista/2008 code base as your foundation, which is encouraging from a "can they really pull this off?" perspective.
What we've learned this week:
- Windows 7 will be built upon the foundation laid down with Windows Vista. No real surprise here. I've been saying this for months (though it's always nice to be proven right).
- "MinWin" and other "academic exercises" are just that: research projects. The real Windows 7 kernel is a natural evolution of the Vista kernel, including seamless support for Vista device drivers. After the debacle of Vista's early driver compatibility woes, this is a good thing.
- Microsoft's Next Big Thing (NBT) will be touch ... and voice, and digital ink, and all forms of alternative input metaphors. Combined with the next generation of touch-enabled PCs, this could be a game changer.
After 20 years of mice and keyboards (and all manner of ergonomic tweaks to make them less crippling to our weary hands), I think the human race is ready for a change. Multi-touch could be the next "killer app," the one cool, must-have feature that drives Windows 7 adoption. I know I want it!
Have the floodgates finally opened? Has Microsoft finally turned the corner on Vista in order to focus full-time on promoting Windows 7? Maybe yes, maybe no. There's still way too much we don't know about the next Windows -- like how the UI will change for us "touch-challenged" users with older PCs. However, if Microsoft continues on its current path of revealing tidbits though myriad outlets, we'll have plenty to dissect in the coming weeks. Stay tuned!
Posted by Randall Kennedy on May 28, 2008 12:18 AM
May 28, 2008 | Comments: (0)
Windows 7 gets all "touchy-feely"
What a difference a week makes! Just last Friday I was dissecting Microsoft's latest pro-Vista marketing spin and lamenting the lack of corroborating evidence to my "ready for Windows 7" missive over at the Windows Sentinel blog. There must have been something in the Kool-Aid at that annual Memorial Day picnic, because when the employees returned their previously hog-tied tongues were suddenly loosed.
First, there was the interview with Steve Sinofsky, in which he emphasized how Windows 7 would build on the foundation laid with Vista. Then came the Windows Vista team blog posting by Chris Flores stating that there would be no "new kernel" in Windows 7 (sorry "MinWin" fans) and that their goal was to run on the "recommended hardware" they specified for Vista.
[ Read more on the Windows 7 touch-screen features in our news story. ]
In other words, I was right. About Windows 7. About its Vista underpinnings. About everything. My detractors (and by now you are legion) may commence with the crow consumption.
But the "pièce de résistance" had to be the Windows 7 "demo" conducted during a Walt Mossberg/Kara Swisher interview with Bill Gates and Steve Ballmer. Though the video (scroll down the page a bit) of the demo portion of the event is a bit grainy, you can at least make out some aspects of the cool Surface-derived UI direction that Microsoft is taking with Windows 7. Someone else mentioned seeing a Mac OS X-like "dock" in the video, however, I couldn't make it out -- though I did glimpse a couple of objects that seemed similar to the "wheely" things you can see in this collection of supposedly leaked Windows 7 screen shots.
Bottom Line: Nothing revolutionary -- just a logical integration of multi-touch principles into the core Windows interface. More important, it's all stuff that you could build easily using the Vista/2008 code base as your foundation, which is encouraging from a "can they really pull this off?" perspective.
What we've learned this week:
- Windows 7 will be built upon the foundation laid down with Windows Vista. No real surprise here. I've been saying this for months (though it's always nice to be proven right).
- "MinWin" and other "academic exercises" are just that: research projects. The real Windows 7 kernel is a natural evolution of the Vista kernel, including seamless support for Vista device drivers. After the debacle of Vista's early driver compatibility woes, this is a good thing.
- Microsoft's Next Big Thing (NBT) will be touch ... and voice, and digital ink, and all forms of alternative input metaphors. Combined with the next generation of touch-enabled PCs, this could be a game changer.
After 20 years of mice and keyboards (and all manner of ergonomic tweaks to make them less crippling to our weary hands), I think the human race is ready for a change. Multi-touch could be the next "killer app," the one cool, must-have feature that drives Windows 7 adoption. I know I want it!
Have the floodgates finally opened? Has Microsoft finally turned the corner on Vista in order to focus full-time on promoting Windows 7? Maybe yes, maybe no. There's still way too much we don't know about the next Windows -- like how the UI will change for us "touch-challenged" users with older PCs. However, if Microsoft continues on its current path of revealing tidbits though myriad outlets, we'll have plenty to dissect in the coming weeks. Stay tuned!
Posted by Randall Kennedy on May 28, 2008 12:18 AM
May 26, 2008 | Comments: (0)
It's like politics. You start out by focusing on your ideas, how you want to improve things, maybe change the world a bit. But as the campaign slogs on, or as the legislation stalls, or the opinion polls begin to dip, you lash out. First at the media - for their "unfair, biased coverage" - then at your opponent. Until finally your "talking points" become little more than a laundry list of the "other guy's" faults and why you think he/she is "unsuitable" for public office.
Such is the case with Microsoft's campaign to win the IT community over to Vista. What started out as a positive effort to promote Vista's many benefits - the "wow starts now" - has devolved into kind of character assassination of its predecessor, Windows XP. At least that's how I'm reading the new white paper being circulated by the folks from Redmond: A classic political hit piece, one designed to cut the "other guy" (XP) off at the knees.
It's also sign of desperation. Microsoft tried the above-board route with Vista. It failed. Now it's time to get down into the mud and really pummel the opponent. No more mister nice guy. It's time to dig up every dirty little flaw and parade them through the mire in the hope that the Vista fence-sitters will finally see just how desperately they need "change."
Unfortunately for Microsoft, the version of XP they're attacking - with the missing features and incomplete security model - is a bit of a straw man. By focusing exclusively on the bare OS (up until and including the Service Pack 3 bits), they effectively strip XP of the robust ecosystem of supporting tools and workarounds that has evolved during its 5 year reign as King of the Desktop. As a result, the product they cite in their white paper bares little resemblance to the OS that enterprises deploy today.
For example, the white paper runs through a laundry list of new Vista "features" that are "missing" from XP. However, the majority of these have been addressed already by third parties (e.g. configuration management, mage-based deployment). Others are more like "bolt-on" components than features of the core OS (e.g. Sync Center, Mobility Center). And, of course, there are the myriad XP security and management "holes," which seem daunting until you realize that virtually none of them apply to the locked-down, tightly-controlled, corporate firewall-protected world of an enterprise Windows XP desktop.
Note: For more on the whole XP vs. Vista debate, check out my recent Test Center article: Death Match: Windows Vista versus XP.
Microsoft knows it can't win if the battle is between Vista and Windows XP as it exists today in the real world. So instead of attacking XP fairly, it slips in a sucker punch in the hope that someone further up the corporate management chain (and thus sufficiently removed from the IT trenches to know any better) will buy into the whole smear campaign and start pushing for a Vista migration.
The IT community may eventually forgive Microsoft for trying to hoodwink customers into a forced XP-to-Vista migration. However, with Windows 7 just around the corner, and with desktop Linux looking more polished every quarter, the company would do well to pull a few of its punches before that same, forgiving IT "electorate" decides to sit out yet another OS "election cycle" - or worse still, starts exploring one of those "3rd party candidate" options.
Posted by Randall Kennedy on May 26, 2008 03:00 AM
May 20, 2008 | Comments: (0)
It's a bumper crop of VM goodness!
Life in the blogosphere has its ups and downs. Some weeks there's little to write about. Others, you're inundated with too many juicy story ideas to count.
Last week was all about virtualization. After savaging Microsoft's Hyper-V Achilles' Heel, I was pleased to discover a new beta release of VMware Workstation 6.5. Also dropping in to pay a visit: Virtual PC 2007 Service Pack 1. Truly a bumper crop of leads to follow-up!
First, I just got done putting the latest VMware 6.5 pre-release (Beta 2?) through its paces. The earlier beta was already pretty solid (see my preview for the Test Center), so I wasn't expecting all that much in the way of improvement.
One thing I did want to test again: 3D video hardware acceleration. In the earlier beta I was able to fiddle with a few DirectX tests -- including the Direct3D 7, 8 and 9 cube thingy in dxdiag -- however, the experience was quite buggy. The VM would often freeze or crash, and I never made it through the entire test suite without some sort of bug or issue.
Clearly, VMware was listening. The new build (91185) is rock solid, allowing me to complete the full range of Direct3D tests as well as play some legacy games (Quake II, Starfleet Command III) under Windows XP Professional (SP3). Otherwise, the basic feature set remains the same. There's still the slick new Easy Install option, which worked great with both XP and Vista. However, I'm not yet sold on the whole Unity business. The amount of shearing and other visual weirdness I encounter when enabling Unity makes the feature all but unusable for me - that, and the fact that VMware crashes whenever I try to enable it while CubeDesktop is running.
Oh well, at least VMware is making progress on its 3D acceleration feature. Virtual PC SP1, on the other hand, is really an update in name only. Aside from an expanded set of supported host OS (Windows Vista SP1, XP SP3) and guest OS (Windows Server 2008 Standard Edition, Vista SP1, XP SP3), the only real change is to the Virtual Machine Additions, which are now at version level 13.820 (up from 13.803 with the original Virtual PC 2007 release). Otherwise, the product remains effectively unchanged, which also means that it sill doesn't support 64-bit guest OS and only pays lip service to Linux and other non-Windows platforms.
The other major contender in this space -- VirtualBox -- seems to be benefiting from its recent acquisition by Sun. Version 1.6 was released at the end of April and brings the full force of Sun's engineering prowess to this previously obscure VM solution. One feature, in particular, that seems to have received some polish is Seamless Windows. Much like Unity under VMware, Seamless Windows lets you run applications from a VM directly on the host desktop. The only difference is that Sun's implementation actually works well. There's none of the window shearing that makes Unity so difficult to stomach and performance seems at or near that of a locally executing application. And most importantly, it doesn't crash when enabled with CubeDesktop running.
Overall, VirtualBox 1.6 is a solid release and one that shows how serious Sun is about producing a competitive, Open Source alternative to VMware Workstation. Check it out.
Posted by Randall Kennedy on May 20, 2008 03:00 AM
May 13, 2008 | Comments: (0)
Update: Since first posting this entry I've been in communication with Microsoft about the BSOD I encountered with the ATI installer. In an effort to assist them in their investigation, I recreated the scenario that caused the failure and proceeded to capture memory dump information for them to dissect. It's also worth noting that bug continues to be reproducible under Hyper-V Release Candidate 1. It seems to have something to do with the installer attempting to probe the hardware in order to identify the specific device make, model and revision - a common task performed by driver installation programs from myriad vendors. My advice is that, if you must deploy Hyper-V, make sure you perform any driver updates - including those for plug & play or hot-pluggable devices - with the server in an idle state and with any hosted VMs shut down or with their running state saved to disk. Given the catastrophic nature of this failure mode, and the general fragility of the Hyper-V driver architecture, it is my opinion that you simply cannot be too careful when maintaining the host/root partition of a Hyper-V server
A house of cards -- that's how I'd describe the current state of the Windows device driver ecosystem. With so many Windows-compatible devices and so few competent driver developers, it's no surprise that hunting for driver updates has become a necessary part of every power user's skill set. Most of the time, the search ends in frustration: Either the new driver doesn't correct the existing problem(s) or, worse, creates a set of new ones. And now, with the introduction of Hyper-V, we have a whole new failure vector to think about.
In a nutshell, one of Hyper-V's advertised strengths -- the host partition's ability to work with generic Windows device drivers -- is also its greatest weakness. That's because the quality level of Windows device drivers, especially those from third-party developers, is notoriously inconsistent.
I found this out the hard way while experimenting with the Hyper-V Release Candidate on a newly configured Windows "Workstation" 2008 system. After enabling the Hyper-V role in Server Manager, I made the mistake of trying to install the latest ATI Catalyst (8.4) software for the system's X1300 display adapter. The resulting Blue Screen of Death was both alarming (I hadn't seen one of these in months) and puzzling: I had successfully installed this driver before, on the same system, without incident. The only difference this time around was Hyper-V (uninstalling the role and rebooting allowed me to complete the driver installation).
Even more disturbing was the fact that I had just finished watching an old (December 2007) Channel9.com interview with Mark Russinovich, a Technical Fellow at Microsoft and one of the smartest guys I know. In the interview, Mark talks about Hyper-V and how its ability to leverage existing Windows drivers in the host partition gives Microsoft a competitive advantage over certain unnamed competitors (read: VMware), which require custom drivers for their proprietary hypervisor OS layer.
It all sounds great on paper, until you realize that it effectively places Hyper-V -- and the rest of Microsoft's virtualization architecture, for that matter -- at the mercy of the single most glaring weakness of the Windows ecosystem: third-party device driver developers, most of whom have no idea what Hyper-V is or how to avoid tripping over it during driver configuration/installation.
I point this out because it runs counter to everything that makes VMware's ESX platform so compelling. With ESX, you get, effectively, a black box: a proprietary environment, but one with its own, rigorous testing and development model. The pieces that go into that box -- the drivers and services that extend the Console OS layer (which is, itself, a derivative of Linux) -- are carefully vetted to ensure at least a baseline level of robustness.
By contrast, the Windows device driver landscape is more akin to a Wild West shoot-out. And while you can try to minimize the risk by sticking to Windows Hardware Quality Lab (WHQL)-certified products, there's no guarantee that they'll work reliably under the added stress introduced by the shared VM bus architecture on which Hyper-V is built. Eventually, something is going to cause a conflict, resulting in the kind of catastrophic system failure I experienced during the aforementioned ATI driver installation.
Bottom line: What Microsoft needs is more and better certification options. The company needs to expand WHQL to include Hyper-V testing and/or create a parallel program that further tests WHQL candidates for Hyper-V compatibility. Until then, it'll be hard to take its virtualization plans -- desktop or server -- seriously.
Posted by Randall Kennedy on May 13, 2008 03:00 AM
May 08, 2008 | Comments: (0)
Are MCSEs too stupid to learn Linux?
That's the conclusion seemingly reached by the resident *NIX zealot on another news site. According to this joker, learning Linux, Solaris or any other *NIX derivative requires a degree of conceptual understanding that MCSEs are either unwilling or unable to attain. To master these advanced OS, he says, you must first immerse yourself in the theory behind the implementation - starting with some arcane UNIX programming tome written way back in 1984. Failure to do so will, apparently, leave you branded as a member of the great unwashed (i.e. someone foolish enough ask the kind of stupid "noob" questions that are the antithesis of the Linux learning model).
Ignoring for the moment the sheer arrogance of his assertions, I find his characterization of Microsoft Certified System Engineers to be rather insulting. Though not an MCSE myself, I can certainly sympathize with those who choose to try to recoup their investments in training and certification by focusing on the environment they know best. This isn't laziness - its pragmatism. However, my larger disagreement is with his insinuation that Windows professionals, as a whole, are nothing more than ignorant "hacks" looking for the next combination of clicks and drags to make the "computer do stuff." In other words, if we had the prerequisite neuron density to handle the conceptualization demands of *NIX, we'd be there already.
What this sort of bigoted line of reasoning fails to consider is that a fully sentient, capable individual might very well examine the various *NIX derivatives and decide that - gasp! - they don't like them. Furthermore, this same intelligent, liberally-minded soul may fire-up a copy of Windows XP, 2003 or Vista/2008 and decide that - groan! - they think it's just "swell," thank you. This person might even be an IT veteran, someone who's followed the evolution of UNIX, Linux and Windows for years.
Maybe they jumped on the original Windows NT bandwagon when it was still headed by Dave Cutler and when running the OS meant investing in an Alpha 21064 with SCSI disks (i.e. a very expensive proposition at the time). This is the kind of person who would have devoured Helen Custer's original "Inside Windows NT" during its first printing and who would have objected loudly to the prospect of moving portions of the windowing system into the kernel with NT 4.0.
And though today they might run one of the newer editions out of necessity (albeit heavily tweaked in the way that only a true NT veteran knows how), they still look longingly at the jewel case to their Windows 2000 Professional installation CD - a.k.a. The Best Damn OS Microsoft Ever Shipped. "Win2K" was the culmination of all their hopes and dreams, a shining moment of clarity prior to the great downfall that was the Windows XP "unification." But I digress...
In conclusion: While it's true that there are plenty of Windows "hacks" in the world (having an installed based in the hundreds of millions tends to magnify this phenomenon), there are also a great many NT enthusiasts who appreciate the myriad qualities of the *NIX platforms yet still prefer working within the most successful operating system environment in the history of computing.
All of which begs the question: Are *NIX users simply too stupid to appreciate the enduring qualities of Windows NT?
Posted by Randall Kennedy on May 8, 2008 12:04 PM
May 01, 2008 | Comments: (0)
Streaming Office: Death knell for Google Apps?
It's the holy grail of punditry: You make a bold, unconventional prediction that's way out in front of an emerging trend, then get to gloat as that prediction comes true. In my case, the prediction involved Microsoft's recently (at the time) acquired SoftGrid technology. I saw the acquisition as a clear sign that Microsoft was gearing up to deliver a subscriptions-based, hosted licensing model for Microsoft Office.
Of course, not everyone agreed with me. In fact, the CTO of a key Microsoft competitor all but dismissed the possibility on technical grounds. SoftGrid, he said, was an "inside the firewall" technology, and Microsoft would be hard pressed to make it work over the web.
Fast forward to today and we now hear that Microsoft intends to do exactly what the "nay-sayers" said they wouldn't: Use its newly re-branded Microsoft Application Virtualization (MAV) technology to deliver Office and other traditional "fat client" applications as subscriptions-based services, with the Internet/web (along with some of those massive data centers the company has been building) providing the distribution infrastructure.
Now it's time for another bold prediction: Streaming Office will clobber Google Apps, eventually driving the search giant out of the hosted applications business altogether.
Consider the following advantages to a Streaming Office suite:
- Full Office Functionality - MAV encapsulates the entire sequenced application. This isn't some "web-based" Office knock-off. It's the real deal: Microsoft Office in all it's sophisticated, class-leading, standard setting (flaunting?), enterprise desktop-dominating glory.
- True Offline Operation - Though Streaming Office may initially come to you over the wire, the actual application bits get cached locally by the MAV agent. This is the same MAV agent that hosts the virtualized application runtime, so offline operation is entirely seamless. As any veteran SoftGrid user can attest, it's as good as - if not better than - having Office installed locally.
- It's the Future of Windows Application Deployment - Everyone knows that Microsoft needs to "fix" the Windows runtime environment. All of that legacy application baggage is starting to drag down the client, making each new Windows version "fatter" and more kludge-like. I believe that MAV is one solution Microsoft may be mulling over as a means to preserve backwards compatibility while they tighten the native runtime so that only well-behaved code (including the MAV runtime) can execute.
With this kind of R&D investment you can be sure that Streaming Office - which is a byproduct of MAV's continued evolution - will be a high quality product and receive tremendous, cross-divisional support (just like Office does today).
Faced with a decision between a watered-down, limited, web-dependent pseudo-suite and the full power and richness of Microsoft Office, users will flock to the Microsoft camp - especially if the company prices a "pay as you go" Office aggressively. And then it will be "game over" for Google Apps and its ilk.
Just remember: You read it here first!
Posted by Randall Kennedy on May 1, 2008 11:23 AM
April 21, 2008 | Comments: (0)
Note to Popular Mechanics: Leave the PC reviewing to us professionals
As a veteran IT professional, I often get a kick out of how the mainstream media views technology. Whether it's some pseudo-custom UI in a Hollywood blockbuster (take "True Lies" and the Arabic Mac-in-Windows, for instance) or a newscaster trying to explain the intricacies of the DOJ/Microsoft antitrust ruling, I can't help but snicker when I see or hear something that shows just how ignorant the presenter really is.
Case in point: The recent "Ultimate Lab Test" showdown in Popular Mechanics. Why this bastion of insight into experimental flying machines and homemade survival shelters felt the need to comment on the whole Apple vs. PC debate is beyond me. However, I'm not one to look a gift horse in the mouth -- and as biased, uninformed "puff" pieces go, this one's a doozy!
Some observations:
- The hardware configurations weren't identical. In fact, they weren't even close. In some cases the systems were separated by as much as 2GB of RAM. In others, they weren't even using the same CPU generation. Clock speeds were all over the map. The whole "methodology" was a joke.
If there is a Cardinal rule to benchmarking, it's this: Make sure the systems are similarly, if not identically, configured. This includes things like hard disk rotational speed (never addressed in the PM article); Front Side Bus (FSB) speed (again, ignored by the article); memory speed/latency (another omission); and so on. Just saying the system has "2GB of DDR2" and a "160GB hard disk" doesn't cut it. Subtle variations in system specification can have a big impact on performance. You need to be precise in your disclosure or the tests are worthless.
- There was also only minimal disclosure of the software stack. For example, did the Vista systems have Service Pack 1 installed? Also, was it a clean install? Or was the system still full of the 100+ layers of crapware that every PC vendor seems to bundle these days? How about driver revisions? Vendor-specific tweaks or fixes?
Again, saying it was running Vista is meaningless. Unlike Apple, the Windows universe revolves around a diverse ecosystem of complementary components. When and how these components are integrated, including which drivers are employed and how the overall software stack is constructed, can have major consequences for performance.
- They're Mac enthusiasts, and this skewed the coverage. I know, I know, I'm going to get flamed to damnation for this statement. However, if you take a moment to look at the situation from a PC enthusiast's perspective, you'll begin to notice the well-defined Apple bias permeating the article.
For starters, when specifying the PC test bed, they chose form over function. While not unique to Apple enthusiasts, the bias toward good design over raw performance has always been a hallmark of the "enlightened" RDF (Reality Distortion Field) crowd. That any competent PC buyer could assemble a more powerful, capable bundle that would run rings around both test beds -- and do so for half the stated price -- is lost on them. They looked at their iMacs and saw an all-in-one design. Then they looked at the PC landscape and chose its corollary. Never mind that the system they chose was a piece of crap iMac knock-off designed to woo would-be Macolytes at the local Best Buy. It looked the way they thought a computer should look: Sleek. Refined. Artistic.
Then there's the obsession with startup times. Apparently, Mac users spend a lot of time booting their systems (instability?). Regardless, the fact that Vista boots like molasses is irrelevant: Most users don't power their systems off anymore anyway -- they soft-power them into a suspend/hibernation state and resume them when they need to use them again. This focus on startup times shows that the reviewers are out of touch with how the PC world thinks and works, which is not surprising since they're obviously Mac enthusiasts masquerading as "objective" reviewers. Typical.
In the end, it doesn't really matter that much to me since no competent system buyer will be taking their cues from Popular Mechanics. All of which leads us to the true audience for the PM article: Mac enthusiasts, a crowd so myopic and delusional that they have nothing better to do than read about how smart they are for buying a Mac in the first place. The folks at Popular Mechanics told us so!
Posted by Randall Kennedy on April 21, 2008 10:17 AM
April 20, 2008 | Comments: (0)
I have to admit, one of the most attractive (to me at least) features of the Linux desktop has always been the famous Beryl/Compiz 3D "cube" plug-in. I first dismissed the feature as pure "eye candy," however, after several months experimenting with various Linux distros, I came to appreciate the simple beauty and practicality of a 3-dimensional workspace. The ability to assign windows to different "surfaces" - and then navigate between them intuitively - made me more productive by allowing me to "un-clutter" my desktop.
So you can imagine my delight in discovering that I can create roughly the same experience under Windows, using a simple 3rd party utility called CubeDesktop:
Figure 1 - The 3D "Cube" View
With CubeDesktop, I can create up to six virtual desktops and navigate between them using mouse gestures or keyboard shortcuts. The desktops can be wrapped around the aforementioned cube, around a "cylinder" like structure, flipped through via an OSX-like "cover flow" type view or spread out across a lighting table style "explorer" view. Each view is hardware-accelerated, providing for a clean, responsive navigational experience.
Figure 2 - The 3D "Roll" View
The "basic" version (9.95 Euros = ~$16 USD) supports only the 3D Cube look, while the "pro" version (19.95 Euros - ~$32 USD) adds the Roll, Flip, Carousel and Explorer looks as well as the Windows "Exposer" - a Mac OS X "expose" like tool for navigating between multiple applications within a single desktop.
Figure 3 - The Window "Exposer" View
Other useful "pro" features include the ability to password-protect individual desktops and to create rules defining specific desktops for specific applications.
Figure 4 - The 3D "Flip" View
I installed CubeDesktop under Windows "Workstation" 2008 x64. Aside from a few usability quirks (e.g. notification area icons in one virtual desktop not retaining their links to the corresponding application window in another desktop), the solution seemed stable. One feature - an icon management panel for controlling which desktops get which icons - was non-functional under 64-bit versions. But otherwise, CubeDesktop worked as advertised - and with a level of stability and "polish" I found lacking in competing solutions from Otaku and others.
Of course, the big question is whether or not it's worth shelling out $30+ USD just to gain some fancy virtual desktop effects.
If you're a long-term "Beryl" cube addict like me it's a "no-brainer:" I'm way more productive with multiple desktops, and I find non-3D solutions counterintuitive. However, if you can do without the effects (which mostly add intuitiveness at the cost of higher resource consumption and lower overall functionality), you can achieve the same general productivity result using any number of freeware 2D virtual desktop solutions (Dexpot is a particularly attractive option, as is the open-source VirtuaWin). And you can reproduce a very "expose-like" effect using the Instant Viewer application in Microsoft's free (for Microsoft Mouse owners) IntelliPoint software.
But don't be mistaken: None of these comes close to the pure "cool" factor of spinning that cube...while still under Windows!
Posted by Randall Kennedy on April 20, 2008 11:03 AM
April 16, 2008 | Comments: (0)
Why I'm glad I don't work for Microsoft
Speechless. That's how I felt when I came across this latest gem from the bowels of Microsoft's sales & marketing organization. Never mind that they've completely dishonored "The Boss" - this whole production is an abomination! Who on earth thought this would be a good idea?
I actually feel sad for the Microsoft folks who received this thing in their inbox. It's hard to take pride in your work when your employer talks down to you like this. I've seen better motivational pitches at an Amway convention.
Perhaps Microsoft thinks its employees live in a vacuum. After all, anyone even remotely current with industry trends knows that Vista is a flop, and that SP1 has done little to turn the tide of rejections. Don't these folks read the news?
I understand that Microsoft wants to "rally its troops" in light of the Vista debacle. But producing a video that insults their intelligence (and the many fans of the "Tramp-in-Chief") seems an odd way to go about it.
Let's hope the folks from "MAD TV" are watching. This would make for a killer skit - right up there with the "iRack" spoof from a while back.
"Baby, we were born to run...away from corny motivational videos!"
Posted by Randall Kennedy on April 16, 2008 02:47 PM
April 15, 2008 | Comments: (0)
Solving the legacy Windows compatibility puzzle
There's been a lot of chatter lately about how Microsoft needs to start over with Windows. Many point to the (NT) code base's 16-year history and how the need to maintain backward compatibility is hampering efforts to move the platform forward. According to these critics, a clean break is necessary in order to stop the kind of bloatware madness that so crippled Windows Vista. Dump the creaking legacy that is the Win32 API/ATL/MFC, they say, and solve the compatibility riddle through VM technology.
While I can appreciate the logic behind these assertions, I don't agree with the proposed remedy. For starters, the inferred replacement for these outmoded APIs is Microsoft .Net. As those who are familiar with .Net programming will attest, so-called managed code runs like a slug in a molasses bath -- a least on the client side of the fence (I've personally had success with .Net for server application development). Convincing developers to dump tried and true -- if somewhat anachronistic -- programming models in favor of a fatter, slower runtime is even harder than it sounds.
Then there is the issue of application fidelity. Despite advancements in VM technology -- most notably, support for accelerated 3-D graphics in VMware Workstation 6.5 -- the fact remains that running legacy applications in a virtual machine is far from ideal. In addition to the sizable overhead (several hundred megabytes of RAM to house the applications and their supporting OS images), you lose the seamless integration of a natively executing Windows program. Popular workflow functionality, such as COM/OLE automation, becomes nearly impossible to implement across VM boundaries. Even simple tasks, such as dragging and dropping a data file onto an application window, take on new levels of complexity. No matter how cleverly disguised, these virtual walls of isolation will simply aggravate users who are accustomed to a consistent operational experience.
It would seem that Microsoft is faced with a dilemma. On the one hand, it's being called upon to move the Windows platform forward by eliminating the compatibility baggage, while on the other, it's stuck with the expectation that Windows will somehow continue supporting legacy applications, most likely through virtual machine technology. But is VM compatibility -- with its inherent shortcomings -- the only option?
Fortunately, the answer is no. There is another compatibility avenue that Microsoft might consider: application virtualization. Instead of building in a complex VM compatibility box, Microsoft could simply tweak its SoftGrid-derived Microsoft Application Virtualization (MAV) technology to provide a controlled runtime environment in which to execute legacy applications.
Here's how such a solution might work:
- Microsoft would integrate the MAV client and Application Sequencer tool with the base Windows OS image as a compatibility subsystem -- much like it provided OS/2 and POSIX support in the past.
- When a legacy application installation request is detected, Windows would fire up the Sequencer subsystem and capture the installation to an MAV image. The process could be further buttressed through the inclusion of an extensible compatibility library of Sequencer tweaks and so forth.
- The resulting application will still run in a virtualized state, but without the overhead and hard boundaries of a traditional virtual machine.
Such an application could respond to shell events (drag and drop, context menu selections), interact with other applications via COM/OLE, and generally preserve the fidelity of a native application -- all without mucking up the file system and Registry hives or otherwise creating the kind of conflicts/security holes that the "clean break" advocates like to squawk about.
It's a best-of-both-worlds scenario, one that would allow Microsoft to isolate troublesome legacy applications (or those from ISVs that still have not abandoned the old model) and actively evolve the native Windows runtime without concern for breaking the legacy application base or saddling users with an imperfect VM-based solution. The company has all the pieces. Let' see if it's smart enough to put them together in time to salvage the Windows platform.
Posted by Randall Kennedy on April 15, 2008 03:00 AM
April 10, 2008 | Comments: (0)
Ubuntu: More doomed than ever...
UPDATE: I just tried a clean install of the Ubuntu 8.04 RC build. Setup completed, the system rebooted and I logged into the desktop. I then clicked the Power button in the upper right corner and chose Suspend from the list of options. Went to resume and...wham! Black Screen of Death! On a pristine install with no proprietary drivers (first boot after setup completed). Unacceptable!
I consider myself a patient person. When it comes to OS quirks and difficulties, I've put up with more than my fair share. After all, I was an original Windows NT 3.x early adopter (feel my pain), which means I've come to accept that obscure, niche computing platforms invariably suffer from a long list of compatibility issues and functional compromises.
By contrast, I have little tolerance for such quirks or anomalies under more "mainstream" computing environments. A buggy, half-baked device driver might be "de rigueur" for PC-BSD. But produce a similar result under Windows XP or even Vista, and you have the makings of a public scandal.
That's why I simply cannot ignore the ongoing debacle that is ACPI support under Ubuntu. Despite six months of user complaints, dozens of bug reports and one very public scolding (by me), Ubuntu still does not run reliably on notebook PCs.
That's right: The ACPI bug I encountered with Ubuntu 7.10 "Gutsy Gibbon" has been carried over to Ubuntu 8.04 "Hardy Heron." In other words, the suspend/resume "black screen of death" is back, and nastier than ever!
This is unacceptable. Canonical, Ubuntu's publisher, wants us to see their "distro" as a mainstream alternative to Windows. Yet, even as they pile on new features - some of which, like WUBI, are designed to entice Windows users to kick Ubuntu's tires - they blatantly ignore glaring holes in the distro's underpinnings.
To clarify: I installed the Ubuntu 8.04 "Hard Heron" BETA on the same Dell notebook (XPS M1710, nVidia GeForce 7900GS graphics, 4GB RAM, Core 2 Duo T7200 CPU) that I tested Ubuntu 7.10 "Gutsy Gibbon" on last year. Using the default open-source nVidia driver I got an immediate "black screen" upon resuming from a suspend-to-RAM state. Switching to a proprietary nVidia driver left me with a "white screen." In both cases, I had to use the ACPI-override technique (hold down the power switch for 5 seconds) to shutdown the system.
Six months to correct the problem and they still can't get laptop power management right! This is just crazy! If Microsoft delivered anything close to this level of dysfunction there'd be calls for an FTC investigation!
Thankfully, the folks from Redmond got their act together long ago and made Windows work fairly reliably with mobile hardware. In fact, Vista has pretty much perfected the suspend/resume experience (with XP not far behind). By contrast, Ubuntu turns my $3,000.00 USD laptop into a very expensive (in terms of price/performance) desktop. Without suspend/resume, I'm screwed.
The whole situation really does boggle the mind. How Canonical can expect to be taken seriously as a mainstream OS provider when they can't get something as basic as power management working is beyond me. I had high hopes for "Hardy," if for no other reason than I expected my "showstopper" ACPI issues to have been resolved. That Ubuntu 8.04 remains unpalatable because of a stale, well-documented holdover bug from the previous version is really disappointing.
Posted by Randall Kennedy on April 10, 2008 09:55 AM
April 09, 2008 | Comments: (0)
Burned by Acrobat and Windows Update...on the same day!
I'm starting to hate Windows Update. No matter how many times I try to disable the Automatic Updates feature it somehow manages to re-enable itself, often with disastrous results.
Case in point: This week's "Patch Tuesday" batch of updates for Server 2008. I went to manually check for the updates and force a download only to discover that they were already 95% complete - this despite the fact that I had very deliberately disabled Automatic Updates when I first installed Server 2008 as a "Workstation" OS. Worse still, once the download had completed I started getting those "nag" screens about how I needed to reboot my PC, etc., to complete the updates.
Since I was in the middle of working on something, I clicked the "Postpone" button. When the "nag" screen appeared again, I reset the "Reminder" interval to 4 hours (the default is 10 minutes) and again clicked the "Postpone" button. I figured by then I'd be done with my day (it was already late evening) at which point the system-initiated reboot could proceed unhindered by my constant interference.
Unfortunately, I never got the chance to execute my plan. A few minutes after clicking the "Postpone" button a second time, Windows decided that enough was enough and proceeded forcibly reboot my system without my consent - this despite the fact that I was still actively typing at the keyboard! I was left to watch helplessly as my unfinished web posting disappeared in a blur of closing windows and fading UI effects.
After a longer-than-usual boot cycle (due to the large number of updates being applied), I finally got to log back in and assess the damage. To its credit, Windows tried to ease the pain by re-opening some of the applications that had been running before it so rudely intervened. However, nothing could bring-back my now vaporized web posting. I then checked my system's Windows Update settings and, lo and behold, it had been reset to Automatic again. I've since disabled the entire Windows Update service in Control Panel. I can only hope that'll be enough to slay this monster once and for all.
They say that calamities travel in packs, so it was no real surprise when, shortly after my system was forcibly rebooted, it hung solid. The culprit: Adobe Acrobat Reader. I had noticed for some time that, whenever I opened a PDF file, my mouse pointer would mysteriously "disappear," only to "reappear" just as mysteriously a few seconds later. I chalked it up to some minor flakiness in Adobe's rendering engine. The bug seemed harmless enough - until I made the mistake of actually moving my mouse to try and resurrect the pointer.
Suffice to say that Windows Server 2008 hung-up quite nicely at that point. In addition to the missing pointer, my keyboard was now dead. I tried disconnecting/reconnecting the mouse dongle (I use a Microsoft Wireless Notebook Laser Mouse 7000), pressing CTRL-ALT-DEL, the works. I finally realized that I was in fact screwed when the system's "soft" power button didn't respond (normally it should trigger a graceful shutdown). I ended up having to execute the infamous "ACPI override" technique (hold down the power button for 5 seconds or more) in order kill the beast.
My next stop - after waiting through another painful Windows reboot cycle - was Google. A quick search on the term "Adobe Acrobat disappearing cursor" brought up a host of message board complaints about this very same phenomenon: The cursor going missing during PDF loading, and sometimes never coming back, leaving the user with a locked-up desktop.
I'd like to assign sole blame to Adobe for the bug (I've since dumped Reader in favor of Foxit's free alternative), but the fact is that no application should be able to lock-up the Windows desktop in this fashion - at least not since the mass migration from DOS/Windows to the Windows NT code base. As those familiar with early NT design parameters will attest, a major robustness selling point was the introduction of asynchronous, per-process input queues for mouse and keyboard I/O. In fact, this was one of the marketing bullets used by Microsoft when pitching NT as a competitor to OS/2. The latter used a shared input queue model that was susceptible to lockups from a misbehaved application. NT's model was more reliable, though it did wreck havoc with window focus assignment in certain instances.
Frankly, I thought we were beyond this sort of thing with Windows. However, given the amount of "kludging" that's gone into the code base since Microsoft "unified" its desktop offerings under Windows XP, I wouldn't be surprised if they compromised this feature in the name of some consumer-focused requirement, like improving video game input throughput under DirectX.
Regardless, it's sad to see my once robust NT reduced to a quivering mass of bloated Vista hacks and compromises. And since I normally run Windows Server 2008 as my desktop, this latest crash does not bode well for Microsoft's enterprise reputation. After all, nobody should be able to take-down a multi-million dollar server farm simply by loading a PDF document at the system console.
Posted by Randall Kennedy on April 9, 2008 12:55 AM
April 08, 2008 | Comments: (0)
Bitter fruit and broken promises: My "hackintosh" odyssesy (and more)
A week ago I solicited suggestions on which version of *nix to try next. I'd been "jonesing" for a new OS experience, and it made sense to see how some of my previous choices had evolved during my six month hiatus. So, after collecting a long and varied list of possible targets, I set out on my odyssey to find out if any of the current crop of *nix variants could serve as a full-time replacement for my satisfying - yet entirely unsupported - Windows 2008 "Workstation" configuration.
Since I was starting from scratch, I decided to go with the most radical suggestion first: Turn my Dell XPS M1710 notebook into a "hackintosh" by installing OS X. I've always been curious about OS X - just not enough to spring for a new notebook. So the "hackintosh" route seemed like a nice alternative.
My previous attempts at creating such a beast, using a modified OS X 10.4.9 "Tiger" installation DVD, had all been unsuccessful. Either the OS wouldn't install at all or, when it did, the video was so distorted that I couldn't continue. I was, therefore, quite pleased to discover that an intrepid group of "hackintoshers" had put together a new 10.5.1 "Leopard" version of the modified OS X DVD image (i.e. the "iATKOS" DVD) . This new compilation promised a "one step" installation process as well as better device support for the myriad non-Apple hardware peripherals that a "hackintosher" might encounter.
Unfortunately, the experience didn't quite live up to the hype. Yes, I was able to successfully install OS X 10.5.1. And yes, the video worked reliably on the first try (using the "NVinject" kext). However, I ran into all sorts of problems with the OS X kernel and its interactions with my dual-core T7200 CPU (lots of pointer stuttering and delayed keyboard/mouse input).
I was able to work around this issue by disabling dual-core support in the Dell's BIOS (thus

