Frage:
Wie klingt man bei Codeüberprüfungen nicht passiv aggressiv?
WestaAlger
2018-12-11 05:30:57 UTC
view on stackexchange narkive permalink

Als junger Mann in meinem ersten Programmierjob kann ich nicht herausfinden, wie ich vermeiden kann, passiv aggressiv zu klingen, wenn ich Kommentare zur Codeüberprüfung gebe oder auf solche Kommentare in meinem eigenen Code antworte. Es klingt immer wie "X macht Y, nicht Z. Es wird hier nicht benötigt." als Antwort auf etwas wie "Müssen wir hier nicht Funktion X aufrufen?".

Wie reagieren Sie also richtig auf allgemeine Überprüfungskommentare wie "Ich denke, das fehlt hier" oder "Ich denke das" wird hier nicht benötigt "? Und wie korrigiert man das Missverständnis eines Kollegen, ohne bissig zu klingen?

Ich frage, weil ein Mitarbeiter sagte: "Ich denke, dieser Kommentar beschreibt den Code nicht genau, weil X tatsächlich Y tut." Ich wollte antworten mit "X macht eigentlich kein Y. Z ist derjenige, der tatsächlich Y macht". Es klingt jedoch nur leicht snarky. Ich wäre auf jeden Fall ein wenig verärgert, wenn jemand so auf mich antworten würde.

Beziehen Sie sich immer auf Kodierungskonventionen, bewährte Praktiken und seien Sie sachlich.Erläutern oder wiederholen Sie gegebenenfalls den Zweck der Konvention / Praxis.Wenn eine Problemumgehung aus den Konventionen oder bewährten Verfahren verwendet wurde, muss diese durch ein vom Eigentümer validiertes Geschäftsbedürfnis unterstützt werden.
Was haben Sie letztendlich gesagt, wenn Sie nicht die "snarky" Bemerkung zum Missverständnis Ihres Kollegen gesagt haben?
Sechs antworten:
DigitalBlade969
2018-12-11 05:50:17 UTC
view on stackexchange narkive permalink

Er hat Ihren Code falsch verstanden.

Sicherstellen, dass das Team Ihren Code richtig versteht, war in Ordnung.

Ihr Beispiel enthält einfache Fakten und wäre als Antwort in Ordnung gewesen.

Die beste Antwort wäre

"Eigentlich macht Z Y"

Prägnant, objektiv und präzise ohne persönlichen Kontext.

In professionellen Gesprächen Sie Halten Sie sich an objektive Fakten und etablierte Verfahren .

Sie lassen persönliche Kommentare oder Bemerkungen aus, zeigen mit den Fingern oder greifen persönlich an.

Wenn jemand einen offensichtlichen Fehler gemacht hat, dessen Sie sich sicher sind, oder der Ihren eigenen Code missverstanden hat, dürfen Sie ihn nicht nur auf respektvolle Weise korrigieren, sondern auch vermeiden, ihn mit anderen Personen in Verlegenheit zu bringen oder zu tadeln vorhanden.

Die Angabe objektiver Tatsachen ist keine passive Aggression, und jeder, der von ihnen beleidigt wird, ist unprofessiv sional.

Bonuspunkte, wenn Sie auf eine Dokumentation verweisen, die beweist, dass "Z Y macht".
Wie würde man sich also respektvoll korrigieren?
@RichardU, wie ich sagte, indem er alles Persönliche aus dem Gespräch heraushielt und sich an Fakten hielt. In OPs Beispiel sollte er seinen Code am besten kennen. Einfach zu sagen, dass er ihn so geschrieben hat, dass Z Y tut, ist mehr Erklärung oder Ausdruck von Absicht alsErmahnung.
Ein bisschen abseits des Themas: OP befasst sich möglicherweise auch damit, wie der Prüfer den Zweck von Z falsch interpretiert hat, möglicherweise aufgrund fehlender Kommentare im Code.Wenn OP morgen von einem Auto zerquetscht wird (was hoffentlich nicht passieren wird), möchten wir nicht, dass die Person, die ihn ersetzt, denselben Fehler bei der Fehlinterpretation macht.TLDR: Kommentieren Sie Ihren Code immer selbstunterstützend durch Kommentare und Benennungen.
@Answers_Seeker eigentlich sehr wichtiger Punkt!Vielleicht waren seine Kommentare tatsächlich unterdurchschnittlich oder sogar falsch, was zu einer fehlerhaften Interpretation führte ...
In solchen Situationen biete ich oft an, einen entsprechenden Kommentar abzugeben.Der andere Prüfer kann dann entweder den Wert davon sehen oder Sie auffordern, ihn zu verlassen.Manchmal stelle ich PR-Fragen, die mehr damit zu tun haben, dass der Code erklärt wird, als dass er geändert wird.Vielleicht war Ihr Rezensent auch in Eile und hat einfach nicht tief genug getaucht.
didymus
2019-02-10 17:33:56 UTC
view on stackexchange narkive permalink

