Longhorn wish list

You haven’t read much about Longhorn (code name for the next version of Windows) here. I’ve been to plenty of public demonstrations and discussions of Longhorn, along with a few private briefings. Most of what I saw was interesting but obviously very early and unfinished. I’ve installed and experimented with some alpha versions of Longhorn. Everything was rough and ragged (as you would expect for pre-alpha code) and I had better things to do than tinker with highly unstable software. Besides, unless you’re a software developer or hardware designer, knowing a lot about Longhorn isn’t going to help you.

Today, Mary Jo Foley reports that Microsoft plans to “gut Longhorn” so that it can ship an operating system upgrade in 2006:

After the cuts, Longhorn won’t look much like the early builds that Microsoft has been distributing to date. But it should run existing applications.

According to developer sources, Microsoft is cutting back Longhorn client’s planned feature set so as to be able to make its current delivery targets: Beta 1 by next year and final release some time in 2006.

Microsoft is expected to announce officially later on Friday its future roadmap for the desktop version of Longhorn. And while developers and customers who expected they’d be required to rewrite their applications to take advantage of Longhorn may be happy with Microsoft’s roadmap changes, others who were banking on promised Longhorn features, such as the next-gen Windows File System, will be far less so.

The end result? Longhorn is going to be a lot more of an evolutionary than a revolutionary Windows release.

I have no problem with that. The core of Windows XP is pretty darn good. Adding a few cool new features and a select handful of major changes, without affecting backward compatibility with Windows XP, would make me happy. If Microsoft does nothing else with Longhorn, they need to fix the user permissions model, which encourages – even forces – users to run as Administrator all the time.

A secure operating system should provide at least three user modes:

  • Administrator – reserved for system management tasks such as installing hardware drivers, upgrading operating system components, and installing programs that need to run with system-level permissions.
  • Trusted User – this is the type of account you and I should be running under all the time. It should allow me to install signed programs and drivers, run any installed program and use any installed device. It should prompt me to enter an Administrator’s credentials when I install unsigned software or use a program that has system-level rights.
  • Limited User – With this type of account, I should be able to run software but not make any system configuration changes. An Administrator should be able to configure which programs I am allowed to run but I shouldn’t be able to install any software and I should be allowed to access only signed drivers that are already installed.

Right now, Windows XP offers Administrator and Limited options only. Few people choose to run as a Limited user, because the experience is unpleasant. Anyone who can dupe an Administrator into installing a program can take over their box. That’s the biggest change that has to happen in Longhorn.

Second biggest usability tweak to fix is the ability to transfer programs along with files and settings. Right now, if I move to a new PC, I can transfer all my files and most of my settings, but the programs have to be re-installed from scratch. That’s no fun. There should be a Windows standard way to “package” an installed program for transfer to another computer, with required program files, support files, DLLs, Registry settings, and so on able to come along for the ride.

Honestly, I don’t care that much about Win FS and Avalon. They’re cool, but they can wait. Fix those two things and Longhorn will be worth the upgrade.