Linked by Thom Holwerda on Fri 22nd Jan 2010 17:06 UTC
OSNews, Generic OSes Taking a break from reporting on the latest netbook or phone rumours, Engadget posted an article yesterday about several elements in desktop operating systems writer Paul Miller finds outdated. While there's some interesting stuff in there, there's also a lot to discuss.
Thread beginning with comment 405501
To read all comments associated with this story, please click here.
Going to add a few of my own ...
by WorknMan on Fri 22nd Jan 2010 18:17 UTC
WorknMan
Member since:
2005-11-13

I've got a few gripes of my own. These may be specific only to windows, but whatever:

1. Developers trying to cater to iTards by adding custom skins on their apps so that the interface on most of them looks like a huge catastrophe of ass. And this is only going to get worse with things like WPF, where they can make widgets sing and dance if they want to. I guess the concept of having a unified look and feel across the OS doesn't compute with these people. It also sucks because I can't use scripting to control programatically a lot of the non-standard GUI controls that they use.

2. Lack of portability. Why the hell are developers still using the Windows registry? What purpose does that serve, exactly? Why not just have the config files in the program directory, so I can copy it to a USB stick and use it on whatever computer I happen to be working on? Makes backups easier too. And oh yeah, stop charging for USB-friendly versions, you greedy f**ks.

3. There needs to be a unified system that all apps use to announce that there's an update, so I can have ONE notification alert every week or so to let me know that some of my programs need updating. Right now, I've got all kinds of apps (legitimate ones) trying to start up 'update agents' at system startup and displaying balloons in the system tray all the time. It's madness.

Reply Score: 12

Soulbender Member since:
2005-08-18

Developers trying to cater to iTards by adding custom skins


Oh god yes, please make skinning die. No people, you can't fix your applications fundamentally broken UI by adding skinning.

Why not just have the config files in the program directory


Because you wouldn't want any Joe user write to the program directory. There's no reason this config file can't be stored in the user profile though. Registry must die.

There needs to be a unified system that all apps use to announce that there's an update, so I can have ONE notification alert every week or so to let me know that some of my programs need updating.


Dude, you're on Windows. Bite the bullet ;)

Reply Parent Score: 3

rainman Member since:
2007-05-22

"Why not just have the config files in the program directory


Because you wouldn't want any Joe user write to the program directory.
"

Putting the config files in the program directory would not require the entire directory to be world-writable; only the config file itself would need to be writable. Or, if you want users to be able to add/remove config files then you could have a writable config sub-directory within the read-only program directory.

Reply Parent Score: 1

darknexus Member since:
2008-07-15

2. Lack of portability. Why the hell are developers still using the Windows registry? What purpose does that serve, exactly? Why not just have the config files in the program directory, so I can copy it to a USB stick and use it on whatever computer I happen to be working on?


As for the registry, I agree it has to go. Config files do nicely, just have a look at OS X to see a very well organized system of config files (Plists). Much cleaner than the registry. As for why they aren't in the program directory however, that one is easy to answer. Windows, just like most other desktop oses today, is multi-user. It therefore needs to put configuration files for each user separately, and the obvious place to do this is in the user's data folder. I think, perhaps, the best of both worlds could be achieved whereby the app looks in the user data folder first and, if nothing is found there, loads the same config files from its own directory instead. That'd mean you could easily copy the default configuration of your choice to the app and take it wherever you go, and yet it would still work properly in a multi-user environment. *NIX systems do something like this, except global config files are loaded from /etc when the user-specific conf files aren't found. Loading them from /etc is no good for USB portability, but the idea is essentially the same.

Reply Parent Score: 2

boldingd Member since:
2009-02-19

I do agree with SoulBender's last point: I find it somewhat amusing that the OP's last two points -- or, rather, the optimal solution to those problems -- are basically how unix-like OS's work now. For the last one, when I read that, I said to myself, "congratulations, you just invented apt." (Well, part of it's function, anyway.)

Edited 2010-01-22 20:28 UTC

Reply Parent Score: 3

sj87 Member since:
2007-12-16

Windows, just like most other desktop oses today, is multi-user. It therefore needs to put configuration files for each user separately, and the obvious place to do this is in the user's data folder. I think, perhaps, the best of both worlds could be achieved whereby the app looks in the user data folder first and, if nothing is found there, loads the same config files from its own directory instead.


Windows has had an "All users" directory for this sorts of things since XP. It's pretty much used only with some desktop and "start menu" icons then, dunno how Vista and Seven are different.

Reply Parent Score: 1

jabbotts Member since:
2007-09-06

The are good complaints but mostly due to use of Windows.

1. back in the day when I first chose Enlightenment due to it's fantastic theming, themable applications would have been bliss. These days I feel the same as use; even Aero is wasted on me. I want some aesthetic appeal but if I wanted a 3D video game, I'd be playing a game. I don't need my desktop to look like 14 year old's design of a gaming interface anymore. If programs must have a theme framework, at least include a plain native widget for when I disable theming. This need to put bubble gum interfaces on applications isn't unique to Windows either though.

