On Wed, Feb 1, 2012 at 12:36 AM, Dale <rdalek1...@gmail.com> wrote: > J. Roeleveld wrote: >> >> On Tue, January 31, 2012 6:30 pm, Walter Dnes wrote: >>> On Tue, Jan 31, 2012 at 06:05:12PM +0100, Michael Hampicke wrote >>>>> Sweet. I had 15 minutes in the office "how long before someone makes a >>>> pointless, unrelated Windows insult out of my post" pool; I just won >>>> $5. >>>> >>>> I was using Win3.1 - and was happy with it >>>> I was using Win95 - and was happy with it >>>> I was using WinNT4 - and was happy with it >>>> I was using Win2000 - and was happy with it >>>> I was using Win Server 2003 - and was happy with it >>>> I was using Win7 - and was happy with it >>>> >>>> And I am also a Linux SuSe user since 6.0 and Gentoo user since >>>> 1.something (but up until now just on the servers). >>>> >>>> I made the final switch from Windows to Linux on my Workstation (Gentoo) >>>> and Notebook (Lubuntu) only a few month ago. >>>> >>>> So please, don't accuse me of making Windows insults. >>> >>> I feel that Win98SE was the best Windows ever, and could've been even >>> more of a killer if Microsoft hadn't so stupidly tried to ram ActiveX >>> down people's throats. Remove ActiveX, and 99% of "drive-by-downloads" >>> would've disappeared. WinME was a sad joke, however. >> >> I enjoyed MS Dos, then played a bit with MS Win3.11, MS Win95 and MS Win98SE. >> However, for important stuff, like day-to-day desktop, I switched to Linux >> in 1997. That was the last time I lost files due to a crash of MS >> Windows... >> >> -- >> Joost >> >> >> > > > When 3.1 came out, I changed jobs. Swapping 15 floppies is no fun to > me. Funny, reinstalling fixed the problems back then and it still is > the best way to fix windoze. > > < sighs >
Actually, the reason for that's pretty easy to explain. It's because Windows, unlike every major Linux distribution since Apt, wasn't designed around pulling software from centralized repositories. Instead, ISVs were expected to provide installers, which users were expected to obtain from outside channels and run. That seems archaic to Linux users, but even Red Hat was like that before yum. Since there was no centralized, curated software repository maintained by people ensuring things worked properly together, you got everything from DLL hell to developers violating Microsoft's recommendations (and, considering that Microsoft *designed the platform*, you can consider their recommendations as part of the platform spec) and good development practice. So you have things like: * People bypassing APIs and munging registry keys directly. This would be like a Linux app going in and modifying Debian's package database without going through an intermediate library kept in lockstep with the package manager code. Eventually, one's going to behave in a way the other isn't going to expect, and either the package database will become corrupt ("f'ing $OSVENDOR! Their stuff keeps breaking!", the user will curse), or the application will stop working ("F'ing $OSVENDOR! They keep breaking my stuff!") * People not bothering to understand DLL search paths, and getting into the habit of dropping their DLL into the SYSTEM32 folder. That would be like manually building and installing a package to /usr/ instead of /usr/local, or a library in /usr/lib or /usr/local/lib with an improper soname. Eventually, you risk changing the behavior of an unrelated app, or having an unrelated app change your app's behavior, all because a couple DLLs had the same name and no differentiating metadata. * People only ever testing their programs while they have Administrator privileges, and so their programs only ever work correctly while running as Administrator. This would be like an app found in /usr/bin assuming it can write anywhere it pleases, call any API call it needs, and doing some marginally unsafe things with system calls. To get it to work properly, you'd have to make it suid root, and it'd be a vulnerability vector. The analogies aren't perfect, but the points still stand. Sad thing is, if and when Microsoft takes steps toward a repository model (these days, people like to call them app stores) they'll be lambasted as being evil for applying a gateway to the platform, even though it's going to be a necessary step to fixing a lot of what's wrong with the development culture on that platform. Linux isn't perfect in these regards, but the combination of being open source, of distros having their own software repositories and of distro maintainers feeding fixes upstream is an exceedingly effective combination. Linux systems don't accrue systemic cruft nearly as rapidly as Windows systems, in large part because of the forced cooperation applied by the LSB and by distro maintainers. Cruft buildup can still happen, though, and that's why "emerge -e @world" exists. And, actually, that's a pretty analogous action to reinstalling Windows. It's just much easier, and does a better job of retaining user and application settings. -- :wq