Ich hatte immer das Gefühl, dass eines der Kennzeichen eines guten Leads jemand ist, der in jedem Entwicklungszyklus die erforderlichen zusätzlichen Schulungen anbietet. Für mich bedeutet das, dass ich nicht nur mich selbst codiere oder Code überprüfe, sondern mit mehr Nachwuchsentwicklern zusammen sitze und mit ihnen programmiere, um die Art von Landminen zu vermeiden, auf die ich getreten bin.
Hauptsächlich mache ich mir keine Illusionen darüber, dass unser Hauptziel Bildung ist - es ist nicht so. Egal, ob Sie ein Senior, ein Lead oder ein Junior-Entwickler sind, das Ziel ist nicht Ihre Erbauung. Ziel ist es immer, dem Kunden einen Qualitätscode zu liefern. Am besten pünktlich, im Rahmen des Budgets, tun, was sie wollen. Ich erkenne jedoch, dass es für mich unmöglich ist, die gesamte Arbeit selbst zu erledigen. Daher obliegt es mir, allen zu helfen, dem Team zum Erfolg zu verhelfen. Und das bedeutet, Trainingsmöglichkeiten zu erkennen, wenn sie in der Natur auftreten.
Auf Ihre Frage, ob Pull-Anfragen der richtige Ort für die Ausbildung von Junioren sind, muss ich sagen, dass es nicht ungewöhnlich ist, dass während dieser Zeit lehrreiche Momente auftreten. Hey, du wirst dich mit deinem ersten Zusammenführungskonflikt befassen müssen, lass uns das nach der Überprüfung durchgehen. Oh, sehen Sie, Sie haben keine Komponententests für Ihr DAO aufgenommen. Wir werden Ihre Überprüfung verschieben, bis wir die Gelegenheit hatten, diese neuen Methoden zu behandeln. Warum war es Ihrer Meinung nach besser, bei dieser Finanzberechnung doppelte Grundelemente zu verwenden als BigDecimals? Ja, das ist nicht wirklich ungewöhnlich.
Ich würde zwar sagen, dass dies sicherlich passieren kann, aber es ist eindeutig nicht das Hauptziel einer Pull-Anfrage. Ich habe auch nicht das Gefühl, dass der Code in einer Pull-Anfrage produktionsbereit ist. Oft ist es nicht.
Wenn Sie Feature- und Release-Zweige in einer Verzweigungsstrategie im Gitflow-Stil verwenden, werden Ihre Pull-Anforderungen eher zu Release-Kandidaten. Nicht produktionsbereit, aber etwas näheres. Sie wissen, dass Ihr Code kompiliert wird (rechts), und Sie haben genügend Test-Covfefe, um eine anständige Behauptung aufzustellen, dass er die Ziele der User Story erfüllt. Und da Sie bereits mehrere Integrationstests in Ihrer Entwicklungsumgebung durchgeführt haben, steht Ihnen eine großartige Demo zur Verfügung, falls Sie aufgefordert werden, Ihre Änderungen bei der Überprüfung Ihrer PR zu demonstrieren.
Letztendlich bin ich der Meinung, dass wir bei Überprüfungen der PR Unterstützung leisten sollten, aber diese Unterstützung bezieht sich nicht auf die allgemeine Kodierung. Stattdessen wird der vorgeschlagene Code für die Aufnahme in eine funktionierende Basis von Code in Produktionsqualität vorbereitet. Die PR bietet Entwicklern die Möglichkeit zu demonstrieren, dass sie für jede Änderung, die sie in die PR aufgenommen haben, eine Rechtfertigung und ein solides Verständnis dafür haben. Und selbst dann - selbst nachdem wir sie mit Unit-Tests, Demos und vielen Fragen belastet haben - ist nicht zu erwarten, dass die vorgeschlagenen Änderungen für die Produktion bereit sind.
Der Code ist nach all dem geschlossen. Aber dann lassen wir die Qualitätssicherung quälen.