![](https://miro.medium.com/max/60/1*cUOknyEHrQ6wGqynmp__Eg.jpeg?q=20)
As a technical writer, my mission is to make complex topics easy to understand, so you won’t find much technical jargon in this article. I could rant and rave about object-oriented programming and data structures, but if you’re new to coding and computer science, this won’t mean much to you (yet). The purpose of this article is to give you a very broad and simple introduction to the world of programming, and to help you figure out how (and what) to start learning.
Welche Programmiersprache sollte ich zuerst lernen?
Dies ist die häufigste Frage, die ich seit der Veröffentlichung von What I Wish I Knew Before I Learned To Code erhalten habe. Die meisten Leute gehen davon aus, dass es eine offensichtliche Wahl gibt, aber die Antwort ist nicht immer so klar.
Viele Coding-Bootcamps konzentrieren sich ausschließlich auf JavaScript, vielleicht in der Annahme, dass jeder, der ein Entwickler sein will, einfach mit Front-End-Arbeiten beginnen sollte. JavaScript ist so ziemlich unvermeidlich, wenn man in die Frontend-Entwicklung einsteigen will, aber viele Leute stürzen sich darauf, bevor sie überhaupt darüber nachgedacht haben, was sie mit dem Erlernen des Programmierens erreichen wollen.
Viele Informatik-Programme beginnen mit Python, vielleicht weil es eine einfache Syntax und eine robuste Dokumentation hat, was es zu einer großartigen Sprache für einen Anfänger macht. Hey, Python ist großartig für alle möglichen Dinge, einschließlich Data Science, warum also nicht zuerst diese Sprache lernen? Es ist schließlich eine Allzwecksprache.
Das Problem ist, dass viele Leute sich in den Kopf setzen, dass sie „programmieren lernen“ wollen, aber sie halten nicht inne, um darüber nachzudenken, was sie lernen wollen.
Beim Programmieren geht es nicht darum, sich eine Sprache auszusuchen, ihre Syntax zu lernen und dann später herauszufinden, was man damit machen kann.
Wenn Sie Entwickler werden wollen und nicht sicher sind, wo Sie anfangen sollen, rate ich Ihnen dringend, mit dem Ende zu beginnen. Das Endergebnis. Was wollen Sie verdienen?
Wenn die Antwort „viel Geld“ ist, dann gehen Sie los und stöbern Sie in den Stellenangeboten und suchen Sie sich die Sprache aus, nach der Ihre bevorzugte Firma sucht. Aber viel Glück dabei, etwas zu lernen, ohne ein konkretes Ziel vor Augen zu haben.
Schließlich spielt es keine Rolle, wie „leicht“ oder „schwer“ eine bestimmte Sprache zu lernen ist. Wissen Sie, was wirklich schwierig ist? Der Versuch, eine Sprache über ihre Grenzen hinaus zu bringen, um etwas zu erschaffen, das mit dieser Sprache nicht möglich ist (oder nicht sein sollte).
Ich bin mir nicht sicher, was ich machen will, aber ich weiß, dass ich die Herausforderung des Programmierens genieße.
Fair genug – aber irgendwann müssen Sie erkennen, dass Sie versuchen, etwas Herausforderndes ohne Kontext zu lernen. Das ist so, als würde man versuchen, eine Fremdsprache zu lernen, aber zugeben, dass man nicht einmal weiß, wo sie gesprochen wird und dass man kein Interesse daran hat, jemals ein Wort davon laut zu sprechen. Sie können so viel kontextlose Grammatik lernen, wie Sie wollen, aber Sie werden nie ein Linguist sein.
Was sind einige der Dinge, die Sie machen können?
- Webseiten
- Computerspiele
- Mobile Apps (iOS? Android?)
Was sind einige der Dinge, die Sie machen können?
- Datenwissenschaft
- Künstliche Intelligenz
- Maschinelles Lernen
- Cybersicherheit
- Technisches Schreiben
- Datenbankadministration
Diese Liste ist natürlich nicht allumfassend, aber Sie verstehen den Punkt. Was genau wollen Sie tun? Überlegen Sie sich das, bevor Sie eine Programmiersprache wählen, mit der Sie beginnen. Während einige Leute sagen, dass es egal ist, welche man wählt, solange man sie gut lernt, werden Sie wahrscheinlich feststellen, dass das nicht der beste Rat ist – besonders wenn Sie es schon versucht haben und gescheitert sind.
Sie sollten sich wahrscheinlich nicht monatelang mit JavaScript-Herausforderungen beschäftigen, wenn es Ihr Traum ist, das nächste Fortnite zu entwickeln, genauso wie Sie keinen Kurs in Swift belegen müssen, wenn Sie versuchen, ein Android-Entwickler zu werden.
Auf der anderen Seite, wenn es Ihr Traum ist, eine Stelle als Softwareentwickler bei einem großen Tech-Unternehmen zu bekommen, wird wahrscheinlich von Ihnen erwartet, dass Sie neue Programmiersprachen lernen, sobald Sie anfangen zu arbeiten. Ihr Verständnis von Algorithmen und Informatik-Prinzipien könnte wichtiger sein als die Sprache, die Sie bei Ihrem Coding-Interview wählen.
Zweifellos ist es einfacher, neue Programmiersprachen zu lernen, nachdem Sie eine wirklich gut gelernt haben, aber wenn Sie gerade erst anfangen, ist es am besten, eine Sprache zu wählen, die gut zu Ihren kurzfristigen und langfristigen Zielen passt, anstatt eine zufällig zu wählen oder diejenige zu wählen, von der Sie denken, dass sie Ihnen das meiste Geld einbringen wird.
![](https://miro.medium.com/max/60/1*XukcEJTXREYzQ2zGvYBiqQ.jpeg?q=20)
Welche sind die beliebtesten Programmiersprachen? Wofür werden sie am häufigsten verwendet?
Wenn Sie irgendetwas mit Frontend-Entwicklung machen wollen, gehen Sie davon aus, dass HTML und CSS eine Selbstverständlichkeit sind. Unabhängig davon, ob Sie sie als Programmiersprachen betrachten oder nicht (technisch gesehen ist HTML eine Auszeichnungssprache und CSS eine Stylesheet-Sprache), müssen Sie diese lernen, und Sie sollten in der Lage sein, sie schnell zu lernen. Es gibt einen Grund dafür, dass Coding-Bootcamps HTML und CSS nur am Rande behandeln und sie manchmal Teil der Kursarbeit vor dem Bootcamp sind.
Einfach ausgedrückt, wird HTML verwendet, um Text, Bilder und andere Elemente auf einer Website zu platzieren. Kopfzeilen, Fußzeilen, Zeilenumbrüche, Links, kursiver Text und so weiter werden mit HTML erstellt. Die gesamte Hierarchie Ihrer Seite wird mit HTML erstellt.
CSS wird verwendet, um zu verändern, wie diese Elemente aussehen. Von der Deckkraft bis zu den Rändern, von der Schriftgröße bis zum Raster – mit CSS können Sie das Aussehen jedes Elements auf Ihrer Seite anpassen. Sie können CSS auch verwenden, um Animationen zu erstellen, bevor Sie überhaupt an das Wort JavaScript denken.
Wenn Sie ein Front-End-Entwickler werden wollen, verbringen Sie ein oder zwei Wochen damit, HTML und CSS wirklich zu lernen, und erstellen Sie ein paar Websites von Grund auf, bevor Sie weitermachen. Lernen Sie Flexbox und Grid, um Seiten responsive zu machen (so dass sie sich an verschiedene Bildschirmgrößen anpassen), und sehen Sie, wie weit Sie CSS treiben können, denn es kann wirklich viel mehr, als Sie sich vorstellen können. Spielen Sie mit Bootstrap herum, einem Open-Source-Frontend-Framework. Wenn Sie an diesem Punkt angekommen sind, werden Sie feststellen, dass Ihre Programmierreise Sie auf natürliche Weise zu…
JavaScript
JavaScript kann auf viele Arten verwendet werden, aber es wird am häufigsten in der Frontend-Entwicklung eingesetzt. JavaScript wird verwendet, um Websites interaktiv zu machen und um Webelemente funktional zu gestalten. Sie können eine Schaltfläche mit HTML zu Ihrer Website hinzufügen, sie mit CSS gestalten und ihr mit JavaScript Funktionalität verleihen. Ohne JavaScript wird Ihre Schaltfläche nichts tun, wenn Benutzer darauf klicken.
Um JavaScript zu verwenden, müssen Sie nicht das Terminal verwenden. Sie werden in einem Code-Editor und in Ihrem Browser arbeiten.
JavaScript kann verwendet werden, um browserbasierte Spiele zu entwerfen. (Wenn Sie schon einmal versucht haben, browserbasierte Spiele auf einem Schulcomputer zu spielen und dabei auf Probleme gestoßen sind, liegt das wahrscheinlich daran, dass JavaScript vom Administrator der Schule blockiert wurde, in einem vergeblichen Versuch, Sie vom Spielen abzuhalten.)
Es gibt viele Bibliotheken und Frameworks, die die Arbeit mit JavaScript erleichtern. Sie werden nicht damit anfangen, aber Sie werden sie später vielleicht ausgiebig nutzen.
Sie können JavaScript sogar für Backend-Arbeiten mit Node.js verwenden.
JavaScript ist relativ fehlerverzeihend. Relativ.
If you want to be a front-end developer, you’ll need to learn HTML, CSS, and JavaScript. There’s really no way around it.
![](https://miro.medium.com/max/60/1*0lkniOFfwExQxhIx3NpQ0w.png?q=20)
Python
Python ist eine vielseitige, mächtige Allzwecksprache. Man kann sie für so ziemlich alles verwenden, von Web-Entwicklung bis hin zu Spielen, weshalb viele Leute sie als erste Sprache wählen.
Wenn Sie einfach nur neugierig auf Programmierung sind, können Sie mit Python beginnen. Es ist leicht zu erlernen.
Aber wenn es Ihr Traum ist, einen Job als Datenwissenschaftler zu bekommen… dann können Sie gleich aufhören zu lesen, denn Sie können definitiv mit Python anfangen.
Lange Rede kurzer Sinn, Python ist der Traum eines Datenwissenschaftlers. Seine Pakete und Bibliotheken machen es einfach, mit riesigen Datenmengen zu arbeiten. Sie können Visualisierungen mit Matplotlib erstellen, Sie können tabellarische Daten mit Numpy und Pandas analysieren… und so weiter.
Python hat eine robuste Dokumentation. Wenn Sie etwas nachschlagen müssen, werden Sie die Antwort schnell finden können. Das ist ein wichtiger Punkt für jeden, der selbstständig lernt.
Achten Sie allerdings auf die Einrückung. Einrückungen markieren Codeblöcke, daher erhalten Sie einen Fehler, wenn Sie dies falsch machen. Ein fehlendes Leerzeichen oder ein zusätzliches Leerzeichen ist ein Problem. Ich erwähne dies, weil dies eine Besonderheit von Python ist. Bei JavaScript können Sie so viele Leerzeichen einfügen, wie Sie wollen – auch wenn Sie dabei eine Sauerei machen. Versuchen Sie das nicht mit Python.
Ruby
Ruby ist eine Backend-Sprache. „Ruby on Rails“ ist keine Sprache. Ruby ist die Sprache, und Rails ist das Framework. Ruby wurde durch Rails populär.
Ruby ist eine großartige Sprache mit einer sanften Syntax. Keine Semikolons am Ende jeder Zeile! Die meisten Entwickler sind sich einig, dass es Spaß macht, sie zu benutzen, aber sie ist ziemlich intolerant gegenüber Fehlern. Nur eine Vorwarnung. Wenn Debugging nicht Ihre Stärke ist, werden Sie mit Ruby keine gute Zeit haben.
Es ist eine Hochsprache, die mit nur wenigen Zeilen Code eine ganze Menge erreichen kann. Ruby wird bei Startups immer beliebter, so dass Sie vielleicht schon Stellenausschreibungen für „Ruby on Rails-Entwickler“ gesehen haben.
Ruby könnte eine gute erste Sprache sein, wenn Sie unabhängig lernen und kein Fan von Python sind. Auf der anderen Seite wurde Ruby entwickelt, um erfahrenen Entwicklern das Programmieren so angenehm wie möglich zu machen, daher ist es keine Sprache, die man in Programmierakademien oder Informatikprogrammen zuerst lernt. Wenn Sie hoffen, in einer persönlichen Umgebung zu lernen, werden Sie nicht viel Glück haben, einen „Einführungskurs in die Programmierung“ zu finden, der sich auf Ruby konzentriert.
SQL
SQL (manche Leute sprechen es S-Q-L aus, während andere „Fortsetzung“ sagen; wir können uns dieses Argument für einen anderen Tag aufheben) ist nicht wirklich eine „Programmier“-Sprache. Sie werden keine kompletten Anwendungen mit SQL erstellen. Sie werden es benutzen, um mit Datenbanken zu kommunizieren oder Informationen von ihnen zu erhalten.
Daten. Basen.
Wenn Sie in der Datenwissenschaft arbeiten wollen, müssen Sie SQL lernen, sonst werden Sie keine Daten erhalten. Wenn Sie überhaupt irgendetwas machen wollen, das mit Datenbanken zu tun hat, müssen Sie SQL lernen. Aber wenn Sie noch nie in Ihrem Leben eine einzige Zeile Code geschrieben haben, sollten Sie wahrscheinlich nicht mit SQL anfangen. Und warum? Sie können keine eigenständige App mit SQL entwickeln (es ist nicht diese Art von Sprache), also werden Sie so ziemlich rückwärts lernen.
Swift
Wenn Sie ein iOS-Entwickler werden wollen, ist es völlig in Ordnung, mit Swift zu beginnen. Swift ist eine relativ neue Sprache, aber sie ist leicht zu erlernen (Kinder können es) und sie wurde buchstäblich für die Entwicklung von iOS-Apps gemacht.
Nicht viel mehr muss hier gesagt werden. Es gibt keinen Grund, warum Swift nicht Ihre erste Sprache sein kann, wenn Ihr Ziel ist, ein iOS-Entwickler zu werden.
Java
Wenn Sie Android-Apps entwickeln wollen, ist Java Ihre Sprache. Sie können es auch für Desktop-Anwendungen verwenden. Und einige Spiele. Java war früher eine der am häufigsten gelehrten Sprachen in Informatikprogrammen, aber Python hat sie in den letzten Jahren überholt. Java ist immer noch recht beliebt, aber Python und Ruby sind wohl einfacher zu lernen. Wenn Sie unbedingt Android-Entwickler werden wollen, sollten Sie mit Java beginnen – aber wenn nicht, werden Sie vielleicht feststellen, dass Sie mehr Vielseitigkeit (und sozusagen mehr Geld für Ihr Geld) bekommen, wenn Sie stattdessen zuerst Python lernen.
C#
Wenn Sie Spieleentwickler werden wollen – besonders, wenn Sie Konsolen- oder Desktop-Spiele entwickeln wollen – haben Sie sich vielleicht mit Unity beschäftigt. Wenn nicht, öffnen Sie diesen Link in einem neuen Fenster und erkunden Sie es, sobald Sie zu Ende gelesen haben.
Mit Unity können Sie unglaubliche Spiele entwickeln (und monetarisieren), selbst wenn Sie ein Anfänger sind. Sie werden wahrscheinlich C# verwenden.
Während Unity früher UnityScript (im Grunde ein „Dialekt“ von JavaScript) unterstützte, wurde die Unterstützung für UnityScript 2017 eingestellt, sodass C# als stärkster Konkurrent übrig blieb.
C# ist eine großartige Sprache, die Sie als erstes lernen sollten, wenn es Ihr Ziel ist, ein Spieleentwickler zu werden. Es muss nicht schwierig sein. Unity hat eine der robustesten Dokumentationen, die ich je gesehen habe. Sie haben Tutorials wie kein anderer.
Ein weiterer Grund, C# zu lernen: Microsoft. Wenn Sie Microsoft-Anwendungen bauen wollen, ist C# Ihre Sprache.
PHP
PHP ist eine Skriptsprache, die ein wenig unterschätzt wird, wenn man bedenkt, dass 80% des Webs mit PHP betrieben wird. Es ist ziemlich bekannt dafür, dass es die Grundlage von WordPress-Themes ist, wenn Sie also daran interessiert sind, eigene Themes zu erstellen, müssen Sie sich mit PHP vertraut machen.
Mit PHP kann man eine Menge machen. Es fühlt sich nur wie eine seltsame Sprache an, um sie als erste zu empfehlen, weil sie wahrscheinlich nicht ausreichen wird, um alle Ihre Programmierbedürfnisse zu erfüllen. PHP hat seine Grenzen, aber es ist in der Tat sehr einfach für einen Anfänger zu lernen.
Es gibt eine Menge anderer Sprachen da draußen, und dies soll keine allumfassende Liste sein.
Wenn es genug Interesse gibt, werde ich diesen Artikel mit weiteren Sprachen aktualisieren. Denken Sie nur an eine Sache: Jeder Entwickler hat eine Lieblingssprache, und jeder Entwickler wird Ihnen sagen, dass Sie diese Sprache zuerst lernen sollen.
Aber Sie sind nicht jeder Entwickler.
Sie sollten mit der Sprache beginnen, die für Sie am meisten Sinn macht, sobald Sie genau herausgefunden haben, was Sie tun wollen. Geben Sie keine 18.000 Dollar für ein Bootcamp aus, das JavaScript lehrt (egal wie toll JavaScript ist), wenn Sie wissen, dass Sie mobile Apps entwickeln wollen.
Lassen Sie uns über unpraktische Programmiersprachen sprechen.
Ich werde keine Namen nennen, aber wenn Sie über eine „coole Sprache“ gestolpert sind und Sie keine Ahnung haben, wofür sie verwendet wird, ist es wahrscheinlich, dass es keine gute erste Sprache ist, die Sie lernen sollten.
Das schließt „alte“ Sprachen ein. Wenn buchstäblich niemand eine bestimmte Sprache seit Jahrzehnten benutzt hat, sollten Sie sie nicht zu Ihrer ersten Programmiersprache machen. Das ist so, als würden Sie versuchen, Aramäisch als erste Fremdsprache zu lernen. Sie werden nicht genug Dokumentation finden, um über das „Anfänger“-Niveau hinauszukommen, und die Leute werden mit den Augen rollen, wenn Sie versuchen, eine alte Sprache während eines Programmiergesprächs zu verwenden. Ich sage nur.
Sein Sie praktisch.
Die beste erste Sprache ist die, die tut, was Sie brauchen.
![](https://miro.medium.com/max/60/1*-tctf9EwRoVeWJ6xFsx4Hw.png?q=20)