Dies hängt von der Umgebung und der Beziehung ab, die Sie zu dem Kollegen haben, dessen Code Sie überprüfen (oder der Ihren Code überprüft). In einigen Ländern (Ländern, Teams, Arbeitsplätzen usw.) ist es nicht akzeptabel, direkt zu sein, selbst bei Codeüberprüfungen. in anderen wird es als dumm angesehen, zu indirekt zu sein. Sie müssen Ihren Stil an die Umgebung und die Personen anpassen, mit denen Sie arbeiten.

Ich habe beispielsweise in Umgebungen gearbeitet, in denen

X durch Y ersetzen, X nicht mach {was auch immer}.

war akzeptabel und Orte waren

Das sieht für mich sehr gut aus, aber ich glaube, du solltest hier Y verwenden, weil X. würde ...

klang zu direkt.

Ich arbeite derzeit mit einem Kollegen zusammen, der sehr stolz auf seine Arbeit ist, und das fühlt sich selbst durch konstruktive Maßnahmen eher vermindert an Kritik. Ich arbeite daran, indem ich seinen Code überprüfe, während er neben mir sitzt und ihn bittet, den Code zu beschreiben. Es wird zu einer Art verzögerter Paarprogrammierungssitzung, in der wir Verbesserungen diskutieren und gemeinsam erarbeiten. Während des Prozesses fügen wir der PR Notizen hinzu, damit er später darauf zurückgreifen kann. Wir durchlaufen einen ähnlichen Prozess, wenn er eine PR von mir überprüft und ich einem seiner Kommentare nicht zustimme.

Wenn Sie Zweifel haben, sollten Sie mit Ihrem Kollegen sprechen und dies persönlich klären und dann auf seinen Kommentar antworten. Wenn der Kollege remote ist, können Sie mit einem kurzen Anruf oder einigen Sofortnachrichten ein ähnliches Ergebnis erzielen. Wenn Sie sich auf den Inhalt Ihrer Antwort geeinigt haben, auch auf etwas wie

Wie bereits erwähnt, ist dies nicht korrekt. Ich löse diese Konversation (um eine GitHub-Terminologie zu verwenden)

klingt aufgrund des Kontexts nicht snarky.

Old_Lamplighter
2018-12-11 07:03:48 UTC
view on stackexchange narkive permalink

Der beste Weg, um jemanden in einer Situation zu korrigieren, besteht darin, dies so zu tun, dass er sein Gesicht retten kann, insbesondere wenn er solche Bewertungen durchführt.

Der beste Weg, dies zu tun, besteht darin, dies zu tun indirekt.

Hmmmm ... Lassen Sie mich das noch einmal überprüfen ... Ah! Hier sind wir. Z tut Y. Es tut mir leid, wenn ich das nicht klar genug kommentiert habe.

Oder so ähnlich. Sie haben das Gefühl, dass "X tatsächlich kein Y macht. Z ist das, was Y tatsächlich tut". klingt snarky.

Eine andere Art, wie Sie das ausdrücken könnten indem Sie die Person sanft anstupsen, um sie erneut zu durchlaufen.

Lassen Sie uns noch einmal nachsehen ... Können Sie mir zeigen, was los ist?

