In Episode 6 des Change Mode Podcasts setzt sich Gastgeber Chad Carlson mit Randy Fay, dem Hauptverantwortlichen für DDEV, zusammen, um in die Welt der Entwicklungsumgebungen, TRS-80-Nostalgie und die Entwicklung von Open-Source-Communities einzutauchen. Randy Fay nimmt uns mit auf eine Reise von seinen Anfängen in der Programmierung bis hin zu seiner entscheidenden Rolle bei der Entwicklung von DDEV - einem Tool, das das Spiel für Webentwickler mit Docker verändert. Mit einer Prise Humor erklärt Randy, wie DDEV einen konsistenten, isolierten Arbeitsbereich über verschiedene Betriebssysteme hinweg bietet und warum dies für Entwickler, die mit mehreren Projekten jonglieren müssen, eine entscheidende Neuerung darstellt.
Egal, ob Sie ein erfahrener Entwickler oder einfach nur neugierig auf Technik sind, Randys Einblicke in die gemeinschaftsgetriebene Entwicklung und die Roadmap von DDEV für 2024 werden Sie fesseln. Außerdem erzählt er, wie wichtig die finanzielle Unterstützung durch Sponsoren wie Platform.sh ist, die dem Projekt zum Erfolg verhilft. Verpassen Sie nicht, zu erfahren, wie DDEV Entwickler weltweit unterstützt und welche aufregenden neuen Funktionen in Kürze verfügbar sein werden - glauben Sie uns, dieses Gespräch werden Sie nicht verpassen wollen.
Wir haben ChatGPT verwendet, um die Grammatik und Syntax des Transkripts zu verbessern.
Chad Carlson: Hallo zusammen, willkommen zu einer ganz besonderen Episode des Podcasts. Mein Name ist Chad Carlson, ich leite das Developer Relations Team hier bei Platform.sh und Upson, und heute habe ich das Vergnügen, mit Randy Fay zu sprechen. Hallo Randy.
Randy Fay: Wie geht es Ihnen heute? Schön, Sie zu sehen.
Chad Carlson: Ja, Sie auch. Mir geht's gut. Würden Sie sich bitte einen Moment Zeit nehmen, um sich unserem Publikum vorzustellen?
Randy Fay: Aber sicher. Mein Name ist Randy. Meistens heiße ich R. Fay, R-F-A-Y, und ich bin der Maintainer von DDEV, oder der leitende Maintainer des DDEV-Projekts, und das schon seit sieben oder acht Jahren. Es macht mir sehr viel Spaß. Ich beschäftige mich schon seit einer Unmenge von Jahren mit Software, aber DDEV macht wirklich Spaß. Ich war aktiv, zumindest lange Zeit, in der Drupal-Community und habe dort viel beigetragen. Irgendwann habe ich mich am Kernbeitrag beteiligt und eine Reihe von Modulen gewartet. So, das ist meine kurze Einführung. Ich lebe in Palisade, Colorado, im äußersten Westen von Colorado, direkt an der Grenze zu Utah, wo es im letzten Monat sehr heiß war.
Chad Carlson: Danke. Wenn wir zurückgehen könnten, was hat Ihr Interesse am Programmieren, an Technologie und an der Arbeit mit Computern geweckt?
Randy Fay: Oh, es macht einfach so viel Spaß. Es ist wie ein unendliches Videospiel. Videospiele sind älter als ich, oder sie sind älter als ich, deshalb habe ich mich nie wirklich für sie interessiert. Aber die Möglichkeit, eine unendliche Herausforderung mit unendlichen Bausteinen zu haben, wie ein unendliches Set von LEGO oder Tinker Toys oder ein Erector-Set, das man nie kaufen musste, hat mich immer fasziniert. Als ich schließlich mein Studium abschloss, wollte ich Lehrer für Geschichte und Sozialkunde werden. Das habe ich eine Zeit lang gemacht, aber ich bin ziemlich gescheitert, vor allem, weil ich aussah, als wäre ich 17 Jahre alt und 17-Jährige unterrichten sollte. Vielleicht hatte es auch etwas damit zu tun, dass ich mir einen TRS-80 Model 1 Level 2 kaufte und anfing, die ganze Nacht aufzubleiben, um BASIC-Programme zu schreiben und sie auf Kassetten zu speichern. Das war der Anfang. Es war einfach so faszinierend, etwas zu bauen, das man sich ohne Einschränkungen vorstellen konnte.
Chad Carlson: Gab es irgendwelche Projekte, die Sie im Sinn hatten, als Sie in Geschichte und Sozialkunde arbeiteten, oder war es einfach nur der Wunsch, etwas zu bauen?
Randy Fay: Nein, es war einfach fantastisch, mit Dingen zu basteln. Ich weiß nicht mehr, was ich schreiben wollte oder so etwas. Ich erinnere mich nur daran, dass ich versucht habe, die Dinge zum Laufen zu bringen, und dass ich gemerkt habe, dass man sie zum Laufen bringen kann. Ich hatte auf dem College zwei Kurse belegt, das war alles, was sie an meiner Uni anboten. Wenn ich damals vernünftig gewesen wäre, hätte ich die Schule gewechselt und irgendwo einen CS-Abschluss gemacht. Aber ich hielt es für wichtig, Lehrer zu werden, und so habe ich es getan.
Chad Carlson: Und wie war der Übergang vom Lehrerberuf zum nächsten Kapitel?
Randy Fay: Ich gab den Lehrerberuf auf und suchte nach einem Job, um meine Frau und unsere neugeborene Tochter zu unterstützen. Schließlich bekam ich einen Job, bei dem ich die Dokumentation für ein Hausautomatisierungssystem schreiben sollte, ich glaube, das war 1982. Es handelte sich um eine winzige Firma namens CompuHome Systems - im Grunde das Wohnzimmer eines Mannes - und wir entwickelten ein Hausautomatisierungssystem, das anfangs in BASIC auf dem Apple II geschrieben war. Da wir nur zu dritt waren, ging ich schnell vom Schreiben der Dokumentation zum Schreiben von Code über. Am Ende haben wir viel in 6502 Assembler geschrieben, und das habe ich etwa sieben Jahre lang gemacht. Es war eine großartige Gelegenheit, neue Dinge auszuprobieren, aber Heimautomatisierung war damals noch nicht wirklich ein Thema. Es war zwar nicht erfolgreich, aber es war trotzdem eine tolle Erfahrung.
Chad Carlson: Das ist interessant! Die Dokumentation war Ihr Einstieg in das Programmieren?
Randy Fay: Ja, genau. Das war mein Verkaufsargument. Schreiben ist etwas, das mir ganz natürlich vorkommt, vor allem wenn es um beschreibende Texte geht.
Chad Carlson: Wie schaffen Sie den Übergang von dieser anfänglichen Arbeit zu einer mehr auf Open Source ausgerichteten Arbeit und in diese Welt, und das könnte eine ganz schöne Aufgabe sein?
Randy Fay: Nun, da liegen ein paar Jahrzehnte dazwischen. In den frühen Neunzigern kam ich in die Linux-Welt, was großartig war. Davor habe ich an Unix gearbeitet, insbesondere an AIX, der IBM-Variante von Unix. Schließlich arbeiteten wir an der ersten Generation der mobilen Datenübertragung, die CDPD, Cellular Digital Packet Data, genannt wurde. Heute haben wir also 5G, aber das war 1G - die allererste Generation.
Ich habe damals Kernel-Programmierung betrieben, weil wir Kernel-Module geschrieben haben, die im Solaris-Kernel liefen und den Datenverkehr von CDPD abwickelten. Das hat unglaublich viel Spaß gemacht, war eine große Herausforderung beim Debuggen und ein Höhepunkt meiner Karriere, weil ich mit großartigen Mitarbeitern zusammenarbeiten konnte. Die Fehlersuche bei dieser Art von Code ist unglaublich schwierig, aber wir haben Techniken entwickelt, um damit umzugehen, und zusammen gearbeitet. Wir haben viel zu hart gearbeitet, aber wir hatten eine Menge Spaß und tolle Erinnerungen.
Später begann ich, mich mit PHP-Entwicklung und Websites zu beschäftigen. Das war etwa 2005-2006, als Websites gerade in Mode kamen und jeder sie erstellen wollte. Ich begann, ein paar persönliche Websites zu erstellen und landete schließlich in der Drupal-Welt. Zu dieser Zeit unternahmen meine Frau Nancy und ich viele Radtouren. Wir bereiteten uns auf eine epische Radtour von der Spitze Kanadas nach Argentinien vor, eine Reise, die zweieinhalb Jahre dauern sollte. Wir wollten dafür eine Website erstellen, die wir mit Drupal erstellten.
Als wir zurückkamen, wollte ich mehr über Open Source lernen, und Drupal war der offensichtliche Ort, um damit anzufangen. Ich tauchte in die Gemeinschaft ein, und sie nahmen mich auf. Ich hatte dort viele Jahre lang viel Spaß und konnte viel beitragen. Obwohl ich technisch nicht mehr auf dem neuesten Stand bin, bin ich immer noch mit der Gemeinschaft verbunden, vor allem seit sie DDEV übernommen haben.
Chad Carlson: Was genau ist DDEV? Welches Problem versucht es für Drupal oder anderweitig zu lösen?
Randy Fay: Jeder Website-Entwickler braucht einen Ort, an dem er an seiner Website arbeiten kann. Wenn man mit einem Team arbeitet, braucht jede Person ihre eigene Umgebung. Das ist so, wie wenn Künstler ihre eigene Leinwand brauchen; sie können nicht alle auf derselben arbeiten. Es gab eine Zeit, in der man versuchte, auf gemeinsamen Computern zu entwickeln, was ein komplettes Desaster war.
Mit DDEV kann jeder Entwickler in seiner eigenen isolierten Umgebung arbeiten. Ob Sie nun an TYPO3, Drupal, Laravel oder einem anderen Projekt arbeiten, Sie können es in Ihrem eigenen Bereich tun. Sie können sogar an mehreren Projekten gleichzeitig arbeiten. DDEV macht dies möglich, indem es Docker verwendet, so dass alle wichtigen Teile in Containern laufen. Dadurch wird die Konsistenz über verschiedene Betriebssysteme hinweg sichergestellt - egal, ob Sie macOS, Linux, Windows oder WSL2 verwenden. Die Idee ist, dass Ihre Teammitglieder in verschiedenen Umgebungen arbeiten können, aber die gleiche Erfahrung haben. Das ist es, was DDEV leistet, und es macht eine Menge Spaß.
Chad Carlson: Stammt es speziell aus der Drupal-Community oder gab es eine breitere Quelle?
Randy Fay: Das Projekt stammt von einer Firma namens Drud. Sie versuchten ursprünglich, ein Hosting-Produkt zu entwickeln und wollten mit Platform.sh konkurrieren. Eine lokale Entwicklungskomponente war Teil dieses Produkts, und sie hatten ein Befehlszeilentool, das viele Dinge tun konnte, ähnlich wie das Platform CLI-Tool. Schon früh wurde klar, dass die lokale Entwicklungskomponente wirklich nützlich war, also wurde sie abgespalten und zu DDEV.
DDEV war der Teil, an dem ich am meisten interessiert war, und fünf Jahre lang durfte ich daran arbeiten. Das war sehr großzügig. Schließlich verlor Drud seine Finanzierung, wie viele andere Unternehmen auch. Aber sie ließen mich weiter an DDEV arbeiten, obwohl ich kein großer Fan ihres Hosting-Produkts war. Es schien eine zu große Herausforderung für ein Unternehmen mit fünf oder zehn Leuten zu sein, das zu tun, was Platform.sh mit Hunderten von Leuten macht. Aber sie waren so freundlich, mich auf DDEV konzentrieren zu lassen, und dafür bin ich sehr dankbar.
Chad Carlson: Das ist ziemlich groß.
Randy Fay: Ja, das war ein unglaubliches Geschenk. Ich war immer der Typ, der keine Probleme damit hatte, eine lokale Umgebung einzurichten. Ich wusste, wie man Nginx und PHP konfiguriert und wie man MySQL oder MariaDB konfiguriert. Daher war ich anfangs ziemlich skeptisch gegenüber DDEV. Ich dachte: "Warum sollte man das tun, wenn man Apache oder Nginx und FPM einfach lokal ausführen kann? Sie laufen gut auf dem Mac, und man kann sie sogar auf dem herkömmlichen Windows ausführen. Aber ich merkte bald, dass ich zwar ein oder zwei Projekte mit verschiedenen PHP- oder MySQL-Versionen verwalten konnte, aber die gleichzeitige Verwaltung mehrerer Projekte mit unterschiedlichen Umgebungen überstieg meine Fähigkeiten. Das war der Zeitpunkt, an dem ich von DDEV überzeugt war.
Eine weitere wichtige Erkenntnis war, dass bei komplexen lokalen Entwicklungsumgebungen der Hauptentwickler im Team normalerweise seine ganze Zeit damit verbringt, die Umgebungen der anderen zu verwalten. DDEV beseitigt dieses Problem. Man kann die Konfiguration einchecken, und wenn ein neuer Entwickler hinzukommt, führt er einfach ddev start aus, und seine Umgebung ist mit der aller anderen identisch. Auf diese Weise müssen Leute wie ich, die sich mit komplexen Konfigurationen auskennen, nicht ihre ganze Zeit damit verbringen, anderen zu helfen, die das geheimnisvoll und schwierig finden.
Chad Carlson: Würden Sie sagen, dass das Problem, das Sie am meisten gereizt hat, darin bestand, die Entwicklung für andere einfacher zu machen? Oder ging es eher um die Verwaltung verschiedener PHP-Versionen und die Komplexität des Jonglierens mit verschiedenen Konfigurationen?
Randy Fay: Ich denke, es war beides, aber hauptsächlich macht es mir Spaß, Entwickler glücklich zu machen. Das Ziel von DDEV ist es, die Entwicklung zu vereinfachen, und schon in den ersten Tagen war klar, dass es einige Entwickler wirklich glücklich gemacht hat. Das fand ich lohnend. Wenn man versteht, warum man etwas tut, für wen es wichtig ist, und wenn man positives Feedback bekommt, dann macht die Arbeit viel mehr Spaß. Das ist es, was mir daran Spaß macht. Und Drud war so großzügig, mich weiter an DDEV arbeiten zu lassen, was auch gut für ihren Namen war - sie haben sogar ihren Namen in DDEV geändert, weil er den Leuten so gut gefiel.
Chad Carlson: Wie hat Docker den Bereich der lokalen Entwicklung verändert, und welche Auswirkungen hatte das auf DDEV?
Randy Fay: Docker kam wie ein Sturm, vielleicht vor etwa 10 Jahren. Davor benutzten die Leute VirtualBox oder konfigurierten Dinge direkt auf ihren lokalen Rechnern, was auf Mac und Linux funktionierte, aber nicht so flexibel war. Docker machte es möglich, dass die Einrichtung überall gleich sein konnte, ohne dass ein zusätzliches Produkt benötigt wurde. Es ermöglichte unterschiedliche Konfigurationen für mehrere Projekte, was die Dinge sehr vereinfachte. Vor Docker war die Einrichtung sehr mühsam, vor allem bei VirtualBox, wo man beim Starten einen Build durchführen musste. Mit Docker ging das alles schneller und zuverlässiger, und deshalb hat es den Platz eingenommen.
Chad Carlson: Das macht Sinn. Und DDEV ist ein Projekt, das in Go geschrieben ist, richtig?
Randy Fay: Das ist richtig. Nun, es ist in Go und etwa 15 anderen Sprachen geschrieben. Der Hauptcode ist in Go, das als Orchestrator fungiert. Es ist ein Wrapper für Docker Compose, ein Wrapper für Docker, der Linux-Images mit Skripten darin ausführt. Es ist also ein Mischmasch aus verschiedenen Dingen. Eine der großartigen Eigenschaften von Go ist, dass es sich in eine native Binärdatei kompilieren lässt, die keine Abhängigkeiten benötigt - keine DLLs oder externen Bibliotheken. Man könnte es eine "fette Binärdatei" nennen, obwohl das nicht ganz der richtige Begriff ist. Im Wesentlichen ist alles, was benötigt wird, in der Binärdatei selbst gebündelt.
In einem einzigen Build können wir die Mac AMD64-Version, die ARM64-Version und die Windows-Version erstellen. Normalerweise erstellen wir sie unter Linux, aber wir könnten sie überall erstellen, und sie würden das gleiche Ergebnis liefern. Das ist eine der großartigen Eigenschaften von Go. Es ist erstaunlich. Es gibt allerdings auch ein paar Nachteile. Unsere Community besteht größtenteils aus PHP-Nutzern, und für sie ist Go fremd und ungewohnt. Die Lernkurve macht es für die Leute schwieriger, zu DDEV beizutragen, was für ein Open-Source-Projekt eine Herausforderung ist.
Chad Carlson: Sehen Sie, dass Go in PHP-verwandten Projekten immer häufiger zum Einsatz kommt? Ich habe einige in Go geschriebene Webserver gesehen, die im PHP-Umfeld immer beliebter werden.
Randy Fay: Ja, es gibt einige Überschneidungen. PHP FPM ist zum Beispiel in Go geschrieben, und Docker selbst - Client und Server - sind ebenfalls in Go geschrieben. Go wird zwar eher auf der operativen Seite eingesetzt, aber es wird definitiv auch in PHP-nahen Projekten verwendet. Es wird immer beliebter, aber für die meisten PHP-Entwickler ist es immer noch eine Lernkurve.
Chad Carlson: Gibt es neben der DDEV-Codebasis noch andere Orte, an denen Sie gerne Ihre Zeit für Open-Source-Projekte einsetzen? Ich weiß, dass Ausbildung für Sie wichtig ist.
Randy Fay: Ja, es macht mir Spaß, Leuten beizubringen, wie man DDEV benutzt und wie man dazu beiträgt. Im letzten Jahr haben wir Schulungen für Mitarbeiter und andere Arten von Schulungen durchgeführt, um den Leuten zu zeigen, wie man DDEV benutzt. Wir hatten viel Spaß dabei, aber ich verbringe auch viel Zeit mit der Betreuung von Mitwirkenden, weil wir mehr Betreuer für das Projekt gewinnen wollen. Wir wollen nicht, dass es nur von mir abhängig ist. Wir haben einen weiteren fantastischen Betreuer, Stas Zouk, der sich oft um unsere Veröffentlichungen kümmert. Er ist ein hervorragender Betreuer, aber wir wollen ihn voll finanzieren und weitere Mitwirkende und Betreuer gewinnen. Ich nehme auch an Veranstaltungen wie der DrupalCon teil und helfe Leuten zu lernen, wie man zu Drupal beiträgt oder technische Probleme löst.
Chad Carlson: Sie haben etwas angesprochen, was ich eigentlich erwähnen wollte - Sie versuchen, die Lebensdauer von DDEV zu verlängern, indem Sie zusätzliche Mitwirkende unterstützen. Wie funktioniert die finanzielle Unterstützung von DDEV heutzutage?
Randy Fay: DDEV wird von der Gemeinschaft unterstützt. Im Moment arbeiten sowohl Stas als auch ich daran - ich in Vollzeit und Stas zu etwa einem Drittel der Zeit. Vor ein paar Jahren ist etwas Erstaunliches passiert. Nachdem Drud gegangen war, arbeitete ich weiter an dem Projekt, aber die Leute waren verständlicherweise misstrauisch, ob es noch ein "laufendes Unternehmen" sei und ob ich es weiterführen würde. Trotzdem habe ich einfach weitergemacht.
Nach ein paar Jahren beschloss Platform.sh, einzugreifen und einige Probleme zu lösen. Sie kauften das geistige Eigentum des ursprünglichen Drud-Unternehmens, einschließlich des Namens und der Marke DDEV. Das war eine große Erleichterung, denn damit war das Problem der Verwendung des Namens DDEV gelöst. Noch großzügiger war, dass sie anfingen, mir ein Gehalt zu zahlen, damit ich weiter an dem Projekt arbeiten konnte. Das war eine unglaubliche Geste und hat das Vertrauen in das Projekt wieder aufgebaut. Seit mehr als zwei Jahren unterstützt Platform.sh DDEV nun schon finanziell, und wir sind sehr dankbar dafür.
Wir versuchen jedoch, mehr Sponsoren zu gewinnen. Wir haben zwar einige sehr großzügige Sponsoren, aber wir würden gerne mehr bekommen, damit wir Stas voll finanzieren können und mehr Platz für zukünftige Betreuer schaffen. Ich werde nicht ewig bleiben - ich bin ein alter Mann mit einem Verfallsdatum - also muss das Projekt von der Gemeinschaft gewartet werden und über eine einzelne Person hinaus Bestand haben.
Chad Carlson: Wie kam Stas dazu, sich zu engagieren, und wie hat er die Führungsrolle übernommen, die er heute innehat?
Randy Fay: Es war eine klassische Open-Source-Geschichte. Stas begann damit, dass er sich um wichtige und schwierige Fehler und Funktionen kümmerte, und das tat er konsequent über einige Jahre hinweg und bewies, dass er wirklich gut darin war. Er ist ein PHP-Entwickler, der hauptsächlich mit Laravel arbeitet, und er trägt auch zu Arch Linux bei - er ist einer dieser Hardcore-Linux-Leute. Seine Beiträge wurden immer umfangreicher, und irgendwann sprach ich mit ihm darüber, ein bezahlter Mitarbeiter zu werden. Letzten Oktober oder November haben wir ihn der Community als vollwertigen Maintainer vorgestellt.
Chad Carlson: Es ist also eine Priorität, mehr Mittel zu bekommen. Was ist mit den Funktionen? Was steht für das DDEV-Projekt direkt bevor, in das Sie Energie investieren und auf das Sie sich freuen?
Randy Fay: Wir haben einen Plan für 2024. DDEV hat sich immer auf der Grundlage von Beiträgen und Beteiligung der Gemeinschaft entwickelt. Unsere Gemeinschaft ist sehr aktiv, und weil wir auf ihr Feedback achten, ist DDEV zu dem geworden, was die Menschen sich gewünscht haben. Eines unserer wichtigsten Ziele ist die kontinuierliche Unterstützung. Wir haben einen Discord-Kanal und sind auch an anderen Orten wie Stack Overflow aktiv. Es ist uns sehr wichtig, die Erfahrungen der Leute zu hören und daraus zu lernen, und wir nehmen das sehr ernst. Wenn Leute Probleme mit einer Funktion haben oder auf einen Fehler stoßen, arbeiten wir daran, diese Funktion oder Fehlerausgabe zu verbessern, um die Dinge klarer und einfacher zu machen.
Neben dem Support haben wir uns für 2024 zwei große Ziele gesetzt. Erstens arbeiten wir an einer webbasierten Add-on-Registrierung. Wir haben ein Add-On-Ökosystem, in dem Leute Add-Ons für Dinge wie Redis, Elasticsearch, Solr und andere erstellen können. Dieses System ist in den letzten Jahren regelrecht explodiert - inzwischen gibt es über hundert Add-ons. Zwar kann man mit ddev get --list
oder ddev get --list --all
eine Liste dieser Add-ons erhalten, aber es ist schwierig, sich in den Hunderten von Add-ons zurechtzufinden. Deshalb bauen wir eine webbasierte Registrierung auf, die es den Leuten leichter macht, die verfügbaren Addons zu durchsuchen und zu verstehen.
Das zweite Ziel ist, ein Node.js-Backend zu haben. Wir haben bereits eine solide Node.js-Unterstützung in DDEV integriert, aber wir wollen eine direkte Nginx- und Node-Backend-Option haben, zusätzlich zum aktuellen Nginx- und PHP-Setup. Das sind unsere beiden großen Schwerpunktbereiche für dieses Jahr.
Chad Carlson: Sie haben erwähnt, dass die Community einen großen Einfluss darauf hat, was aus DDEV wird. Wie hat sich das Add-on-System auf die Beteiligung der Leute und auf das Feedback, das Sie erhalten, ausgewirkt?
Randy Fay: Das Add-on-System war ein großer Gewinn, was die Beteiligung der Gemeinschaft angeht. Davor hatten wir ein Projekt auf GitHub namens DDEV Contrib, bei dem Leute Pull Requests einreichen konnten, um mitzuteilen, wie sie verschiedene Probleme gelöst haben. Das Problem dabei war, dass die Dinge schnell veraltet waren. Sie wissen ja, wie schnell sich die Technologie entwickelt - etwas, das heute noch funktioniert, könnte durch die morgigen Updates kaputt gehen.
Mit dem Add-on-System hat jedes Add-on sein eigenes Repository und seinen eigenen Betreuer. Wenn jemand ein Problem mit einem Add-on hat, kann er einen Fehler melden oder einen PR direkt an den Betreuer senden. Dadurch wird die Verantwortung auf die gesamte Gemeinschaft verteilt, anstatt dass wir versuchen, alles zu pflegen. Das ist viel nachhaltiger und ermöglicht es den Leuten, auf sinnvolle Weise beizutragen. Vom Standpunkt der Wartung und der Beiträge der Gemeinschaft aus gesehen, war es ein großer Erfolg.
Chad Carlson: Das gefällt mir. Das klingt nach einem großartigen System. Danke, Randy, dass Sie uns durch das DDEV-Projekt geführt haben. Ich denke, wir haben die meisten der wichtigsten Fragen beantwortet. Wenn Sie damit einverstanden sind, können wir jetzt in die Blitzrunde mit ein paar leichteren, lustigeren Fragen übergehen.
Randy Fay: Ja, natürlich.
Chad Carlson: In Ordnung, cool. Wenn Sie nicht in der Softwarebranche arbeiten würden, was würden Sie dann wohl jetzt tun?
Randy Fay: Fragen Sie mich, was ich beruflich tun würde, oder wie ich meine Zeit verbringen würde?
Chad Carlson: Was auch immer Sie bevorzugen, aber lassen Sie uns auf die Arbeit konzentrieren.
Randy Fay: Ich liebe Software und Support, daher kann ich mir nur schwer vorstellen, etwas anderes zu tun. Außerhalb der Arbeit verbringe ich die meiste Zeit mit Mountainbiking oder Radsport in irgendeiner Form. Nancy und ich sind viele Jahre und Tausende von Kilometern mit dem Fahrrad unterwegs gewesen. Das ist ein wichtiger Teil unseres Lebens. Wenn ich nicht in der Softwarebranche tätig wäre, würde ich wahrscheinlich mehr davon machen.
Chad Carlson: Was ist das Wichtigste, das Sie im Laufe Ihrer Karriere über Dokumentation gelernt haben?
Randy Fay: Eines der grundlegenden Dinge, die ich gelernt habe, ist, dass die Leute sie nicht lesen. Das sagt zwar jeder, aber es ist wahr. Der Schlüssel liegt darin, herauszufinden, wie man effektiv durch Dokumente oder andere Mittel kommunizieren kann. Die Kommunikation muss in beide Richtungen gehen - Sie lernen von den Leuten, die Ihr Projekt benutzen, und Sie gehen auf ihre Bedürfnisse ein. Eine gute Dokumentation ist Teil dieses allgemeinen Kommunikationsprozesses.
Chad Carlson: Wie hat sich Ihrer Meinung nach Ihr Schreibstil im Laufe der Jahre verändert?
Randy Fay: Ich war schon immer ein ziemlich trockener, beschreibender Autor. Ich bin sehr gut darin, spezifisch und klar zu sein, aber meine Texte sind sehr prosaisch. Ich schreibe in der Regel nichts besonders Aufregendes oder Spannendes, aber ich lege Wert darauf, Dinge klar und deutlich zu erklären oder zu beschreiben. Ich gebe mir Mühe, präzise zu sein, aber ich würde nicht behaupten, dass ich weiß, wie man einen Roman oder etwas in der Art schreibt.
Chad Carlson: Was ist Ihrer Meinung nach Ihre größte Stärke?
Randy Fay: Ich würde sagen, dass ich es wahrscheinlich liebe, Unterstützung zu leisten. Es macht mir wirklich Spaß, auf Menschen zu reagieren und zu versuchen, ihnen bei der Lösung ihrer Probleme zu helfen. Das geht auf meine Zeit als Drupal-Mitarbeiter zurück - das Gefühl, etwas Wertvolles anbieten zu können und in der Lage zu sein, Menschen bei der Lösung von Problemen zu helfen. Eines der erstaunlichsten Dinge an Open Source ist, dass man in einigen Gemeinschaften tatsächlich die Möglichkeit hat, sich an der Lösung von Problemen zu beteiligen. Wenn man in einer Gemeinschaft wie Drupal oder DDEV ein Problem sieht, kann man dazu beitragen, es zu lösen, und das ist unglaublich befriedigend.
Chad Carlson: Auf welches Projekt sind Sie besonders stolz?
Randy Fay: DDEV ist definitiv das Projekt, auf das ich am meisten stolz bin, aber auch das Projekt, bei dem wir an CDPD, der ersten Generation von Mobilfunkdaten, gearbeitet haben, ist etwas, auf das ich sehr stolz bin. Das hat Spaß gemacht und war erstaunlich, und es hat den Weg für die zellularen Daten geebnet, die wir heute haben. Aber DDEV ist definitiv das Highlight - es gibt es jetzt schon seit einigen Jahren, und die Leute lieben es. Es ist aufregend, an etwas zu arbeiten, das sowohl nützlich als auch sehr beliebt ist.
Chad Carlson: Welches Projekt hat sich als das schwierigste herausgestellt?
Randy Fay: Das CDPD-Projekt war wahrscheinlich das technisch schwierigste, weil wir auf der Kernel-Ebene gearbeitet haben und unsere eigenen Debugging-Techniken entwickeln mussten. Ich habe an vielen Projekten gearbeitet, die aus anderen Gründen schwierig waren, z. B. wegen der Mitarbeiter oder der Organisation, aber vom technischen Standpunkt aus war CDPD eine Herausforderung und erfolgreich. Viele Software-Projekte werden nie eingeführt oder angenommen, aber dieses Projekt schon. Es war großartig zu sehen, wie es zum Erfolg wurde. Aber auch DDEV war auf seine Weise eine Herausforderung, aber es läuft gut und es macht Spaß, daran zu arbeiten.
Chad Carlson: Es ist wirklich beeindruckend zu sehen, was für eine Gemeinschaft Sie aufgebaut haben und wie Sie diese kultiviert haben. Wir haben noch eine Frage, und ich muss vielleicht kurz meinen Bildschirm teilen. Eine lustige Frage zum Abschluss: Wie spricht man diesen Befehl aus?
Randy Fay: Ich glaube, ich habe immer "chmod" gesagt. Als Sie das Thema ansprachen, habe ich nachgeschaut, und es gibt einen Reddit-Thread, dessen Klärung Jahre dauerte, weil jeder eine andere Meinung hat. Ich sage "chmod" und "chown", aber wahrscheinlich nicht "chooser" - ich glaube, ich sage "chuser". Aber ja, ich spreche "chmod" so aus. Wie sieht es bei Ihnen aus?
Chad Carlson: Ich glaube, in meinem Kopf sage ich auch "chmod", aber dies ist diese Woche der "chmodcast"! Randy, vielen Dank, dass Sie beim "chmodcast" dabei sind. Möchten Sie unseren Zuhörern noch etwas sagen, bevor wir gehen?
Randy Fay: Nur, dass es großartig ist, mit allen zu sprechen, und ich freue mich darauf, Sie zu sehen, wo immer wir uns begegnen werden.
Chad Carlson: Danke, Randy, und danke an alle, die zuhören. Wir sehen uns beim nächsten Mal.