Mit PHPStan kann man einen hervorragenden ersten Schritt zu einer nachhaltigen Softwareentwicklung machen. Roland Golla hat sich seit Jahren auf Website Testing und Refactoring spezialisiert. Seine PHP Trainings sind dabei von Inhouse mit der Funktastatur in eine wöchentliche „Developer-Sprechstunde“ konvertiert. Auf Augenhöhe, mit Spaß, klaren Zielen und vor allem als Team. In dem Artikel stellen wir das neue Konzept von Never Code Alone vor.
Über 10 Jahre Senior PHP Developer und noch nicht einen PHPUnit Test geschrieben
„Die Situation darf uns nicht ständig erschrecken, wir müssen anfangen, Menschen, Teams und guten Arbeitgebern zu helfen.“ ärgert sich Roland Golla immer wieder um die deutliche 2. Klassengesellschaft der PHP Development Szene. Legacy Code ist ein sehr großes Problem. Gerade im Agenturgeschäft liegt der Fokus auf „fertig werden“. Und so gibt es hier viele gestandene PHP Senior Developer, die leider keinen Zugang zu Werkzeugen bekommen, die sie persönlich, das Projekt, Kunden, das Team und alles weitere nachhaltig weiterbringen. „Das darf nicht mehr peinlich sein, sondern die Revolution der Developer muss auch mal beginnen und ein „Nein“ zu Kopfschmerzen nicht mehr als Arbeitsverweigerung ausgelegt werden.
PHPStan in Stunde 1 auf Level 9 bekommen – Das war eine tolle Session
Die statische Code-Analyse für PHP Projekte ist ein schnelles Refactoring Tool. Sie kann direkt in bestehende Projekte integriert werden und braucht kein komplettes und lauffähiges System. Die Laufzeit ist extrem schnell und das ganze kann sehr einfach in bestehende CI/CD Build Pipelines eingebaut werden. Ein Tool eignet sich hier besonders gut für den Einstieg und bringt noch echte Gamification mit. PHPStan ist ein super leichtgewichtiges Tool, das starke Features bietet und optimal für den Einstieg in die Welt der statistischen Codeanalyse geeignet ist. Roland Golla stellt das Tool gerne als erstes aus seiner PHP Toolchain vor. So hat man auf jeden Fall einen sehr guten PHP Linter, kann kontinuierlich das Projekt verbessern, neuen Code deutlich besser schreiben und gemeinsam im Team PHP Wissen aufbauen und vertiefen. In der ersten Session konnte der PHP Consultant dann auch noch etwas über TYPO3 und den Null Operator „?“ lernen. Erstaunlicher Weise war der Code des Beispiels Projektes schon so gut, dass erst ab Level 6 Fehler gefunden wurden. So haben wir es dann gemeinsam auf 8 und mit ein wenig Anstrengung sogar auf 9 geschafft. Toll.
Komprimiertes Wissen verständlich, praktisch, im eigenen Projekt
Noch einmal von der grünen Wiese starten. Direkt alles Best Practice und mit TDD – Test Driven Development. Aber erstmal wird so schnell kein komplett neues Projekt kommen und auch dann müsste sehr viel Wissen zusätzlich aufgebaut werden. Aber das ist nicht der Weg. Tatsächlich verbessert man kontinuierlich seine Fähigkeiten und damit dann das eigene Projekt. Dabei haben die Werte agiler Methoden und die der Open Source Community einen ganz hohen Stellenwert bei den NCA PHP Trainings. Dabei geht es darum, gemeinsam Wissen zu teilen und auf ein größeres Ziel mit jedem Schritt näher zu kommen. Also kein Frontalunterricht, mit einem externen Experten, der alles besser weiß und kein Verständnis für den Ist-Zustand hat. Und das ganze natürlich direkt im bestehenden Projekt als Team implementieren. Es soll ja alles auch ankommen und auch das Management und der Kunde überzeugt werden. So sitzen alle wieder an einem Tisch und ziehen an einem gemeinsamen Strang.
Probleme auf die keiner Lust hat machen wir gerne, denn da liegt unsere persönliche Grenze
Gerade in Legacy Projekten gibt es auch immer wieder Überraschungen, die noch die zuvor ein Mensch gesehen hat. PHPStan führt dabei ganz schnell an Stellen, derern korrektur harte Arbeit ist. Hier würde man sich nur die Zähne ausbeißen ohne einen echten Mehrwert für das Team bei der gemeinschaftlichen Arbeit zu finden. Das macht die Never Code Alone Community gerne mit ihren engagierten Open Source Enthusiasten. Denn genau das ist es, was wir lernen und deutlich verbessern wollen. Wie wir das Nerd Gen in den Teams finden, ihnen Lösungen zeigen und die Arbeitsbedingungen verbessern. Schon damals haben wir gesagt „20% mehr Developer werden gesucht, macht eure Leute doch einfach 20% besser“. Aber natürlich stehen einem solchen Start auch Barrieren im Weg. Unsere Experten haben sich seit Jahren auf das Refactoring von Legacy Anwendungen spezialisiert. Und das tun wir, weil wir damit das Internet zu einem besseren Ort machen.
2 Tage 2 Trainings auf 3 Workshops und Basis Setup – die „Entwicklungshilfe NRW“ ist wieder da
Damals vor Corona hat sich Roland Golla mit der Bahncard in leere und pünktliche Züge gesetzt und 20-30 2-tägige vor Ort Consultings bei Teams gemacht. Gemeinsam hat man mit dem Funktastatur-Tool Handling, automatisierten Tests und Refactoring direkt in das eigene Projekt bekommen. So kam das Wissen direkt in den Fingern an und nicht zu kurz. Aber das Format ist leider nicht nachhaltig. Das neue Wissen kann nicht direkt angewendet werden, die Tests werden rot und die Success Story bleibt aus. Viel besser ist es, wöchentliche 90 Minuten Coachings zu machen. Das lässt sich gut in die Woche implementieren, verbessert kontinuierlich das Projekt. Und die NCA Consultants können die Coachings sehr gut vor- und nachbereiten.
1 Kommentar
[…] Eine .vimrc-Datei ist klein und mit allen Linux-Systemen kompatibel. So funktioniert das Setup auf meinem lokalen Dell mit Ubuntu, meinem Mac-Agenturrechner und ich kann es auch auf jeder Docker- und DDEV-Instanz sofort zum Laufen bringen. Das bedeutet, ich muss meinen eigenen Rechner nicht immer nutzen, um mein persönliches Setup zu haben. Innerhalb weniger Sekunden wohlgemerkt. Open Source, öffentlich, robust, einfach, sehr schnell und zu 100% zuverlässig. Im Vergleich dazu ist PhpStorm eher träge. Eine lange Installation, das Übertragen der Konfiguration ist nicht so intuitiv. Alle Live Templates ggf. mit lokalen Setups zu vereinen, ist einfach schwer. Dazu kommt dann die Lizenz. Natürlich ist das auch alles machbar. Aber es ist eben nicht Open Source und somit nicht meine DNA. Bild und Link https://blog.nevercodealone.de/phpstan-macht-einfach-spass-grundstein-fuer-nachhaltige-softwareentwi… […]