Stirbt der Code für Abbruchware jemals richtig?


10

Ich habe den Eindruck, dass im Laufe der Zeit immer mehr Open Source-Code generiert, zu verschiedenen freien oder teilweise freien Repositorys hinzugefügt und dann im Allgemeinen aufgegeben wird.

Gibt es allgemein anerkannte Standards für die Entsorgung von aufgegebenem Code? Sollte dies durch Repositorys erzwungen werden, oder liegt dies an den ursprünglichen Code-Autoren?


2
Warum sollte es entsorgt werden müssen? Wenn es Open Source ist, möchte es vielleicht irgendwann jemand für etwas, und es kostet nicht viel, es in Repositories zu behalten.
David Thornley

Was meinen Sie mit "Standards für die Entsorgung von aufgegebenem Code"? "del . "?
Turm

@Rook: Oder "rm -rf *" für Unix / Linux-Benutzer.
David Thornley

@ David Thornley - ja, gut ... Sie bekommen den Punkt :)
Rook

Antworten:


7

Das große Problem hierbei ist die Entscheidung, wann etwas aufgegeben wird.

Alte Software wird von Personen mit alten Computern oder konservativen Upgrade-Richtlinien (z. B. Banken) verwendet. Daher kann eine Datei, die möglicherweise zehnmal pro Jahr heruntergeladen wird, für viele Benutzer nützlich sein, die gerade noch nie ein Upgrade durchgeführt haben. Wenn sie jemals neu installiert werden müssen, sollten sie in der Lage sein, eine alte Version zu erhalten, die mit ihrem System kompatibel ist.

Veraltete Software (ersetzt durch ein Upgrade oder einen Drop-In-Ersatz) kann auch für viele Menschen nützlich sein. Erleben Sie die Browser-Fehler der 90er Jahre, die selbst angesichts von Sicherheitspatches zu Richtlinien ohne Upgrade führen würden, da andere Software von Fehlern in einer bestimmten Version abhängt.

Ich würde also nein sagen, einfach weil es keine zuverlässige Möglichkeit gibt, festzustellen, ob die Software noch verwendet wird. Das Fehlen von Beweisen ist kein Beweis für das Fehlen :)


+1 für den letzten Satz. Man kann nie sagen, wer sich auf diese Software verlässt, weshalb Microsoft der Abwärtskompatibilität fast unendlichen Stellenwert einräumt.
Michael K

1

Es ist ein Wartungsproblem für die Repositorys, in denen sich der tote Code befindet. Sie verbrauchen Ressourcen, auch wenn zu diesen Projekten kein Datenverkehr besteht. Ein Anbieter hat zwei Möglichkeiten: Sie können ihn entfernen oder auf unbestimmte Zeit aufbewahren. Einige Orte wie SourceForge behalten Projekte bei, bis der Eigentümer sie manuell entfernt. Selbst dann haben sie noch Archive.

Der beste Ansatz, den ich gesehen habe, um alte Bibliotheken loszuwerden, die für nichts Neues mehr verwendet werden, ist dieser Ansatz:

  • Veralten Sie die Bibliothek - legen Sie sie in das Software-Äquivalent des "Dachbodens". Das bedeutet, dass Sie eine Benachrichtigungsnachricht an die bekannten E-Mail-Verteilerlisten senden und diese Listen schließen. Der "Dachboden" ist ein Nur-HTTP-Zugriffsspeicherort, sodass interessierte Benutzer eine Kopie nach Belieben herunterladen können. Die Seiten haben alle den "veralteten" Haftungsausschluss, und wenn die Sprache des Projekts dies unterstützt, wird die API alle als @deprecated markiert.
  • Entfernen Sie die Bibliothek nach einem bestimmten Zeitraum auf dem Dachboden (mindestens einen Monat oder möglicherweise ein Jahr, abhängig von den Richtlinien) vollständig.
  • Entfernen Sie alle Verweise auf die Bibliothek auf Ihrer Site.

Normalerweise sind die toten Projekte tot, weil es keine Community gibt, keine Betreuer, keine Benutzer, die sich genug um die E-Mail-Distribution der Benutzer kümmern, keine Aktivitäten in den E-Mail-Distributionen usw. Die letzte E-Mail-Explosion wird alle passiven Benutzer (die Jungs, die das Zeug benutzen, aber in keiner Weise dazu beitragen) eine letzte Chance, das zu bekommen, was sie wollen. Außerdem erfahren sie, dass sie vom Projekt weg migrieren oder es abholen müssen, um es selbst zu warten.


1

Sie können auch die gleiche Frage zu Literatur oder Musik stellen. Es gibt sicherlich eine Menge "wirklich verlassener" alter Software, die in den 80ern geschrieben wurde und die Sie nicht kennen, weil niemand sie mehr benutzt oder darüber nachdenkt. Aber es gibt keine Autoritätsperson, die darüber verfügt, weil alles dezentralisiert ist. Das ist nur die Natur des Webs. Das einzige wirkliche Maß dafür, wie erfolgreich eine Software ist, ist, wie viele Menschen immer noch einen zwingenden Grund finden, sie weiterhin zu verwenden. Wenn es keine Unterstützer mehr gibt, stirbt es eines natürlichen Todes.

In ähnlicher Weise sehen wir jeden Komponisten des 18. Jahrhunderts als Mozart und jeden Dramatiker des 16. Jahrhunderts als Shakespeare. Das Störgesetz schreibt vor, dass 90% von allem ab und zu Mist ist / war, aber Sie kennen den Mist, der jetzt existiert, besser, weil er nicht genug Zeit hatte, um einen vollständigen Verfall der Benutzer zu erleben.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.