Wie man sein Open Source bekannt macht
(evilmartians.com)Was man wissen sollte, bevor man Open Source bekannt macht
- Wer durch Open Source berühmt oder reich werden will, geht die Sache falsch an
- Statt ein populäres Projekt zu bauen, sind Blogposts oder Vorträge auf Konferenzen oft effektiver
- Redux und React Router sind populäre Projekte, aber ihre Maintainer haben nicht viele Follower in sozialen Medien → Die Popularität eines Projekts führt nicht automatisch zur Popularität einer Person
Open Source nicht für den Lebenslauf machen
- Die Vorstellung, dass Mitarbeit an Open Source Pflicht sei, ist falsch
- Auch wenn man Open Source startet, um bekannt zu werden, gibt es keine Erfolgsgarantie
- Selbst ein gutes Projekt kann deprimierend sein, wenn es nur einen einzigen Star hat
- Bei Bewerbungen kann Open-Source-Arbeit helfen, aber statt selbst ein Projekt zu starten, ist es effektiver, zu bestehenden bekannten Projekten beizutragen
Erst einmal mit Beiträgen anfangen
- In großen Open-Source-Projekten zunächst mit Dokumentationskorrekturen oder Bugfixes beginnen
- Einen PR zu schreiben ist viel einfacher, als Code von Grund auf zu schreiben
- Der beste Grund, ein gutes Open-Source-Projekt zu machen, ist, die Welt verändern zu wollen
Wie man die Welt mit Open Source verändert
- PostCSS wurde geschaffen, um das CSS-Tooling-Ökosystem vielfältiger zu machen und CSS-Verarbeitung einfacher zu machen → mit Erfolg
- Popularität und Erfolg sind wichtige Faktoren
Das Geheimnis populärer Projekte
Popularität eines Projekts = Bekanntheit + Promotion + Nutzen für die Nutzer + Glück
- Projekte populärer Entwickler werden tendenziell leichter populär → Das mag unfair sein, ist aber die Realität
- Man muss verstehen, woher Popularität kommt, und strategisch vorgehen
Wie Menschen Open Source auswählen
- Menschen wählen Tools nicht rational aus
- Die meisten entscheiden anhand der Zahl der GitHub-Stars
- Oder sie greifen zu Frameworks, die auf Konferenzen erwähnt wurden
Wie Menschen Informationen tatsächlich lesen
- Nutzer lesen README oder Dokumentation nicht von Anfang bis Ende
- Informationen sollten wie ein „progressives JPEG“ einfach und schrittweise vermittelt werden
- Schon im ersten Block müssen die Vorteile klar erklärt werden
Strategie, um populär zu werden
- Konten in sozialen Medien sollten gut gepflegt sein
- Der Autor hatte anfangs kein englischsprachiges Social-Media-Konto, deshalb war er schwer zu finden
- Für nicht englischsprachige Entwickler ist ein englischsprachiges Social-Media-Konto vorteilhaft
- Wenn ein Projekt erwähnt wird, sollte ein Profil-Link dabei sein, damit Nutzer leicht den Bezug zur Person herstellen können
- Mit realistischen Erwartungen herangehen
- Glück ist wichtig, aber nicht alles
- Vom Autor waren nur 4 von 56 Projekten erfolgreich
- Bis zu einem populären Projekt gab es viele Fehlschläge
- Erfolgreiche Projekte sind das Ergebnis ständiger Versuche und wiederholten Scheiterns
- Scheitern als normal akzeptieren
- Ein populäres Projekt erfordert wie ein Marathon langfristige Anstrengung
- Scheitern ist Teil des Prozesses → kontinuierliche Verbesserung und wiederholte Versuche sind nötig
- Man sollte von Anfang an mit Misserfolg rechnen, aber nicht bei der Qualität der Arbeit nachlassen
Wie man Open Source populär macht: README
- README und Dokumentation bestimmen den ersten Eindruck eines Projekts
- Nutzer müssen über das README den Wert des Projekts schnell erfassen können
- Das README kann Nutzern über verschiedene Wege begegnen
- Über Vorträge, Blogposts, Podcasts und andere Promotion-Kanäle
- Letztlich führt alles zum README, deshalb sollte man es sorgfältig schreiben
- Leser lesen ein README nicht aufmerksam von Anfang bis Ende
- Deshalb muss der Wert des Projekts gleich am Anfang klar vermittelt werden
- Schon im ersten Block sollten Menschen die Vorteile des Projekts schnell verstehen können
Frage: Vermittelt das Projekt seinen Wert wirklich effektiv?
- Menschen lesen Dokumentation nicht in Ruhe bis ins Detail
- Deshalb müssen Kerninformationen und Vorteile klar und knapp aufbereitet werden
- Gut strukturierte Dokumentation verbessert die User Experience und steigert die Popularität des Projekts
1. Vorteile für Nutzer wirksam vermitteln
- Den Nutzen eines Projekts zu vermitteln, ist direkt mit Promotion verbunden
- In der zuvor genannten Erfolgsformel ist Nutzen für die Nutzer ein entscheidender Faktor
Popularität eines Projekts = Bekanntheit + Promotion + Nutzen für die Nutzer + Glück
- In README, Dokumentation oder einer kurzen Einführung muss der Nutzen für Nutzer klar vermittelt werden
- Um nicht wegen Popularität oder Ruf, sondern wegen des tatsächlichen Werts Aufmerksamkeit zu bekommen, sollte man Folgendes beachten
- Lesbarkeit der Information: Nutzer müssen den Kern schnell erfassen können
- Scannbarkeit: Wichtige Informationen sollten sofort ins Auge fallen
- Erster Eindruck: Innerhalb der ersten Sekunden muss der Wert des Projekts klar werden
2. Die Botschaft schnell und wirksam vermitteln
- Der erste Block des README muss diese drei Elemente unbedingt enthalten
- Eine klare Erklärung
- Klar, wobei es dem Nutzer hilft
- Abgrenzung zu anderen Produkten
- Schon im ersten Satz muss klar werden, warum Nutzer die Doku lesen sollten
- Der erste Satz ist der wichtigste → Die meisten Nutzer lesen nur den ersten Satz und bewerten danach den Wert des Projekts
- Deshalb müssen die Vorteile des Projekts schon im ersten Block klar sichtbar sein
- Es ist in Ordnung, mehrere Tage bis zu einer Woche in den ersten Block des README zu investieren
- Für den ersten Block von PostCSS wurden etwa eine Woche gebraucht
- Genug Aufwand im ersten Block erhöht die Erfolgschancen des Projekts
3. Das Produkt so erklären, dass Menschen es leicht verstehen
- Die Projektbeschreibung sollte klar und intuitiv sein
- Wichtiger als cool klingende Formulierungen ist eine praktische Erklärung
- ❌ "Svelte is cybernetically enhanced web apps"
- Zu vage → Es bleibt unklar, welcher konkrete Vorteil gemeint ist
- ✅ "Svelte is a web UI framework with a unique compiler which generates smaller JS fixes."
- Konkret und klar → Erklärt, welches Problem gelöst wird und welcher Vorteil entsteht
- Schreibe die Erklärung so, als würdest du mit einem Kollegen in einer Bar sprechen
- „Du hast ein neues Tool gebaut? Was macht es denn?“ → Natürlich erklären
- Wenn die Erklärung steht, noch knapper überarbeiten
- Nach dem Schreiben noch 2–4 Mal überarbeiten, damit sie kurz und klar wird
4. Informationen mit Listen und Fettdruck schnell vermitteln
- Um Informationen klar zu vermitteln, sollte man Listen und Fettdruck aktiv nutzen
- Bisherige Beschreibung von Nano Stores (als Textblock)
- Nano Stores ist ein State Manager, der in verschiedenen Frontend-Frameworks genutzt werden kann
- Er ist klein und hat keine Abhängigkeiten
- Überarbeitete Beschreibung (mit Listen und Fettdruck)
- Nano Stores hat folgende Merkmale:
- Kleine Größe: 286~818 Byte (minified und brotlied)
- Unterstützt viele Frameworks: React, Vue, Svelte, Angular usw.
- Keine Abhängigkeiten
- Nano Stores hat folgende Merkmale:
-
Punkte für bessere Lesbarkeit
- Listen verwenden: Informationen werden strukturiert und sind auf einen Blick erfassbar
- Fettdruck verwenden: Kerninformationen werden hervorgehoben und schneller wahrgenommen
- Knackige Sätze: Nur die wichtigen Informationen stehen lassen, Unnötiges löschen
- Selbst bei kürzerem Text muss die Botschaft klar bleiben
5. Codebeispiele und Bilder nutzen
- Komplexe Konzepte lassen sich mit Beispielcode oder Bildern leichter erklären
- Wie das Sprichwort sagt: „Ein Bild sagt mehr als hundert Worte“ – visuelles Material ist ein starkes Mittel zum Verständnis
6. Reale Statistiken verwenden
- Vage Formulierungen oder abstrakte Versprechen schaffen kaum Vertrauen
- Man sollte konkrete Zahlen zu tatsächlicher Performance, Größe, Geschwindigkeit usw. zeigen
-
Beispiel: Einsatz realer Zahlen bei Nano ID
- Nachweis der Größe: Nano ID ist mit 141 Byte klein → klare Zahl
- Nachweis der Geschwindigkeit: Nano ID ist 16 % schneller als UUID → Benchmark-Ergebnis
- Tipps für den wirksamen Einsatz von Zahlenmaterial
- Quantifizierte Performance-Daten liefern → stärkt die Glaubwürdigkeit
- Benchmark-Ergebnisse nennen → betont die Abgrenzung zu anderen Produkten
- API-Performance oder Nutzung ebenfalls mit realen Beispielen klar zeigen
- Performance, Größe, Geschwindigkeit usw. sollten mit konkreten Zahlen und Daten belegt werden
7. Eine schrittweise Starthilfe anbieten
- Wenn die Vorteile des Projekts klar vermittelt sind, sollte als Nächstes eine konkrete Anleitung zur Nutzung folgen
- Wenn Nutzer nach dem Lesen des README Interesse am Projekt bekommen, sollte der nächste Schritt nahtlos anschließen
-
Tipps für einen guten Einstiegsguide
- Konkrete Schritt-für-Schritt-Anleitung bieten
- Statt vager Erklärungen wie „Benutze PostCSS“ sollten klare und konkrete Schritte gezeigt werden
- In jedem Schritt die nötigen Befehle und Einstellungen angeben
- Alternative Wege anbieten
- Je nach Situation des Nutzers verschiedene Ansätze zeigen
- Beispiel: hinzufügen, was zu tun ist, wenn PostCSS nicht installiert ist
- Abschnitte für verschiedene Nutzertypen anbieten
- Eigene Guides für Nutzer großer Bibliotheken und kleiner Bibliotheken bereitstellen
- Konkrete Schritt-für-Schritt-Anleitung bieten
-
Testen ist Pflicht
- Die selbst geschriebene Anleitung sollte man wirklich durchgehen und testen, ob sie funktioniert
- Wenn möglich, den Hintergrund zum Projekt ausblenden und noch einmal ganz von vorn folgen
- Treten Probleme auf, sollten sie sofort behoben und ergänzt werden
- Die selbst geschriebene Anleitung sollte man wirklich durchgehen und testen, ob sie funktioniert
Effektive Strategien zur Promotion von Open Source
1. Warum wiederholte Promotion wichtig ist
- Viele Menschen machen den folgenden Fehler
- Einmal etwas in sozialen Medien posten
- Keine Reaktion bekommen
- Entmutigt sein
- Das Projekt aufgeben
- Einmalige große Promotion ist nicht effektiv → schrittweise und wiederholte Promotion ist nötig
- Effektiver Zyklus wiederholter Promotion
- Inhalte erstellen, etwa neue Feature-Releases, Blogposts oder Social-Media-Posts
- Feedback von Nutzern einholen
- Projekt auf Basis des Feedbacks anpassen
- Neue Inhalte zu den Änderungen erstellen → wieder von vorn
- Am Anfang ist eine kleine Nutzerzahl sogar von Vorteil → Änderungen sind stressfrei möglich
- Durch kontinuierliche Verbesserung und wiederholte Promotion steigt die Bekanntheit
2. Wirksame Strategie für Social-Media-Promotion
- Nicht einfach nur einen Link teilen oder bei einer kurzen Erklärung stehen bleiben
- Zwei Dinge sollten enthalten sein
- Codebeispiel oder Bild → Menschen verstehen es leichter
- Klare Projektbeschreibung → auch neue Nutzer können es verstehen
-
Beispiel für eine Vorlage für Promo-Posts
- Neues Feature ankündigen → klar erklären → Codebeispiel hinzufügen → in sozialen Medien teilen
- Auf Reddit in passenden Subreddits posten (Regeln des jeweiligen Subreddits prüfen)
- Auf Hacker News posten → kann frühe traction bringen
- Auf Dev.to, Smashing Magazine, CSS-Tricks usw. Beiträge veröffentlichen → mehr Reichweite
3. Promotion über PRs
- Einen PR einreichen, um das eigene Open-Source-Projekt in andere Projekte einzuführen
- Beispiel: PostCSS war mit Promotion über PRs in anderen Projekten erfolgreich
- „Wenn Hilfe gebraucht wird, kann ich versuchen, dieses Tool einzusetzen.“
- Wenn der PR angenommen wird, den Anwendungsfall im README erwähnen → stärkt das Vertrauen
- Wenn ein populäres Projekt die eigene Lösung verwendet, steigt die Glaubwürdigkeit zusätzlich
4. Wiederholen, aber nicht spammen
- Kontinuierliche wiederholte Promotion ist nötig
- Aber Spam ist absolut tabu
- Nicht dieselbe Botschaft wiederholen, sondern neuen Mehrwert liefern
- Es sollten Veränderungen und Weiterentwicklungen enthalten sein
- Nicht alle Nutzer lesen alle Posts → deshalb ist periodische Wiederholung in verschiedenen Formen nötig
Warum wiederholte Promotion nötig ist
- Menschen wählen Tools nicht rational aus
- Wiederholte Promotion schafft ganz natürlich Bekanntheit
- Für Erfolg muss über lange Zeit Bekanntheit aufgebaut werden
Bonus
1. Was tun, wenn das Projekt bekannt geworden ist
- Wird ein Projekt populär, kann die Zahl der zu lösenden Issues explosionsartig steigen
- Wenn man versucht, alles selbst zu lösen, wird die Belastung groß und kann zu Niedergeschlagenheit und sinkender Produktivität führen
-
Lösung
- Nicht versuchen, jedes Problem selbst zu lösen → Nutzer stattdessen zum Schreiben von PRs ermutigen
- Fragen wie: „Wenn du dieses Problem lösen willst, kannst du dann einen PR schicken?“
- Eine feste Zeit für Problembearbeitung setzen (z. B. 15 Minuten pro Tag) und nur in diesem Rahmen arbeiten
- Schwierige Probleme nicht sofort lösen wollen, sondern antworten: „Ich prüfe gerade mögliche Lösungen.“ → Schon das Wissen, dass das Problem gesehen wurde, beruhigt Nutzer
- Auch Dokumentationsänderungen können Nutzer übernehmen → „Kannst du diesen Teil anpassen?“
2. Umgang mit negativem Feedback
- Negatives Feedback kann die Motivation schwächen
- In der frühen Phase eines Projekts kann negatives Feedback die Lust nehmen, und bei wachsender Popularität kann es das Selbstvertrauen schwächen
-
Strategie im Umgang damit
- Nicht emotional reagieren
- Bei Kritik nachfragen → „Warum findest du B besser als A?“
- Kritik ist oft nur emotionaler Frust → Durch das Gespräch mit Nutzern kann Vertrauen aufgebaut werden
- Kritik kann eine Chance zur Verbesserung sein
3. Strategie beim Auftauchen konkurrierender Projekte
- Wenn Konkurrenzprojekte auftauchen, muss man sich keine Sorgen machen
- Konkurrenzprojekte bringen sogar Vorteile mit sich
- Man kann sich von der Last der Projektpflege entlasten
- Konkurrenz kann zu besseren Lösungen führen → davon profitieren am Ende auch die Nutzer
- Das eigentliche Ziel von Open Source ist, die Welt zu verändern → nicht Monopol oder Kontrolle
- Konkurrenzprojekt entsteht → besseres Tool entsteht → Win-win-Situation
Abschließende Zusammenfassung
Wie man populäre Open-Source-Projekte baut und Sichtbarkeit gewinnt
- Der beste Grund für Open Source ist nicht Ruhm oder ein besserer Lebenslauf, sondern die Welt zu verändern
- Gute Ideen werden nicht automatisch zu populären Projekten
- Die Formel für die Popularität von Open-Source-Projekten = Popularität + Promotion + Nutzen für Nutzer + Glück
- Social-Media-Konten sollten aktiv gepflegt, auffindbar und in weit verbreiteten Sprachen wie Englisch geführt werden
Wie man wirksame Dokumentation schreibt
- README und Dokumentation sollten klar und natürlich geschrieben sein, als würde man sie einem Freund erklären
- Mit hervorgehobenem Text, Listen und klarer Struktur komplexe Informationen schrittweise vermitteln
- Konkrete Belege wie echte Benchmarks und Codebeispiele liefern
- Wenn möglich, konkrete Einstiegsguides für Anfänger und fortgeschrittene Nutzer anbieten
Promotion-Strategie
- Wiederholte Promotion ist wirksamer als eine einmalige große Aktion → veröffentlichen → Feedback → verbessern → wiederholen
- Regelmäßig posten, aber Spam vermeiden
- Posts mit Codebeispielen und Bildern verfassen
- PRs an andere Projekte einreichen, um die Promotion-Wirkung zu maximieren
Tipps, wenn das Projekt bekannt geworden ist
- Nicht versuchen, alle Probleme selbst zu lösen, sondern Nutzer zu PRs ermutigen
- Für Problembearbeitung feste Zeit einplanen und so steuern (z. B. 15 Minuten pro Tag)
- Bei negativem Feedback durch Fragen das Gespräch suchen
- Konkurrenzprojekte nicht fürchten → Konkurrenz kann sogar von Verantwortung entlasten
1 Kommentare
Es scheint auch wichtig zu sein, Orte zu finden, an denen Werbung mit leicht unterschiedlichem Inhalt, die aus der Ferne betrachtet aber repetitiv wirkt, toleriert wird. Zum Beispiel Twitter.