Archiv der Kategorie: Computer

Betrüger Warnung auf Facebook

Zur Zeit kursieren Beiträge auf Facebook, die angeblich von Freunden erstellt worden sind. Die Beiträge leiten auf einen Artikel weiter, der besagt, dass eine Prominente Person (In der Schweiz oft Roger Federer) mit einem kleinen Einsatz (250.– €) das X fache an Gewinn rausgeholt hat. Diese Nachrichten sind natürlich kompletter Fake. Es handelt sich wohl um Betrüger die auf möglichst viele Menschen hoffen die schnell reich werden wollen. Den Einsatz wird man dann wohl nie wieder sehen 😉

Das Spezielle ist aber: wenn man auf den Artikel klickt teilt man den Beitrag auch automatisch. Denn man geht nicht direkt auf den Artikel sondern über eine Umleitungs Seite, die Gleichzeitig den Facebook Post in deinem Namen verfasst. Dies ist möglich, da die Leute bereits eingeloggt sind. Also bitte nicht auf die Beiträge drauf klicken.

Weiterleitungsseite einer Betrüger Website
Für den normalen Anwender unsichtbare Weiterleitungsseite.

Der Unterschied zwischen einem FTP Server und GIT

Vielen wird es wohl ähnlich ergangen sein. Wenn man als Neuling anfängt ein paar Websites zu bearbeiten, wird man relativ schnell mit FTP Bekanntschaft machen. Das File Transfer Protokoll ermöglicht es, einfach Dateien vom eigenen Rechner auf einen Server hochzuladen. FTP ist einfach zu bedienen, und funktioniert auch, solange man alleine an einem Projekt arbeitet. Wenn aber dieser Neuling nun in eine Gruppe kommt, wo mehrere Leute gleichzeitig an einem Code arbeiten, ist meist Schluss mit FTP. Dann muss man sich mit so kompliziertem Zeug wie GIT anfreunden.

Viele Neulinge stänkern dann erst mal. „Aber mit FTP hat es doch bei mir auch wunderbar funktioniert. Weshalb nun plötzlich so ein kompliziertes Tool?“ GIT ist tatsächlich ein komplizierteres Tool als FTP und der Unterschied ist erst mal nicht so offensichtlich. Den will ich Euch heute erklären.

Die Grenzen von FTP

Wenn man vom eigenen Rechner via FTP auf einen Webserver eine Datei oder mehrere hochlädt, wird die alte Datei einfach überschrieben. Klingt erst mal logisch, ist ja auf dem lokalen Rechner genau so. Doch wenn mehrere Leute an einer Website arbeiten kann das zu einem heillosen durcheinander führen. Ein Beispiel: Entwickler eins macht in einer Datei eine Änderung… informiert aber nicht gleich das Team. Er lädt die Datei auf den Server hoch. Dann kommt Entwickler zwei und will auch ein paar Änderungen machen. Nur hat er noch eine Datei ohne die Änderungen von Entwickler eins. Wenn nun Entwickler zwei seine Änderungen auf den Server hochlädt, sind die Änderungen von Entwickler eins einfach überschrieben. Dieses Problem schlägt schon bei ganz kleinen Teams zu, weshalb eigentlich alle Entwicklungsteams auf eine Versionskontrolle (GIT ist eine von vielen) setzen.

GIT speichert Change sets, keine komplette Dateien

Der eigentliche Unterschied zwischen einem FTP Server und GIT liegt im Hintergrund verborgen. Im Unterschied zu einem FTP Server speichert GIT nämlich die Änderungen in sog. Change sets. Das sieht dann ungefähr so aus:

Initial commitVersion 1
Changeset 1Version 2
Changeset 2Version 3
Changeset 3Version 4
Stark vereinfachte Darstellung einer Versionskontrolle

Wenn man also etas via GIT auf ein Repository (wie man die Ablage nennt) hochlädt, dann erstellt GIT erst auf dem eigenen Rechner ein Change set. Dieses wird dann an den Server übermittelt. Die Change Sets funktionieren Zeilenbasiert. An folgendem Screenshot kann man das sehr gut erkennen:

