Online Marketing, Gadgets, Affiliate, Verdienen Sie Geld mit Ihren Blogs

DreamHost interviewt Laravel-Kernteammitglied G…

Hinweis: Der folgende Artikel hilft Ihnen dabei: DreamHost interviewt Laravel-Kernteammitglied G…

DreamHost interviewt Laravel-Kernteammitglied G...

Graham Campbell stammt aus dem Vereinigten Königreich und ist der Gründer von StyleCI. Graham ist Mitglied des Laravel-Kernteams und bietet außerdem Software-Beratungs-/Engineering-Dienstleistungen für viele Kunden mit Sitz in Großbritannien und den USA an. Graham ist auch für seine Open-Source-Arbeit in der Laravel-Community bekannt.

Shahzeb: Hallo, Graham. Vielen Dank, dass Sie sich die Zeit für dieses Interview genommen haben. Könnten Sie uns, bevor wir beginnen, etwas über sich erzählen, damit unsere Leser Sie besser kennenlernen können?

Graham: Vielen Dank für die Einladung zu diesem Interview. Ich bin ein Softwarearchitekt und -ingenieur mit Sitz in Großbritannien. Die Leute kennen mich vielleicht von meiner Open-Source-Arbeit in der PHP-Community. Ich arbeite Vollzeit für mein eigenes Unternehmen, arbeite am SaaS-Produkt StyleCI und biete außerdem Software-Beratungs-/Engineering-Dienstleistungen für Kunden an, die hauptsächlich in Großbritannien und den USA ansässig sind. Natürlich verbringe ich auch viel Zeit damit, an Open Source zu arbeiten. Allerdings kann es ein kniffliger Balanceakt sein!

Shahzeb: Bitte teilen Sie uns Ihre bisherige Reise mit Laravel mit? Gibt es ein relevantes Erlebnis aus Ihrer Karriere, das Sie interessant finden und das Sie gerne mit unserem Publikum teilen möchten? Möchten Sie unseren Lesern von einigen der besten Laravel-Projekte erzählen, an denen Sie gearbeitet haben?

Graham: Ich habe Laravel zum ersten Mal entdeckt, als ich Anfang 2013 ein PHP-Framework gegoogelt habe. Laravel 4 stand kurz vor der Veröffentlichung und legte den Grundstein für das Laravel, das wir heute alle kennen und lieben.

Eines der ersten Dinge, die ich tat, war der Versuch, ein einfaches CMS mit Laravel zu erstellen, was (relativ gesehen!) recht beliebt wurde. Ich habe dies unter einer AGPL-Lizenz lizenziert, sodass die Codebasis hauptsächlich als Lernressource verwendet werden kann. Währenddessen begann ich, verschiedene Laravel-Pakete abzuspalten und beteiligte mich an der Mitarbeit am Framework-Kern. Es ist immer schön, einen bestimmten Anwendungsfall im Kopf zu haben, um die Entwicklung von Paketen und dem Framework voranzutreiben, und nicht das abstrakte, imaginäre Projekt.

Mittlerweile betreue ich viele OSS-Projekte in mehr als 20 Organisationen oder bin Co-Betreuer. Vor einigen Jahren habe ich die alleinige Wartung des phpdotenv-Projekts übernommen, des von Laravel verwendeten .env-Dateiparsers. Tobias Nyholm und ich bin jetzt Mitbetreuer des sehr beliebten Guzzle HTTP-Client, und hat kürzlich die verlassene, aber beliebte PHP Faker-Bibliothek gerettet und ein neues Kernteam rekrutiert, das aus einer Mischung aus langjährigen OSS-Betreuern und talentierten Ingenieuren besteht, die neu im Open-Source-Bereich sind. Es ist ziemlich cool zu sehen, dass guzzlehttp unternehmensweit mehr als eine Milliarde Downloads verzeichnet und phpdotenv die 200-Millionen-Download-Marke überschreitet.

Shahzeb: Bezogen auf Laravel: Was waren die größten Herausforderungen, mit denen Sie zu Beginn Ihrer Karriere konfrontiert waren, und wie sind Sie diese angegangen?

