Kategorien
Nachrichten

Welche Programmiersprache sollte ich 2024 zuerst lernen

Der Inhalt behandelt den typischen Werdegang von Anfängern im Programmieren, der oft mit einer Google-Suche beginnt, welche Sprache zu lernen sei. JavaScript wird als eine der besten Optionen für eine erste Programmiersprache hervorgehoben, aufgrund der starken Nachfrage auf dem Arbeitsmarkt, der einfachen Lernbarkeit und der Vielseitigkeit beim Erstellen von Projekten. Der Artikel betont, dass viele Bildungseinrichtungen nach wie vor Sprachen wie Java und C bevorzugen, jedoch in der Berufswelt überwiegend JavaScript verwendet wird, was es zu einer wertvollen Fähigkeit für neue Entwickler macht. Letztendlich plädiert der Autor dafür, eine Sprache gut zu lernen, wobei JavaScript als empfohlener Ausgangspunkt gilt.

Der Weg der meisten Menschen, das Programmieren zu lernen, beginnt mit einer einzigen Google-Suche in der Nacht.

Meistens ist es etwas wie „Lerne ______“

Aber wie entscheiden sie, nach welcher Sprache sie suchen sollen?

„Sie machen immer Witze über Java in Silicon Valley. Ich schätze, das sollte ich lernen.“

Oder:

„Haskell. Gerade jetzt so angesagt. Haskell.“

Oder:

„Dieser Go-Gopher ist einfach so verdammt süß.“

Und dann gibt es den Rest von uns.

Wir werden wahrscheinlich nach etwas suchen wie: „Welche Programmiersprache sollte ich zuerst lernen?“

Selten werden Fragen so häufig gestellt, dass sie eine vollständige Infografik erhalten. Aber dies ist eine davon:

Die Entscheidung für Ihre erste Programmiersprache kann ein unterhaltsamer Prozess sein – ähnlich wie einer dieser „Welcher Quentin Tarantino-Charakter bist du?“-Persönlichkeitstests.

Aber bevor Sie sich auf den Weg machen, Ruby zu lernen, nur weil Sie als Kind gerne mit Knete gespielt haben, lassen Sie mich Sie daran erinnern: Die Einsätze sind hier ziemlich hoch.

Es wird Hunderte von Stunden Übung erfordern, um auch nur annähernd kompetent in Ihrer ersten Programmiersprache zu werden.

Deshalb sollten Sie die folgenden Faktoren berücksichtigen:

  • den Arbeitsmarkt für die Sprache
  • die langfristigen Perspektiven für die Sprache
  • wie einfach die Sprache zu lernen ist
  • welche Projekte Sie während des Lernens erstellen können (und die Sie mit Freunden teilen können, um motiviert zu bleiben)

Jedes Jahr bringt neue Programmiersprachen mit sich, und damit auch neue wissenschaftliche Arbeiten. Und neue Webcomics.

Im Ernst. Schauen Sie sich dieses Juwel vom letzten Monat an:

Wenn es darum geht, eine erste Programmiersprache zu wählen, mangelt es nicht an Optionen. Um es ein wenig einzugrenzen, hier sind die häufigsten Google-Suchen im Zusammenhang mit dem Programmieren lernen in den letzten 12 Jahren:

Java hatte seine Höhen und Tiefen.

Python hat sich allmählich zur beliebtesten Wahl entwickelt.

Doch unter diesen verbirgt sich der kleine Motor, der es kann, der in den letzten Jahren langsam an Popularität gewonnen hat. Und dieser Motor ist JavaScript.

Bevor ich über diese Programmiersprachen spreche, lassen Sie mich klarstellen:

  • Ich behaupte nicht, dass eine Sprache objektiv besser ist als eine andere
  • Ich stimme zu, dass Entwickler letztlich mehr als eine Sprache lernen sollten
  • Ich argumentiere, dass sie zuerst eine Sprache gut lernen sollten. Und – wie Sie wahrscheinlich aus dem umgedrehten Text in meiner Überschrift erahnen können – diese Sprache sollte JavaScript sein.

Lassen Sie uns damit beginnen, zu erkunden, wie Programmieren derzeit in der Schule gelehrt wird.

Informatik 101

Universitäten haben traditionell Programmieren unter dem Dach der Informatik gelehrt, die oft als Erweiterung der Mathematik oder in Verbindung mit einem Studiengang in Elektrotechnik gesehen wird.

Natürlich, wie Sie vielleicht inzwischen gehört haben:

„Die Informatikausbildung kann niemanden zu einem Expertenprogrammierer machen, genau wie das Studium von Pinseln und Pigmenten jemanden nicht zu einem Expertenmaler machen kann.“ — Eric S. Raymond

Viele Universitäten behandeln Programmieren weiterhin so, als wäre es Informatik, und Informatik so, als wäre es Mathematik.

Infolgedessen konzentrieren sich viele Einführungskurse in Programmierung auf Sprachen mit niedrigem Abstraktionsgrad wie C oder mathematisch orientierte Sprachen wie MATLAB.

Und die Fachbereichsvorsitzenden halten in der Regel an diesem Kurs fest und verweisen auf jährliche Ranglisten von Programmiersprachen wie dem TIOBE-Index oder diesem hier von der IEEE:

Die meisten dieser Ranglisten sehen nahezu identisch aus wie vor zehn Jahren.

Aber Veränderungen finden statt. Sogar in der Wissenschaft.

Im Jahr 2014 hat Python Java überholt als die beliebteste Unterrichtssprache in den führenden US-Programmen für Informatik.

Und doch steht eine weitere Veränderung bevor… irgendwann…

Denn wenn man sich die tatsächlich von der Belegschaft verwendeten Sprachen ansieht, ergibt sich ein ganz anderes Bild:

JavaScript ist bei weitem die beliebteste Sprache, die von den 49.397 Entwicklern, die an der Stack Overflow-Umfrage teilgenommen haben, verwendet wird.

Mehr als die Hälfte aller Entwickler nutzen JavaScript. Es ist entscheidend für die Front-End-Webentwicklung und wird zunehmend relevant für die Back-End-Entwicklung. Und es breitet sich schnell in Bereichen wie der Spieleentwicklung und dem Internet der Dinge aus.

In Stellenanzeigen wird JavaScript auch häufiger erwähnt als jede andere Programmiersprache, mit Ausnahme von Java:

Daten vom größten Job-Posting-Aggregator der Welt, [Indeed.com]

Es ist kein Zufall, dass wir den Lehrplan unserer Open-Source-Community um JavaScript herum aufgebaut haben. In den letzten zwei Jahren haben mehr als 5.000 Menschen Free Code Camp genutzt, um ihren ersten Entwicklerjob zu bekommen.

Ich befürworte JavaScript nicht, weil ich es unterrichte. Ich unterrichte JavaScript, weil es der sicherste Weg zu einem ersten Entwicklerjob ist.

Aber ist JavaScript das Richtige für dich? Ist es wert, deine erste Programmiersprache zu sein? Lass uns die Faktoren erkunden, die ich zuvor erwähnt habe.

Faktor #1: Der Arbeitsmarkt

Wenn du Programmieren nur aus intellektueller Neugier lernst, kannst du diesen Faktor überspringen. Aber wenn du — wie die  überwältigende Mehrheit der Menschen, die Programmieren lernen — diese Fähigkeit nutzen möchtest, um einen Job zu bekommen, ist dies ein wichtiger Gesichtspunkt.

Wie bereits erwähnt, wird Java in mehr Stellenanzeigen erwähnt als jede andere Programmiersprache. JavaScript ist ein enger Zweiter.

Aber hier ist das Besondere an JavaScript: obwohl es seit 20 Jahren existiert, ist es erst kürzlich zu einem ernsthaften Werkzeug geworden, um das Unternehmen wie Netflix, Walmart und PayPal ganze Anwendungen aufbauen.

Infolgedessen stellen viele Unternehmen JavaScript-Entwickler ein, aber es gibt einfach nicht so viele auf dem Arbeitsmarkt.

Daten von [Indeed.com]

Auf jede offene Java-Position kommen 2,7 Java-Entwickler. Der Wettbewerb um PHP- und iOS-Jobs ist ebenfalls ähnlich hart.

Aber auf jede offene JavaScript-Position kommen nur 0,6 JavaScript-Entwickler. Es ist ein absoluter Verkäufermarkt für Entwickler mit JavaScript-Kenntnissen.

Faktor #2: Die langfristigen Perspektiven

Das durchschnittliche JavaScript-Projekt erhält doppelt so viele Pull-Requests wie das durchschnittliche Java-, Python- oder Ruby-Projekt. Und obendrein wächst JavaScript schneller als jede andere beliebte Sprache.

Die am weitesten verbreiteten Programmiersprachen für GitHub-Projekte, die ein guter Indikator für die allgemeine Popularität von Sprachen sind