Ein Change Set auf GitHube
Darstellung eines Change Sets auf GitHub.com Hier zu sehen Code von Apache Openmeetings

Die Dateien die man also in Git erhält, sind immer aus vielen einzelnen Change sets zusammengezimmert worden.

Dieses System eröffnet ganz andere Möglichkeiten. Zum einen können so Fehler einfach zurückgespult werden. Zum anderen ist es möglich, Änderungen eines anderen Entwicklers in den eigenen Quellcode einzubauen auch wenn man selbst schon Änderungen gemacht hat.

GIT ist zwar komplizierter zu bedienen, vereinfacht aber letztendlich vieles. Selbst das kleine Einmann Projekt profitiert davon. Insbesondere wenn man was einbauen wollte, und erst zu spät bemerkt, dass es nicht funktioniert. Mit GIT kann man die Änderung einfach zurückrollen und hat somit eine laufende Website.

Programmierung des Automatischen logouts für das VTool

Heute Morgen setzte ich mich mal wieder an den Quellcode. Etwas was ich in letzter Zeit eigentlich viel zu wenig mache. Ich nahm mich einem Problem an, dass sich über das gesamte Tool erstreckt, und das auch sicherheitsrelevant ist. Denn man wird Tool bis jetzt nicht automatisch ausgeloggt. Wenn also jemand das Logout vergisst und einfach nur den Browser schliesst, kann theoretisch eine andere Person mit dem selben Computer sich auch Stunden später auf einem fremden Account rumtreiben. Das wollen wir natürlich nicht 😉

Der Code dafür war eigentlich nicht so eine grosse Herausforderung. Nach ein bisschen Recherche war er schnell geschrieben. Aufwändiger war das Testen. Denn das Timeout (wie man das im Fachjargon nennt) muss in jedem Fall funktionieren. Soll einem aber auch nicht unnötig raushauen.

Computer mit Bildschirmschoner, einer Tastatur mit Kekse drauf
So gemütlich kann Programmieren sein, wenn man auf das Timeout wartet

Das ganze ist natürlich immer wieder mit Wartezeiten verbunden. Natürlich hab ich den Wert für das Timeout für den Test auf drei Minuten runter gestellt. Normalerweise ist er auf 30 Minuten. Ich habe ein paar mal 3 Minuten gewartet, was mich zum Bild oben verleitete 😉

Natürlich gab es auch ein paar Herausforderungen. Das dachte ich zumindest. Vor allem beim Chat witterte ich Probleme. Weil der immer wieder Daten vom Server nachlädt, fürchtete ich, dass er Aktivität simulieren könnte, ohne dass ein Benutzer aktiv ist. Das hätte dazu geführt, dass wenn man im Chat blieb, man nie ausgeloggt würde.

Doch das war nicht der Fall, im Gegenteil, ich musste dort überhaupt nichts ändern. Ich hab dann nur einen Kommentar im Quellcode hinterlassen, dass ich das absichtlich so belassen habe. Nicht das jemand hinterher meint… Oh, da hat jemand was vergessen, und mit seiner „Verbesserung“ einen Fehler provoziert.

Am Schluss musste ich dann meine Kekse aber doch weglegen. denn der letzte Teil war Fleissarbeit. Ich musste fast in allen Dateien ein paar Zeilen Code anpassen.

Proteine falten geht in Verlängerung (Corona)

Wer mich kennt, der weiss, dass Distributed Computing schon lange in Hobby von mir ist. In den letzten zwei Jahren forcierte ich vor allem das Projekt Folding@Home. Ein Projekt dass Grundlagenforschung im Medizinalbereich betreibt. Auf meinem Blog habe ich bereits darüber berichtet.

Kurz gesagt geht es darum, dass man mit der eigenen Rechenpower die Wissenschaft beim lösen von Problemen helfen kann. Bei Folding@Home geht es um Proteinfaltung, die bei sehr vielen Krankheiten und deren Behandlung eine zentrale Rolle spielt.