und lassen Sie die Person Finden Sie den Fehler selbst.

Es ist besser, eine Person das Gesicht retten zu lassen, als Recht zu haben.

Wenn Sie sich unsicher verhalten, klingt es so, als würden Sie Ihren eigenen Code nicht verstehen.Es ist nichts Besonderes zu sagen "Ich habe mich in der Z-Funktion um Y gekümmert".
@LaconicDroid nein, das ist nur ein bisschen nervig.Denken Sie daran, dies sind Ihre Mitarbeiter, und Sie müssen jeden Tag mit ihnen umgehen.Es ist am besten, wenn die Leute das Gesicht retten, wenn es möglich ist.Sei nett, bis es Zeit ist, nicht nett zu sein.
Es geht nicht darum, das Gesicht zu retten (zumindest in der nicht-asiatischen Kultur) oder darum, wer richtig oder falsch ist!Es geht darum, was richtig und objektiv ist.Persönliche Gefühle, Emotionen und Booboos haben keinen Platz im professionellen Diskurs. Sie gehen nicht herum, um Menschen zu beleidigen / herabzusetzen, und sie nehmen Fakten nicht persönlich. Der Arbeitsplatz ist kein Spielplatz für Kleinkinder!Außerdem möchten Sie, wie Laconic Droid sagte, auch nicht inkompetent erscheinen, insbesondere wenn es um Ihre eigene Arbeit / Ihren eigenen Code geht.
@DigitalBlade969 Sie stellen meinen Standpunkt falsch dar.Wenn das OP auf eine Art und Weise auftreten möchte, die nicht konfrontativ ist, ist es am besten, ein Out zu präsentieren, damit sein Mitarbeiter das Gesicht retten kann.Sie möchten niemals etwas so formulieren, dass jemand öffentlich in Verlegenheit gebracht wird.Das ist nicht produktiv.Menschen sind keine Roboter und nehmen Fakten nicht allein zum Nennwert.Wenn Sie Persönlichkeiten nicht berücksichtigen, stehen Sie vor einer sehr harten Fahrt.
@RichardU zu sagen "Nein, du liegst falsch" ist wohl konfrontativ."Z macht Y" zu sagen ist emotionslos, unpersönlich und nichts als eine einfache Aussage.Es ist eine Tatsache. Wenn jemand das nicht versteht, muss er erwachsen werden. Ich weiß genau, woher du kommst, und ich stimme zu, dass du in der Lage sein musst, Menschen bis zu einem gewissen Grad zu lesen und es zu vermeiden, schroff zu sein, aber du kannst es. 'Halten Sie Wahrheit / Fakten oder korrekte Aussagen nicht zurück, um Menschen vor möglichen Beleidigungen zu bewahren. Sie greifen Menschen nicht verbal an, sondern müssen sich auch darauf verlassen, dass Kollegen mit der Wahrheit umgehen können ... um ein bekanntes Zitat zu paraphrasieren.
@DigitalBlade969 und Sie tun dies auf eine Weise, die es ihnen ermöglicht, das Gesicht zu retten.Sie können NACH dem Meeting eins zu eins mehr reden, aber wenn Sie in der Öffentlichkeit sind, bringen Sie die Leute nicht in Verlegenheit.Jetzt bin ich in Meetings sehr höflich, aber eins zu eins viel stumpfer.
@RichardU nicht im Kontext von OP.OP wurde gesagt, dass in seinem Code X Y tut, obwohl er tatsächlich weiß, dass das falsch ist und in Wirklichkeit Z Y tut. Es ist VITAL, dass jeder seinen Code richtig versteht !!Wenn er einen Fehler gemacht hat, wird er dann und dort herauskommen. Wenn er ihn jedoch abrutschen lässt, kann dieses Missverständnis das Team viel später in den Prozess beißen, mit viel größeren Konsequenzen als wenn eine Person den Code einer anderen Person missversteht und sich vor ihren Kollegen schämt!Unter anderen Umständen ist Ihr Ansatz möglicherweise besser geeignet.
@DigitalBlade969, wir beneiden Sie um Ihr Kontingent an Spock-ähnlichen Mitarbeitern, aber der Rest von uns arbeitet in der realen Welt, in der, ob Menschen bei Kommentaren wie den beschriebenen beleidigt werden sollen oder nicht, Menschen beleidigt werden.Die Frage ist, wie man mit der Realität umgeht.Zu sagen, dass es nicht die Realität sein sollte, ändert nichts.
@Kyralessa Ich bedaure, dass Sie in einem Kindergarten arbeiten. Diejenigen, mit denen ich gearbeitet habe, sind sicherlich keine Vulkanier (genug Drama), aber sie sind keine Kinder (naja, meistens). Nichts in OPs Beispiel ist passiv aggressiv! OPs Code wurde missverstanden. Ermuss das korrigieren (für das Team) oder sein Code wird möglicherweise falsch implementiert und andere rufen seine Funktionen möglicherweise falsch auf und erwarten ein anderes Verhalten. In unseren Sitzungen versuchen wir, Verbesserungen oder Aufgaben zu finden, die noch zu erledigen sind, und weisen darauf hin.Wir respektieren, es ist in Arbeit, aber es hilft, eine Liste zu erstellen und die Arbeit zu verbessern. TeamWORK, wissen Sie, nicht spielen.
Ich arbeite mit ein paar Kingons, so dass Meetings ziemlich intensiv sein können.
@DigitalBlade969 Eigentlich ist die Gruppe, mit der ich jetzt arbeite, in Ordnung.Aber jetzt arbeite ich in Europa, nicht in Amerika.Zufall?Ich muss noch ein paar Jobs in Europa arbeiten, um das sicher sagen zu können, aber ich habe bereits meinen Verdacht.
@RichardU hoffentlich haben Sie keine Romulaner oder es wird ein Blutbad zwischen ihnen und den Klingonen. Nun, tatsächlich werden Sie nur bemerken, dass Klingonen verschwinden und die Spannungen innerhalb ihrer Gruppe über das normale Niveau steigen ...
@Kyralessa interessant. Aus meiner Erfahrung heraus sind Europäer viel weniger sensibel und es dauert ziemlich lange, bis sie beleidigt sindbeleidigend, wenn es in der Tat in gutem Geist ist. Sie tarnen ihre Angriffe auch als Humor, also gibt es das auch 8D
@DigitalBlade969 Ja, besonders die Deutschen sind nicht sehr sensibel, es sei denn, Sie kommen 30 Sekunden zu spät zu einem Meeting.Und ja, die Briten sind die Großmeister von Snark.Die Japaner machen auch Spaß, solange Sie nicht die richtigen Ehrungen auslassen.
@RichardU sehr wahr. Germanen sind die Vulkanier in diesem Szenario (; und wehe denen um sie herum, wenn Pon Farr trifft oder sie die Kontrolle über ihre Emotionen verlieren ...
-1
bytepusher
2019-02-10 18:48:02 UTC
view on stackexchange narkive permalink

Ich möchte einen Ansatz hinzufügen, den ich als nützlich erachtet habe - die Bemerkung des Rezensenten, wie oben beantwortet, präzise zu korrigieren, aber auch anzubieten, einen Kommentar hinzuzufügen, die Dokumentation zu ändern oder die Funktion umzubenennen, um ihre Absicht klarer zu machen (falls möglich).

Vielleicht hat sich der Rezensent etwas beeilt und Ihren Code falsch verstanden. Aber der beste Code kann ohne viel Nachdenken gelesen und verstanden werden, und dieser Code war anscheinend nicht so einfach zu verstehen.

Natürlich kann nicht alles ganz einfach gemacht werden. Ein solcher Überprüfungskommentar weist jedoch darauf hin, dass die Lesbarkeit hier möglicherweise verbessert werden kann.

Denken Sie daran, dass Sie oder einer Ihrer Mitarbeiter diesen Code möglicherweise in einer Situation verstehen müssen, in der nicht viel Zeit oder Zeit zur Verfügung steht Ihr Geist ist auf andere Dinge gerichtet. Solche Kommentare können dann Missverständnisse und mögliche Fehler in der Zukunft verhindern - und es ist oft ein Segen für sich, nicht darüber nachdenken zu müssen.

Ich war oft dankbar, dass ich auf einen kleinen Kommentar gestoßen bin, der eine Funktion erklärt Anruf, auch in meinem eigenen Code. Dinge, die offensichtlich sind, wenn Sie tief in das Thema vertieft sind, werden mit der Zeit weniger offensichtlich, und ein paar erklärende Worte können Ihnen später viel Frust ersparen;)