Das Ökosystem von JavaScript profitiert auch von erheblichen Investitionen an Geld und Ingenieurtalenten von Unternehmen wie Google, Microsoft, Facebook und Netflix.

Beispielsweise hat TypeScript (ein statisch typisierter Superset von JavaScript) mehr als 100 Open-Source-Beitragende, von denen viele Microsoft- und Google-Mitarbeiter sind, die dafür bezahlt werden, daran zu arbeiten.

Diese Art der internen Zusammenarbeit ist bei Java schwerer zu finden. Oracle — das Java durch die Übernahme von Sun Microsystems effektiv besitzt — klagt oft gegen Unternehmen, die versuchen, darauf aufzubauen.

Faktor #3: Schwierigkeit zu lernen

Dies ist eine Parodie eines [XKCD-Comics]

Die meisten Programmierer würden zustimmen, dass hochgradig skriptbasierte Sprachen relativ einfach zu erlernen sind. JavaScript fällt in diese Kategorie, zusammen mit Python und Ruby.

Obwohl Universitäten immer noch Sprachen wie Java und C++ als erste Sprachen unterrichten, sind diese deutlich schwieriger zu lernen.

Faktor #4: Projekte, die du damit bauen kannst

Hier glänzt JavaScript wirklich. JavaScript läuft auf jedem Gerät, das einen Browser hat, direkt im Browser. Du kannst im Grunde alles mit JavaScript bauen und es überall teilen.

Aufgrund der Allgegenwärtigkeit von JavaScript prägte Jeff Atwood, Mitbegründer von Stack Overflow, sein mittlerweile berühmtes Gesetz:

„Jede Anwendung, die geschrieben werden kann in JavaScript, wird letztendlich in JavaScript geschrieben werden.“

Und mit jedem Monat, der vergeht, bleibt Atwoods Gesetz stark.

Java versprach einst ebenfalls, überall zu laufen. Vielleicht erinnern Sie sich an Java Applets. Oracle hat sie offiziell Anfang dieses Jahres eingestellt.

Python hat mit ähnlichen Problemen zu kämpfen:

„Wie kann ich dieses Spiel, das ich gemacht habe, meinem Freund geben? Noch besser, gibt es eine Möglichkeit, wie ich das auf mein Telefon bringen kann, damit ich es den Kindern in der Schule zeigen kann, ohne dass sie es installieren müssen? Ähm.“ — James Hague in Retiring Python as a Teaching Language

Im Gegensatz dazu sind hier einige Apps, die Mitglieder unserer Open-Source-Community in ihren Browsern auf CodePen erstellt haben. Sie können diese direkt in Ihrem Browser ausprobieren:

Conways Spiel des Lebens

Simon Spiel im Stil der 1970er

Wikipedia-Suche im Star-Wars-Stil

Ein roguelike Dungeon-Crawler-Spiel

Lerne eine Sprache gut. Dann lerne eine zweite.

Wenn du ständig von Sprache zu Sprache springst, wirst du nicht weit kommen.

Um über die Grundlagen hinauszukommen, musst du deine erste Sprache gut lernen. Dann wird dir die zweite Sprache viel, viel leichter fallen.

Von dort aus kannst du dich weiterentwickeln und ein vielseitigerer Entwickler werden, indem du viele Sprachen lernst:

  • C ist eine großartige Möglichkeit, zu lernen, wie Computer tatsächlich in Bezug auf Speichermanagement funktionieren und ist nützlich in der Hochleistungsrechnertechnik.
  • C++ ist ideal für die Spieleentwicklung.
  • Python ist großartig für Wissenschaft und Statistik.
  • Java ist wichtig, wenn du bei großen Tech-Unternehmen arbeiten möchtest.

Aber lerne zuerst JavaScript.

Okay, jetzt werde ich versuchen, das Unmögliche zu tun — ich werde versuchen, Einwände aus dem Kommentarbereich vorauszusehen.

Einwand #1: Aber ist JavaScript nicht langsam?

JavaScript ist — für die meisten praktischen Zwecke — so schnell wie Hochleistungsprogrammiersprachen.

JavaScript (Node.js) ist um ein Vielfaches schneller als Python, Ruby und PHP.

Es ist auch nahezu so schnell wie Hochleistungsprogrammiersprachen wie C++, Java und Go.

Hier sind die Ergebnisse des umfassendsten kürzlichen Benchmark-Tests zwischen verschiedenen Sprachen:

Einwand #2: Aber JavaScript ist nicht statisch typisiert

