Ich habe einmal gesagt, dass Programmierer keine gewöhnlichen Menschen sind; sie besitzen eine Art Superkraft. Aber das Problem ist, dass Programmierer sich dieser besonderen Fähigkeit oft nicht bewusst sind. In ihren Augen halten sie sich für gewöhnlich, genau wie alle anderen. Deshalb sollten andere Menschen – etwa ihre Kunden/Softwarenutzer – das, was Programmierer können, ebenfalls leicht tun können. Aber in Wirklichkeit kann, weil die meisten Menschen – die überwiegende Mehrheit (einschließlich der Kunden von Softwareentwicklungsunternehmen und der Nutzer, die Software kaufen) – Computer-Anfänger sind (Menschen, die sehr wenig über Computerkenntnisse/Softwarekenntnisse wissen), eine Softwarebedienung, die für einen Programmierer offensichtlich ist, wenn sie einem Kunden zur Ausführung überlassen wird, zu allerlei seltsamen Dingen führen. Das macht Programmierer sehr unglücklich.

Ich erinnere mich an eine Situation, in der ein Kunde mich anrief und sagte, das große „e“ auf seinem Computer-Desktop fehle. Ich verstand nicht – welches große „e“ fehlte? Der Kunde erklärte: Es sei das Symbol, das wie ein großes „e“ aussehe, das fehle. Ich war sprachlos. Schließlich begriff ich, dass er meinte, das IE-Browser-Symbol auf dem Desktop sei verschwunden.

Ein andermal bat mich ein Kunde, der Seite eine Suchfunktion hinzuzufügen. Ich fragte ihn: „Das System hat doch schon eine Suchfunktion; warum hier eine neue hinzufügen?“ Er sagte, das sei nicht die Suche, die er wolle; er wolle nach einem Schlüsselwort auf dieser Seite suchen. Nach weiterer Kommunikation verstand ich, dass er die CTRL+F-Tastenkombination des Browsers meinte.

Aufgrund dieser Eigenschaften der Kunden werden die Programme, die Programmierer für perfekt halten, in den Händen der Kunden zu extrem schwer zu bedienender Software. Beschwerdeanrufe klingen endlos wie eine keifende Frau auf dem Land. Spätere Analysen ergaben, dass die Grundursache darin liegt, dass Programmierer die Fähigkeit der Nutzer, die Software zu beherrschen, überschätzen und ihre eigene Fähigkeit, Software zu erstellen, unterschätzen. Infolgedessen wirkt es, wenn sie diese Kunden die von ihnen entwickelte Software nutzen sehen, wie ein solch lächerliches Verhalten, wie unten dargestellt:

在程序员的眼里,用户是这样使用他们开发的软件的


In den Augen der Programmierer nutzen die Nutzer die von ihnen entwickelte Software so

Wenn ein hitzköpfiger Programmierer auf diese Situation stößt, wird er sich unweigerlich beim Kunden beschweren. Außerdem sind Programmierer im Allgemeinen nicht gutmütig, daher begleitet sie bei der Kommunikation mit Kunden normalerweise der Projektmanager, um eine Eskalation zu vermeiden.

Obwohl Kunden Programmierern viel Ärger bereiten, stammt tatsächlich das gesamte Gefühl von Ruhm eines Programmierers von den Kunden, denn nur wenn Kunden zufrieden sind, empfinden Programmierer ein Gefühl der Erfüllung. Zum Beispiel genügen die Gesichtsausdrücke dieser Kunden unten bei der Nutzung einer neuen Software, um einen Programmierer sogar an einem Nachmittag mit starkem Smog in Peking zum Lächeln zu bringen:

用户在使用一款新软件时的样子


Wie Nutzer aussehen, wenn sie eine neue Software verwenden

Obwohl Programmierer ein hitziges Temperament haben, denken sie alle an die Arbeit und hegen keinen persönlichen Groll. Wenn in der Softwareentwicklung eine dringende Aufgabe ansteht, machen sie ohne zu klagen Überstunden. Wenn ein schwerwiegender Bug in bereits veröffentlichter Software auftritt, geben sie sich selbst die Schuld und beeilen sich, über Nacht einen Notfall-Bugfix zu erstellen. Wenn sie Benutzer nicht sofort zufriedenstellen können, verlieren sie den Appetit auf Tee und Essen und können nicht schlafen. Selbst wenn es kurzfristig wirklich keine vollständige Abhilfe gibt, lassen sie sich einige unkonventionelle Tricks einfallen – aber das sind wirksame Lösungen –, um Benutzern vorübergehend durch die Schwierigkeit zu helfen. Zum Beispiel ist unten ein Notfall-Fix-Patch:

紧急修复补丁


Notfall-Fix-Patch

Kunden sollten rücksichtsvoll gegenüber Programmierern sein. Das Leben eines Programmierers ist tatsächlich in einem sehr widersprüchlichen Zustand. Programmieren ist nicht wie andere Branchen – zum Beispiel legt ein Maurer Ziegelsteine, und jede Schicht macht die Mauer höher. Aber Programmieren ist anders. Manchmal schreibt ein Programmierer den ganzen Tag Code, schwitzt vor Angst, aber der Entwicklungsfortschritt kommt überhaupt nicht voran und manchmal geht er sogar zurück. Softwareprogrammierung ist eine Welt, die sowohl virtuell als auch real ist. Manchmal kann man nicht begreifen, warum ein Stück Code funktioniert, und manchmal ist man überrascht, dass Software, die aus solchem Code besteht, tatsächlich laufen kann, wie im Bild unten gezeigt:

软件中有鬼


In der Software spukt es

Abschließend möchte ich einige Vorsichtsmaßnahmen für den Umgang mit Programmierern erwähnen. Weil Programmierer den ganzen Tag mit Programmierlogik zu tun haben, sind sie besonders empfindlich gegenüber Ursache und Wirkung. Wenn die Kausalbeziehung in Ihren Worten nicht ganz klar ist, verwirrt das sie; wenn die Kausalbeziehung in Ihren Worten unvollständig ist, führt das dazu, dass sie das Falsche tun. Wenn es ...if, ist es am besten, danach zu verwendenthenzum Beenden, oder verwenden Sieelseum Auswahlmöglichkeiten zu geben. Das Subjekt muss eindeutig sein. Wenn es nicht eindeutig ist, tritt der im Bild unten gezeigte Unfall auf:

程序员是这样理解这个指示牌上的话


So verstehen Programmierer die Worte auf diesem Schild

Wenn du Programmierer bist, wirst du verstehen, was ich sage.