Graham: Wie es bei Open Source oft der Fall ist, wird die Zeit eines Betreuers immer mehr für die Wartung, PR-Überprüfung und die Verwaltung des Issue-Trackers aufgewendet. Das ist etwas, womit ich mich in den frühen Tagen von Laravel viel beschäftigt habe. Die Verwaltung eines Issue-Trackers ist wirklich kein Scherz und war für mich eine steile Lernkurve. Aufgrund von Taylors Geschäftssinn und der Entwicklung von Forge als kostenpflichtiges SaaS dauerte es nicht lange, bis Laravel Dries Vints in Vollzeit einstellen konnte, der den Issue-Tracker viel besser verwalten konnte als ich. Seitdem haben Taylor und die Laravel-Mitarbeiter mehr kostenpflichtige Produkte auf den Markt gebracht und das Geschäft ausgebaut, sodass Laravel eine glänzende Zukunft vor sich hat, mit einem starken Kernteam und einer wohl noch stärkeren Community.

Lesen:  Was ist Datenanalyse, wie wird sie umgesetzt und welche Konzepte umfasst sie?

Shahzeb: Sie sind der Gründer von StyleCI. Welche Dienstleistungen bieten Sie bei StyleCI an und was hat Sie zur Gründung von StyleCI motiviert? Sie arbeiten auch als Softwareberater. Können Sie uns auch mehr darüber erzählen?

Graham: StilCI wurde aus der Notwendigkeit heraus erstellt, automatisch eine konsistente Codestilformatierung auf viele Open-Source-Projekte anzuwenden, einschließlich Laravel-Pakete, die unter meinem persönlichen GitHub-Konto und dem Laravel/Framework-Repo benannt sind. Durch den Wegfall der Notwendigkeit, Tools zu installieren und auf dem neuesten Stand zu halten und deren Verwendung zu dokumentieren, wurde eine massive beitragende Hürde beseitigt, sodass wir die Anwendung von Korrekturen am Codestil bei der PR-Zusammenführung automatisieren konnten. StyleCI schreibt seine Korrekturen automatisch fest, wenn die PR zusammengeführt wird!

StyleCI startete nur als PHP 5 und unterstützte nur Open-Source-Repos von github.com. Als sich die Dinge etwas durchzusetzen begannen, wurde kostenpflichtiger Support für private github.com-Repos eingeführt, gefolgt von Support für PHP 7, Support für gitlab.com und bitbucket.org sowie Support für CSS, SCSS, Javascript, Typescript, React, Vue und Python, ein CLI-Tool zum Auslösen von StyleCI-Analysen von lokalem Code, Unterstützung für PHP 8.0, Unterstützung für Commit-Signierung und seit neuestem auch Beta-Unterstützung für PHP 8.1. Die Einführung eines lokalen CLI-Tools stand im Widerspruch zu meinem ursprünglichen Ziel für StyleCI. Kunden überzeugten mich jedoch davon, dass es eine gute Idee war, und da wir jetzt mehr als nur PHP unterstützen, erfüllt es immer noch den bestehenden Zweck, die Installation und Konfiguration mehrerer lokaler Tools zu vermeiden und aufgrund unterschiedlicher Laufzeitversionen mit unterschiedlichen Analyseergebnissen umzugehen auf verschiedenen Computern. Dies liegt daran, dass die Analyse immer noch „in der Cloud“ stattfindet, wobei das CLI-Tool nur Unterschiede zwischen dem lokalen Status und einem bekannten Remote-Status kommuniziert und dann als Ergebnis einen durchgesendeten Diff anwendet. Ich weiß selbst, wie man das CLI-Tool verwendet, und bin froh, dass ich es hinzugefügt habe.

