 So, hallo, es ist halb drei. Es geht weiter mit dem nächsten Vortrag, FreeBSD, The Power to Serve Community. Ich darf euch vorstellen, den Benedikt Reuschling von der, wie haben wir eben gesagt hat, von der FH-Darmstadt, nicht von der TU. Wie es im Netz zusaisend ist. Er ist Labor-Ingenieur, habe ich gelesen, Computer Science hat er studiert, Spezialist für Datenbanken, administriert so ein Big Data Cluster und beschäftigt sich mit ZFS. Ist bei FreeBSD-Committer seit 2010 und macht FreeBSD seit, ja, Version 521, also schon recht lange. Ja, ich wollte es ja nicht so deutlich sagen. Er wird ein bisschen was erzählen am Anfang über FreeBSD, für die, die es noch nicht kennen, was es ist, wozu man es so braucht. Und dann zu sprechen kommen darauf, wie es beim FreeBSD-Projekt läuft, wie man diese Community am Laufen hält und erfolgreich führt. Viel Spaß. Dankeschön. Ja, herzlich willkommen. Freue mich, dass so viele den Weg hierher gefunden haben. Auch am dritten Tag kann es manchmal so ein bisschen so einen kleinen Einbruch in der Anwesenheitsliste geben. Das ist so der Überblick, was wir vorhaben oder was ich vorhaben zu berichten. Der Anfang ist erst mal so ein bisschen, worum geht es überhaupt? Was ist das Projekt? Wo sind so die Feinheiten, die Features? Das ist aber nicht alles, weil das wird dann sehr technisch, können wir natürlich auch machen, aber die meisten sind dann doch so ein bisschen an dem Traum rum interessiert. Das ganze Community, Traum rum, wie funktioniert das, wie sind wir so organisiert, weil wir uns da an manchen Stellen auch sehr stark unterscheiden von anderen Projekten dieser Art und dann auch so ein bisschen die Supportstrukturen dahinter. Wie funktioniert das Ganze? Wo kommt das Geld auch rein? Oder wo geht es wieder hin? Und dann nochmal zur Zusammenfassung am Schluss, wo wir auch ein bisschen Überblick bekommen, wie man auch mitmachen kann und das Ganze auch wieder belebt. Kann ich mal rumpfragen, wer hat das denn schon mal gehört, FreeBSD, vielleicht in den jungen Jahren? Oh wow, mein Job ist erledigt, kann gehen. Das ist ganz gut, weil dann muss ich nicht von allem komplett neu anfangen, aber so ein paar Sachen ist glaube ich auch als Update ganz gut, dass die Leute vielleicht, die fünf Jahre Pause gemacht haben oder so, mal wissen, worum es mittlerweile geht oder was wir gerade so Sachen bearbeiten, da kann man gerne mal wieder einsteigen. Also, worum geht es überhaupt? Das FreeBSD Projekt ist ein recht altes Projekt, ist entstanden in der Community Assistance Research Group der University of California in Berkeley. Wow, das habe ich schön auswendig gelernt. Und das war damals so wirklich die Uhrzeit der Unix-Entwicklungen, wo es noch kaum Sachen gab, die wir heute als gegeben hinnehmen. Und diese Gruppe hat sich quasi dort an der Universität darum gekümmert, um das gerade frisch entstandene Unix von Carnegie & Ritchie weiter zu entwickeln und auch eine komplette Distribution daraus zu strecken. Das war also damals schon ein Novum, dass man das quasi als Komplettpaket rausgegeben hat. Und viele andere Universitäten haben nicht nur diese Forschungsgruppe, ihre Patches übermittelt, alles noch auf Bändern damals, graues Uhrzeit der Computertechnik, sondern die haben auch dafür gesorgt, dass viele Entwicklungen, die wirklich heute standard sind mittlerweile, dass die dort überhaupt erst entstanden sind und dort wirklich ihren Ursprung haben. Also das TCP natürlich, das BSD, die TCP ist heute noch bei uns im Einsatz, wer hätte es gedacht. Aber auch so Sachen wie Socket API, dass ich mich auch über das Netzwerk zugreifen kann, Job Control, dass ich Control Z drücken kann und da meine Programme in den Hintergrund versetzen kann, FDP, Send Mail, da sprich man natürlich über viele schöne Dinge, die man heute vielleicht nicht mehr so haben will, wie ISDort entstanden. Also Bill Joy hat das sozusagen der Community beschert. Und das ging dann so weiter bis in den 1980er Jahren. Das ist natürlich dann auch mit Netzwerk Funktionalität ausgestattet worden über die Jahre. Und die Leute haben da beigetragen, auch so in den ersten Zeiten des damals noch sehr universitär gehaltenen Universitätsinternets, wo wirklich nur die Universitäten an diesem Netz verbunden teilgenommen haben. Und irgendwann hat sich die Universität dann gesagt, wir sind eigentlich eine Universität und kein Software-Entwicklungsunternehmen. Ihr könnt ihr vielleicht nur mit eurer Entwicklungsgruppe raus aus dem Universitären, weil mittlerweile auch nicht nur das System vertrieben wurde, auch dann Support teilweise an die Universität herangetragen wurde. Also könnt ihr bestimmte Features umsetzen oder bug fixes machen. Das hat dann natürlich diese Research Group gern gemacht. Aber irgendwann waren die so beschäftigt und eigentlich hatten die einen Lehrbetrieb zu machen. Und deswegen wurde es seit 1995 als Open Source Projekt auf dieser 4-4-BSD-Light-Lizenz veröffentlicht. Daraus haben sich dann drei Projekte abgespalten. Einmal das FreeBSD-Projekt, das NetBSD-Projekt und OpenBSD, ein bisschen später aus dem NetBSD-Projekt abgeleitet. Und die sind eigentlich heute noch aktiv und treiben das auch weiter vor. Und es gibt weiterhin auch Regen-Code-Austausch zwischen diesen Projekten. Also sie sind nicht so, dass die jetzt komplett fremd wären, sich gegenseitig und nicht mehr Code gegenseitig austauschen würden, sondern der herrscht trotzdem weiterhin ein Reges geben und nehmen, sag ich mal. Das ist so ein bisschen der ganz große Überblick, was es überhaupt, also worum geht und welche Unterstützung bietet FreeBSD. FreeBSD, muss man wissen, ist ein vollständiges Betriebssystem. Es ist nicht nur ein Kernel, wo irgendjemand eine Distribution daraus gebastelt hat, sondern es ist alles aus einer Hand. Wir entwickeln nicht nur den Kernel, wir entwickeln die User-Land-Libraries, wir entwickeln die SysCalls selber. Also es ist alles von den gleichen Leuten. Die ganzen User-Land-Utilities sind auch von den selben Personen und das macht das Ganze natürlich zu einem runden System, was aufeinander abgestimmt ist und was auch miteinander funktioniert und wo nicht plötzlich irgendwie eine Grenze zwischen einer Kernel-Entwicklung und einer Distributions-Entwicklung, die dann vielleicht nochmal eigene Ideen haben und es gibt auch keinen so einen, ja ich nenne es mal Wildwuchs, wo es Tausende von Distributionen gibt, die sich um den gleichen Kernel drehen, sondern wir haben eigentlich alle ein sehr koherentes System, das sehr stark zusammenhält und da auch relativ wenig geforkt wird. Also klar gibt es ab und zu mal Bestrebungen und auch Projekte, die sich von FreeBSD abspalten und so ein eigenes Ding machen, aber der Hauptentwicklungskern, das ist nur noch im Kern FreeBSD. Dann unterstützen wir so ein bisschen Architekturen, das sind vielleicht manche bekannt davon, manche vielleicht weniger, also so die Intel und AMD, das ist auch so FreeBSD steckenfährt, seit es sich damals aus der Universität ausgegründet hat. Das ist so das System gewesen, auf dem die sich quasi weiterentwickelt haben, gesagt, dafür wollen wir schwerpunktmäßig unseren Support drauf leisten. Na ja gut, die 32-Bit-Systeme, die sind mehr oder weniger am Aussterben, da gibt es noch eine große Entwicklungskonferenz und ab und zu gibt es auch Bedarf, die weiterzuentwickeln. Die Armsysteme dieser Welt, wir haben immer eine recht große Entwicklungskonferenz in Cambridge und genau in dem gleichen Gebäude, wo der Raspberry Pi auch entwickelt wurde, einen Stockwerk drüber quasi, haben wir da unsere Entwicklungskonferenz oder eine davon, die ist im August und da ist es natürlich sehr schön, weil man dann einfach diese Synergieeffekte nutzen kann, wenn man schon mal vor Ort ist, weiterhin die Beaglebond Blacks dieser Welt und natürlich als ganz neues Ding Risk Five, was auch aus Berkeley stammt, diese Entwicklungsarchitektur, da könnte man eigentlich einen eigenen Talk drüberhalten, aber da gibt es andere, die das besser können. Da gibt es auch YouTube-Videos dazu, also Risk Five ist so ein bisschen der freie Armnachfolger, wobei die das nicht gerne hören, vielleicht nicht sogar von mir. Risk Five ist eine Architektur, die man sich auf jeden Fall mal auch als Hacker oder Hackerin Hexe angucken sollte, weil es sehr offen ist und man da auch demnächst Implementierung finden wird und da wollen wir natürlich auch auf den Zug aufspringen und uns an der Entwicklung beteiligen. Dann gibt es eine ganze Menge von Third-Party-Anwendungen, für die wir uns auch verantwortlich zeigen. Das heißt, wir portieren Software, wie den Firefox alles mögliche, was man sich so denken kann, was man so braucht als Entwickler und die sind sozusagen in unserer Ports Collection vereint. Das heißt, ich kann einfach in meiner Ports Collection sagen, bitte installieren wir diese Software, die wieder als Paket oder als kompliziertes Binary. Und diese Ports Collection wächst eigentlich ständig an, weil es viele Leute eben gibt, die das maintain und auch gerne ihre Software da drin sehen wollen und das möglichst einfach machen wollen, den Leuten zur Verfügung zu stellen. Also wir haben fast unheimlich eine Menge, ich habe nach einer Liste an Teilnehmern in einzelnen Subprojekten, das sind bei Ports eigentlich die meisten Entwickler tätig. Die halt mal ab und zu ein paar Patches schicken, wo halt die aktuellsten Softwarestände mitgeliefert werden kann man auch sicher sein, dass also Firefox und so Sachen, die sind natürlich immer ständig, aktuell auch die Nightly Bills, sind damit enthalten. Aber auch die kleinste Library, wo noch nie jemand was von gehört hat, die hat halt irgendeinen Leaphaber, die innerhalb den Ports sich wiederfinden will und das wird dann halt von einem gehegt und gepflegt und das sind wir auch sehr dankbar dafür. Dann gibt es eine große Menge an Dokumentationen. Wir haben auch ein großes Textbuch, das nennt sich Design and Implementation FreeBSD Handbook, das ist von drei unserer etwas bekannteren Autoren oder FreeBSD Kernel Entwicklern geschrieben und die versuchen es auch mal anzubreiten, es ist auch ein recht dicker Welter und die haben dann immer so die Probleme, ja aber das Handbuch ist doch so toll, mir reicht doch alles. Also das Handbuch wird sehr gelobt, was wir haben, weil da wirklich alles drinsteht von der Installation, über Konfigurationen, über Netzwerkeinrichten, über Server betreiben und auch das ist aus einer Hand, was wir haben, sind diejenigen, die auch mehr oder weniger den Software entwickelt haben dazu. Also das ist wirklich aufeinander abgestimmt und man kann wirklich davon ausgehen, dass das, was da in diesem Handbuch drinsteht mit Vorsicht zu genießen. Nein, das ist alles wirklich von den Leuten aufeinander abgestimmt und es funktioniert auch so, wie es da drinsteht. Also ich kann das Handbuch eigentlich von vorne bis hinten durchlesen und weiß dann hinterher relativ viel Bescheid. Es ist nicht nur eine reine How-to-Sammlung, sondern die haben eine Historie. Die haben teilweise einen Entwicklungsstand, den sie heute haben. Und es ist auch interessant, wenn man sich mit Unix beschäftigt, beschäftigt man sich auch gleichzeitig mit Computer-Historie und dadurch merkt man auch, warum manche Dinge so sind, wie sie nun mal heute sind. Zum Gut, wie zum Schlechten und das versuchen wir auch in diesem Handbuch ein bisschen wieder zu spiegeln. Dann haben wir der FAQ-Man-Pages natürlich, also das ist alles vorhanden, das ist alles auch übersetzt. Also die Japaner möchten dann doch gerne japanische Man-Pages haben und keine Englischen. Da gibt es dann doch immer ein paar landespezifische Besonderheiten. Ich kann sagen, ich bin selber in diesem deutschen Handbuch beteiligt, das ist recht aktuell und man kann da auch gerne mal die deutsche Handbuchseite lesen, wenn man da vielleicht im Englischen nicht so mächtig ist. Das könnt ihr gerne auch in Deutsch bekommen. Es gibt die unternehmensfreundliche Befehlens, die besagt, dass auch gerne Entwicklungen geheim gehalten werden können. Also wir sind da nicht raus, dass die Firmen sozusagen die bestimmte Features entwickeln und die gerne im Unternehmensbereich haben möchten und die nicht rausgeben wollen, weil es deren Secret Source ist, dass die unbedingt wieder unter die in die Freiheit gegeben werden müssen. Das ist ein bisschen immer Diskussionspotenzial, das weiß ich, aber für viele Firmen ist es einfacher zu sagen, ja, wir geben unsere Appliance mit BSD Software, weil wir da nicht so gebunden sind, bestimmte Teile, die wir selbst entwickelt haben, wieder zurückzugeben. Natürlich gibt es viel Software, die zurückgeliefert wird, auch von großen Firmen, die dann sagen, ja, es ist uns lieber, wenn ihr das selber weiterentwickelt, wir haben unsere Features, die wir haben wollen. Dazu komme ich dann gleich nochmal und geben uns dann auch die Möglichkeit, diese Features, die nicht sozusagen nur der Firma helfen, sondern auch der Allgemeinheit gültig sind, die ist eigentlich für jeden hilfreich und nicht nur für die Firma, dann kann es an der Stelle wieder von uns weiterentwickelt werden. Wir haben eine sehr gute Integration von DeTrace und OpenZFS, das hat einige Zeit gedauert, aber mittlerweile sind wir sehr stolz drauf, weil das eben Tools sind, die, wie gesagt, wieder eigene Talks hätten sein können. Vorgestern gab es ein Talk zu OpenZFS, eine Replikationslösung, wir haben vorhin mit dem Maintainer unterhalten die Firma Boden an der Stelle. Da können wir uns gerne weiterentwickeln. Also OpenZFS ist so das Killerfeature für uns mittlerweile, weil viele Leute halt von der Oracle-Schiene nicht mehr so begeistert sind, so wie die ihre Systeme fahren und wir haben relativ große Abwanderung von alten Solaris-Admin, die hat gesagt, oh, bei euch läuft es sogar relativ gut, dieses OpenZFS und die entwickeln natürlich auch mit weiter. Da habe ich nochmal eine eigene Folie dazu, also da ist sehr viel Integration von Leuten, die vorher nicht so auf dem Bildschirm hatten, die kommen einfach zu uns und sagen, wir mögen das Detrace, wir wollen das OpenZFS nicht missen und ihr habt es und das ist unser neues System. Wir haben auch eine komplette Userland und Kernelfrei, nein, wir können unser komplettes Userland, also die ganzen Userland Utilities, die man so hat, und unseren Kernel komplett ohne GCC bauen. Das hat einige Jahre gedauert, aber wir können mittlerweile alles nicht auf allen Architekturen, muss man immer dazusagen, aber auf 32 und 64 Bit Intel und AMD brauchen wir keinen GCC mehr. Da haben wir eigene Tools mittlerweile bzw. sehr viel aus diesem LLWM und Clang-Projekt integriert, also den Debugger und all diese Compiler, die damit enthalten sind. Das hat sehr viel Zeit und Entwickleraufwand gekostet, aber wir sind dabei, uns demnächst GCC oder diese ganze GNU Compiler Toolchain herauszuwerfen aus unserem System. Das hat teilweise historische Gründe, teilweise sind wir da auch ein bisschen dran gewesen, weil wir auch nicht die neueste Version des GCCs importieren können. Natürlich haben wir es in den Ports für Leute, die das haben wollen, können wir das gerne nachdenken, aber ein Basisystem ist eben der Clang dafür verantwortlich, das System zu bauen. Dann haben wir eine schöne Emulationsschicht, das heißt, wenn jemand eine Linux Binary gerne weiterverwenden möchte, kann er das bei uns gerne tun, die müssen nicht neu kompiliert werden oder sonst wie ausgestattet werden, sondern die können eins zu eins durch diese Binarys verwendet werden. Das heißt, wir übersetzen mehr oder weniger das System Calls, die da passieren. Und wenn sozusagen ein System Call unter Linux heißt, ich weiß jetzt nicht genau, wie es ist, sagen wir mal, der nimmt drei Parameter an, vielleicht Quelle, Ziel und irgendwelche Parameter, dann lautet der BSD vielleicht nicht Quelle, Ziel, Parameter, sondern Ziel, Quelle, Parameter, dann tauschen wir einfach die beiden Swiss Calls aus durch so eine Emulationsschicht und ich habe mir sagen lassen, die sind natürlich auch noch offen als in der Linux. Das hängt aber an vielen Faktoren. Das ist auch kein allgemeingültiger Aussage. Das muss man immer von Mal zu Mal unterscheiden. Aber es ist möglich, wenn man bestimmte Software lieb gewonnen hat, die es in der FreeBSD nicht gibt, dann kann man die gerne von Linux übernehmen und durch den Linux Solator laufen lassen. Dann haben wir natürlich viele andere Sachen, die wir im Projekt natürlich auch anbieten, um unsere Community und Entwickler zusammenzuhalten. Also vom Wiki übers Forum gibt es auch wieder sehr viele Fragen und Baxilla haben wir mittlerweile Gott sei Dank Fabrikator ist vielleicht nicht so bekannt, es ist ein Code Review Tool. Also wir sind mittlerweile sehr stark mit Code Reviews unterwegs. Das heißt, wenn jemand einen neuen Entwicklung oder neuen Patch reinbringt, dann wird er erstmal durch den Fabrikator an andere oder an die Unterprojekte, zum Beispiel wenn ich jetzt ein neues Subsystem im Kernel einbaute, dann wird das auf jeden Fall in Fabrikator eingestellt und dann können Leute dazu Kommentare angeben, zu bestimmten Codezeilen und im Video Zyklus gibt es sehr viele Kommentare, auch gute Kommentare, also da wird das nicht der Code total niedergemacht, manchmal auch, aber es sind sehr viele konstruktive Kritikpunkte drin. Und hinterher, man merkt die Codequalität, die dann hinterher committed wird, die ist einfach viel größer, weil 3, 4, 5 Augen auf jeden Fall kommentarisch abgegeben haben und Verbesserungsvorschläge und dann merken wir halt, natürlich habe man diese eine Sache nicht gedacht oder der hat natürlich nochmal einen anderen Blickwinkel und mehr Leute, bevor der Patch überhaupt committed wird, Feedback einpflegen. Das ist auf jeden Fall eine große Hilfe und wir haben gemerkt, dass es zwar ein bisschen langsamer ist dadurch, aber das, was committed wird, hat auf jeden Fall eine wesentlich höhere Qualität insgesamt. Jenkins, wir haben eine große Entwicklungsumgebung mittlerweile, wir haben noch verschiedene Architekturen und die müssen natürlich auch alle getestet werden und natürlich auch schaut, dass jedes Feature, das da gerade committed wird, nicht nur baut, sondern auch entsprechend neue Features auf allen Plattformen funktionieren, weil die meisten Entwickler haben halt nicht alle Architekturen dieser Welt zu Hause stehen und durch das Fabrikator oder das Jenkins wird das einfach gemacht, auf verschiedene Architekturen zu testen, die man vielleicht nicht gerade zu Hause im Serverschränkchen hat. Natürlich geht viele auch über Mailing-Listen-Diskussionen und IRC ist natürlich auch die Hauptquelle für Diskussion in real time. So, das ist die eigene Folie von ZFS, also ich habe schon gesagt, wir haben Open ZFS bei uns integriert. Es gibt mittlerweile zwei Versionen von ZFS, das Open ZFS und das proprietäre Solaris ZFS, was Oracle nicht zurückhält, Sachen wieder zurück zu portieren und das geschlossene Solaris, also die LZ4-Implementierung, die ist mittlerweile aus Open ZFS wieder in Open Solaris ironischerweise zurückgewandert. Also die Hauptentwicklung, wenn man sich heute mit ZFS beschäftigt, sollte man den Open ZFS machen und versuchen bei Oracle irgendwo anzuklopfen, da wird man nichts mehr bekommen. Die CDDL und der Open ZFS steht und die BSD-Lizenz sind sehr kompatibel, deswegen gibt es keine rechtlichen Probleme. Wenn man so in den letzten halben Jahren so gelesen hat, Ubuntu hat so ein bisschen Schwierigkeiten, die würden es gerne benutzen, aber kriegen so ein bisschen Probleme von der Software-Conservaty, oder wie heißen die? Freedom Software, so für Freedom-Conservaty. Die sehen da rechtlich so ein bisschen Incompatibilitäten zwischen der GPL-Lizenz und der CDDL. Das gibt es bei uns einfach nicht, das haben wir an der Stelle nicht. Deswegen sind vielleicht viele Leute eher gewillt, ein FreeNAS zu betreiben zu Hause oder für die Firma, weil sie dann auch nicht plötzlich Angst haben müssen, dass der Rechtsanwalt von irgendeiner großen Firma plötzlich mal vor der Tür steht, unser Hiddles selber so nicht benutzen. Und wir sind natürlich auch nicht nur Nutzer, sondern auch eben Weiterentwickler von der CDD und dem Open-CFS-Brief. Wir sind sehr stark mit denen verbandelt. Wir sind auf deren Entwickler treffen. Wir steuern nicht nur Patches bei, erstens um es auch leistungsfähiger zu machen, sondern auch eben Produktreifer zu machen. Und das ist an vielen Stellen ein wunderbares Austauschen, also eine bessere Community übergreifende Arbeit, kann man sich eigentlich gar nicht vorstellen. Boot Environments ist das bekannt. Dann gehe ich nämlich darüber weg. Das ist eine Sache, die auch aus einem Solaris zurückkommt. Ich kann quasi, wenn ich ein System Update vor habe oder eine größere Software Installation ein Upgrade ansteht, dann erstelle ich woher ein Boot Environment, dann spiele ich das Update ein. Und wie das halt immer so ist, es klappt halt irgendwas nicht. Irgendwas ist zerschossen, ich kann nicht mehr auf meine Binarys zugreifen oder Pam ist kaputt, ich kann mich nicht mehr anmelden und dann kann ich durch diese Boot Environments gewährleisten, mir ein altes Boot Environment lade und das hat genau diesen Zustand, bevor dieses System Upgrade eingespielt wurde. Das heißt, nimmt diesen ganzen Upgrade-Zyklen so ein bisschen die Gefahr, weil ich immer eine Möglichkeit habe, zurückzuspringen zu einem vorherigen Stand. Das hat den Vorteil, dass ich relativ gut schlafen mittlerweile als Systematministrator. Auf der anderen Seite kann man auch Entwicklung damit treiben. Ich kann ja mal so ein neues Kernelfeature ausprobieren, mache mir vorhin ein Boot Environment, lade dieses Boot Environment, wenn es schief geht, wunderbar, spring ich zurück auf meine Hauptbenutzeroberfläche, also durch ein anderes Boot Environment oder ich bringe das in diesem Boot Environment sozusagen zur Produktionsreife und kann das dann auch wieder committen und setze dann das Boot Environment wieder zurück um wieder einen frischen Entwicklungsrechner zu haben. Also das sind unheimlich tolle Umgebungen, die man sich damit aufbauen kann und das ist einfach durch ZFS und die Snapshots einfach sehr schön geregelt und dieses Boot Environment quasi in den Loader mit ein und kann dann während dem Boot auch schon auswählen, was soll ich denn jetzt gerade starten. Dann gibt es immer so schöne Sachen, wenn man sozusagen mit dem Laptop unterwegs ist und der geht verloren, sollte man den natürlich verschlüsselt haben und dann gibt es halt immer so eine blöde Sache, man braucht immer so eine unverschlüsselte Partition, weil halt dieser Schlüssel drin liegt. Das war vorher so, mittlerweile haben wir das so gelöst, dass das Teil des Boot Loaders ist. Das heißt, sobald das System hochfährt, und die Passways liegt nicht auf einem unverschlüsselten Mini-Partitions-Ding, dann ist es auch in dieses Geli Encrypted Boot eingebaut. Das haben wir auch durch längere Entwicklungsarbeit hingekriegt und da sind wir auch recht stolzere, weil es sowohl für Bios-Partitionen geht, als auch für E-Fi-Systeme mittlerweile funktioniert. Also das sind alles schöne Entwicklungen und wir sind da auch weiterhin daran interessiert, Open-ZFS weiter zu unterstützen, weil es halt eben auch ein bisschen steckenfährt geworden ist. Die FSTub ist mittlerweile auf manchen Systemen sehr leer. Man muss immer noch anlegen, die ist zwar empty, aber der Rest macht alles TFS. Also neue Partitionen reinhängen und all diese schönen Dinge. Was brauche ich eine FSTub noch? Hier steht nichts mehr drin. So, FreeBased ist auch sehr groß im Virtualisierungsumfeld. Also in den Parts kann man sich verschiedene Virtualisierer installieren und da ist so ziemlich alles drin, was man kennt und liebt. In der Virtualbox über Xen wird demnächst auch ein Handbuchkapitel dazu entstehen. Vielleicht noch dieses Wochenende hint hint. Und dann geht es natürlich Container. Wir hören immer so ein bisschen, Container sind mit dem Docker groß geworden. Das stimmt leider nicht, weil wir hatten Jails, die das gleiche machen, diese Prozessisolation seit dem Jahr 2000. Und wir haben uns immer so ein bisschen gefragt, wo denn der Hype herkommt, weil man hätte das seit 17 Jahren einsetzen können. Und das, was da ausentwickelt geworden ist. Also, wir sind da eigentlich schon sehr lange dabei. Jails heißt, ich lasse irgendeine Anwendung laufen, vielleicht auf einem Website oder so. Und will sicher sein, dass wenn da eingebrochen wird oder das irgendwie geroutet wird, dass dann trotzdem der Einbrecher nicht mein Hauptsystem übernimmt, sondern dass der eben nur in diese einzelne Jail geworfen wird und da nichts machen kann, weil da nicht viel installiert ist oder überhaupt keine Rechte vorhanden sind. Wir haben ein recht gutes Verhältnis auch zu Microsoft, und da kann auch FreeBSD darin betrieben werden. Und wir haben sogar einen eigenen kleinen Hypervisor, der mittlerweile sogar sehr mächtig ist, nennt sich B-Hive, der BSD Hypervisor. Und es gibt auch einen Port für Mac OS X, der nennt sich dann X-Hive. Und den kann man einfach mal betreiben, wenn man nicht mehr so diese großen Virtualisierungslösungen wie VirtualBox oder so betreiben will, dann kann man sich so einen kleinen B-Hive installieren und hat man da auch so eine kleine virtuelle Maschine auf seinem Mac OS oder auf seinem FreeBSD. So, dann sind wir natürlich auch sehr groß im Netzwerkbereich. Das hängt natürlich auch mal davon ab, wie so die Entwickler, was die so für Kerngebiete haben. Aber wir haben mittlerweile einen sehr, sehr guten TCP-IP-Stack und wir sind auch mit eines der ersten Systeme gewesen, dass ein IPv6-Only-Stack hat. Das heißt, es gab von ein paar Jahren so ein IPv6-Day, wo dann die Leute wirklich mal jetzt mal Butterbeide-Fische kommt mal auf die IPv6-Schiene und haben gesagt, ja, wir machen mal eine Distribution, wenn man mal IPv6 spricht und keine IPv4. Das hatte den schönen Effekt, dass wir gemerkt haben, dass manche Sachen überhaupt nicht mit IPv6 direkt funktionieren, zum Beispiel manche Key-Server, PGP. Da gibt es keinen, der mit TCP IPv6 spricht. Schön. Weiß nicht, wie es mittlerweile ist, aber an so Stellen kann man dann merken, wie weit die IPv6-Implementierung dann fortgeschritten ist bei manchen Providern. Und das ist auf jeden Fall mal interessant zu sehen, dass man die IPv6-Systeme hat. Dann sind wir in der Forschungsplattform für modularer TCP congestion control algorithms. Es ist teilweise Universitätsgesteuert, die halt dann ihre Erforschungsergebnisse uns beitragen. Man kann zum Beispiel in Netzwerken, wo sehr viel los ist und wo auch teilweise sehr viel Verstopfung schon stattfindet. Die kann an der Stelle durch verschiedene Algorithmen, die man dem TCP-Stack in einem Modul, dann kann man zum Beispiel sorgen, dass der Traffic sich dann ein bisschen mehr beruhigt, auch gerade bei Konferenzen wie hier, wo wahrscheinlich sehr viel los ist. Dann haben wir ein System, das nennt sich Netmap. Das ist ein High Performance Direct to Hardware Packet I.O. Und zwar ist es so, dass wenn man heutzutage den ganzen Weg von I.O. vom Kernel hoch durch sämtliche Schichten, die da so durchlaufen werden, dass man da unheimlich viele Schichten durchlaufen muss und das natürlich Zeit kostet und erstens Overhead erzeugt und durch dieses Netmap ist es quasi gewährleistend, dass man nicht diese ganzen Schichten durch den Kernel durchlaufen muss, sondern man direkt mit der Hardware die Packets ausschicken kann. Also das ist eine sehr, sehr tolle Entwicklung und wir können da viele Leute auch glücklich machen, die wirklich im High Performance Netzwerkbereich da arbeiten müssen auch teilweise. Das ist aktiviert, das ist auch mittlerweile wird wahrscheinlich demnächst auch in die Stable Distributionen reinwandern und wir haben eine, das ist schon ein paar Jahre alt, das könnte letztes Jahr gewesen sein, eine Send File Implementierung. Hier unten ist der Block Entry, wenn man schon Least Engine X und Netflix mit FreeBSD, das heißt, wir haben ein Send File, das in beiden Firmen benötigt wird und die zwei Firmen haben gesagt, ja, wir arbeiten an der Stelle zusammen, weil Netflix halt Stoßzeiten, wenn jetzt nächste Woche hier Frank Underwood wieder losgeht, dann wird es sicher bei Netflix die Möglichkeit geben, viele Pakete über das Netz zu leisten, in dem eben Engine X und an der Stelle Send File Implementierung zusammengefunden haben und wir, so ein Bild, das ist jetzt aus einer Konferenz, sie ist nicht von uns, sondern Netflix hat gesagt, das ist aktuell unsere Stand der Dinge, eine einzige Maschine bei denen kann bis zu 89 Gigabits pro Sekunde über die Leitung jagen, bei einer 15% CPU Eidl und das ist ein hervorragendes Ergebnis, da umsteht irgendwo die URL oder wie auch immer der Hostname da heißt, aber das ist ein hervorragendes Ergebnis und da ist man recht stolz und das ist natürlich nicht nur Netflix-Entwicklung, sondern auch teilweise Entwicklung von uns und viele Sachen sind dann wieder zurückgewandert in unsere Entwicklungsbäume. Jetzt aber mal so ein bisschen welche Firmen nutzen denn FreeBSD, das sind ein paar Bekannte dabei, manche vielleicht nicht so bekannt, WhatsApp zum Beispiel, naja das ist auf jeden Fall bekannt, aber das ist in der FreeBSD läuft, das ist vielleicht nicht so bekannt, Jan Com, der das entwickelt hat und dann zu Facebook gegangen ist, der hat das damals mit FreeBSD auch als so klassisches Studentenprojekt entwickelt und das war deren Steckenpferd und damit sind sie quasi groß geworden oder wenn man heute so die PlayStations anguckt, die benutzen auch also die PlayStation 3 auf jeden Fall und die PlayStation 4 auch und wir haben auch schon viele Sachen in der Nintendo Switch gesehen, da sind wir noch nicht so ganz sicher wie weit das die Integration getrieben haben, aber da finden wir auch teilweise Kommentare und PSD-Lizenz-Hinweise in den Credits, wenn wir mal so was angucken, ich meine es gibt nichts langweiligeres als in der neuen Spielkonsole, gleich mal die Credits zu gehen, aber man guckt ja gerne mal rein und man findet sich dann wieder oder manche Entwicklernamen sind dann dafür ewig, das ist schon eine interessante Sache. Die Community, also es war jetzt mehr so ein Überblick, was machen wir so im technischen Bereich und jetzt geht es wirklich so um die Community-Arbeit. Hier ist so ein Überblick wie ist denn das Projekt überhaupt aufgebaut, wie arbeiten wir so tagtäglich, also es gibt verschiedene Teams. Zentral dazu ist das Core Team. Das Core Team ist so ein bisschen das Steering Committee, das das Ganze so ein bisschen in den Händen hält und dann gibt es natürlich die Committer die so den Hauptteil der Beitragenden, also das sind diejenigen, die wirklich machen können, die sind unterteilt in Source Ports und Doc, also Sources und die ganzen Kernelquellen und die Libraries und alles was dazu gehört. Parts habe ich vorhin schon angekündigt, dass da relativ viele Leute unterwegs sind und das sind quasi die Software Portieren auf unserer Systeme. Dann die Documentation Leute, das ist ein bisschen weniger, nicht zu knapp wird auch viel gemacht am Handbuch und an den Man Pages und natürlich auch Übersetzer sind dabei und all diese Leute, die wirklich dafür dass es ein System gibt, dass es zwar benutzbar ist, sondern dass man auch eine Doku hat, die man lesen kann und die verständlich ist. Dann gibt es viele, die nur ab und zu mal beitragen, die einfach ein Patch schicken, die einfach mal sagen, hier könnt ihr vielleicht diese Software hier verwenden, habt ihr da Interesse dran oder wollte diesen Patch haben, der löst diese Edge Cases sozusagen. Also da haben wir auch immer sehr viele Sachen, die einfach mal auftauchen und dann uns einfach zur Verfügung war und es gibt natürlich auch manche, die das Glück haben von der Firma bezahlt zu werden und da ein Software in Blicklungen zu machen, die uns direkt zur Güte kommt. Also Treiber und solche Sachen für Wifi Karten und Grafik, das ist alles darauf aufbaut. Und natürlich eine große Community, die wahrscheinlich wesentlich größer ist, als man das hier erdenken könnte, die Anwender und die Benutzer, viele auch sehr glücklich und melden sich niemals. Wir hatten einen kleinen FreeBSD-Tisch und da kamen so Leute her, ja toll, dass ihr da mal da seid, ich benutze euch schon 14 Jahre und das Ding läuft halt bei uns im Server-Räumchen und muss nie irgendwie da was machen, weil das läuft einfach vor sich hin. Dann besteht das FreeBSD Core Team, das geht jetzt ein bisschen darum, wie ist das Projekt aufgebaut, das Core Team ist quasi ein gewähltes Team, das heißt, alle zwei Jahre veranstalten wir eine Wahl, irgendwie so Demokratie und so, haben wir dann schon irgendwie anders verstanden, als nur jemanden an der Spitze zu haben, der allen vorgibt, wie das Projekt zu laufen hat. Das heißt, wenn mir die Nase von dem jeweiligen nicht gefällt, dann kann ich den nach zwei Jahren austauschen oder mich selber zur Wahl stellen und da haben wir bestimmte Regeln etabliert, um das zu machen. Das habe ich hier so ein bisschen versucht, grafisch darzustellen, sie sind mir vielleicht nicht so gelungen. Man hat quasi, wenn es wieder Zeit wird, alle zwei Jahre zu wählen, dann wählt das Core Team erstmal, wenn er das zweite Teil nimmt und dann öffnet er das zwei Jahre alte Wahlsystem, weil mittlerweile macht niemand was mit diesem Wahlsystem, er muss ja dann wieder gucken, ob das wieder läuft und alles wieder am Laufen ist und dann verteilt er einfach Zugangsdaten, dann kriegt jeder Kommitter quasi eine Personalität der E-Mail mit einem Passwort drin und dann gibt es bestimmte Kommitter, die sich halt dann zur Verfügung stellen, manchmal sind das wiederkehrende Leute aus dem bestehenden Core Team, dann ist auch wieder neue Leute dabei geworden ist oder die Interessen woanders hingewandert sind und dann geht quasi so eine vierwöchige Wahlperiode los, damit auch wirklich die Leute, die im Urlaub Zeit haben, dazu wählen und dann kann jeder quasi bis zu neuen Stimmen vergeben an die Leute, die sich eben aufgestellt haben und irgendwann steht auch das Ergebnis fest und dann werden sozusagen die Top 9 Leute, die da gewählt wurden, dann auch angekündigt und das Ergebnis verkündet und innerhalb von ungefähr zwei Wochen bis dann so eine Übergabe stattgefunden hat das Core Team, neues Core Team ist das neue Core Team dann im Amt und dann können die sozusagen die neuen Entscheidungen treffen. Jetzt gehe ich noch so ein bisschen darauf ein, wie funktioniert so das ganze Mentoring im FreeBSD-System, also wie kommt man in das Projekt überhaupt rein, weil wir festgestellt haben, die Leute haben manchmal ein bisschen Schwierigkeiten mit diesem ganzen großen, gewachsenen Projekt so zu ran zu kommen, deswegen haben wir ein Mentoring-Prozess, das heißt jemand wird nicht komplett ins kalte Wasser der Projekt dabei ist und der führt einem so ein bisschen durch die ersten paar unsicheren Schritte die ersten Commits machen und dann so ein bisschen schauen, wie kommt man mit seinen eigenen Codebeiträgen voran. Das heißt, wir identifizieren irgendwie auf irgendeine Art und Weise Leute, die vielleicht für das Projekt von Vorteilen wären, wenn die selber ihre Patchen einstellen könnten und dann nehmen wir Kontakt mit den Damen und sagen, hier ist es nicht interesse, dass du deine Patches, die du uns schon seit Jahren schickst, vielleicht selber commitst in Zukunft, weil du dich machen und wenn du es selber machst, haben wir sozusagen den Mittelsmann entfernt und dann sagen die meisten, ja, weil es halt Interesse ist und die Leute auch einen FreeBSD.org E-Mail-Adresse haben, wenn es nur das wäre, die kriegen ja auch quasi Zug auf unsere Infrastruktur und auf unsere Test- und Bildsysteme, je nachdem, was sie halt dann da machen müssen und dann wird dieses quasi, dieses Gesuch quasi eingereicht bei den jeweiligen Teams und beim Einverständnis kann man quasi mit diesem Mentoring beginnen, das heißt, man nimmt jemand wirklich an die Hand durch die ersten paar Schritte, wie mache ich mal einen ersten Commit, welche Systeme brauche ich, um bestimmte Architektur zu bauen oder wie baue ich das Handbuch neu und all diese Sachen, das wissen die Leute ja gar nicht teilweise von extern. Deswegen haben wir dieses Mentoring-Konzept, dass es wirklich jemanden gibt, der einem Bescheid gibt und der auch, sagen wir mal, wenn man Fehler macht, als Anfänger ist man da ja wirklich auch nicht vorgefeilt, dass der dann sozusagen die Breche springt und sagt, ja, das hat der vielleicht falsch gemacht, aber regt euch mal ab, ich kriege das hin, beim nächsten Mal macht er den Fehler einfach nicht mehr und dann hat man quasi auch die Sicherheit, als Neuling nicht sofort da, jeder gebrüllt zu werden. Und irgendwann ist diese Mentoring-Fase einfach vorbei, weil die Leute dann halt selbstsicher sind und das selbst so durchmachen und der Mentor dann einfach auch noch abnicken muss und dann können die Leute selber ihre eigenen Mentoren oder Mentis nehmen. Also es ist wirklich so ein Schneeballsystem, dass die Leute dann wirklich selber anfangen auch das Wissen, was sie von ihrem Mentor bekommen haben und auch an andere weiterzugeben. Jetzt gehe ich noch so ein bisschen auf die Foundation ein. Die Foundation ist quasi so ein bisschen parallel zu dem Core Team. Natürlich haben wir überlappende Mitglieder, also ich bin sowohl im Core Team als auch in der Foundation tätig, aber die sind eigentlich nicht diejenigen, die das Projekt mehr oder weniger steuern, sondern das ist weiterhin im Core Team. Die Foundation ist dazu da, das Projekt zu unterstützen. Das heißt, durch bestimmte Spenden können bestimmte Bildmaschinen angeschafft werden oder das sind so einfache Sachen, wie wem gehört denn eigentlich die Webseite freebsd.org. Da muss ja irgendeine rechtliche Person dahinter stehen, weil wenn da mal was passiert muss halt irgendjemand den Kopf für hinhalten. Das ist eigentlich ein Projekt oder ein Problem, das jedes Projekt hat. Wer ist denn am Schluss derjenige, der dann mal so rechtliche Sachen unter sich vereint? Und das haben wir halt an diese Foundation gegeben, weil die nicht nur dann auch personell das unterstützen können, sondern sich dann auch eben mal rechtlich beraten lassen können und auch für das Projekt dann bestimmte Verträge abschließen können um die bsd zu schützen oder gegen. Es gibt manche Pizzerien, die nichts Blöderes finden als diesen Beastie-Damen für ihre, keine Ahnung, Chalapeno-Pizza zu verwenden, weil die besonders feurig ist. Und dann gibt es halt bestimmte Leute, die nichts Blöderes finden, als halt diesen Demon zu verwenden und auf ihre Speisekarten, sogar auf ihren Laden obendrauf zu klaren. Und dann müssen wir halt an unser Markenzeichen auch irgendwo schützen. Und das kann nicht irgendeinen Entwickler machen, sondern da sollten schon Leute, die sich auch ein bisschen rechtlichen Dingen auskennen. Also es sind manchmal teilweise abstruse Sachen. Wir kriegen dann auch manchmal verrückte Anfragen, so nach dem Motto, ja, es gibt doch so coole neue Domains jetzt und da gibt's doch jetzt hier .foundation. Ich hab mal freebsd.foundation für euch reserviert. Vielen Dank, kostet euch nur 5.000 US-Dollar. Nee, wollen wir nicht. Kannste behalten, weil, haben wir den nicht einen Auftrag zugegeben. Also man kriegt teilweise abstruse Anfragen, weil halt die Leute merken, dass irgendwie Geld bei einer Stiftung, da könnte man vielleicht mal abzwacken. Aber da sind wir dann schon gefeit davor. Hier ist noch so ein bisschen die Struktur. Also wir haben Executive Director oder die Executive Director, die mittlerweile so das Tagesgeschäft führt. Das heißt, wir haben auch ein Büro mittlerweile in Boulder, Colorado und die macht so das tagtägliche. Die bereitet auch die Board Meetings vor und wir sind eigentlich alle ehrenamtlich da tätig. Nur diese Executive Director sind quasi bezahlt. Wir haben auch mittlerweile Angestellte, weil wir halt auch ein bisschen große dankbare Spenden bekommen haben und für die wir dann sozusagen auch in bestimmte Entwicklungsarbeit leisten können. Also wir können bestimmte Features entwickeln lassen. Wir können Marketing Director bezahlen, um zum Beispiel auch Veranstaltungen mit Flyern zu versorgen oder mit Stickern und sonstigen Goodies. Wir unterstützen Entwickler von FreeBSD durch Travelgrants wenn die auf eine Konferenz wollen. Wir werden dann finanziell unterstützt wenn die vielleicht nicht so, sagen wir mal das Hotel vielleicht nicht zahlen können oder der Flug zu teuer ist, dann beteiligen wir uns da, wenn wir das entsprechend verargumentieren können. Wir können NDAs aushandeln. Wir haben zum Beispiel jetzt eine große Partnerschaft mit Intel geschaffen. Wir haben jetzt gerade letzte Woche jemanden eingestellt, der sozusagen das Bindeglied zwischen Intel und der Foundation ist und der quasi so diese Partnerschaft begleiten soll als Person, der wirklich nur für diese Sache beschäftigt. Bezahlt Entwicklungsprojekte hatte ich schon erwähnt und dann gibt es natürlich auch rechtliche Unterstützung und Beratung wenn jetzt ein Entwickler ein neues Datasheet bekommen von irgendeiner Firma dann ist das natürlich immer und der NDA und natürlich darf der diesen Treiber entwickeln, nur wenn er vorher was unterschreibt. Das sozusagen handeln wir mit den Firmen aus und dann müssen sich die Entwickler nicht mit diesen ganzen rechtlichen Sachen befassen sondern das können wir quasi für die Entwickler aus. Also es gibt ein zweimonatliches FreeBSD Journal das erscheint. Das kostet auch ein bisschen was bzw mittlerweile sind die älteren Editionen auch frei verfügbar. Die kann man unter der URL da oben downloaden entweder im Browser oder eben auf dem entsprechenden Store den man so verwendet auf seinem geliebten Gerät. Und das sind Artikel drin von Entwicklern aber auch von Firmen die FreeBSD einsetzen auch manchmal ein how to dann größeres Setup wenn man wirklich das ist eigentlich immer sehr praktische, industrielle Tipps dabei und wird auch immer sehr gern gelesen. Also wir haben mittlerweile, da haben wir eigentlich jemanden an der Hand der diese ganze Magazinenentwicklung macht. Also wir müssen nicht selber da so ein Magazin erstellen mit dem Layout und so. Das machen die alles für uns und die haben uns gesagt das Wichtigste beim Magazin ist eigentlich die Subscription Rate. Das heißt wie viele Leute abonnieren das denn und wie viele haben das denn quasi gesagt. Das ist unglaublich wie viele Leute dieses Journal abonnieren. Das ist eigentlich in der Magazinwelt ungewöhnlich dass so viele Leute dieses Journal so abonniert haben in dieser Mengen oder Größenordnung. Also da sind wir eigentlich auch sehr ein bisschen stolz drauf. Das ist ein bisschen auch Community getrieben und wir müssen die Leute finden, den Nachjagen kann man Artikel schreiben aber eigentlich ist das immer sehr schön weil dann auch so ein bisschen industrielles bisschen da drin verankert ist. Dann war mal so auf einer Zertifizierung haben, dass ich meine Systemkenntnisse mit diesem System auch ausstellen kann und das ist mittlerweile auch gelungen. Wir haben eine Zertifizierungsgruppe gegründet als Non-Profit und die halt quasi diesen Zertifizierungsstandard aufrecht. Das heißt wir kümmern uns nicht nur darum dass, naja wie man das immer so kennt, wenn man nicht immer unsicher ist, ist immer die Frage C richtig von 4 Aufgaben. Da wird auch darauf geachtet, dass es durchgemischt ist und dass nicht jeder die gleichen Fragen bekommt und all diese Hand und Fuß hat. Und es gibt dann bei Events, könnte man hier eigentlich auch machen, dass es quasi ein Proctor gibt, der dann mal eineinhalb Stunden in so einem Raum, so eine Prüfung, die auf dem Papier basiert ist, durchführt und dann einfach die Leute bei Aufsicht und hinterher diese Bögen einscanned und dann das Ergebnis quasi den Leuten zu bitten. Dann hat man ein schönes Zertifikat am Schluss. Es gibt auch eine Professional Examination die am PC basiert ist. Das ist natürlich ein bisschen mehr Setupaufwand mit verbunden, aber wir können dadurch auch bestimmte Zielsysteme, also die Certification, die BSD Associate Certification, geht über die drei großen FreeBSD-Systeme und die BSD Professional geht quasi gezielt auf einzelne Systeme, also ich kann BSD Professional sein im OpenBSD, im FreeBSD oder NetBSD und das kann man sich dann individuell zusammenstellen. Dann gibt es eine ganze Menge Konferenzen und Veranstaltungen. Wir haben eigentlich drei große FreeBSD-spezifische oder BSD im generellen Veranstaltungen. Die war jetzt wieder in Tokio, in Japan ein sehr tolles Land, gerade im Technologiebereich, sollte man auf jeden Fall mal mitgemacht haben. BSD Can steigt nächste Woche wieder in den Flieger und BSD Con weckelt immer so, jedes Land einmal im Jahr gibt es eine wechselnde Konferenz. Dieses Jahr sind in Paris, das ist sehr populär jetzt schon und da ist jetzt gerade der Call for PaperStone gegangen und der Schedule veröffentlicht worden, also wer da vielleicht ein Konferenz mal reinzuschnuppern in die BSD Community, der kann da sich gerne mal nach umschauen. Dann gibt es verschiedene Open Source Veranstaltungen in USA, die sind natürlich da sehr groß in Europa auch. Ich versuche auch möglichst viele von diesen zu gehen in Europa, weil ich so ein bisschen Europa unter meiner Fuchtel habe, aber ich bin auch nur eine einzige Person und ich versuche immer andere Leute noch mit zu bewegen, entweder auf andere Veranstaltungen zu gehen, das sieht zum Beispiel komplett neu für mich auch und ist aber genau eigentlich die Zielgruppe, dass mehr Leute teilnehmen, dass die Leute ihre Skills da einbringen und wenn es nur ein kleiner Patch ist, der da eingepflegt wird oder aus dem kleinen Patch kann sehr viel werden. Also ich habe auch vor ein paar Jahren mit dem kleinen Patch angefangen und ich bin heute, ja, heute stehe ich hier und habe ein bisschen mehr zu tun als vor ein paar Jahren noch. Aber es ist eine unheimlich tolle Community, die Leute sind sehr hilfreich und aufgeschlossen und man wird nicht so gleich niedergemacht und man hat auch mal eine blöde Frage stellt, also für mich hat es sehr viel Zeit davon, dass man in der Community auch dann aufgehoben wird und das dann eigene Beitrag auch zählt. Dann habe ich ein, mittlerweile seit, woah, seit März glaube ich, wir haben ein Video Podcast, der nennt sich BSDnow.tv, den hat Alan Jude gegründet von Jupiter Broadcasting, wird er gehostet und da haben wir quasi so ein wöchentlicher News-Beitrag quasi, was denn so in der BSD-Welt passiert ist in dieser Woche und da gehen wir quasi so ein bisschen drüber, lesen das vor und sprechen das so ein bisschen, dann haben wir Interviews manchmal, wenn sich die Leute für bereit erklären und da gibt es große Feedbacks und Question-Abteilungen am Schluss, das heißt, die Leute schicken uns Fragen ein zu free BSD, zu anderen BSD-Systemen, zu ZFS auch ganz viel und dann beantworten die wir quasi live in der Show. Die findet man Mittwochabend, ist die Aufzeichnung, da seht ihr mich quasi in meinem Living Room quasi und Alan an seinem Rechner sitzen und nachdem wir die aufgezeichnet haben, ist die so Donnerstag, Nachmittag, Freitags morgens dann auch auf YouTube verfügbar. Also wer jetzt nicht genug von mir bekommen will, kann sich das jede Woche geben. Die meisten Leute gucken sich das auch gar nicht als Video an, sondern nehmen das immer nur so als Audio-Podcast und nehmen es quasi so für die lange Fahrt auf die Arbeit mit oder Freitags in den Urlaub oder wo auch immerhin das geht. Das ist so das Feedback, was wir bekommen haben. So nochmal zusammengefasst ist eine ganze Menge Holz, ich weiß es ist halt auch ein großes System. Wie gesagt, es ist ein komplettes Betriebssystem. Das ist das einzige, wenn ihr nichts mitnimmt, dann nehmt dieses mit. Es ist ein komplett vollständiges Betriebssystem. Aus einer Hand die gleichen Leute, die den Kernel schreiben, machen auch die Userland-Geschichten. Wir haben kein System D, haben wir nicht, brauchen wir nicht und haben vielleicht eine eigene Lösung dafür. Momentan benutzen wir das alte RCE-System. Funktioniert auch für das, was wir damit machen. rmrf-slash Funktioniert auch nicht mehr, haben wir mittlerweile abgeklemmt. Da kommt einfach eine Fehlermeldung und man kann dann andere Möglichkeiten finden, sein System zu ruinieren. Wir haben ganz eigene, sehr interessante Features, die auch im Handbuch dokumentiert sind. Eigentlich können wir uns jedem einen eigenen Trock geben und das gibt es auch auf den BSD-Konferenzen natürlich und da kann man sich gerne mal einlesen im Handbuch. Die Lizenz ermöglichte Integration von Code anderer Projekte, das heißt, wir haben bereits Patches, die wir haben, um irgendwelche Features oder Sachen zu fixen, die wieder upstream zu geben und so kommen wir eigentlich ganz gut mit den anderen Projekten aus und wir sind eigentlich immer so ein guter Network-Neighbour mit anderen Systemen im Netzwerk. Es ist auch aber noch als Forschungsplattform verwendet für viele Entwicklungsprojekte und natürlich bauen Leute ihre Produkte darauf auf, die Free Nurses dieser Welt oder die Desktop-Distribution, TrueOS zum Beispiel, also all das kann man gut als Basis für ein eigenes Entwicklungsprojekt nehmen. Man muss nichts uns bezahlen, wie gesagt, die Lizenz ist da sehr freigiebig und man kann einfach mal starten dieser Produktbasis. Wie gesagt, es gibt eine freundliche und offene Community, wir sind eigentlich sehr daran interessiert, viele Neulinger auch in das Projekt mit einzunehmen und die ein bisschen zu begleiten, nicht nur durch Dismentoring, sondern wir sehen halt auch, wir haben viele Altgedienten, die mittlerweile ihren Job so viele Jahre machen und auch gut machen, aber wir merken schon so langsam, da ist so ein bisschen verschleißt da oder die ist so, weil es niemanden gibt, der irgendwie nachguckt, deswegen haben wir mittlerweile so eine Geschichte da drin, die nennt sich eine Head-Term-Policy, das heißt, wenn man einen bestimmten Hut aufhat, zum Beispiel Postmaster, der sich um das Mail-System kümmert, die werden dann mit einem neuen verkuppelt, das heißt, die kriegen den an die Seite und der zeigt ihnen dann so ein bisschen was, wie das läuft und nach einer Zeit kann man sicher sein, dass der sozusagen derjenige, der den Hut aufhat, kann man den weitergeben an den nächsten und so verliert man nicht die Funktionalität dieses Mail-Systems und die Person, die das lange Betriebe hat, kann trotzdem dann mal in den wohlverliegenden Ruhestand oder sich mal eine andere Sache windmen. Das heißt, die Leute sind nicht auf eine bestimmte Funktionalität festgebannt, sondern die haben immer eine Möglichkeit auch mal wieder was anderes zu machen, weil der Worst-Case ist, die Leute brennen aus, machen dann nichts mehr, tauchen nicht mehr ein Projekt auf und dann liegt das System da nieder und keiner weiß, was der da zuletzt mit angestellt hat. Also das ist uns auch sehr wichtig, dass die Leute beim Projekt dabei bleiben, aber dass sie Spaß dabei haben und nicht dass die Leute da aufhören. Ansonsten kann ich nur einladen, das auszuprobieren, reinzuschnuppern, Fragen zu stellen, wir sind eigentlich alle recht freundlich und offen für Fragen und die können wir jetzt auch gerne stattfinden. Ja, danke für diesen super Vortrag, jawoll. So, dann haben wir jetzt natürlich die Zeit schön überschritten, aber das macht gar nichts für Fragen, haben wir noch Zeit, wer möchte? Also mich würde mal deine Erfahrung der sich entscheidet, jetzt dem Linux Projekt beizutreten, also dem Linux Kernel oder den FreeBSD Projekt. Legt es so bei den Leuten, die sich für das ein oder das andere entscheiden, eher an technischen Erwägungen oder legt es vielleicht eher am Mindset? Und falls es eher am Mindset liegt, was sind denn dann so die Unterschiede im Mindset? Das ist eine gute Frage, die kommt auch sehr häufig auf Konferenzen. Warum sollte ich jetzt gerade bei euch mitmachen? Ich kann nur jedem ganz herzlich legen, sich einfach mal in jede Community reinzuschnuppern, das heißt einfach mal auf den Mailing-Listen passiv mitzulesen, da muss man sich ja nicht gleich anmelden und einfach mal so gucken, wie sind so die Grundstimmungen, wir werden den Neulingen so behandelt und was passiert denn auch an technischer Diskussion, also wird da viel hin und her geredet und die Ergebnisse niedergemacht, die der andere vielleicht vorschlägt oder wird da so ein konstruktiver Entwicklungsprozess getrieben, dass man sagt, ja, dieser eine Aspekt, der gefällt mir vielleicht nicht so, vielleicht auf die und die Art verbessern, also dass es wirklich so ein Engineering-driven Development ist und nicht nur, wo einfach böse Schimpfwörter hin und her geworfen werden, am Schluss niemand weiß, was jetzt Stand der Dinge ist. Das ist auch teilweise ein Grund, warum sich viele Communities spalten, weil es einfach Zerwürfnisse gibt zwischen bestimmten Entwicklern und dann wandert der eine Hälfte ab und dann gibt es einen Fog, die Communities sind einfach gespalten, man weiß nicht, zu welcher soll ich mich jetzt beitragen, die einen sind sauer, wenn ich zu anderen bin. Also ich glaube, für viele ist es wichtig, sich einfach mal das anzuschauen und dann einfach eine Entscheidung zu treffen und sagen, ja, da will ich jetzt einfach mal mitmachen und die Leute gefallen mir, die Community-Stimmung ist gut und den Code, den ich da beitrage, der wird wertgeschätzt und der wird auch von anderen gerne angenommen und auch, ich meine, der sollte natürlich auch entsprechende Qualität haben, aber auch als Neuling muss man da nicht Angst haben, dass man da sofort niedergemacht wird. Also ich glaube, dass es für viele eine unheimliche Hürde, weil sie nichts von Feedback bekommen am Anfang. Das war bei mir zumindest so. Haben wir weitere Fragen? Wann kommt der neue Kabel raus, Gleit? Gibt es eigentlich irgendwie Pläne oder ich bin da schon, weil nämlich nicht mehr drin, aber mit Dragonfly-BSD da wieder irgendwas zusammenzuführen oder ist es einfach komplett gelaufen und die sind... Es gibt interessante Entwicklungen im Dragonfly-BSD-Projekt. Also Dragonfly-BSD, für die Leute, die es nicht kennen, die haben sich mal von FreeBSD abgespalten, weil es da unterschiedliche Meinungen gab im Hinsicht, wo sich das Projekt hin entwickeln sollte, auch im Bereich Multi-Processing. Es gibt interessante Entwicklungen im Dragonfly-BSD-Projekt, zum Beispiel das Hammer-Fallsystem, dass jede Endung am Fallsystem versioniert. Das ist ein bisschen anders als bei ZFS, ist aber auch ein interessanter Konzept. Ich sehe aktuell nicht viel in der Community kommen, aber da sind die sehr auf ihre Entwicklung fokussiert und haben halt nicht so Zeit auf Konferenzen zu gehen. Aber es ist auf jeden Fall ein interessantes Projekt. Ich glaube jetzt aber nicht, dass die sich wieder so annähern würden, dass man das wieder verschmelzen könnte. Das ist natürlich schade auf der einen Seite, auf der anderen Seite kann man natürlich trotzdem Code von denen verwenden. Das ist ja nicht dadurch gegeben, dass man die komplett zusammenfügt und sagt, an bestimmten Stellen kooperieren wir, an anderen Stellen haben wir einfach unterschiedliche Meinungen, das ist auch in Ordnung. Und dann kocht wieder jeder sein eigenes Gulasch-Sippchen. Das muss ich jetzt sagen. Das ist jetzt bei FreeBSD so, dass man da ein komplettes Basis-System hat, also Kernel-Userland und so weiter, dass das alles zusammen ist. Aber FreeBSD kann natürlich nicht alles selbst entwickeln und manches Software kommt dann mit rein. Also zum Beispiel sowas wie Sandmail. Gut, das kommt so aus derselben Ecke, aber ist ja prinzipiell kein FreeBSD-Software. Also sowas halt wie, was weiß ich, die Shell oder so. Und wenn man jetzt so aus der Linux-Welt kommt, kennt man das halt, dass der Paketmanager die ganzen Sachen einzeln hat und natürlich auch einzeln kommen und dann einzeln geupdatet werden und so. Gibt es bei FreeBSD irgendwelche Pläne, das Basis-System nicht als ein Blob zu betrachten, sondern auch entsprechend mal aufzuspalten? Ja, und zwar haben wir gerade so einen, also wir haben vor ein paar Jahren einen größeren Package-System gemacht, Package-NG. Wenn ihr mal Software entwickelt, nennt nie irgend ein neues Software mit NG hinten dran, weil Next Generation ist halt irgendwann Today's Generation. Dieses Package-System, das ist mittlerweile so weit fortgeschritten, dass wir auch vorhaben oder auch sehr weit schon fortgeschritten sind, das Basis-System zu paketisieren. Das heißt, ich kann dann sagen, diese drei Komponenten will ich haben und alles andere soll nicht mitinstalliert werden. Das ist mittlerweile nem guten Testing-Zustand. Das heißt, das ist für viele Fälle schon einsetzbar. Es gibt noch so manche Edge-Cases, was passiert, wenn diese eine Komponente weginstalliert wird und reißt dann das rätstliche System mit sich runter. Das ist aber auch so eine Idee, die aus der Embedded-Welt kommt, wo man sagt, ich will nur diese drei Komponenten haben und nicht noch 50 andere, die ich eh wieder alle rausschmeiß. Das ist daraus geboren. Also es gibt auf jeden Fall diesen monolitischen Block einzeln aufzuspalten. Das hat natürlich die Nachteil, diese ganzen Abhängigkeiten mit aufzulösen. Aber das gibt es auf jeden Fall. Haben wir weitere Fragen? Keiner mehr? Dann danke fürs Kommen und erst mehr Gulasch. Ja, danke.