Bei mir kommt doch ein bisschen Rechenpower zusammen, weshalb ich meine Kisten zu einem grossen Teil für die Wissenschaft rechnen lasse. Allerdings stoppe ich meine Beteiligung meist so im Mai, weil die Rechner doch ein bisschen heizen. Im Sommer macht sich das natürlich besonders bemerkbar.

Meine Rechner helfen der Wissenschaft im Kampf gegen Corona

Doch momentan laufen alle Kisten noch auf Vollgas. Denn Folding@home beteiligt sich an der Grundlagenforschung von Covid-19. Deswegen beteilige ich mich auch daran.

6 mal so schnell wie der schnellste Supercomputer

Das Rechennetzwerk von Folding@Home hat massiv zugelegt. Es verfügt nun über sechs mal mehr Rechenpower als der schnellste Supercomputer der Welt. Mit 1300 Petaflops verfügen wir über eine ordentliche Schlagkraft. Wer auch noch beim Kampf gegen Corona mitrechnen möchte, Kann sich das Programm von der Folding@home Seite herunterladen, und los rechnen.

Ich rechne auch noch ein bisschen weiter, bis es mir, vermutlich irgendwann im Juli, zu heiss wird 😉

Home Office mit einfachen Mitteln

Mittlerweile spielt es keine Rolle mehr, wie man die Corona Geschichte einstuft. Wir sind alle davon betroffen, ob wir wollen oder nicht. Und natürlich kommen sie, die Wölfe die schon fette Beute wittern. Ich musste jedenfalls ziemlich lachen, als ich Ende Woche eine Werbung für ein Home Office Programm bekam. Wenn die wüssten… Wir haben nie anders gearbeitet als im Home Office 😉 Hier möchte ich mal schreiben, worauf es bei Home Office wirklich ankommt!

Selbständiges arbeiten ist das A und O

Der erste Punkt ist leider gerade einen, den man nicht einfach so von Heute auf Morgen kann. Wer im Home Office arbeitet muss extrem selbständig arbeiten. Denn man kann nicht eben mal dem Kollegen am Schreibtisch nebenan auf die Schulter tippen, und seine Meinung einholen. Wir machen das meistens so, dass wir vor einer Arbeit, uns telefonisch kurz schliessen. In der Regel bevorzugen wir dafür irgendwelche Voice over IP Tools von denen es zu genüge gibt. Wichtig ist dabei, dass jeder Mitarbeitende ein klares Bild davon kriegt, was er zu tun hat. In der Regel reicht hier eine Sprachkonferenz auch aus.

Grössere Projekte werden erst von einer Person in einem Konzept online gestellt. Wir haben für unsere Zwecke hierfür eine geschlossene Instanz von MediaWiki installiert. Danach wird das Konzept mit den Beteiligten meist auch in einer Telefon Konferenz besprochen, und angepasst, dann die Aufgaben verteilt, und umgesetzt.

Textchat für die schnelle Frage zwischendurch

Egal wie man sich am Anfang abspricht, Unklarheiten wird es trotzdem hin und wieder mal geben. Wenn man eine Rückfrage an einen Kollegen hat, nutzen wir meistens Textchat. Das stört am wenigsten und ist sehr effizient. In unserem Fall haben wir einen Textchat in unserem eigenen Online Office Tool (Selbst entwickelt) eingebaut. Wenn der Diskussionsbedarf dann doch grösser ist, wechseln wir auf VoiceChat.

Spielereien vermeiden!

Die heutigen HomeOffice Tools lassen eine Menge Spielereien offen. Video Chat, ClipBoard, Screensharing, usw. Nach unseren Erfahrungen sind das meist Zeiträuber, und nicht hilfreich. Screensharing haben wir in den schon bald drei Jahren glaub ich zwei mal gebraucht. Videochat brauchen wir so gut wie gar nie. und Clipboard brauchen wir auch höchst selten. Spielereien machen die Sache selten effizienter.

Lokal arbeiten, aber alle Daten online haben

