Aaron Fischer Ingenieur, Vater, Heimwerker, Problemlöser

01 Dezember, 2009

Tag 2: Ideen, Konzepte, Ziele, Planung

TL;DR:

Jeder hat den Begriff Open Source schon öfter gehört und jeder hat so eine ungefähre Ahnung, was er den bedeutet. Die meisten stellen sich unter Open Source als Software vor die man ohne zu bezahlen herunterladen kann. Einige assoziieren damit sogar minderwertige Software, die sowieso von ein paar Freaks im Keller geschrieben wurden. Nur wenige kommen in den Genuss, Open Source in ihrer freien Wildbahn direkt mitzuerleben und mitzugestalten. Und weil es so viel Spaß macht, gibt es in diesem Bereich wahre Fanatiker, die am liebsten alles frei zugänglich machen wollen.

Aber zuerst einmal eine Definition, die sich für mich mit den Jahren herauskristallisiert hat: Open Source ist nichts anderes als Daten, die mit Absicht allen zur Verfügung gestellt werden. Doch warum sollte man das machen? Warum sollte ich die Arbeit, in die ich so viel Zeit gesteckt habe allen zugänglich machen und sie auch noch aufzumuntern es zu verändern? Um das zu verstehen, muss man sich Open Source etwas näher anschauen.

Von außen betrachtet sieht es so aus als wäre das total bescheuert; da sitzt einer bis nachts um 4 an einem Stück Programmcode und feilt daran herum bis es perfekt ist, nur um es dann irgendwo hochzuladen und darauf zu warten, dass es jemand anderes kopiert und umändert. Und tatsächlich kommt zwei Tage später jemand, kopiert sich den Code und ändert ihn ab. Warum sollte man so dämlich sein?

Warum? Weil es ein tolles Gefühl ist! Wie? In der Tat, die Open Source Szene ist brutal. Es überlebt immer nur das Beste vom besten. Doch genau das ist das Beste daran! Das macht die Sache so interessant! Einen Bug in einer großen Software zu fixen, ist wie einem Superstar die Hand zu schütteln. Wer es schafft, dass sein Werk die anderen verdrängt und als einziger bestehen bleibt, ist der Superstar. Und genau das ist doch die Definition von Superstar: Wildfremde Menschen helfen dir zu deinem Erfolg, Zeitschriften berichten über dich, Bücher werden über dich geschrieben, in Vorlesungen wird über dich geredet und täglich beschäftigen sich Millionen Menschen mit dir. Dieses Gefühl kann man nur haben, wenn man ein Superstar ist oder ein Open Source Projekt aus dem Boden stampft, das so erfolgreich wird wie vim, Apache oder der Linux Kernel. Und deshalb freut sich jeder Open Source Programmierer, wenn jemand anderes seinen Code kopiert, vervielfältigt und verbessert. Anerkennung und Spaß sind die treibenden Kräfte die so viele Menschen motiviert, sich die Nächte um die Ohren zu schlagen.

Da man dies erst glaubt, wenn man es selbst einmal miterlebt hat, möchte ich in den nächsten 22 Tagen und vielleicht sogar darüber hinaus einen kleinen Einstieg geben. Wir wollen uns in den nächsten Tagen mit den Tools und Techniken beschäftigen, aber auch selbst ein Open-Source-Projekt starten. Somit füllt sich euer Advent mit Tools wie Git und Vim, aber auch mit SDL und der Programmiersprache C.

Wir wollen zusammen ein kleines 2D-Spiel beginnen. Das Tolle an einem Open-Source-Projekt ist auch, dass man es nur einem selbst recht machen muss und damit fällt auch das Schreiben eines Pflichten- oder Lastenheftes weg. Es müssen keine Verträge eingehalten werden und die Features werden on demand definiert. Allerdings hat so gut wie jedes Projekt ein paar Grundgedanken, die es verfolgt. Unsere Grundeinstellungen sollen sein:

Mit diesen Grundgedanken werden wir uns die nächsten Tage und Wochen immer wieder beschäftigen. Übermorgen gehts dann weiter mit der Infrastruktur.