37 comments

[ 3.1 ms ] story [ 86.1 ms ] thread
Backwards comparability? Windows is a platform. If Microsoft revamped the whole thing, it would turn into a whole new platform.

And as a side note, Gnome has gconf. That's an awful lot like the registry, just with XML and directories.

Apple did this, with OS X. Microsoft could easily do this, and write the compatibility layer to allow 'legacy' applications to continue running for the next N years.

They don't have the balls to take the risk, though.

Let's be honest here, Apple could only do it because of the relatively small size and loyalty of their user base. Apple users have proven themselves willing to upgrade in a timely fashion. Windows users are more likely to stick with an old version if the new version gets bad press. Think WindowsME and Vista. If Microsoft were to make a complete, compatibility-breaking overhaul, they would have a lot of trouble selling it.
Microsoft already did almost the opposite when they did the switch from .ini files of old to the registry, by translating the .ini file API into equivalent registry calls.

There's no compelling reason why they couldn't do it, although it's probably much more involved than it first appears, and I seriously doubt it's due to the fact "they don't have the balls to take the risk" given many of the security changes introduced in Vista, it's probably just because it's just quite low down on their list of priorities when there's been bigger fish to fry, such as security, performance, and replacing the increasing dated WinForms.

Actually, I think MS's approach here is riskier. By not providing an upgrade path and admitting up front that many things will break they are essentially saying "OK XP users, you will have to do a clean format, reinstall everything, and it will be a pain, but it is worth it because of how amazing Win7 is." Providing a compatibility layer requires fewer balls because people have to make less effort to switch.
Firstly since when is upgrading any OS while skipping a version easy to do? It's even difficult in Linux from what I've seen and experienced.

Secondly there's a migration tool available on the install DVD which saves all of your documents and application settings, meaning that you don't have to spend a lot of time configuring your applications again.

Apple called Microsoft and said "Hey, can you guys port Office to our new OSX thing?" and Microsoft said "Sure, why not? But we're not using Objective-C" Then Apple called Adobe and said "Can you port Photoshop to our new OSX thing?" and Adobe said "OK, but we're not using Objective-C". So Apple made Carbon and their entire legacy ecosystem was more or less a solved problem.
(comment deleted)
You might want to look at PowerShell.
Have you tried using it? PowerShell is more like Applescript than anything else, with all the pejoratives that implies.

Hilariously, I have managed to do productive things with Applescript (as annoying as it can be), but I can't say the same for PowerShell.

"Microsoft has a problem—the whole industry has a problem. Everyone needs Windows 7 to be a huge success. In the past week, even Intel has been bemoaning the fact that nobody is upgrading machines like they used to."

I really don't think this has anything to do with Windows 7 specifically. What's happening is that PCs have reached the point where even a machine that's a few years old running Win2003 is entirely adequate to do the things most people and businesses want a PC to do: run Office, read email, watch YouTube, surf the net.

The value-added argument is just no longer convincing for many consumers, especially in this economy.

"Everyone needs Windows 7 to be a huge success."

Well... I sure don't. In fact, I wish it fails big and drives the market towards greater diversity.

But that's me.

This is an argument that gets rolled out every time Microsoft releases a new OS or version of Office. But Apple seems to get a free pass. Why bother updating to Snow Leopard? Arguably OS X did everything on your list adequately five years ago.

Just curious.

There is still a registry, because the registry is still a great idea.

Dvorak argues that the registry is 'a pile of junk clogging up the machine'. The registry is a tree data structure - more nodes won't 'clog it up', it'll still take the same number of operations to get anywhere in the tree

Yeah, the registry is great. It would be much better though if the data was stored in application specific data files. They could still provide a unifying API but make it really easy to remove an application.
Correct me if I'm wrong, but it wouldn't really be a registry then, would it?
Depends on what your definition of registry is. If the current registry is stored in two non consecutive disk blocks (due to fragmentation), is that still a registry? Think of per application files as disk blocks, with the registry API caching those into memory and operating as if it was a single database.
It's not clogged from the machine's perspective, but the user's. The problem is cleanly maintaining a computer with a registry that's gone through hundreds of OS updates and driver/application installs and uninstalls.
I don't think the data structure behind the registry is what he was referring to.

I think he was referring to things like the right click menu registry entry that accumulate so many entries over time that it takes 30 seconds to show the right click menu.

"At some point, maybe soon, the Registry will be the death of Windows. At some point people will simply refuse to go through this sort of upgrade process to accommodate what is essentially a mediocre architecture based on ideas from the 1980s."

If I remember correctly, the story of how the Registry was invented (for the first version Windows NT) was told in the book Show Stopper!: The Breakneck Race to Create Windows NT and the Next Generation at Microsoft by G. Pascal Zachary. The rationale for the registry didn't inspire confidence (in me) at that time, and now the registry seems to be an idea whose time has passed.