Wir arbeiten nicht in Cloud Systemen. Auf lange Frist hat sich das bewährt. Jeder hat die Dateien für sein Gebiet auf seinem Rechner. So kann man auch weiterarbeiten, wenn mal kein Internet oder nur wackeliges Netz zur Verfügung steht. Cloud Arbeitsplätze haben immer Verzögerungen. auch wenn dies meist im Millisekunden Bereich ist, stört das auf die Dauer. Zudem sind Cloud Desktop Anwendungen meist teuer.

Was bei uns aber ein heiliges Gebot ist; „alle Daten gehören online“. Wenn ich an etwas gearbeitet habe, lade ich das sofort hoch. Auch dann, wenn ich mit Bestimmtheit weiss, dass nur ich an der Datei arbeiten werde. Das ist wichtig, damit sofort jeder die Arbeit übernehmen kann, wenn es zu einem Ausfall der Person kommt.

Es ist auch empfehlenswert, in den Online Daten eine gewisse Ordnung zu halten. So dass jeder weis, welche Daten wo liegen. Ansonsten wird die Online Ablage schnell zu einem Albtraum.

Falls ihr Fragen zum Thema Home Office habt, könnt ihr die gerne in den Kommentaren stellen.

Vefko – Vor dem Release 1

Wenn in letzter Zeit so wenig Blogs gekommen sind, dann lag es daran, dass ich anderweitig beschäftigt war. Zur Zeit läuft sehr viel bei uns, und manchmal frage ich mich, ist das wirklich unser Projekt. Mittlerweile haben wir Zusammenarbeiten von denen wir am Anfang des Projektes nicht mal zu träumen wagten.

In den letzten Wochen fanden wir noch Lösungen für zwei Gebiete die uns Bauchschmerzen bereiteten. In den Bereichen Design und Marketing waren wir schlecht aufgestellt. Diese Lücken konnten wir nun endlich schliessen. Das war für uns eben gar nicht so einfach, da wir nicht den dicken Finanztopf haben. Das machte die Suche nach einer guten Lösung extrem schwierig.

Auch Programmiertechnisch ging es in letzter Woche gut voran. Noch haben wir kein Release Datum, aber langsam geht es in die Richtung. Über die Fortschritte versuche ich jetzt in dem Blog immer wieder mal zu berichten.

Wir sind nicht eingeschlafen, sondern mehr dran, denn je… Aber es gibt eben doch noch ein gutes Stück Arbeit.

Die russische Telefon Nummer auf meinem Smartphone

In meiner Jugend war Russland ganz weit weg. Man hatte zu vielen Ländern einen Bezug, wenn auch nur sehr entfernt, aber Russland zählte bei mir nie zu diesen Ländern. Heute fand die erste russische Nummer sein Weg auf mein Handy.

Ja, einige werden es nun bereits erraten. Das kann bei mir eigentlich nur mit Open Source zu tun haben. Vor einiger Zeit habe ich mich im Projekt Apache OpenMeetings als interessierter für eine Mobile Entwicklung gemeldet. Heute meldete sich einer der Hauptentwickler bei uns, das er mit der Entwicklung begonnen habe, und dass wir doch mal Feedback geben sollen.

Das tat ich dann auch, und so kam es zu einigem Mailverkehr zwischen uns zwei, und später sprachen wir auch noch ein bisschen per Messanger. Endlich wieder mal Open Source, wurde aber auch Zeit. denn ich habe es sehr vermisst. Ich bin immer wieder beeindruckt, wie schnell man da mitten im Team ist. Klar, wenn man schon Apache ist, geht das noch mal deutlich schneller.

Doch viele werden sich fragen: „Was zur Hölle ist Apache OpenMeetings.“ OpenMeetings ist eines der Projekte unter Apache, das definitiv mehr Aufmerksamkeit verdient hätte. Es handelt sich hierbei um eine Online Konferenz Software mit Video Chat, Whiteboard usw. Eigentlich alles was man für online Konferenzen so braucht. Ich verfolge das Projekt schon länger. Einige Zeit sah es fast danach aus, dass dieses Projekt vielleicht bald im Attic (Dem Friedhof der Apache Projekte) landen würde. Doch seit einiger Zeit ist nun wieder etwas mehr Schwung im drin.

