Lautes Nachdenken - wir Programmierer lieben all diese Abstimmungen / Abzeichen / Repräsentanten, also könnte ein solches Schema in den Code-Überprüfungsprozess eines Unternehmens eingeführt werden, um eine bessere Codierung zu fördern.
Etwas wie
Sie (oder andere Personen in Ihrem Namen) können eine Bewertung (z. B. Snippet, Single Commit oder Serie von) für eine Codeüberprüfung abgeben
Andere können es kommentieren (wäre ähnlich wie Antworten in SE)
Abzeichen können vergeben / vorgeschlagen werden (manche wären gut, manche wären schlecht wie "Comment Desert" oder so)
Sie können über den Code selbst und die Kommentare und Abzeichen abstimmen (z. B. wenn jemand ein Abzeichen vorgeschlagen hat und Sie dem zugestimmt haben / nicht zugestimmt haben).
Das Ziel eines solchen Schemas wäre
Machen Sie ein bisschen Spaß, um die Verwendung von Code-Reviews zu fördern
Verbessern Sie die Qualität (in diesem Schema lernen wahrscheinlich sowohl der Code-Rezensent als auch die Rezensenten)
Reduzieren Sie die Wahrscheinlichkeit, dass Code-Reviews zu Ego-Kriegen führen.
Geben Sie einige Metriken an, um die individuelle Leistung zu messen
Könnte das funktionieren? Gedanken?
Antworten:
Extrinsische Belohnungen wie Geld, Abzeichen oder Repräsentanten funktionieren kurzfristig , wie Diäten und jedes andere Belohnungs- / Bestrafungssystem.
Stattdessen sollte eine intrinsische Belohnung wie Zweck und Autonomie verwendet werden, um langfristigere Ergebnisse zu erzielen. Es ist viel schwieriger, es in die Praxis umzusetzen als einfache extrinsische Belohnungssysteme, aber es zahlt sich aus.
Viele Experten haben zu diesem Thema recherchiert. Hier sind meine beiden Favoriten:
Daniel Pink hielt auf der TED eine großartige Präsentation zu dem Thema, das leicht zu sehen und zu verstehen ist.
Alfie Kohn , Autor von Punished by Rewards , schrieb zu diesem Thema:
Ein weiteres Problem bei Belohnungen (und Bestrafungen) besteht darin, dass sich das Verhalten der Menschen ändert. Wenn Sie beispielsweise Ihrem Mitarbeiter einen Bonus geben, werden diese unabhängig von den anderen (unternehmensweiten) Zielen auf den Erhalt dieser Boni fokussiert. Es schafft Individualismus und Wettbewerb zwischen Abteilungen und Mitarbeitern. Ressentiments werden stattfinden und jeder wird jeden beobachten. Vor allem, wenn es Ihr Ziel ist, "die individuelle Leistung zu messen".
Der Rest der Mitarbeiter kann die Regeln des widerlegen Spiel und beenden. Der Umsatzanstieg wird dann zu einem neuen Problem.
Bitte beachten Sie, dass in dieser Community viele Vorschläge zur Verbesserung der Motivation gemacht wurden .
quelle
Ja, das könnte es
Aber nur, wenn Sie es sehr sorgfältig entwerfen, sonst könnte es nach hinten losgehen. Ich habe einige Anmerkungen gemacht, aber ich dachte, ich würde meine Position zusammenfassen
Für die Reputation sollte das Hauptziel darin bestehen, eine Messung bereitzustellen, anhand derer die Mitarbeiter ihre Fähigkeitsverbesserungen im Laufe der Zeit verfolgen können. Entwerfen Sie es sehr sorgfältig und denken Sie daran, dass es schwierig ist, gute Methoden zum Messen von Fähigkeiten zu finden. Das kann ich nicht von oben tun.
Abzeichen sind hauptsächlich eine "lustige" Sache, ich würde sie hauptsächlich von eher fähigkeitsorientierten Themen fernhalten. Dh Abzeichen wie "Diese Woche Nachtschwärmer" oder eine Gruppe "Versand! Abzeichen" wären in Ordnung. Wenn Sie einige geschicklichkeitsbezogene Abzeichen wie "Die meisten Fehler behoben" oder "Die meisten Fehler gemeldet" haben, überlegen Sie genau, wie diese wahrgenommen und gespielt werden können. Bei Abzeichen sollte es mehr darum gehen, das Verhalten hervorzuheben, als es IMO zu fördern. Stellen Sie sicher, dass Sie sowohl Team- als auch Einzelabzeichen haben.
Ich würde dringend gegen negative Abzeichen empfehlen, diese Dinge sollten Spaß machen und Menschen Angst davor zu machen, Fehler zu machen, ist gefährlich. Generieren Sie stattdessen eine freundliche hilfreiche E-Mail für diese Fälle.
Ich würde dringend davon abraten, sie über Abzeichen entscheiden und abstimmen zu lassen. Die Leute können ihre Vorschläge für Abzeichen einreichen, aber da ihre Auswirkungen auf die Leute ziemlich schwerwiegend sein können, sollten die verwendeten Abzeichen durch sorgfältige Entscheidung einer Person getroffen werden, die weiß, was sie tun, und nicht durch Stimmenmehrheit.
Code Reviews sind eine interessante Idee und ich denke, eine der Möglichkeiten, wie Sie einen Skill-Wert generieren können. Das Hervorheben und Erörtern von Code kann sehr hilfreich sein. Es könnte jedoch nach hinten losgehen, wenn jeder weiß, dass er potenziell alles beurteilt, was er schreibt. Die Entwicklung könnte sich verlangsamen. Besonders bei iterativen Entwicklungen, bei denen Sie manchmal schnell etwas schreiben und dann umgestalten, möchten Sie dieses Verhalten nicht.
Möglicherweise könnte dies dadurch ausgeglichen werden, dass entweder die Person, die den Code einreicht, selbst oder eine andere Person, die nur einen Code eines bestimmten Alters einreichen kann. Trotzdem kann es schwierig sein zu wissen, welche Auswirkungen das haben wird
Am Ende denke ich, dass Sie es versuchen müssen, um zu sehen, was funktioniert und was nicht, es gibt ein gutes Buch mit dem Titel Reality is broken , das interessant sein könnte. Auch Daniel Pinks Buch "Drive" ist ein Muss.
quelle
Meiner Meinung nach , nein , da es misst nicht die gute Praxis selbst, sondern ein Symptom (wenn andere denken , es gute Praxis).
Um ein Buch von Onkel Bob zu paraphrasieren (den Titel vergessen): Guter Code scheint fast mühelos zu sein, es lässt das Problem trivial aussehen, als ob die Sprache dafür geschaffen wäre, ihn zu schreiben.
Meiner Erfahrung nach bleibt ein solcher Code unbemerkt, und erst nach einer langen Zeit stellt sich heraus, dass dieser Code nie zu Problemen geführt hat, und vielleicht erinnert man sich dann, dass das Problem vor der Einführung des Codes ein riesiges Durcheinander von Unsicherheiten war und Unbestimmtheit. Der Code, der in Bewertungen gelobt wird, ist in der Regel derjenige, den die Prüfer an einem guten Tag sehen, wenn sie nicht in der Stimmung sind, zu picken, und der die geringsten Änderungen aufweist.
quelle
Die Idee würde dem Team eine neue Dynamik verleihen. Wenn Sie das Gefühl haben, das Team ist in einem Rutsch, dann ist dies eine gute Möglichkeit, die Dinge durcheinander zu bringen.
Denken Sie daran, dass es nicht nur Einhörner und Regenbogen sein werden. Einige werden die Initiative nicht mögen, so dass die allgemeine Produktivität / Qualität darunter leiden kann. Dieses Risiko kann sich jedoch lohnen. Kommt auf deine Situation an.
quelle
Ich schlage vor, die extrinsische Motivation (was Sie vorschlagen, ist eine Form der extrinsischen Motivation) zu verwenden, um Menschen zu motivieren, Dinge zu tun, die "mechanisch", repetitiv und langweilig sind, wie:
Ich würde es nicht als Motivation für Arbeiten verwenden, die Kreativität erfordern oder bei denen die Qualität nicht objektiv gemessen werden kann. Wenn Sie zum Beispiel eine Person haben, die Widgets herstellt, und Sie können mechanisch überprüfen, ob ein Teil gut oder schlecht ist, und Sie haben einen Prozess, bei dem ein Teil nur dann hergestellt werden kann, wenn er dem genehmigten Prozess folgt, ist es produktiv, zu motivieren Der Arbeiter erhält eine enorme Belohnung für die Produktivität, da er aufgrund des Prozesses keine Abkürzungen nehmen kann, um auf Kosten der Qualität mehr Einheiten herzustellen.
Wenn Sie diese Sicherheitsvorkehrungen nicht getroffen haben, wird Ihr Versuch einer extrinsischen Motivation mit Sicherheit fehlschlagen. Die Programmierung fällt genau in diese Kategorie - wir können die Softwarequalität einfach nicht zuverlässig messen. Wenn Sie ein Widget erstellen, verlässt es die Fabrik und wirkt sich nicht auf die Arbeit aus, die Sie am nächsten Widget ausführen. Wenn Sie jedoch Software erstellen, müssen Sie diese immer wieder überarbeiten. Was Sie jetzt tun, hat langfristige Auswirkungen. Es sind diese langfristigen Effekte, die sehr wichtig sind, aber nicht gemessen werden können. Intrinsische Motivation ist ein viel nützlicherer Motivator für solche Dinge.
Das bedeutet:
quelle
Teil dieser Arbeit ist die große Anzahl von Teilnehmern, die sich nicht kennen oder täglich miteinander arbeiten müssen. Ich würde denken, dass es in einer kleinen Gruppe eher eine Möglichkeit sein würde, das System so zu spielen, dass es gut aussieht oder Ihre Konkurrenz um Beförderung schlecht aussieht. Aus diesem Grund sind formelle Peer-Bewertungen oft ein schlechtes System. In einer kleinen Gruppe sind die Leute mit dem besten Ruf diejenigen, die am politisch klügsten sind und nicht die besten Programmierer.
quelle
Die kurze Antwort lautet: Ja, es könnte funktionieren.
Die etwas längere Antwort lautet: Ja, es könnte funktionieren, aber es könnte auch nach hinten losgehen.
Ich bin nicht nur ein professioneller Programmierer, sondern auch ein Amateur-Verhaltensanalytiker.
Eine der wichtigsten Erkenntnisse der modernen Verhaltenswissenschaft ist, dass das Verhalten stark von seinen Konsequenzen beeinflusst wird.
Wenn Sie die Konsequenzen kontrollieren, können Sie das Verhalten bis zu einem gewissen Grad beeinflussen. Der Grad hängt davon ab, wie wichtig bestimmte Konsequenzen für jeden Einzelnen sind, dessen Verhalten Sie zu ändern versuchen, und wie einfach es für ihn ist, Ihre Konsequenzen zu vermeiden und andere zu finden, für die er bereit ist, zu arbeiten.
Als professioneller Programmierer ist eine Konsequenz des Schreibens von Code, dass ich bezahlt werde; Hör auf, mich zu bezahlen, und ich werde bald nicht mehr auftauchen. Die Bezahlung ist eine sehr wichtige Konsequenz für mich (ich ziehe eine Familie auf), und es gibt in meiner jetzigen Firma keine anderen Konsequenzen, für die ich bereit wäre zu arbeiten, anstatt bezahlt zu werden.
Wenn Sie mein Chef wären, könnten Sie entscheiden, welche Konsequenzen (Anreize, Verstärkungen) Sie mir bieten möchten. Aber Sie können sich nicht entscheiden, wie ich sie wahrnehme. Zum Beispiel könnte mein Chef beschließen, einen speziellen Parkplatz anzubieten, wenn ich als "Kodierer des Monats" ausgewählt werde. Wenn ich in San Francisco oder New York City gelebt und ein Auto gefahren hätte, wäre ich vielleicht bereit, dafür zu arbeiten. Aber wo ich jetzt wohne, ist das Parken kein Problem, und ich kann sowieso zur Arbeit laufen.
Meiner Erfahrung nach besteht das größte Risiko, das Sie mit der Implementierung eines Programms wie SO am Arbeitsplatz eingehen, darin, dass Sie als Partnerstimmen wahrgenommen werden, anstatt den Leuten zu zahlen, was sie wert sind.
quelle