Ist Programmieren schwer?
Diese Frage stellen mir viele Nicht-Programmierer. Damit rangiert sie auf einer Stufe mit Fragen wie „Arbeiten Programmierer von zu Hause aus?“ und „Was für eine Ausbildung braucht man, um Programmierer zu werden?“ Wissbegierige Menschen wollen es wissen.
Aber im Gegensatz zu einigen dieser Fragen, ist diese hier ziemlich schwierig. Es ist eine einfache Frage, aber die Antwort ist sehr nuanciert.
Lassen Sie uns also ins Detail gehen und Ihnen helfen zu verstehen, ob Programmieren schwierig ist oder nicht.
Ist Programmieren schwer? Die kurze Antwort
Zunächst wollen wir die Frage mit einer kurzen und direkten Antwort angehen. Das wird die Grundlage für den Rest des Beitrags bilden.
Ist Programmieren schwer?
Nun, wie Berater gerne sagen, „es kommt darauf an“. Ob Programmieren schwer ist oder nicht, hängt von vielen Faktoren ab, z. B. von der Art der Programmierung und von der Denkweise des Einzelnen. Die kurze Antwort lautet also, dass die Bandbreite der Programmierung von überraschend einfach bis wahnsinnig schwierig reicht.
Betrachten Sie es einmal so. Versuchen Sie, einige dieser Fragen auf der Grundlage Ihrer Erfahrungen zu beantworten:
- Ist es schwierig, Basketball zu spielen?
- Ist es schwer, Portugiesisch zu sprechen?
- Wie ist es mit dem Autofahren? Ist das schwer?
Sie sehen, warum ich mich zurückhalte und sage: „Es kommt darauf an.“
Menschen neigen dazu, sich von der Programmierung übermäßig einschüchtern zu lassen
Ich werde jedoch eine etwas einschränkende Meinung anbieten. Insbesondere denke ich, dass Nicht-Programmierer dazu neigen, die Schwierigkeit des Programmierens dramatisch zu überschätzen.
Haben Sie jemals jemanden so etwas sagen hören:
Oh, ich bin einfach kein Mathe-Typ!
Nun, das höre ich oft. Aber ich höre das Gleiche noch öfter über das Programmieren. Und ich finde das ironisch, denn während einige Bereiche der Programmierung wirklich Mathematik erfordern, ist das bei vielen nicht der Fall. Meiner Meinung nach ist das Programmieren eine viel vielfältigere Angelegenheit als „Mathe“.
Ich glaube wirklich, dass viele Leute davon ausgehen, dass sie es nie als Programmierer schaffen würden, aber sie liegen völlig falsch. Es ist ein viel zugänglicheres Fach, als die Welt zu glauben scheint.
Lassen Sie uns mit einigen Programmiermythen aufräumen, jenseits der Mathe-Mythen
Um den Punkt wirklich zu verdeutlichen, lassen Sie uns einige weitere Missverständnisse über das Programmieren betrachten, jenseits des Mythos, dass Programmierer wirklich gut in Mathe sein müssen.
Irrtum 1: Programmierer sind Elite-Hacker, wie der Typ in Mr. Robot
Unabhängig von Ihrem Alter gibt es irgendeinen Film aus Ihrer Kindheit, der Programmierer als Bond-ähnliche (oder Bond-Bösewicht-ähnliche) Hacker darstellt. Als ich aufwuchs, war es der Film Sneakers. Wenn Sie etwas später als ich aufgewachsen sind, hatten Sie vielleicht das Pech, Hackers oder Swordfish zu sehen. Heutzutage hat sich das Genre verbessert, und vielleicht gefällt dir Mr. Robot.
Aber egal, ob der Film großartig ist, wie Sneakers, oder schrecklich, wie Hackers, du hast immer noch Hacker-Protagonisten und Hacker-Antagonisten, die sowohl quasi soziopathisch als auch unglaublich brillante Programmierer zu sein scheinen.
Das ist nicht das wahre Leben. Es ist nicht einmal echtes Hacken, geschweige denn alltägliches Programmieren. Gehen Sie also nicht davon aus, dass man zum Programmieren Würfel auf einem Bildschirm bewegen muss, oder was auch immer Hugh Jackman in Swordfish macht. Normalerweise muss man nur viel googeln.
Irrtum 2: Man braucht einen Abschluss in Informatik
Wir haben das schon sehr ausführlich behandelt, also werde ich hier nicht weiter darauf eingehen. Aber nein, man braucht keinen Abschluss in Informatik, um zu programmieren. Sie brauchen auch keinen Handelsabschluss, und Sie müssen vielleicht nicht einmal ein Bootcamp besuchen.
Diese Dinge werden es Ihnen erleichtern, den ersten Job zu bekommen, aber sie sind nicht erforderlich. Wenn Sie sich also fragen: „Ist Programmieren schwer?“, dann verwechseln Sie wahrscheinlich die Hürden, die Sie überwinden müssen, mit der Tätigkeit selbst. Es gibt keine Voraussetzungen für das Programmieren, die über einen Notizblock und das Herunterladen eines Interpreters oder Compilers hinausgehen.
Irrtum 3: Programmierer haben furchtbare soziale Fähigkeiten
Dieser Irrtum lässt Sie vielleicht ein wenig den Kopf kratzen. Sie denken wahrscheinlich: „Was hat die Vorstellung, dass Programmierer schreckliche soziale Fähigkeiten haben, mit mir zu tun oder damit, warum Programmieren so schwer ist?“
Nun, es ist subtil, aber real. Die Welt schaut sich Fernsehsendungen und Filme an, in denen man fähige Programmierer an ihrer Neigung zu „Strebern“ erkennen kann.
So schleicht sich die umgekehrte Logik ein und man denkt: „Wenn ich nicht wahnsinnig sozial unbeholfen bin, könnte ich dann jemals ein ‚echter‘ Programmierer sein?“
Ja, das kann man. Programmierer nehmen an vielen Konferenzen und Treffen teil, halten Vorträge, gründen Gemeinschaften und haben ein tolles, normales soziales Leben.
Irrtum 4: Programmierer sind sofort gut in allen Dingen, die mit Computern zu tun haben
Ich selbst habe einen Abschluss in Informatik und dann einen Job als Programmierer. Und als ich das tat, nahm jeder sofort an, dass ich ein Experte in Sachen Computer bin.
- Erik, mein Computer macht so ein komisches Geräusch – was glaubst du, was los ist?
- Hey, ich bekomme den Fehler #90314, wenn ich versuche, MS Word zu schließen. Was bedeutet das?
- Welche dieser Grafikkarten ist die beste?
Alle diese Fragen habe ich gehört. Und im Grunde habe ich die Antwort einfach gegoogelt (wenn ich nicht gerade sagte: „Wow, ich weiß es wirklich nicht.“). Ich verdiente meinen Lebensunterhalt mit dem Schreiben von Software, aber das bedeutete nicht, dass ich alles und jedes über Computer wusste.
Ich erwähne das, weil man nicht denken sollte, dass man alles und jedes über Computer wissen muss, um Programmierer zu sein.
Es gibt eine Menge Vielfalt in der Programmierung
Nachdem wir mit einigen Mythen aufgeräumt haben, lassen Sie uns einen Blick auf die Realität der Programmierung werfen. Und die Realität ist, dass sie tatsächlich sehr vielfältig ist. Hier ist nur eine kleine Auswahl der Dinge, die Menschen unter dem allgemeinen Begriff „Programmieren“ tun:
- Gestaltung des Layouts und der visuellen Eigenschaften einer Webseite.
- Erstellung von Algorithmen für künstliche Intelligenz.
- Schreiben von manuellen Aufgaben, um sie zu automatisieren.
- Komplexe statistische Modellierung.
- Erstellung einfacher, wiederholbarer mobiler Anwendungen.
Und das ist nur ein winziger Auszug aus den verschiedenen Arten der Programmierung. Damit sind noch nicht einmal all die verschiedenen Rollen angesprochen, die man einnehmen kann, um zu diesen Bemühungen beizutragen.
Es gibt so viel Abwechslung im „Programmieren“ wie im „Geschäftsleben“.“
Einige Programmierrollen sind zugänglicher
Angesichts dieser Vielfalt möchte ich ein wenig darauf eingehen, welche Rollen zugänglicher erscheinen.
Ich werde mich ein wenig von dem Spektrum „leicht bis schwer“ entfernen, nur weil das so sehr davon abhängt, was man als Einzelperson als schwierig empfindet. Ich bin zum Beispiel immer sehr gut in Mathe und Algorithmen gewesen, aber ich bin ehrlich gesagt schrecklich in Design und Layout. Sie haben vielleicht gegenteilige Neigungen und halten mich für lächerlich, wenn ich sage: „Einen Sortieralgorithmus zu programmieren ist einfach“, und kontern mit etwas, das ich ebenso lächerlich fände: „Eine schöne Webseite zu gestalten ist einfach.“
Verstehen Sie also, dass ich nicht kategorisch sage, was einfach oder schwer ist. Stattdessen weise ich auf Dinge hin, die Sie vielleicht nicht bedacht haben, wenn Sie das Programmieren immer nur als hochgradig mathematisch betrachtet haben.
- Es gibt Leute, die in der Programmierung tätig sind, die sich weitgehend auf Layout und Benutzererfahrung konzentrieren. Das bedeutet, dass sie sich stark mit der Ästhetik der Anwendung und der Art und Weise, wie die Benutzer mit ihr interagieren, beschäftigen.
- Andere Programmierer konzentrieren sich hauptsächlich auf Daten und Datenbanken. Anstatt große Software mit komplexen Befehlen zu erstellen, konzentrieren sie sich mehr auf die eigentlichen Daten und die Überlegungen zu diesen Daten.
- Eine weitere Disziplin ist näher an Betrieb und Support. Manche Leute arbeiten viel mit Computern als „Power-User“ und lernen programmieren, indem sie hier und da lernen, wie sie ihre manuelle Arbeit automatisieren und effizienter gestalten können.
Und das sind nur einige Beispiele. Verstehen Sie also, dass es, auch wenn Ihnen das Programmieren schwer erscheint, Rollen darin geben kann, die tatsächlich zugänglicher erscheinen.
Programmieren ist jedoch fremd, was bedeuten kann, dass Programmieren schwer ist
An dieser Stelle möchte ich ein wenig den Gang wechseln. Ich habe das Gefühl, dass ich viel Zeit mit dem Thema „Hey, Programmieren ist nicht so schwer, wie du denkst.“ verbracht habe. Und das ist wahr. Ich glaube, viele Leute würden die Frage „Ist Programmieren schwer?“ mit „Ja“ beantworten, einfach weil sie nicht wissen, was Programmieren bedeutet.
Aber ich werde das hier ein wenig abschwächen. Programmieren ist insofern schwierig, als es von dir verlangt, auf eine Weise zu denken, die du nicht gewohnt bist.
Um zu verstehen, was ich meine, denke an den Umgang mit Alexa.
Alexa kann eine Menge taktischer Fragen beantworten, und sie wird dich manchmal erfreuen und überraschen. Aber sie ist auch wirklich frustrierend. Ihre Computerhaftigkeit zeigt sich manchmal, wenn sie grundlegende menschliche Interaktionen auf komische Weise missversteht.
Denken Sie daran, dass Alexa, soweit es Computerprogramme betrifft, vollständig darauf optimiert ist, Sie zu verstehen. Sie müssen extrem präzise, wortwörtlich und stumpfsinnig sein, wenn Sie mit ihr sprechen, und sie ist dazu da, Sie zu verstehen.
Der Compiler (das Ding, das Ihren Code in die Tat umsetzt) ist wie Alexa, aber er ist nicht dazu da, Ihnen das Leben leicht zu machen. Er ist darauf ausgelegt, den Nutzen zu maximieren. Wenn Sie also im Umgang mit Alexa präzise sein müssen, beschreibt präzise nicht einmal ansatzweise, was der Compiler will. Verwechseln Sie ein Semikolon mit einem Doppelpunkt, und Sie können einen Computer zum Absturz bringen.
Ist Programmieren also schwer? Ja, in dem Sinne, dass es von Ihnen verlangt, auf eine Art und Weise zu denken, wie es die meisten Menschen normalerweise nicht tun.
Programmieren auf dem neuesten Stand der Technik ist legitimerweise schwer
Um mit dem Thema „Ja, Programmieren ist schwer“ fortzufahren, lassen Sie uns bedenken, dass es Bereiche in der Welt des Programmierens gibt, die viel Geschick und Übung erfordern, um sie zu betreten. Denken Sie nicht zu viel darüber nach. Manchmal ist Programmieren wirklich schwer.
Fortgeschrittene Dinge mit Robotik, Blockchain, künstlicher Intelligenz, Handelsalgorithmen usw. zu tun, erfordert viel Geschick, Übung, Talent und Wettbewerbsdrang. Einige der großen Silicon-Valley-Firmen zahlen riesige Gehälter an Softwareentwickler, und das tun sie nicht für jeden, der zufällig vorbeikommt.
Es gibt Spezialgebiete in der Welt der Programmierung, für die man den Blitz in der Flasche braucht, in dem Sinne, dass man Übung, Talent, Intelligenz und Glück braucht. Darüber hinaus gibt es Rollen, Positionen, Herausforderungen und Situationen, die nicht viele Menschen adäquat ausfüllen können. Programmieren kann ziemlich schwer sein.
Wie alles andere auch, ist es sehr vielfältig
Aber letztendlich ist es wirklich unterschiedlich. Denken Sie daran, was ich zu Beginn gesagt habe.
Ist Basketball schwer? Nein, wenn du meinst: „Kann jeder einen Ball aufheben und ihn zum Korb werfen?“ Ja, wenn du meinst: „Wie stehen die Chancen, dass Golden State mich unter Vertrag nimmt, um neben Steph Curry zu spielen?“
Ist es schwer, Portugiesisch zu sprechen? Nun, wahrscheinlich nicht, wenn man in Brasilien oder Portugal geboren wurde. Aber wahrscheinlich ja, wenn man 70 Jahre alt ist und noch nie etwas anderes als Japanisch gesprochen hat.
Ist Programmieren also schwer? Ja und nein. Ja, es ist schwer, es auf einem Spitzenniveau oder in einem hochspezialisierten und wettbewerbsorientierten Bereich zu tun. Aber nein, es ist nicht schwer, damit anzufangen. Und es ist sicherlich nicht zu schwer für Sie.
Dieser Beitrag wurde von Erik Dietrich geschrieben. Erik ist ein Veteran der Softwarebranche und hat so ziemlich jede Position in dieser Branche bekleidet: Entwickler, Architekt, Manager, CIO und schließlich unabhängiger Management- und Strategieberater. Dank dieser umfassenden Erfahrung kann er zu allen Personengruppen der Branche sprechen und mehrere Bücher und unzählige Blogbeiträge auf Dutzenden von Websites verfassen.