it-swarm.dev

Was ist falsch daran, ein Code-Affe zu sein? (Oder was ist ein Code-Affe?)

Programmierer neigen dazu, abfällig davon zu sprechen, ein "Code-Affe" zu sein. "Arbeite nicht dort, du wirst nur ein Code-Affe sein!".

Ich habe zwei Stellenangebote, eines bei einer kleinen Firma, eines bei einer sehr großen Firma (gleiches Gehalt). Mein Freund hat mir gerade gesagt, dass ich ein Code-Affe in der großen Firma sein werde und aus eigener Erfahrung weiß, dass die kleine Firma lohnender sein wird, als mich zu einem "Code-Affen" zu machen.

Ich verstehe den Unterschied zwischen einem "Code-Affen" und einem "echten" Programmierer nicht wirklich. Bitte erläutern Sie. Ich liebe das Programmieren, daher scheint mir die Idee, an einem Computer zu sitzen (d. H. Code Monkey), nicht schlecht zu sein. Was bedeutet ein Programmierer mit "Code Monkey", wenn er/sie gerne programmiert?

37
Ben B.

Code Monkey bedeutet, dass das Codieren so einfach ist, wie es ein Affe tun könnte

Es wird oft verwendet, um auf die Programmierjobs der untersten Ebene zu verweisen, kann aber auch verwendet werden, um auf jemanden zu verweisen, der nur codiert. Kein UI-Design, keine architektonischen Eingaben, keine Entwicklungsentscheidungen usw.

Es ist nichts Falsches daran, ein Code-Affe zu sein (ich nenne mich manchmal einen), aber es besteht die Möglichkeit, dass Sie, wenn Sie nur codieren, niemals in der Kette aufsteigen und die höheren Gehaltszahlen sehen, die mit dem Sehen und Sehen einhergehen den gesamten Softwareentwicklungszyklus verstehen.

33
Rachel

"Code Monkey" beschreibt einen Codierer, von dem keine Kreativität erforderlich ist. Ein solcher Codierer würde sich wiederholende, langweilige, oft mühsame Aufgaben wie das Klonen und das Ändern einer Datei usw. erledigen.

Was Sie als "echten Programmierer" bezeichnen, ist eine Person, die tatsächlich an der Gestaltung der Logik der Anwendung beteiligt ist und tatsächlich Kreativität für den Job einsetzt.

22
vartec

Zumindest für mich besteht der Unterschied darin, dass ein Code-Affe lediglich Code erzeugt, ohne wirklich darüber nachzudenken, wobei ein "richtiger" Programmierer ein professioneller ist. Sie verwenden technische Techniken, um Code mit höherer Qualität zu erstellen, das System als Ganzes zu kennen, besser zu planen und gründlicher zu entwerfen.

Zum Beispiel könnten einige Merkmale eines "richtigen" Programmierers (obwohl er sich des Frachtkultismus bewusst ist) sein:

  • Ein Programmierer ist bis zu einem gewissen Grad am gesamten Softwareentwicklungszyklus beteiligt, nicht nur am Codieren. Code-Affen können Designs oder Anforderungen codieren, die auf sie gestellt wurden, anstatt in Absprache mit ihnen erstellt zu werden.
  • Programmierer erstellen umfangreiche Designs (einschließlich Tests), bevor sie Code schreiben. Sie sind sich ziemlich sicher, dass das Design gut ist (schnell, effizient usw.), bevor sie mit dem Schreiben beginnen. Code-Affen springen direkt ein. Sie wissen nicht, ob das Design gut ist, bis sie es ausführen.
  • Programmierer übernehmen die Verantwortung für die Planung ihrer eigenen Arbeit. Code-Affen tun einfach, was ihr Manager ihnen sagt, wenn sie dazu aufgefordert werden.
  • Programmierer werden als Individuum für ihre Kreativität und Fähigkeiten geschätzt. Code-Affen werden als austauschbare Blackboxes angesehen, die Code ausgeben.
  • Programmierer sind anpassungsfähig; Sie können ihre Fähigkeiten auf zahlreiche Bereiche, Sprachen usw. anwenden. Code-Affen sind übermäßig spezialisiert und gehen verloren, wenn sie mit einem neuen Framework arbeiten müssen.
  • Programmierer versuchen immer, sich als Profi zu entwickeln. Code-Affen bleiben dort, wo sie in Bezug auf Fähigkeiten und Erfahrung sind.

Ich habe hier zwei Punkte an entgegengesetzten Enden eines Spektrums verwendet - ich vermute, dass die meisten Jobs irgendwo dazwischen liegen werden. Darüber hinaus ist es unwahrscheinlich, dass eine gesamte Karriere am selben Ort bleibt - ein gutes Unternehmen wird sich bemühen, seine Mitarbeiter durch Schulung und berufliche Weiterentwicklung zum Programmierer zu bewegen. Es kann sich lohnen, einen Junior-Programmiererjob am Ende des Code Monkey anzunehmen, wenn der Arbeitgeber über ein Abschlussprogramm oder ähnliches verfügt, das letztendlich zu einem "richtigen" Programmiererstatus führt.

16
Scott

