Was sind Ihre Lieblingstiere in der Softwareentwicklung?

Es gibt ein paar für mich, aber eines hebt sich von den meisten anderen ab:

Besessenheit über ein Werkzeug oder eine Technik gegenüber allen anderen, besonders wenn es offensichtliche Mängel aufweist.

Als Tech-Fan liebe ich neue Dinge – neue IDEs, interessante Programmiersprachen, neuartige Algorithmen, was hast du? Aber nur weil es neu und in Mode ist, heißt das nicht, dass es Qualität ist, und selbst wenn es Qualität ist, heißt das nicht, dass es die Antwort auf alle Probleme der Welt ist.

Versteht mich nicht falsch, die Begeisterung ist großartig . Meiner Meinung nach hat die Welt nicht genug davon. Aber Software-Ingenieure (eigentlich alle Ingenieure) müssen besonnen sein, und Sie werden erwarten, dass jeder, der eine Weile auf dem Gebiet ist, etwas Mäßigkeit zeigt.

Wenn jemand, der jahrelang Ingenieur oder Entwickler war, von einem neuen Framework usw. erfährt und einfach nicht loslässt, wie großartig es ist, nervt mich das über jeden Grund hinaus.

Leute, die DRY als Silver Bullet-Argument bei der Codeüberprüfung verwenden.

Alles ist relativ. TROCKEN ist nicht absolut gut. Bitte verwenden Sie es nicht bei der Codeüberprüfung und erwarten Sie, dass Sie das Argument gewinnen.

Ich kann es nicht ertragen, wenn Back-End-Programmierer, die stark in Java, C # und anderen stark typisierten Sprachen verwurzelt sind, in den Front-End-Bereich eindringen und ihn für alle ruinieren, indem sie auf veraltete Konzepte und Techniken dieser Sprachen schwören.

Ich meine, wen interessiert es, wenn Javascript keine statische Eingabe unterstützt? Wer kümmert sich um Typensicherheit? Wen interessiert es, wenn Sie sich nicht für das Flussmuster entschieden haben?

Dennoch schwören sie auf Sprachen, die JS in Java oder ähnliches verwandeln. besonders Typescript, ein schrecklicher Gräuel für eine Programmiersprache, die den Code unangenehm aussehen lässt. Ich meine ernsthaft, das Lesen von Typoskript-Code bereitet mir Kopfschmerzen.

Wenn ich eine einfache Funktion schreiben möchte, müsste ich Schnittstellen erstellen. Ich muss vorher alle Eigenschaften und ihre Typen kennen. Warum sich überhaupt die Mühe machen, wenn alles funktioniert?

Sicher, “3” + “3” wird “33” wenn Sie erwarten, dass es 6 , aber Fehler wie diese sind zu wenige und weit voneinander entfernt.

Klassen, und das new Schlüsselwort ist ein weiterer Pet-Peeve von mir! Ich musste diese Konzepte während meiner gesamten Karriere als Programmierer nie anwenden. Dennoch scheint objektorientierte Programmierung der heilige Gral der Paradigmen inmitten dieser Programmierer zu sein … als ob der Unterschied zwischen einer Abstraktion und einer Instanz von Bedeutung wäre. FTW! Es ist nicht so wichtig, wie du denkst. Als JS-Programmierer musste ich mich bisher nur mit 7 Datentypen auseinandersetzen

  • Streicher
  • Zahlen
  • Arrays
  • Objekte
  • Nullen
  • Nicht definiert
  • Datum (vielleicht), das größtenteils als Zeichenfolge behandelt werden kann

Wenn ich ein neues Objekt erstellen möchte, mache ich das {} . Ein neues Array? Ich mache das [] . Getan.

Ein weiteres unerträgliches Ärgernis für mich ist die Notwendigkeit einer IDE, um Ihre Arbeit zu erledigen. Einige Programmierer möchten unbedingt ganze Funktionen mit einem einzigen Tastendruck abtippen. Dazu benötigen sie Monstrositäten wie IntelliJ oder Eclipse, wenn ein einfacher Texteditor dies tun würde. Das liegt daran, dass sie einen Server, eine Befehlszeile, eine Versionskontrollsoftware, eine Bitcoin-Brieftasche, ein Teleskop, ein Sturmgewehr und einen unruhigen Spinner in einer einzigen IDE haben wollen! FTW!

Ich werde diese Antwort regelmäßig aktualisieren.

Der Clou dabei ist, dass ich Programmierer hasse, die das sein wollen

Wenn ich lieber so wäre

More Interesting

Was ist die beste Literatur zum Design von Datenbankplattformen? Warum?

Welche Vorteile bietet die Verwendung eines Tokens zur Validierung eines Benutzers, der einen REST-Service aufruft?

So strukturieren Sie mein Upwork- / Elance-Softwareentwicklerprofil

Was ist besser im Bereich SEO oder Software Testing?

Was sind Beispiele für Verstöße gegen das DRY-Prinzip in der Softwareentwicklung?

Was meinst du mit Shift Left in DevOps?

Wird der Job als Softwareingenieur aufgrund neuronaler Turing-Maschinen und tiefen Lernens automatisiert?

Sollten aktuelle CS / SE-Schüler besorgt sein über die zunehmende Betonung von CS und Kodierung an öffentlichen Schulen?

Soll ich meine freie Woche damit verbringen, natives iOS-Programmieren oder einen webbasierten Ansatz über PhoneGap, JQuery Mobile, Appcelerator usw. zu erlernen?

Wie viel sollten wir für die Automatisierung von 50 Funktionstestfällen (mit jeweils ca. 25 Aktionen pro Test) zahlen, wenn wir mit Selen automatisieren würden?

Gibt es so etwas wie eine schnelle (1-3 Tage) UX-Beratung in den USA?

Mit welcher Software können wir eine Anwendung wie Facebook oder WhatsApp erstellen und ein Betriebssystem entwickeln?

Wie haben Sie Programmierung gelernt und welche einzelne Aktivität hat Ihnen geholfen, ein starker Software-Ingenieur zu werden?

Gibt es einen Unterschied zwischen Zwei-Phasen-Verriegelung und Zwei-Phasen-Festschreibung?

Was ist ein Beispiel für einen Quellcodekommentar, in dem das Warum und nicht das Was erklärt wird?