Apache OpenMeetings ist nun auch das erste OpenSource Projekt, dass ich aus wirtschaftlichem Interesse unterstütze. Wir haben vor, für die Vefko ein OpenMeetings Server aufzusetzen. Eventuell werden wir den dann auch an Vereine Ausmieten. Das müssen wir noch sehen. Deswegen läuft das Vefko Tool während der Arbeit.

Ich denke, es ist ein guter Zeitpunkt in dem Projekt einzusteigen. Bin gespannt ob das meine neue Open Source Heimat wird.

Vefko: Die Unterschiede zwischen den Anfängen und jetzt

Vielerseits wurde gewünscht, dass ich wieder mal einen Blog über die Vefko mache. Ja, ich komme in letzter Zeit gar nicht so viel zum Bloggen wie ich das gerne hätte. Das liegt nicht zuletzt daran, dass ich momentan gut beschäftigt bin. Schuld daran ist ganz klar die Vefko.

Wenn man so mitten in der Arbeit steckt, bekommt man nicht selten den Eindruck, man komme nicht vom Fleck. Das Vereins Tool, dass wir anfangs zu programmieren begannen, ist immer noch nicht fertig. Viel zu lange ist das jetzt schon in der Mache. Wir haben eine Menge Lehrgeld bezahlt, aber dazu vielleicht in einem anderen Blog.

Es ist halt auch so, dass Vefko mittlerweile weit mehr als ein Programmierprojekt ist. Wir werden mehr und mehr zu einem Inklusionsprojekt der anderen Art. Aktuell gleisen wir gerade ein Pilotprojekt auf, das für uns, aber auch für andere vollkommen neue Möglichkeiten eröffnet. Dieses Projekt wurde von Fachpersonen sogar schon als Zukunftsweisend bezeichnet. Hoffen wir mal, die Erwartungen können erfüllt werden.

Leider kann ich Euch dazu noch nicht viel erzählen, denn solange das im Aufbau ist, können wir das natürlich noch nicht öffentlich machen. Nur soviel. Es sind vier Organisationen daran beteiligt. Darunter auch Organisationen die den Ruf haben „nicht so einfach zu sein.“

Wenn ich eines in den letzten vier Monaten gelernt habe, dann dass man die eigene Meinung immer mal wieder in Frage stellen muss. Wir mussten in den letzten Monaten ganz schön über unsere eigenen Schatten springen, alte schlechte Erfahrungen über Bord werfen. Manchmal muss man bestimmte Dinge unvoreingenommen neu beurteilen.

Am Anfang wären solche Zusammenarbeiten undenkbar gewesen. Wenn man von dem Projekt erzählte hiess es mit einem Lächeln: „Spannend, halte mich auf dem Laufenden.“ Zwischen den Zeilen schwappten aber einem schon die ganzen Zweifel entgegen. Die Zweifler gibt es immer noch, doch immer mehr glauben an uns.

Die Programmierung war in letzter Zeit nicht so aktiv, da Marc aktuell ausgefallen ist. I Zwischenzeit habe ich auch mal wieder etwas programmiert. Das machte richtig Spass, denn so oft komm ich da leider nicht mehr dazu. Doch Marc ist schon wieder auf dem Weg zurück, und wenn er wieder da ist, kümmere ich mich wieder um das Ganze drum rum, und überlasse ihm grossteils die Programmierung.

So, nun habt ihr mal wieder ein ausführliches Update, Ich wünsche Euch einen schönen Tag, und hoffe, dass ich in Zukunft mindestens wieder ein mal die Woche zum Bloggen komme.

Mein Weg zum ITler – der erste Familien PC

Sommer 1992, ich komme gerade von einer zwei Tägigen Radtour am Bodensee nach Hause. Kaum zu Hause angekommen meinte mein jüngerer Bruder ganz begeistert. „Der Computer ist da… wir haben einen Computer.“ Damals war es noch lange nicht so, dass jeder Haushalt einen Computer hatte. In meiner Klasse war ich der erste der so ein Ding zu Hause stehen hatte. Und da steht sie also. Eine Maschine von Tandon mit einem 486er Prozessor mit 32 Megaherz. 4 MB RAM und 200 MB (jaja, Mega, keine Giga) Festplatte. Wir hatten auch ein Farb-Tintenstrahldrucker mit separater Schwarz Patrone, damals der letzte Schrei.