2. The irony is that Windows applications where nice and portable when they stuck with .INI files in the program directory tree. I suspect a big motivation is that it did make programs so easily portable. Now you either need someone with some regedit skills or the original install media to move the app from one machine to another. I think it would be a step forward to go back to .INI or program directory hosted reg databases. Other platforms manage the programs differently with varying levels of portability. In the few cases where I've had something on Backtrack or another distribution that I couldn't live without, I've been able to simply copy the binary over to my Debian and go with it. (eg. aircrack related scripts, an odd binary or two) Apple is probably easiest as it's pretty much just a drag and drop the program icon; uninstall sucks though.

3. unified program managers are the norm on other platforms. Microsoft only includes drivers and MS product updates. I'd love to see third party installs and updates also available through Windows Update but it's not likely to happen what with the need to maximize barriers to competition. Apple's updater covers more but Apple's base platform also covers more. Outside of a new iTunes update nearly weekly, I haven't seen much else coming in though. On my Debian boxes, a single command between logging in and starting my GUI updates everything. Of course, starting the GUI automatically is the norm and there is an updates notice in the icon bar for those who prefer it.

I shure wouldn't complain if MS dared to provide a more portable config storage framework and more repository style software delivery. (be nice if the default wasn't for applications to steel focus on the screen too)

Reply Parent Score: 2

merkoth Member since:
2006-09-22

Yes, the registry sucks for the user but, truth be told, it is much faster than any config file. It doesn't seem like much nowadays, with the average PC being equipped with CPUs running @ 1+ Ghz, but back in the 133 Mhz times it was relevant. Specially for apps like Office with a bazillion configuration options.

Reply Parent Score: 1

darknexus Member since:
2008-07-15

You make it sound like the registry is magically free from file latency. Guess what, underneath it all the registry is composed of files as well. It might be faster as far as an API goes, but these days you can do the same thing just as quickly with XML. Gconf on Linux, as well as OS X Plists, are XML files and both have APIs that are simple like that of the registry. At this point, the registry has become a complicated rat's nest and is being used for too many things. I hate trying to remove some unwanted ad-ware and having to go into a registry path such as:
HKEY Classes Root\CLSID\0xa2d9ff48\001a4dd3... etc etc. Ridiculous, and pointless to boot. It wouldn't be so bad if legitimate programs used the registry in a sane fashion, but they don't. At least with OS X Plists and Gconf the legitimate keys and folders have sane names, anything odd sticks out immediately.

Reply Parent Score: 3

license_2_blather Member since:
2006-02-05

I'm not sure I buy performance as the reason for the registry, or a monolithic binary configuration store like it. Unix ran on those same slow platforms and managed to get by with text config files, as it mostly still does. VMS did, too, IIRC.

I suspect something more sinister was afoot....

Or maybe just stupid.

I don't like the XML trend these days, but even XML, like other text files, has one thing that the Registry does not: Comments.

Edited 2010-01-23 03:35 UTC

Reply Parent Score: 2

funny_irony Member since:
2007-03-07

1) There is a myth that putting all the configuration files into one windows registry will make things faster. However, they never expect registry to grow to hundreds of megabytes and take up system resources.

2) A corrupted windows registry will cause boot up failure.

3) It is easier to launch Malwares with windows registry since it didn't have any good protection. Registry is the weakest link in system security.
Malware attack your registry and your system will not boot up.

4) Uninstaller usually forgot to remove the entries in the registry and force people to use registry cleaner to clean up.

5) People use to copy the aplication to a folder just to install the application (no installer required). Registry make installation complicate.

Reply Parent Score: 2

tylerdurden Member since:
2009-03-17

The windows registry has nothing to do with performance..

It is convoluted by design, the last thing Microsoft and other software vendors in the windows ecosystem want portable applications. "Portable" in the sense of moving one app to another windows system freely. The registry provides a hacked up way of tying a copy of an app to a single system. And that is exactly how Microsoft et al want it.

Furthermore, the registry is microsoft's implementation of as similar unified configuration framework that VMS used. NT was developed by a team which had been greatly influenced by the design and implementation of VMS (since most of the initial research team for NT inside microsoft had come directly from the VMS team at DIGITAL). Of course, in typical microsoft fashion they took a mildly good idea and botched it beyond recognition.

The registry add absolutely no performance improvement of any significance (in the 133MHz days, as well as in the multi GHz days, when dealing with configuration files... the bottleneck is the disk I/O and a monolithic hard to parse file is no more efficient than multiple simpler files). As it stands, with its design, the registry in windows is a liability. Since a corruption in a single file can lead to a catastrophic system failure.

Reply Parent Score: 2