News

O’hackt is! So feiern wir Open Source beim Hacktoberfest

Hacktoberfest 2017 Banner

Erstmals in diesem Herbst haben wir Micromaten am internationalen Hacktoberfest teilgenommen. Die Initiative von Digital Ocean (New York) und GitHub (San Francisco) möchte mit diesem Ereignis dazu beitragen, die weltweite Open-Source-Community besser zu vernetzen.

Was ist GitHub?

Mithilfe so genannter Pull Requests kann jeder GitHub-Nutzer Änderungen an allen öffentlichen GitHub-Projekten einreichen. Diese können neben neuen Features auch Performance-Verbesserungen oder Bugfixes enthalten.

Das Hacktoberfest bildet den jährlichen Höhepunkt solcher Pull Request, da diese in jenem Monat massenhaft versendet und umgesetzt werden. Die Teilnehmerzahl dürfte 2017 ähnlich hoch oder gar höher als im letzten Jahr gewesen sein, 2016 zeitigte sie summa summarum 90.000 Pull Request aus 114 Ländern.

Wie genau funktioniert GitHub?

Technisch gesehen ist GitHub eine Webapplikation auf Basis eines Versionsverwaltungssystems. Sein Name setzt sich aus den Wortbestandteilen Git = Versionsverwaltungssoftware und Hub = Knotenpunkt zusammen. Und genau darum geht es bei GitHub: Quelloffene Software wird ja nicht im Elfenbeinturm entwickelt, sondern dezentral und oft in Zusammenarbeit mit anderen Softwarenthusiasten von überall auf der Welt. Über GitHub können sie ihren jeweiligen Code mit anderen teilen und auf den Code der anderen zugreifen, ohne einen langwierigen Mailverkehr anstrengen oder unsichere Filesharing-Dienste nutzen zu müssen. Die wichtigsten Features und Funktionsweisen von GitHub in diesem Kontext sind:

Repository: Veränderungen am Code werden ein- und ausgecheckt
Branch: Entwicklungszweig innerhalb eines Projektes bzw. Repositories
Fork: Persönliche Kopie eines Repositories zur individuellen Bearbeitung
Merge: Zusammenführung von Branches und Zurückführung von Änderungen aus einer Fork in das Ursprungsprojekt

Auf diese Weise erspart GitHub der Open-Source-Gemeinde lange Abstimmungswege, Reibungsverluste, tote Winkel und – das ultimative Schreckgespenst in der Softwareentwicklung – Versionskonflikte.

Github verfügt über zehn Millionen registrierte Nutzer und verwaltet über 26 Millionen Repositories (Stand 2015). Es ist für die Open-Source-Community praktisch das, was der Markt für die Marktwirtschaft ist: ein Motor und Multiplikator, ein Treff- und Angelpunkt.

Wie geht es dem Open-Source-Gedanken heute?

Die Open-Source-Gemeinde hat sich lange als Opposition zu proprietären Softwareanbietern begriffen. Dahinter stand und steht auch gegenwärtig noch die Überzeugung, dass Fortschritt mit Teilhabe zu tun hat. Denn je mehr Menschen Zugang zu Wissen haben und je mehr Menschen den Fortschritt mitgestalten, desto wahrscheinlicher ist es ein nachhaltiger Fortschritt, der möglichst vielen Menschen zugute kommt und auch gesamtgesellschaftlich von Nutzen ist. Heute ist Open-Source-Software ein wichtiger Bestandteil vieler Industrieapplikationen und bietet deren Betreibern große Innovationskraft und Flexibilität im digitalen Wettbewerb. Heute verwendet praktisch jeder Open-Source-Software. Sie steckt in Systemsoftware, in Smartphones und Webportalen, und sie ist Grundlage fast aller Social-Media-Kanäle. Entwickler verwenden heute vom Editor über Frameworks bis hin zu Kommandozeilen-Tools fast ausschließlich Open-Source-Software.

Zwei der bekanntesten Open-Source-Tools, für die Micromata beim Hacktoberfest Verbesserungen eingereicht hat, sind Yeoman, ein Entwicklertool von Google zur Unterstützung des Entwicklungsworkflows, und Jest, ein Entwicklertool von Facebook zum Testen von JavaScript.

Open-Source-Projekte bei Micromata

Auch Micromata entwickelt Open-Source-Software. So können wir innovative Ideen auch außerhalb des Projektalltags verwirklichen und der Open-Source-Community auf unsere Weise etwas zurückgeben. Beispielhaft zu nennen sind etwa ProjectForge, eine freie Projektmanagementsoftware oder Baumeister, ein Automatisierungsframework für die Frontendentwicklung. Das Hacktoberfest ist auch für uns ein schöner Weg, unsere Open-Source-Projekte in der Community bekannter zu machen.