Obwohl sich die CI-Landschaft in den letzten 7 Jahren stark verändert hat, insbesondere mit GitHub
Angesichts der bevorstehenden Maßnahmen ist StyleCI auch heute noch so relevant wie eh und je. GitHub
Actions kann immer noch nicht annähernd an die einfache Einrichtung und Wartung heranreichen, die StyleCI bietet.
noch die Geschwindigkeit, mit der Analysen abgeschlossen werden. StyleCI ist oft vor GitHub fertig
Aktionsjobs werden sogar aus der Warteschlange entfernt und es ist nicht erforderlich, alle Codestilkorrekturen erneut herunterzuladen
Bibliotheken und Caches bei jedem Lauf, was den zusätzlichen Nebeneffekt hat, dass der CO2-Ausstoß gesenkt wird
Emissionen der Analyse – etwas, das mir wichtig ist. Wir versuchen, StyleCI in einem zu betreiben
CO2-negativ, sodass wir dies auch bei stark verkürzten Rechenzeiten ausgleichen können
mehr, und ich nutze diese Gelegenheit, um schamlos eine von StyleCI unterstützte Wohltätigkeitsorganisation zu unterstützen, ProtectEartheine in Großbritannien ansässige Wohltätigkeitsorganisation, die sich auf die Wiederaufforstung von Wäldern konzentriert
wirklich tolle Arbeit. Ich konnte einer Baumpflegeaktion an ihrem Standort in Howard Court beiwohnen
früher in diesem Jahr. Wie ich sehe, haben Sie am 13. Dezember tatsächlich Phill Sturgeon interviewt, einen Co-
Gründer der Wohltätigkeitsorganisation.

Lesen:  DreamHost interviewt Mark Story über sein PHP-J...

Für Interessierte: Hinter den Kulissen besteht StyleCI hauptsächlich aus einigen Laravel-Apps
(Da gibt es keine Überraschungen!) und läuft auf einer Kombination aus DigitalOcean und AWS mit Cloudflare
Bereitstellung des DNS-Hostings zusammen mit ihren CDN- und Sicherheitsdiensten. Weltweit verkaufen ist
Möglich gemacht durch eine Partnerschaft mit Paddle, das als Wiederverkäufer auftritt und die Umsatzsteuer übernimmt
Mehrwertsteuerpflicht, was eine große Sache ist. Es ist wichtig, mit den ständigen Änderungen der lokalen Steuergesetze Schritt zu halten
nicht, wie ich meine Tage verbringen möchte. Es gibt so viele Regionen ohne Registrierung
Schwelle, es wäre ein absoluter Albtraum. Ich kann sie anderen nur wärmstens empfehlen
kleine SaaS-Unternehmen da draußen!

Shahzeb: Sie sind ein integraler Bestandteil des Laravel-Kernteams. Können Sie uns etwas mehr darüber erzählen?
welche Rolle Sie im Team spielen müssen und welche Stellenbeschreibung Sie haben?

Graham: Um es zunächst klarzustellen: Ich bin kein Laravel-Mitarbeiter und arbeite nicht Vollzeit an Laravel. Ich bin ziemlich zufrieden mit der Lage des Frameworks und habe in letzter Zeit nicht das Bedürfnis verspürt, einen größeren Refaktor oder eine Funktion beizutragen, die zum Framework-Kern gehören würde. Das soll nicht heißen, dass andere das nicht getan haben – den Großteil meiner Zeit verbringe ich jetzt mit der Codeüberprüfung oder der Arbeit an PHP/Laravel-Paketen von Drittanbietern. Ich bin meinen GitHub-Sponsoren äußerst dankbar, dass sie es mir ermöglicht haben, jede Woche Zeit für Open Source zu verwenden:

https://github.com/sponsors/GrahamCampbell.

Shahzeb: Sie verfügen über umfassende Kenntnisse in der Laravel-Entwicklung. Wie haben Sie reagiert, als Sie eingeladen wurden, dem Laravel-Kernteam beizutreten? Was hat Sie dazu motiviert, Laravel-Webentwickler zu werden?

Graham: Es war eine Ehre und auch aus praktischer Sicht hilfreich, da ich beim Issue Management und bei Filialzusammenlegungen mithelfen konnte. Meine Entdeckung von Laravel war reiner Zufall. Ich gelangte 2013 über die Google-Suche dorthin, nachdem ich ein paar Monate lang mit PHP herumgespielt und wirklich schrecklichen Code geschrieben hatte. Rückblickend würde ich nichts ändern – auf die harte Tour zu lernen ist eine der besten Möglichkeiten zu lernen, zu erkennen, welcher Code von Grund auf geschrieben werden sollte und welcher nicht, und später selbst Best Practices und Designmuster zu entdecken um sie nachzuschlagen und zu sehen, dass sie wirklich eine Sache sind, oder um sie in anderem Code zu sehen und die Muster zu erkennen!

