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