Und für all die jungen die diesen Blog lesen… nein, da war nichts mit Internet. Der Computer hatte noch nicht mal einen Netzwerkanschluss. Jeder von uns bekam eine Diskette. Und für alle die nicht mehr wissen wie diese aussahen, hab ich hier unten ein Bild. Der Speicher von 1,44 MB war eher bescheiden. Zum Vergleich, ein Bild mit einem durchschnittlichen Handy von heute, hätte man damals auf 3 – 5 Disketten aufteilen müssen. Um damals so ein paar Textdokumente zu speichern, reichte es aber allemal.

Diskette
Eine 1,44 MB Diskette

Natürlich ist Streit vorprogrammiert, wenn man nur ein Computer hat. Wir hatten eine Regelung, dass Arbeiten vor Spielen geht. Wobei man nach spätestens 3 Stunden das Feld freiwillig räumte da einem die Augen von dem Flimmermonitor weh taten. Ich war zwar nie der Gamer, aber als Kind/Jugendlicher spielte ich schon ab und zu. MS Flight Simulator oder ein Formol 1 Spiel dessen Name ich nicht mehr weiss. Meine Mutter war jeweils furchtbar genervt ab dem Spiel, da es so schreckliche Geräusche machte. Aber die Alternative wäre gewesen, dass ich in der Wohnung Unihockey spielte, und das fand meine Mutter auch nicht besser 😉

Aber ein schöner Teil der Zeit verbrachten wir auch mit dem Kennenlernen des Systemes. Als mein grosser Bruder (der damals eine Lehre zum Elektroniker machte) mal ein Kollege zu Hause hatte, der den Computer neu einrichtete, schauten wir kleinen mit grossen Augen zu, und nervten die beiden mit tausenden Fragen. Das Windows 3.11 was wir drauf hatten, verfügte über keinerlei Absicherungen. Kein Login, keine versteckten Systemordner, nichts. Wir Kinder konnten uns alles ansehen. Uns wurde natürlich gesagt, wo wir nicht rumbasteln sollten, aber reinschauen konnten wir genau gleich.

Ich fand irgendwie den Gefallen daran. Doch der wirkliche Computerfreak war eigentlich mein jüngerer Bruder. Da verging nicht viel Zeit, da schleppte er seinen eigenen alten Computer an. Keine Ahnung wo er den her hatte, aber er war halt plötzlich da. Er verschlang auch Computer Zeitschriften.

Da mein älterer Bruder eine Lehre als Elektroniker machte, hatten wir auch eine Lizenz von Turbo Pascal installiert. Das war damals die Lernprogrammiersprache. Mein jüngerer Bruder bastelte hin und wieder damit rum. Ich hielt mich aber vom programmieren noch weitestgehend fern. Mal abgesehen von Stapelverarbeitungsdateien mit Batch. Aber ich liebte es, die Systeme zu verstehen versuchen.

Die Tatsache, dass die Systeme damals noch wesentlich einfacher aufgebaut waren, und dass man überall ungehindert reinschauen konnte, war natürlich vorteilhaft. Des weiteren war natürlich ein Vorteil, dass der Computer damals noch kein Unterhaltungsgerät war. (mal abgesehen von Games denen ich sowieso nicht viel abgewinnen konnte) Die Ablenkung durch Social Media war damals nicht vorhanden. Denn noch wurden wir in relativ jungen Jahren schon mit dem Computer konfrontiert.

Alles zusammen ergab natürlich eine gute Brutstätte für ein IT’er. Heightlights aus dieser Zeit hört ihr im nächsten Blog dieser Serie.

Apache Software Foundation – Wer ist das

An einem Herbsttag in Berlin. In der Kulturbrauerei treffen sich ein paar Leute. Es wird mehrheitlich Englisch gesprochen. Es ist schon ein bisschen eine merkwürdige Gruppe die sich hier trifft. Es ist eine lockere Truppe, Der Türsteher vor dem Eingang ist einer der wenigen, der sich in Schale geworfen hat. Dennoch tummeln sich hier Leute, die essenzial für unsere Digitale Welt sind.