Wie Python und Ruby ist JavaScript dynamisch typisiert, was praktisch ist. Aber man kann in Schwierigkeiten geraten. Hier beabsichtige ich, dass exampleArray ein Array ist. Ich setze seine Werte und überprüfe dann seine Länge — also die Anzahl der Elemente, die es enthält.

exampleArray = [1, 2]
-> [1, 2]

exampleArray.length
-> 2

Aber dann weise ich es versehentlich einem String zu.

exampleArray = “text”
-> “text”

exampleArray.length
-> 4

Solche Fehler passieren ständig in dynamisch typisierten Sprachen. Die meisten Entwickler setzen einfach Prüfungen ein, um sie zu verhindern, und schreiben entsprechende Tests.

Wenn du unbedingt statische Typisierung in deiner ersten Programmiersprache haben musst, empfehle ich dir dennoch, zuerst JavaScript zu lernen. Dann kannst du schnell TypeScript lernen.

„TypeScript hat eine Lernkurve, aber wenn du bereits JavaScript kennst, wird es eine sanfte sein.“ — Alex Ewerlöf über TypeScript

Einwand #3: Aber ich möchte wirklich eine mobile App erstellen

Ich empfehle weiterhin, zuerst JavaScript zu lernen.

  1. JavaScript bietet mehrere Werkzeuge zur Erstellung nativer mobiler Apps, wie Angular Cordova und React Native.
  2. Damit Ihre mobile App tatsächlich interessante Funktionen bietet, benötigt sie wahrscheinlich ein ordentliches Backend, das Sie mit einem geeigneten Webentwicklungs-Framework wie Node.js + Express.js aufbauen sollten.

Es ist auch erwähnenswert, dass die besten Tage der mobilen App-Entwicklung möglicherweise bereits hinter uns liegen.

Um es vorwegzunehmen: So sehr die Menschen mobile Apps nutzen, sind fast die Hälfte aller Entwicklerjobs im Bereich Webentwicklung angesiedelt. Im Vergleich dazu machen lediglich 8 % der Jobs die mobile App-Entwicklung aus.

Entwickler nach Beruf, laut der Stack Overflow Umfrage 2023. Diese Frage hatte 76.872 Antworten von Entwicklern, die an der Umfrage teilnahmen, sodass sie ziemlich repräsentativ ist.

Die große Vision von „Es gibt eine App dafür“ hat sich nicht erfüllt. Stattdessen haben die meisten Smartphone-Besitzer aufgehört, neue Apps herunterzuladen.

Sicher – sie nutzen immer noch Apps. Hauptsächlich Facebook, Google Maps und eine Handvoll anderer. Daher konzentriert sich die Nachfrage nach mobilen App-Entwicklern auf einige große Arbeitgeber.

Die Aussichten für diese Stellen in der mobilen Entwicklung sind schwer vorherzusagen. Viele Aspekte der Entwicklung, Wartung und Verteilung mobiler Apps sind mit JavaScript einfacher. Daher investieren Unternehmen wie Facebook und Google stark in bessere Werkzeuge zur Erstellung dieser Apps mit JavaScript.

Fast alle Entwicklungen sind Webentwicklung. Alles berührt diese große Plattform, das „Web“. Und die nächste Welle von Geräten, mit denen Sie in Ihrem Zuhause sprechen werden, sowie Autos, die Ihre Kinder von der Schule abholen – sie werden ebenfalls über das Web miteinander verbunden sein.

Und das bedeutet JavaScript.

Einwand #4: Ist JavaScript nicht eine Spielzeug-Sprache, die in 10 Tagen geschrieben wurde?

JavaScript hat eine eigenwillige Geschichte.

Sie werden zweifellos hören, wie Leute Witze darüber machen.

Nun, die Leute lieben es auch, C++ zu beleidigen. Und wie JavaScript hat auch C++ trotz dieser Kritik Erfolg gehabt und ist jetzt praktisch überall anzutreffen.

Wenn Ihnen also jemals jemand Vorwürfe macht, weil Sie JavaScript anstelle der „Sprache der Woche“ lernen, denken Sie einfach an die berühmten Worte des Mannes, der C++ erschaffen hat:

„Es gibt nur zwei Arten von Programmiersprachen: Die, über die die Leute sich ständig beschweren, und die, die niemand benutzt.“ — Bjarne Stroustrup

Ich schreibe ausschließlich über Programmierung und Technologie. Wenn Sie mir auf Twitter folgen werde ich Ihre Zeit nicht verschwenden. ?

Der Inhalt dieses Artikels wurde aus dem ursprünglichen Artikel übersetzt.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert