[plt-scheme] Version Check
Matthias Felleisen wrote:
>
>>
>>> On 4/26/06, Anton van Straaten <anton at appsolutions.com> wrote:
>>>
>>>> Matthias Felleisen wrote:
>>>>
>>>>> Ethics: In the spirit of modern commercial OSes, I consider it
>>>>> perfectly
>>>>> okay to go out on the Web occasionally and check whether there are
>>>>> patches.
>>>>
>>>>
>>>> The "Microsoft does it, so it must be ethical" argument? :)
>
>
> This is about as well-reasoned as "Microsoft does it, so it must be
> unethical".
Think of the ":)" as a symbol with a lexical scope which extends to the
beginning of the prior sentence (sometimes paragraph), which among other
things indicates that "well-reasoned" is not necessarily a property of
the text in said scope.
But the true words behind that jest are that the real reasons companies
make their software perform update checks have much more to do with
marketing than technical reasons. The worst offenders in this area
(such as Macromedia and Real) are just a minor step away from spyware
and adware in terms of their nuisance value. For me, there's a strong
guilt-by-association factor here.
When actual technical reasons are involved in update checks, they tend
to have to do with particularly buggy or insecure software which
requires frequent updates to remain viable. Another justification for
automating the update process as much as possible is that getting
consumers used to rely on that process makes it easier to distribute
controversial updates, such as new systems to restrict fair use rights.
The result of this situation is that arguments of the form "everyone
else is doing it, why shouldn't we" should not be accorded much weight.
>>> Well, Fedora does it too, with the Red Hat Network checks.
>
>
> How about this: Reasoning software engineers understand that complex
> systems, such as PLT Scheme [OS X, RedHat Linux, Windows n, etc] are in
> constant need of care. If left to their own devices, they will "rot" and
> may eventually cause harm. It is therefore imperative (pardon the word)
> to occasionally update them. Everything else is unethical.
Reasoning software engineers understand that versioning is a complex
topic which cannot sensibly be dealt with by applications in isolation.
Unless DrScheme can pop up a dialog which says "There's a new version
of DrScheme, but the application you wrote six weeks ago is likely to
fail due to the changes in SSL behavior", merely being told that there's
a new version is relatively useless. There's almost always a new
version, so this isn't really useful information to a reasoning software
engineer.
Eli Barzilay wrote:
> User-triggered checks were a failure. During the 209->299->300
> transition, the version check thing got broken, and for months nobody
> noticed.
And what was the problem with that situation?
Note that I'm not arguing that PLT shouldn't do this. I've already said
what I think would be acceptable, which boils down to informed consent
at install time.
Anton