Nein, es ist kein Meeting von Google, Microsoft oder Apple. Es ist die Europäische Konferenz der Apache Software Foundation. Der grössten Open Source Software Organisation der Welt. Wenn man nicht gerade aus der IT Welt kommt, kennt man die ASF meist nicht. Doch selbst die IT’ler kennen Apache nicht richtig. Meist kennen sie nur ein paar Projekte, wie Apache httpd (Webserver), Tomcat, Lucene/Solr usw. Aber Unter dem Dach der ASF sind mehr als 300 Projekte.

Banner der Apache Software Foundation mit hunderten von Projektlogos
Banner mit ASF Projekten… ob das alle sind, weiss ich nicht

Egal ob du nur mal im Web surfst, Eine Bestellung auf Amazon machst, Geld abhebst, mit dem Auto irgendwo hinfährst, dein Handy nutzt, die Chance ist relativ gross, dass irgendwo im Prozess ein Apache Projekt genutzt wird. Apache Projekte sind selten im Vordergrund aktiv. Meist handelt sich um sogenannte Libraries. Für nicht Entwickler kann man das als digitale Bauteile sehen. Wenn ich zum Beispiel einen neuen Staubsauger entwickle, werde ich wohl kaum den Motor für den Staubsauger selbst bauen. Ich kaufe einen Motor zu und gut ist. Genau so gibt es in der Software Entwicklung Aufgaben, die in vielen Programmen die selben sind. Beispielsweise die Suchfunktion, oder ein Dokument generieren (Kontoauszug oder Rechnung). Diese Funktionen werden dann meist durch eine Library ausgeführt.

Open Source

Allerdings hinkt das oben genannte Beispiel. Denn Apache verkauft keine Libraries, sondern stellt sie kostenlos zur Verfügung! „Moment, ihr arbeitet gratis für andere? seit ihr bescheuert“ höre ich immer wieder wenn ich von meiner Beteiligung in der Apache Software Foundation spreche. In der Theorie ja, in der Praxis sieht das meist anders aus.

Das romantische Bild, wo der kleine idealistische Grarageprogrammierer dem Grossen geldgierigen Software Konzern den Stinkefinger zeigt ist heute wohl eher in der Märchenwelt anzusiedeln. Fast alle grossen Open Source Projekte entstehen heute in enger Zusammenarbeit mit den grossen Software Konzerne. Auch ist es so, dass die wenigsten substantiellen Beiträge in der Freizeit entwickelt werden.

Es ist viel eher so, dass verschiedene Firmen die selben Probleme lösen müssen. Statt dass jeder was eigenes schreibt, und selbst rumwurstelt, tut man sich zusammen und macht gemeinsam ein Projekt. Damit es keinen Streit gibt, wer das Projekt verwenden darf, stellt man es oft unter eine freie Lizenz. Die meisten Apache Projekte werden also nicht von freizeitopfernden Helden entwickelt. Viel eher sind es Firmen die an den Projekten Interesse haben, und dann Mitarbeiter abstellen, um ein Apache Projekt voranzubringen. Die ASF kann also als eine Art Zweckgemeinschaft angesehen werden.

Apache est sehr pragmatisch. Im unterschied zu anderen Open Source Software Bewegungen bestand nie das Ziel, Proprietäre Software zu eliminieren. Apache hat begriffen, dass es gute Gründe für die Co Existez gibt. Apache hat jedoch eine ganz eigene Arbeitsweise die sich der Apache Way nennt.

Wenn es Euch interessiert, kann ich gerne mal einen Blog über den Apache Way machen, oder besser eine Blogserie. Vielleicht stelle ich auch mal ein paar nützliche Apache Projekte vor. Lasst gerne einen Kommentar da, falls ihr Fragen habt.

Disclimer: Das hier widerspiegelt meine eigene Meinung. Diese muss sich nicht zwingend mit der Auffassung der ASF decken.