Shahzeb: Welche Tools verwenden Sie während der Laravel-Entwicklung? Wie sieht Ihr Arbeitsablauf aus?

Graham: Ich würde mich nicht unbedingt als Laravel-Entwickler bezeichnen – ich verwende das richtige Tool für den Job. Das First-Party-Ökosystem Laravel ist eines der besten, wenn nicht sogar das beste, das ich für das Rapid Prototyping von Webanwendungen gesehen habe, und Composer macht PHP zu einer sehr robusten Wahl für Systeme und Anwendungen jeder Größe. Ich fahre täglich ein MacBook Pro mit Sublime Text als Editor.

Lesen:  Politische Themen sind Technologie und Innovation

Shahzeb: Welche Art von Webhosting würden Sie bevorzugen? Was sind Ihrer Meinung nach die Vorteile des Hostings einer Website bei einem Anbieter verwalteter Lösungen im Vergleich zu herkömmlichem Shared Hosting? Was halten Sie von Managed-Hosting-Lösungen wie DreamHost, die einen optimierten PHP-Stack mit Funktionen zur Bereitstellung ihrer Web-Apps bereitstellen?

Graham: Wir sind im Jahr 2022 (ja, ich habe es noch einmal überprüft!). Jeder Mythos, dass es kosteneffektiv sei oder dass man alles besser intern erledigen könne, ist in der Regel eine Menge Unsinn (je nach Branche!). Die Cloud hat alles verändert, nicht nur bei IaaS, sondern auch bei PaaS und SaaS. Durch einen historischen Zufall eignet sich PHP hervorragend für die serverlosen Designparadigmen, und wir haben wirklich großartige Optionen zur Auswahl – Bref auf AWS Lambda ist eine wirklich großartige Option für diejenigen, die viel Flexibilität und Kontrolle über ihre Bereitstellung benötigen . Dienste wie DreamHost bieten einen weniger flexiblen, aber besser verwalteten Ansatz und sind eine gute Wahl für die Ausführung herkömmlicher und vieler handelsüblicher PHP-Anwendungen, insbesondere angesichts der Kosten und Verfügbarkeit guter Dev-Ops-Ingenieure auf dem heutigen Markt.

Shahzeb: Können Sie uns bitte etwas über die deutliche Verbesserung von Laravel 9 gegenüber den Vorgängerversionen erzählen? Die Community ist begeistert von dem Potenzial der Funktionen, die in der neuesten Version eingeführt werden. Was erwarten Sie von Laravel 9?

Graham: Bei Laravel 9 handelt es sich größtenteils um eine Veröffentlichung, die es uns ermöglicht, einige grundlegende Änderungen vorzunehmen und auf Symfony 6-Komponenten zu aktualisieren, von Swift Mailer auf Symfony Mailer umzusteigen und auf Flysystem 2 zu aktualisieren. Fast jede neue Funktion ist in Laravel 8 gelandet, und es sind auch neue Funktionen hinzugekommen fast jede Woche im letzten Jahr. Dries, ich und viele andere haben hart gearbeitet, um sicherzustellen, dass Laravel 8 und seine unterstützenden Pakete auf PHP 8.1 funktionieren. Sie müssen also nicht bis Laravel 9 warten, um ein Upgrade auf PHP 8.1 durchzuführen, was super cool ist.

Shahzeb: Wen sollten wir als nächstes interviewen und warum?

Graham: Ich denke, ein Gespräch mit Nuno Maduro wäre eine tolle Idee. Er arbeitet hauptberuflich an Laravel, hat aber auch einige wirklich interessante Nebenprojekte, darunter Pest, das letztes Jahr wie eine Rakete abgeschossen ist!

Shahzeb: Graham, ich bin sicher, dass sich viele Leute Notizen gemacht haben. Ich bin mir auch sicher, dass sie gerne ein Bild Ihres Arbeitsplatzes sehen würden, wenn Sie eines teilen möchten!

Shahzeb: Nochmals vielen Dank, Graham!

×

Holen Sie sich unseren Newsletter
Seien Sie der Erste, der die neuesten Updates und Tutorials erhält.

Vielen Dank, dass Sie uns abonniert haben!