Dies dient auch dazu, Respekt zu zeigen Ihr Mitarbeiter, in dem steht "Vielleicht habe ich es nicht klar genug gemacht", nicht "Sie haben das falsch verstanden, ich habe Recht".

gnasher729
2019-02-10 18:32:02 UTC
view on stackexchange narkive permalink

Sie haben Ihren Standort nicht erwähnt, und was Sie fragen, ist sehr ortsabhängig. In Großbritannien geben Sie nur die Fakten an. Wenn Sie sicher sind, sagen Sie "X macht Y, wie es soll." Wenn Sie sich nicht ganz sicher sind, sagen Sie "Ich denke, X macht Y, wie es soll". Es gibt kein "rettendes Gesicht". Ich bin in der Lage, gute Arbeit zu leisten, aber ich bin auch in der Lage, absolut dumme Dinge zu tun, und ich weiß auch, dass Sie in der Lage sind, absolut dumme Dinge zu tun. Wenn Sie mich also dabei erwischen, etwas Dummes zu tun Ich werde es einfach reparieren.

Ich weiß, dass es Länder gibt, in denen es nicht so funktioniert, in denen es als äußerst unhöflich angesehen wird, einen Mitarbeiter zu kritisieren (bis zu dem Punkt, an dem Flugzeuge abgestürzt sind, weil der Co-Pilot zu höflich war auf den fatalen Fehler des Piloten hinweisen). Ich würde gerne eine Antwort von jemandem sehen, der zum Beispiel in Indien arbeitet.

