Sie klingen für mich sehr unterschiedlich, und es fiel mir schwer zu sagen, welches wichtiger ist.
Sie könnten ein großartiger Software-Betreuer sein, aber selbst ein sehr schlechter Programmierer. Einige Leute sind erstaunlich darin, Code zu debuggen, sich darin zurechtzufinden, ihn zu reparieren und ihn leicht zu verbessern. Sie werden oft mit Hausmeistern verglichen, aber es ist ein schlechter Dienst: Sie können über echtes Wissen und Know-how verfügen, um die Dinge in einen besseren Zustand zu bringen.
Aber sie können immer noch furchtbar schlecht darin sein, neuen Code zu schreiben und Algorithmen zu entwerfen und zu implementieren. Sie können verstehen, warum die Dinge auf die eine oder andere Weise im Allgemeinen besser sind, und sie können sogar nachträglich die Vorteile eines Designs gegenüber einem anderen verstehen. Aber es fällt ihnen schwer, sich selbst einen auszudenken. Ihnen fehlt ein tiefes Verständnis für diese logische und problemlösende Denkweise.
Sie sind beide wichtig in meinem Kopf. Sie möchten nicht nur Hacker, die erstaunliche Lösungen finden können, sondern auch nicht wartbaren Code für die nächsten Generationen von Augäpfeln erstellen, die Ihre Codebasis untersuchen. Es kann für Prototyping und kurzlebige Projekte in Ordnung sein, aber in größerem Maßstab, das nur so lange fliegen kann.
Die erste Gruppe ist also auch wichtig. Aber mit der zweiten Gruppe könnten sie keine großartige Software entwickeln. Es ist ziemlich symbiotisch (und es ist am besten, wenn die Qualitäten tatsächlich im selben Entwickler sind). Ich denke, wenn Sie dies als ein Henne-Ei-Problem betrachten, muss ich zugeben, dass die logische Art aus historischen Gründen ein bisschen wichtiger ist, da sie zuerst existieren musste, um den richtigen Weg zu finden. Aber heißt das, dass sie in einem Software-Shop wichtiger sind? Das glaube ich nicht. Sie können großartige und erfolgreiche Software erstellen, indem Sie Dinge zusammenlegen und nicht viel erfinden.