Donnerstag, 6. Dezember 2007
Wie zugänglich sollte der Quellcode ... Geschrieben von Martin Aschoff
in Community um
08:00
Kommentare (0) Trackbacks (0) Wie zugänglich sollte der Quellcode sein?
Open Source bedeutet naturgemäß, dass der Quellcode eines Open-Source-Projektes offen gelegt werden muss. Aber in welcher Form muss der Quellcode veröffentlicht werden, d.h. wie einfach müssen Sie es für Dritte machen, Ihren Quellcode zu verstehen und daraus selbst die ausführbare Software zu erzeugen?
In der Open-Source-Definition der OSI wird lediglich gefordert (Hervorhebung von mir): The source code must be the preferred form in which a programmer would modify the program. Deliberately obfuscated source code is not allowed. Auch viele OSI-Lizenzen konkretisieren den Umfang und Dokumentation des Quellcodes nicht. Am weitesten geht meines Erachtens die GPL, die hier wieder mal ihrem Ruf als "härteste" Open-Source-Lizenz gerecht wird. Die GPL2 definiert: "Source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable". Und die GPL3 fordert: "all the source code needed to generate [and] install [...] the work, including scripts to control those activities". Allerdings wird meines Wissens in keiner Lizenz formuliert, wie viel (oder wenig) Aufwand angemessen ist, um aus dem Projekt-Quellcode die ausführbare Software zu erzeugen. Das bedeutet, dass diese Entscheidung dem Projekt-Verantwortlichen überlassen bleibt. Wenn es sich um ein kleines Projekt mit wenigen Dateien handelt, ist dieses Thema nicht weiter wichtig, denn ein Nutzer, der sich für den Quellcode interessiert, bringt in der Regel ausreichende Kenntnisse mit, um aus den Quellcode-Dateien auch ohne zusätzliche Anleitung in kurzer Zeit die ausführbare Software zu erzeugen. Bei einem Enterprise-Software-Projekt, wie z.B. unserem OpenEMM, ist eine ergänzende Meta-Dokumentation dagegen wichtig, denn das ganze Projekt besteht aus weit über 1.000 Dateien. Würden wir die Dateien einfach in ein Verzeichnis kopieren und dieses als Zip-Datei oder Tarball auf SourceForge bereitstellen, könnte vermutlich niemand etwas damit anfangen. Folgende Maßnahmen lassen sich ergreifen, um Nutzern das Generieren des Programmcodes aus dem Quellcode zu erleichtern:
Wir haben diesen Zielkonflikt so gelöst, dass wir eine Basis-Quellcode-Dokumentation öffentlich bereitstellen und gleichzeitig interessierten Entwicklern anbieten, sich bei uns zu melden, um weitere, ergänzende Dokumente zu erhalten, die nicht zwingend erforderlich sind, aber das Einarbeiten in das Projekt wesentlich erleichtern. Dadurch bekommen wir zum einen direkten Kontakt mit den Entwicklern, die sich intensiv mit unserem Quellcode beschäftigen und zum anderen haben wir für Wettbewerber eine (gewisse) Hürde aufgebaut. Donnerstag, 27. September 2007
Gedanken zum Community Management Geschrieben von Martin Aschoff
in Community um
08:00
Kommentare (0) Trackbacks (0) Gedanken zum Community Management
Neben der in meinem vorigen Beitrag erwähnten Transparenz sind auch die Freundlichkeit und Hilfsbereitschaft einer Community für deren Erfolg entscheidend. Diese wird von dem Kernteam definiert, dem im Idealfall ein eigens für die Betreuung der Community abgestellter Community Manager angehört.
Allgemein gilt für die Kommunikation mit bzw. in der Community: "Wie man in den Wald hineinruft, so schallt es heraus." Seien Sie als Entwickler oder Anbieter daher sensibel bei der Wahl Ihrer Worte und glauben Sie immer an das Gute im Menschen! Gehen Sie beispielsweise bei Fragen von Nutzern, die bereits im FAQ oder Handbuch beantwortet werden, nicht davon aus, dass die Fragesteller nur zu faul zum Suchen sind. Gehen Sie stattdessen davon aus, dass die entsprechenden FAQ-Einträge oder Abschnitte im Handbuch schwer verständlich sind oder nicht gefunden wurden (vielleicht können Sie deren Übersicht und Struktur noch optimieren?) oder dass die Hilfesuchenden nicht so fit in der Sprache sind, die Ihre Dokumentation verwendet. Ein Bugreport ist kein Angriff auf Ihr Projekt, sondern eine konstruktive Kritik, die Ihnen hilft, Ihr Produkt zu verbessern. Ein Hinweis auf Rechtschreibfehler in der Dokumentation ist keine kleinliche Kritik, sondern hier hat sich jemand die Mühe gemacht, Sie auf Fehler hinzuweisen, die den professionellen Eindruck Ihres Projektes beeinträchtigen. Und die Beanstandung eines umständlich zu bedienenden Features ist keine böswillige Nörgelei, sondern eine zielgerichtete Anregung, die Usability Ihrer Software zu optimieren. Den meisten Nutzern ist durchaus bewusst, dass sie eine Open-Source-Software kostenlos bekommen haben und daher keinen Rechtsanspruch auf Service und Support geltend machen können. Dementsprechend positiv und dankbar reagiert die Mehrheit, wenn trotzdem auf Ihr Feedback reagiert und bei Problemen geholfen wird. Und sollte ein Nutzer doch einmal fordernd oder gar unverschämt auftreten, so hilft der freundliche Hinweis, dass er herzlich dazu eingeladen ist, als Contributor an der Beseitigung des kritisierten Missstands mitzuhelfen, oft Wunder. Montag, 24. September 2007
Transparenz für die Community Geschrieben von Martin Aschoff
in Community um
08:00
Kommentare (0) Trackback (1) Transparenz für die Community
Wie ich bereits mehrfach geschrieben habe, ist eine Community sehr wichtig für den Erfolg eines Open-Source-Projektes. Doch wie lässt sich eine große Community aufbauen (-> Quantität)? Und wie können deren Mitglieder motiviert werden, die Software, deren Dokumentation und das Angebot an E-Selfservices nicht nur passiv zu nutzen, sondern sich aktiv an dem Projekt zu beteiligen (-> Qualität)? (Dabei muss es nicht gleich Programmierung sein, eine Beteiligung kann beispielsweise auch durch das Verfassen und Verbessern der Dokumentation, Übersetzungen der Benutzeroberfläche und Handbücher, Supporteinträge in Foren und Maillisten oder Bugreports und Bugfixes erfolgen.)
Ein entscheidender Faktor für die Größe einer Community ist natürlich die Art der Software. Ein praktisches Backup-Tool für jedermann wird immer ein größeres Potenzial haben, als beispielsweise eine komplexe ERP-Software für eine ganz spezielle Branche. Doch davon abgesehen ist meiner Meinung die Transparenz eines Open-Source-Projektes ein ganz entscheidender Punkt für die Motivation, bei diesem Projekt mitzumachen:
Nun ist Transparenz für Software-Entwickler nicht unbedingt etwas Selbstverständliches, sondern exakt das Gegenteil von dem, was bei Close-Source-Software üblich ist. Bei Closed-Source-Software
Glauben Sie mir: Ihre Anstrengungen, für Ihr Open-Source-Projekt Transparenz zu schaffen, werden - ggf. mit etwas Verzögerung - durch den Einsatz der Community für das Projekt reich belohnt! Freitag, 20. Juli 2007
Wie Open Source von einer Community ... Geschrieben von Martin Aschoff
in Community um
13:45
Kommentare (0) Trackbacks (2) Wie Open Source von einer Community profitieren kann
Eine große, aktive Community ist ein Aktivposten für jedes Open-Source-Projekt und ein wichtiger Wettbewerbsvorteil gegenüber Closed-Source-Software - aber auch gegenüber Open-Source-Wettbewerbern (ja, sowas gibt es mittlerweile auch!), die noch nicht soweit sind.
Eine funktionierende Community bietet für das Open-Source-Projekt eine ganze Reihe von Vorteilen:
Wie Sie sehen, muss der Hauptnutzen einer Community nicht unbedingt sein, dass diese die Software kostenlos weiterentwickelt, wie es beispielsweise bei den Projekten der Apache Software Foundation der Fall ist. Bei bekannten Open-Source-Projekten wie MySQL, JasperSoft, SugarCRM oder Compiere wird die Entwicklung sogar primär von Entwicklern betrieben, die bei den jeweiligen Unternehmen, die hinter den Open-Source-Projekten stehen, fest angestellt sind. (Bei AGNITAS ist es übrigens nicht anders.) Als Auslöser für die Bildung einer Community sehe ich die Philosophie der Open-Source-Entwicklung, die sich grundlegend vom Closed-Source-Entwicklungsmodell entscheidet. Während Closed-Source-Projekte von einem kleinen Kreis von Insidern entwickelt werden, der nicht nur den Quellcode, sondern oft auch dessen Bugs und manchmal sogar die Roadmap geheimhält, herrscht bei Open Source volle Transparenz: offener Quellcode, offen verfügbarer Bugtracker, offengelegte Roadmap, offenes (kritisch-konstruktives) Feedback via Foren und Maillisten! Diese Offenheit führt letztendlich zu einer Gemeinschaft von Unterstützern, die die Community rund um das Projekt bilden - das hat mit dessen kostenloser Verfügbarkeit erst einmal gar nichts zu tun! Umgekehrt bedeutet dies, dass Closed-Source-Software keine Community aufbauen kann (allenfalls eine vom Hersteller gesponserte User Group) und dementsprechend auch nicht von den zahlreichen Vorteilen solch einer Gemeinschaft profitieren wird. Ich bin übrigens überzeugt, dass auf lange Sicht eine gute Community der Grund sein kann, warum ein Nutzer eine Open-Source-Software einem Closed-Source-Projekt vorzieht. Und gegen diesen Wettbewerbsvorteil wird Closed Soure wenig ausrichten können. |
SucheKategorienBlog abonnierenBlogrolleImpressum
Open Source Inside
(About this website) ADAMATIS GmbH Martin Aschoff Werner-Eckert-Str. 6 81829 Munich Germany Tel: ++49 89/55 29 08 80 maschoff@os-inside.de Responsible for the content of this website according to German law (RStV §55 (2)): Martin Aschoff |