Johns-305
2019-02-11 03:43:02 UTC
view on stackexchange narkive permalink

Zunächst einmal können Sie sich nicht allzu viele Gedanken darüber machen, wie jemand anderes Ihre Kommentare interpretiert oder etwas aus Ihrem vermeintlichen 'Ton' ableitet.

Ich finde oft Leute, die jemanden beschuldigen, 'passiv-aggressive' Verhaltensweisen tun dies aus einer Verteidigungsposition heraus, nachdem einfache Tatsachenaussagen sie in einen negativen Rahmen geworfen haben, selbst wenn der Fehler sehr leicht behoben werden kann. Sie wollen den Fehler oder das Versehen einfach nicht zugeben. Zum Beispiel:

Anweisung: Die Funktionsrichtlinien besagen, dass Z Y tut.

Reaktion: OMG, warum beschuldigen Sie mich, die Spezifikation nicht gelesen zu haben? Die Dokumente sind nicht sehr gut organisiert und der Teil über Z ist nicht sehr klar. Sie müssen sich ausruhen!

In einer technischen Umgebung ist es wahrscheinlich, dass nur Fakten angegeben werden bei weitem die breiteste Anziehungskraft und Akzeptanz . Wenn jemand übermäßig defensiv wird, hat er zwischenmenschliche Probleme, und Sie müssen sich dies beim nächsten Mal nur merken.

Ich finde fast allgemein, dass Menschen vernünftig und vollkommen in Ordnung sind, entweder die Situation zu akzeptieren oder Korrekturen vorzunehmen, selbst wenn sie dies tun Ich bin schuld, wenn der Fehler / das Versehen / der Fehler das Problem ist, nicht die Person.

Warum macht Z nicht X? Das ist eine wirklich große Sache!

Seite 4 von Spezifikation 2 sagt, Z macht Y, also macht es das.

Oh, ich verstehe. Ich denke, es muss sich geändert haben.

Kein Problem. Wenn Z X ausführen muss, aktualisieren Sie einfach die Spezifikation und wir machen es möglich.



Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 4.0-Lizenz, unter der er vertrieben wird.
Loading...