"If anything will drive people to Linux, it will be this Registry-centric architecture of Windows."

Wait... what?

This whole article is laying things on a bit thick, but this quote is especially hard to swallow.

The two groups of people that primarily buy Windows are individual consumers, like my dad, and corporate IT decision makers, like my boss.

I can't imagine either man saying to me, "I'd love to stay with Windows but its damn Registry-centric architecture is something I just can't get past. It's sure making Linux look pretty attractive."

There are plenty of legit reasons for choosing or not choosing to use Windows. I have a hard time swallowing that its Registry-centric architecture is high on most people's lists.

But might your dad (or your boss) say that the upgrade to Windows 7 is so troublesome that they might just as well switch to Linux? I've been amazed at how easy a switch to Linux (by other family members) has been in some cases I have observed.
Switching to Linux is as easy as switching to Windows 7 -- both options require reinstalling your operating system and all your applications.
Switching to Win7 doesn't require you to give up all your applications.
Can't give up photoshop and windows 7 from XP was a dead easy upgrade.
I've gone through some pretty painful Linux upgrades.
How about using GUID as another namespace on top of registry's key value?
I've been using the RTM and so far I plan on installing XP on my newish notebook that came with Vista. My biggest issue with Vista is the way it keeps pinging the hard drive:

http://forums.techarena.in/windows-vista-performance/974285....

I could never get it to stop completely and it runs down the battery and causes extra noise and heat. And its the same thing with Windows 7.

I'm going to pay $140 for a XP 64bit license. I would love to downgrade but MS doesn't offer that for Vista Home.

Wait a sec, this is a Dvorak article. Oh, you got me; clever.
IMHO the reason people never give upgrading OSX a second thought is the learning curve. Apple does not change where things are for no reason. Microsoft seems to be supporting bloated IT departments with needless changes to system setting menus. Someone has to learn and then teach where they were moved. Case in point: My Mom (82 years old) upgrades her Mac with every OS apple comes out with and never misses a step. Her needs are quite similar to my Wifey who teaches yearbook at the local school. Both use Photoshop, excessively email, make slide shows and albums. Wifey is running XP because Vista required learning new places for the same old or slightly upgraded settings. I doubt she will change to Vista until Microsoft forces her to for the same reason. You can guess who is having a good user experience.
Imho he doesn't make a lot of sense. First, he is claiming that Windows 7 breaks more backward compatibility than previous Windowses. I find it very hard to believe that Vista->7 upgrade would break more applications than XP->Vista, especially at the time when Vista was released.

Secondly, he is saying that registry hinders portability of applications. Well, that's kinda true, but on the next paragraph he is already promoting Linux-based systems as alternative.

Just try to install an application on usual Linux OS and then move it to another system, with all configuration data. Just for extra fun, install it originally with classic configure-make-make install-method, lose the source tree and move it another distro (or different version of same distro).

Registry may not be perfect, but it isn't that bad either. Worst part is that many applications abuse it a lot, causing all kinds of problems, but would flat configuration files really solve the problem of misbehaving apps?

If registry would be bit more organized, and had some inline documentation it actually would be much better.

I clicked the link because I was interested in the topic. Then I saw Dvorak wrote it and I had to close it with extreme prejudice. Dvorak is one of those writers that I consider hostile to intelligent discourse. He is a master troll who knows how to get page views by making people who understand the things he's talking about waste thousands of man hours formulating pointless rebuttals. If he could be banned from Hacker News it would be in everyone's best interest.
It sounds like the author of the article is pining for NeXT/OSX App bundles, though he doesn't seem to know they exist. Anyway:

The Registry in windows was a /proc-alike database for twiddling system and driver settings, except slightly smarter in that it was automatically persisted to disk. Application-writers hijacked it to store their own applications' settings. At this point, if HKLM/Software and HKCU/Software were just transparently transformed into configuration files stored in the user's Profile folder, I don't think any harm would be done. The rest of the registry, though, is actually centralized by necessity (though you could argue that nodes for the kernel and the shell should probably live in separate hives.)

Why? Compatibility.
The idea that Microsoft could remove the registry without breaking millions of applications is a pipe dream. Say what you will about Microsoft's love of backwards compatibility, but they'd lose customers if half of your applications broke with Windows 7.
Wow. I always knew Dvorak was insane but this is insane++. I don't even know what he is talking about:

1) Is he talking about the upgrade path from XP to Windows 7?

2) Does he know that there is an upgrade path from Vista to Windows 7?

3) Does he know that all three versions use the registry so it clearly has no impact on upgrade paths?

4) Is he advocating that microsoft make smaller changes in order to provide an upgrade path to older versions or is he advocating they make bigger, breaking changes like getting rid of the registry?

5) Is somebody checking his pill box to see if he took his medicine? Because I am sincerely worried for his health.