Warum OpenSource
Mein Weg zu OpenSource Software
Ich bin Softwareentwickler und benutze sehr viele Tools die OpenSource Software (OSS) sind. Zudem betreue ich selbst ein zwei Projekte, die OSS sind und versuche, auch wenn ich es nicht immer schaffe, meinen Beitrag zu anderen Projekten zu leisten. Aber wie bin ich überhaupt auf OSS gestoßen?
Eigentlich fing das schon recht früh an, als ich noch nicht wirklich sicher war, was ich denn mal werden wollte. Ich habe mich schon immer für Computer(Hard- und Software) interessiert und zu der Zeit der LAN-Partys ist man auch schon etwas in den Kontakt mit Linux gekommen. So ergab es sich, dass man auch mal einen alten Rechner als “Gamingserver” für die LAN-Party bereit stellte oder auch ein PHP Forum betrieb. In dieser Zeit bin ich in den kleinen Topf des OSS gefallen. Damals noch nur aus dem Grund, dass OSS kostenlos erhältlich ist aber der Anfang war gemacht.
Später als Softwareentwickler, und zu der Zeit als GitHub groß wurde, konnte ich auch etwas zurück geben. Also theoretisch. Ich dachte damals, dass ich als kleiner Entwickler nicht wirklich etwas zu den Projekten auf GitHub beitragen kann, geschweige denn traute ich mich, dort meinen eigenen Code der gesamten Welt offen bereitzustellen. Ich hatte angst, dass das alles nicht gut genug ist und das was ich baue eh keiner braucht. Aber das ist genau der Fehler, den viele meiner Meinung nach machen.
Mein erster Beitrag
Dieses Denken, so weiß ich jetzt, war ein großer Fehler. Die OSS-Gemeinschaft ist ein großartiger Raum sehr froh, wenn sich hier weitere Personen beteiligen. Egal ob mit Code, Doku, Übersetzungen oder auch sonst etwas. Alle können helfen OSS besser zu machen. Mein erstes Projekt, welches ich dann auch veröffentlicht habe, war eine “Ampelanlage” für den Bogensport. Gebaut mit einem Arduino und einer aus heutiger Sicht sehr fragwürdigen Verkabelung. Auch wenn dieses Projekt bis heute keinen Fork oder Star hat, war es mein Startschuss um der OSS-Gemeinschaft etwas zurück zu geben. Und genau darum geht es. Jedes Projekt kann eine/einer Person helfen, die gerade auf der Suche nach genau der Lösung ist die dein Projekt bieten kann.
Was mag ich an OpenSource
Was ist nun der große Vorteil und warum mag ich die OSS-Gemeinschaft so? Eigentlich ist dies sehr einfach und schnell erklärt: Wenn ich in eine Produkt, welches ich einsetze einen Fehler finde oder ein Problem damit habe, ist die Entwicklerin meistens bereit (Vorausgesetzt der Fehler ist gut beschrieben und man lässt der Entwicklerin etwas Zeit) einem zu helfen. Oder aber, wenn einem selbst das Wissen gegeben ist, das Problem zu lösen, kann man auch einfach das Projekt Forken(eine Kopie in seinem Account anlegen), den Fehler beheben und mit einem PullRequest(Aufforderung zur Einbindung des eigenen Codes in den Code des Hauptprojektes aufzunehmen)das ganze direkt für alle lösen. Je nachdem wie die Entwicklerin/Team des Projektes zeit hat, viele OSS Projekte werden von Entwicklerinnen in ihrer Freizeit betreut und somit bekommen diese für ihre Arbeit kein Geld und gehen somit Hauptberuflich einer anderen Arbeit nach, wir dann auf die Fragen oder PRs eingegangen. Diese Projekte sind ihr Hobby und genau das sollten wir auch im Hinterkopf behalten, wenn wir Fehlermeldungen an OSS-Projekte senden. Immer nett und freundlich ;-)
Es kommt natürlich auch vor, dass man sich mal mit einer Entwicklerin direkt zu ihrem Projekt austauscht. Das ist ein weiterer Vorteil den OSS bieten kann. Gerade in Projekten, die nicht für die Endanwenderin gebaut sind, sondern für Entwicklerinnen kann man sich direkt an die Maintainer wenden wenn es hier zu einem Problem kommt. Viele Projekte betreiben mittlerweile Discord-Server auf denen sich ausgetauscht werden kann. Hier helfen dann nicht nur die Entwicklerinnen sondern auch Userinnen, die das Projekt selber einsetzen. Also alles was man eigentlich haben möchte in einer Gemeinschaft.(Das gilt natürlich auch für andere Projekte, die sich nicht an Entwicklerinnen wenden, sonder an die Endbenutzer.)
Als weiteren Grund kann ich als Entwickler noch anführen, dass ich aus dem Code der vielen anderen Entwicklerinnen die ihren Code offen legen auch sehr viel gelernt habe. Ich kann mir hier anschauen, wie andere Probleme lösen und mit Gegebenheiten umgehen, die ich gerader selber habe. Oder was natürlich auch immer hilfreich ist, dass ich sehen kann wie verschiedene Frameworks eingesetzt werden können.
Oder der Aspekt, dass es auch durch Beteiligungen an OSS-Projekten Jobangebote für Entwicklerinnen gegeben hat, ist natürlich nicht zu verachten. Dies ist natürlich nicht immer so, aber in der heutigen Zeit, ein gepflegtes Github/Gitlab Profil zu haben ist nicht die schlechteste Idee bei einer Bewerbung. Ein potenzieller Arbeitgeber kann so bereits vorher sehen, was ihr drauf habt und es spart euch ggf. so auch Zeit, eure Stärken zu erklären oder auch ein Gespräch über die Technik zu halten.
Die Community/Events
Natürlich gibt es wie bereits gesagt zu den meisten größeren Projekten eigene Communities in denen du dich beteiligen und ausprobieren kannst. Aber es gibt auch Events. Eines meiner alljährlichen Events denen ich beiwohne, möchte ich auch noch mal hervorheben. HACTOBERFEST! Das Event das mich nun bereits vier Jahre dazu gebracht hat, meinen Hintern hoch zu bekommen und etwas für OSS zu machen, auch wenn ich mal keine Zeit/Lust oder Energie habe. Aber dieses Event hat mich gefesselt und auch wenn es von Jahr zu Jahr immer mehr Menschen gibt die hier versuchen mit SpamCommits ihr Ziel zu erreiche, überwiegt doch die Zahl der Menschen, die etwas der Community zurück geben wollen und sich mit Code,Doku oder auch Grafiken an OSS-Projekten beteiligen. Also wenn ihr neu in der großen Welt des OSS seid und euch ein Event aussuchen müsst, mit dem Ihr anfangt, dann schaut auch doch mal das Hacktoberfest an. Hier ist es einfach auch kleinere Projekte zu unterstützen die es wirklich gebrauchen können.
Aber es gibt auch Organisationen, die sich für Freie und Offene Software einsetzen. Z.B. die FSFE.org.
Fazit
Was soll ich sagen? Beteiligt und fördert OSS. Es ist die Art von Software die die Welt am Laufen hält. Die meisten großen Konzerne setzen sie ein ob sie es wissen oder nicht. Aber auch die kleinen Entwicklerinnen und Anwenderinnen profitieren von OSS. Schaut euch um und tragt etwas zu der grandiosen Gemeinschaft bei. :-)