Ich muss Konrad Rudolph widersprechen. Es gibt "ein bisschen" Informatik, von der Sie wissen sollten, dass sie Sie zu einem besseren "Programmierer der realen Welt" macht. Wenn Sie den Antworten, die Sie hier erhalten, nichts anderes nehmen, sollten Sie zumindest Folgendes berücksichtigen: Die Erfüllung der Anforderungen ist NICHT gleichbedeutend mit der Zufriedenstellung des Kunden! Die Endbenutzer werden IMMER versuchen, Ihr Programm auf eine Weise zu verwenden, an die Sie nie gedacht oder die Sie nie gedacht haben. IMMER IMMER IMMER
Um ein besserer Programmierer zu sein, müssen Sie daher zuerst ZUHÖREN. Hören Sie dem Kunden zu. Höre auf ihre Bedürfnisse. Hören Sie auf ihre Wünsche. Und vor allem, hören Sie sich ihre "Technik-Fachkenntnisse" an. Ich kann Ihnen nicht sagen, wie oft ich ein Projekt gesehen habe, das genau das war, was angefordert wurde, aber überhaupt nicht das, was der Kunde tatsächlich benötigte. Alles nur, weil der Programmierer, der die Anfragen sammelte, nicht wirklich zuhörte.
Etwas anderes, das Sie mitnehmen können, ist, wenn Sie keinen Hintergrund im UI-Design haben, jemanden zu beauftragen, das UI zu entwerfen. Ich kann IMMER eine App erkennen, deren Benutzeroberfläche vom Programmierer und nicht von einem Experten entworfen wurde. Was für Sie logisch und sinnvoll ist, ergibt für den Kunden keinen Sinn. Und wenn Ihre Kunden nicht technisch versiert sind (und wer ist das?), Wird Ihre "funktional korrekte, aber ästhetisch hässliche" Lösung bei einer Dinnerparty mit der Wärme von Stinktier erfüllt.