Checkliste zum Starten eines Open-Source-Projekts [geschlossen]

50

Ein Open-Source-Projekt zu starten bedeutet nicht nur, den Quellcode in ein öffentliches Repository zu werfen und dann damit zufrieden zu sein. Sie sollten über technische (außer Benutzer-) Dokumentation, Informationen zum Beitragen usw. verfügen.

Wenn Sie eine Checkliste mit wichtigen Aufgaben erstellen, welche würden Sie hinzufügen?

Anto
quelle
1
+1 Gute Frage. Darf ich empfehlen: gawande.com/the-checklist-manifesto
JeffO
2
Ich empfehle Karl Fogels Buch Producing Open Source Software (Producing Open Source Software) - wie man ein erfolgreiches freies Softwareprojekt durchführt. Es ist ein O'Reilly-Buch.
Michael
Das Produzieren von Open Source Software durch Karl Fogel sollte Ihnen dabei helfen. Das Buch ist vollständig online verfügbar.
Coyote21

Antworten:

34

Die wichtigste Sache ist:

  • Verwenden Sie das Projekt selbst und bringen Sie es in einen nützlichen Zustand, in dem Sie es gerne verwenden. Stellen Sie sicher, dass das Projekt funktioniert und nützlich ist.

Dinge, die ich in die frühen Prioritäten gesetzt habe, sind:

  • habe ein einfaches "was ist das?" Website mit Links zu einem Diskussionsforum (ob E-Mail oder Chat) und zum Quellcode-Repository
  • Stellen Sie sicher, dass der Code kompiliert und in der Regel funktioniert, und legen Sie keine Work-in-Progress- oder Half-Ass-Patches für den Hauptzweig fest, die Probleme verursachen. Andernfalls würde die Arbeit anderer Personen gestört
  • Legen Sie eine Lizenzdatei mit einer bekannten Lizenz in das Code-Repository und markieren Sie den Copyright-Inhaber (wahrscheinlich Sie oder Ihre Firma). Lassen Sie die Lizenz nicht aus, erstellen Sie keine Lizenz und verwenden Sie keine unklare Lizenz.
  • Anweisungen, wie Sie beitragen können, finden Sie beispielsweise in einer HACKING-Datei oder in Ihrer README-Datei. Dies sollte beinhalten, wohin Patches gesendet werden, wie Patches formatiert werden, Regeln für Codeeinrückungen und andere wichtige Konventionen des Projekts
  • Anweisungen zum Melden eines Fehlers
  • sei hilfreich auf der Mailingliste oder was auch immer deine Foren sind

Nach diesen Prioritäten würde ich sagen:

  • Dokumentation (dies erspart Ihnen die Arbeit an der Mailingliste ... ein einfacher Anfang ist das Erstellen einer FAQ aus Ihren Listenbeiträgen)
  • Versuchen Sie, Dinge auf "normale" Weise zu tun (erfinden Sie nicht Ihr eigenes Build-System oder verwenden Sie ein seltsames, verwenden Sie keine Einrückung mit einem Leerzeichen, seien Sie im Allgemeinen nicht nervig, weil es die Lernkurve erhöht).
  • fördern Sie Ihr Projekt. Marketing Marketing Marketing. Sie benötigen einige Blogs und News-Sites und ähnliches, um sich mit Ihnen zu befassen. Wenn die Leute interessiert sind, müssen Sie mit ihnen sprechen und sicherstellen, dass sie es zum Laufen bringen und sich ihre Patches ansehen. Erwähnen Sie möglicherweise Ihr Projekt in den Foren für verwandte Projekte.
  • Überprüfen und akzeptieren Sie Patches immer so schnell wie möglich. Ist sofort perfekt. Mehr als ein paar Tage und Sie verlieren viele Menschen.
  • Antworten Sie immer so schnell wie möglich auf E-Mails über das Projekt.
  • schaffen Sie eine einladende / positive / lustige Atmosphäre. Sei kein Idiot. sag bitte und danke und verteile Lob. Jagen Sie alle Esel aus, die auftauchen, und fangen Sie an, die Gemeinschaft zu vergiften. versuchen Sie, Leute persönlich zu treffen, wenn Sie können, und bilden Sie Bindungen.
Havoc P
quelle
Was ist mit potenziellen rechtlichen Problemen? Wie kann man sicherstellen, dass die Implementierung nicht versehentlich einen patentierten Algorithmus enthält?
Den
Das lässt sich leider nicht feststellen. Angesichts einer großen Anzahl von Codes gibt es keine Möglichkeit, die Suchbegriffe zu ermitteln, die zum Auffinden der relevanten Patente erforderlich sind. Dies ist einer der Gründe, warum Softwarepatente ein solches Problem darstellen. Manchmal weiß man, dass es ein Patent gibt, aber ich habe noch nie von einer Möglichkeit gehört, zuversichtlich zu sein, dass es kein Patent gibt, das gilt. Schwer zu beweisen, ein Negativ. Patente sind ein genug großes Thema, dass sie wahrscheinlich ihre eigenen Fragen sein sollten ...
Havoc P
17

Für den Anfang, senken Sie die Schranke zum Eintritt , das bedeutet:

  • machen es einfach zu installieren,
  • machen es einfach zu ändern,
  • Erleichtern Sie die Suche nach Ihrem Projekt.
  • Machen Sie einfach alles, was Sie möchten, einfach.

Wie?

  • Geben Sie eine Antwort auf jede Frage, die Ihnen in Ihrer Dokumentation einfällt.
  • Erstellen Sie ein einfach zu bedienendes Build-System,
  • Bereinigen Sie Ihren Code, niemand arbeitet gerne an Spaghetti-Code,
  • Mach etwas, das die Leute brauchen.
dan_waterworth
quelle