"Code Monkey" 'code mon.key' (/ koʊd// ˈmʌŋki /)

Ein "Code Monkey" ist ein abfälliger Begriff, der verwendet wird, um einen Programmierer zu beschreiben, der:

  • Führt Programmieraufgaben durch, die als äußerst einfach oder ohne echte Herausforderung angesehen werden.
  • Es ist nicht erlaubt, Probleme zu lösen oder am Design der Anwendung teilzunehmen.

Jetzt "real" Programmierer haben manchmal auch von Zeit zu Zeit diese Art der Codierung vorgeformt.

Der Hauptunterschied ist jedoch, dass ein "Code-Affe" keine Wahl hat, etwas anderes zu tun.

Ein "Code Monkey" könnte verwendet werden, um entweder die Position OR Fähigkeit

6
Darknight

Laut Jargon-Datei kann sich ein Code-Affe beziehen auf:

  1. Eine Person, die nur in der Lage ist, Code zu schleifen, aber nicht in der Lage ist, die übergeordneten Aufgaben der Softwarearchitektur, -analyse und -design auszuführen. Leicht beleidigend. Wird oft für die jüngsten Leute in einem Programmierteam angewendet.

  2. Jeder, der Code für seinen Lebensunterhalt schreibt; ein Programmierer.

  3. Eine selbstironische Art, die Verantwortung für eine Managemententscheidung abzulehnen oder sich darüber zu beschweren, mit solchen Entscheidungen leben zu müssen. Wie in "Frag mich nicht, warum wir einen Compiler in COBOL schreiben müssen, ich bin nur ein Code-Affe."

Laut Jonathan Coulton ein Code-Affe:

  1. Wenn sie mit unfairer Kritik an ihrem Code konfrontiert werden, werden sie eine ziemliche Wut gegen den Kritiker aufbauen, aber wenn sie Gefahr laufen, ihren Jobstatus zu verletzen, wird die Wut aufgestaut bleiben und nichts sagen (sie werden behaupten, dass sie es nicht sind verrückt, nur stolz.)
  2. Mag Fritos, Tab und Mountain Dew.
  3. Haben Sie eine sensible Seite, die sie lieber nicht oder eher nicht zeigen möchten (sie haben große, warme, verschwommene "geheime" Herzen).
  4. Sie wissen, dass sie in einer Sackgasse arbeiten, und anstatt zu diesem Job zu kommen, wachen sie lieber auf, essen einen Kaffeekuchen, nehmen ein Bad und machen ein Nickerchen.
  5. Versucht sich selbst davon zu überzeugen, dass ihr Job "auf kreative Weise erfüllt" wird, aber tief im Inneren wissen sie, dass das so eine Menge Mist ist.
  6. In sozialen Situationen nicht so gut.
  7. Alles in allem haben sie noch einen guten Ausblick auf ihre Zukunft.

In aller Ernsthaftigkeit kann ein Job Sie nicht zu einem Code-Affen machen, nur Ihr Verhalten und Ihre Einstellung können dies tun.

4
Robert

Es gibt ein ganzes Kapitel über Arten von Programmierern in Pete Goodliffes "Code Craft" . Alle Aspekte dessen, was "Code Monkey" bedeutet, werden in den anderen Antworten erwähnt. Was ich hervorheben möchte (und was Goodliffes Text zeigt), ist, dass Sie Vor- und Nachteile für alle Arten finden können. Je nach Beruf und Persönlichkeit kann es gut/wünschenswert/erfüllend sein, der Code-Affe des Teams zu sein, der die Ideen/Konzepte/Pläne durch die Erstellung von "Beautiful Code" Wirklichkeit werden lässt.

3
Ekkehard.Horner

Wenn Sie ein guter Programmierer sind, werden Sie ein sehr guter Programmierer sein, egal wohin Sie gehen. Mein Vorschlag wäre übrigens, ein Entwickler zu sein. In dem Sinne, dass Sie ein Code-Affe sind, ist es eine Beziehung, die Sie selbst aufbauen oder zu der das Unternehmen Sie zwingt. Ein Code-Affe zu sein bedeutet, dass Sie sich nur an ein einfaches Werkzeug oder eine einfache Technologie halten und sich in einem einzigen Entwicklungsmodus für kleinere Dinge befinden. Sie wissen, dass Ihr Potenzial darin besteht, viel größere Dinge zu tun, wenn es Ihr erster Job ist die größere Firma, auch wenn sie dich für einige Zeit auf Affenebene hält und vertraue mir, wenn die Firma groß ist und ich bin sicher, wenn du hart arbeitest, wirst du ein Code Godzilla kommen !!! Wenn Ihr Freund sagt, dass das Unternehmen groß ist und Sie in Code-Geld-Manier gehalten werden, liegt er falsch. Unternehmen wachsen groß, weil sie große Probleme im industriellen Maßstab angehen und an größeren Design- und Entwicklungsproblemen arbeiten. Kleine Unternehmen tun das selten, aber das bedeutet nicht, dass kleine Unternehmen nicht wachsen werden oder dass Sie in ein paar Monaten Teamleiter werden, wie wir alle, Sie werden die Leiter erklimmen.

0
Wajih