Veröffentlicht am 14-03-2019

Wie lernt man eine Fremdsprache, um Code zu lernen?

Ybor City in Tampa, Florida. Das Herz von Tampas hispanischem Erbe. Dank an photonews247.

Der Weg, Software-Entwickler zu werden, ist lang und schwierig, vor allem für Einzelpersonen wie mich, die aus völlig technischen Gründen kommen. Ich bin eine kommunikationsorientierte Person. Ich habe eine Leidenschaft dafür, Fremdsprachen zu sprechen, mich in fremde Kulturen zu vertiefen und allerlei neues Essen auszuprobieren.

Ich bin ein Geisteswissenschaftler. Ein liberaler Künstler. Wie habe ich das Codieren gelernt? Meine Fremdbesessenheit hatte viel damit zu tun.

Ich bin in Tampa aufgewachsen, einer schönen Stadt an der Westküste Floridas mit einem reichen hispanischen Erbe. Meine Vorfahren sind schottisch-irisch und meine Eltern sind vor etwa 30 Jahren von North Carolina nach Tampa gezogen. Mein Vater arbeitete im berühmten Columbia Restaurant, wo ich mich erinnere, wie ich Hühnchen und gelben Reis gegessen habe, während ich Flamenco-Shows in jungen Jahren sah.

Flamenco-Show im Columbia Restaurant. Beeindruckend und intensiv. Kredit an das columbiarestaurant.

Viele meiner Freunde in der Schule sind zweisprachig aufgewachsen. Ich habe gehört, wie sie mit ihren Eltern beim Abholen Spanisch sprachen. Es hat mich immer fasziniert, wie sie ohne Verständnis miteinander kommunizieren können. Es war eine gewisse Macht, die ich nicht hatte. Es war wie Magie. Außerdem war mein bester Freund Brasilianer. Als er mit seiner Familie auf Portugiesisch sprach, konnten selbst meine spanischsprachigen Freunde nichts verstehen. Ich erinnere mich daran, dass ich mir in der 6. Klasse versprochen hatte, eines Tages dreisprachig zu sein. Mein Traum war es, die Magie der Sprache zu nutzen.

Schneller Vorlauf um 15 Jahre.

Ich hatte mein Ziel erreicht. Ich habe an der University of Florida (GO GATORS!) Sprachwissenschaft, Spanisch, Portugiesisch, Lateinamerika und Englisch als Zweitsprache studiert. Ich habe während meines Sprachstudiums Zeit in Sevilla, Barcelona und Rio de Janeiro verbracht. Als eine Reise nach dem Abschluss machte ich Machu Picchu in Peru auf.

Meine Fremdsprachenkenntnisse haben mir so viele Türen geöffnet. Ich habe mich mit Menschen aus ganz anderen Kulturen, Regionen und Perspektiven verbunden. Ich habe mich auf lokale Spezialitäten konzentriert: Alpakaburger, Kuhherzen, gebratenes Meerschweinchen, gebratenes Kaninchen, gebratene Hühnerherzen und vieles mehr.

Brasilianische Hühnerherzen. SO GUT. Kredit an den brasilianischen Chef.

Letztendlich entschied ich mich jedoch, eine Karriere im Fremdsprachenunterricht nicht wie geplant zu verfolgen. Die Gründe für diese Entscheidung sind viele und für einen ganz anderen Posten.

Ich endete als Softwareentwickler und könnte nicht glücklicher sein. Auf dem Weg gab es jedoch viele Selbstzweifel, weil ich einen solchen Sprung in die Karriere gemacht habe. Es hat sich jedoch herausgestellt, dass das Lernen von zwei Fremdsprachen in der Vergangenheit von großem Vorteil war, als ich das Codieren lernte.

Ich behaupte, dass jeder, der eine Fremdsprache gelernt hat, in einzigartiger Weise geeignet ist, um das Programmieren zu lernen. Es gibt viele Gemeinsamkeiten zwischen dem Erlernen einer menschlichen Sprache und einer Programmiersprache. Ich denke, dass diese Ähnlichkeiten auf zwei Hauptpunkte reduziert werden können:

  1. Der Lernprozess
  2. Die lernende Denkweise

Der Lernprozess

Die Prozesse, durch die Sie eine menschliche Sprache und eine Programmiersprache lernen, sind bemerkenswert ähnlich. Sie müssen ähnliche Schritte in derselben Reihenfolge durchlaufen, um sie effektiv zu erlernen.

Schritt 1: Lernen Sie die Bausteine

Wenn Sie eine Fremdsprache lernen, beginnen Sie mit dem Auswendiglernen von Vokabeln. Wortschatzwörter sind die Bausteine ​​der Sprache. Sie lernen die am häufigsten verwendeten Wörter und die Wörter, die die Grundlagen der menschlichen Erfahrung bilden: Namen, Zahlen, Farben, Familienmitglieder, Wochentage, Monate im Jahr usw.

Sie wissen nicht, wie diese Wörter zusammenpassen, aber Sie lernen sie und ihre Definitionen. Sie können sogar Lieder singen oder sie singen, um sie auswendig zu lernen.

In der Programmierung gibt es einen ähnlichen Schritt. Wie geht die Sprache mit Zahlen um? Wie führen Sie Operationen mit diesen Nummern durch? Wie deklarieren Sie eine Variable und speichern deren Wert? Wie schreibst du "Hallo, Welt"?

Schritt 2: Setzen Sie die Blöcke zusammen

Der nächste Schritt beim Erlernen einer Fremdsprache ist das Zusammenfügen von Wörtern. Es gibt noch kein echtes Verständnis von Grammatik, aber Sie beginnen zu verstehen, dass Wörter zusammengehören, um eine komplexere Bedeutung zu erzeugen.

Zum Beispiel bedeutet Me Lamo Dylan Mein Name ist Dylan. An diesem Punkt meiner Reise auf Spanisch verstehe ich nicht, dass ich ein reflexives Pronomen bin, das an das Verb llamarse angehängt ist, und ich würde nicht verstehen, dass Lamo die erste Person ist, die an Konjugation von Lamarse beteiligt ist, aber ich würde wissen, dass das Um Ihren Namen zu sagen, muss man den Satz "Ich Lamo" nennen.

Während Sie mit dem Erlernen von JavaScript beginnen, verstehen Sie möglicherweise nicht ganz genau, warum der folgende Code so geschrieben wird, aber es ist bekannt, dass er die Werte im Array unter 50 zurückgibt:

Mietpreise = [25, 30, 80, 90, 100]
preise.filter (preis => preis <50)
// gibt [25, 30] zurück

Sie könnten den obigen Code anders geschrieben haben. Ich musste es nicht mit einer Pfeilfunktion schreiben. An diesem Punkt sind diese Feinheiten jedoch nicht das Wichtigste. Das Wichtigste ist zu wissen, dass Sie Arrays über Funktionen bearbeiten können.

Schritt 3: Lernen Sie die Syntax

Dies ist der Wendepunkt beim Sprachenlernen. Hier lernen Sie, sinnvolle Ideen zu konstruieren, indem Sie Grammatik verwenden, um Ideen aneinander zu reihen. Sie lernen, Verben zu konjugieren. Sie lernen den Unterschied zwischen den Zeitformen. Sie lernen rein funktionelle Wörter - Wörter, die nicht wirklich etwas bedeuten, sondern uns helfen, Redewendungen und Ideen miteinander zu verbinden. Das spanische Wort que ist ein gutes Beispiel. Es wird oft als untergeordnete Konjunktion verwendet, ein Wort, das Klauseln miteinander verbindet.

Grammatik ist ein schwieriger Teil des Lernens einer neuen Sprache, weil sie abstrakter ist als das Lernen von Wörtern, die im realen Leben Bezug haben. mesa auf Spanisch ist Tisch. Das ist leicht zu sehen. ni siquiera ist eine Phrase, die nicht einmal bedeutet, wie "Ich würde ihn nicht einmal für eine Million Dollar datieren". Wie stellen Sie sich die Idee von "nicht einmal" vor? Aber es ist ein wichtiges Bindeglied, das an einer bestimmten Stelle in dem Satz steht, um eine Beziehung zwischen dem Wunsch (oder dem Fehlen davon) und der Vorstellung von einer Million Dollar zu bestimmen.

Mein Lieblingsbeispiel für das Erlernen der Syntax beim Programmieren ist dies in JavaScript. Es ist zunächst ein verwirrendes Thema. Warum schreiben wir das vor Funktionsaufrufen? Was bedeutet das? Warum heißt das so? Schlüsselwörter wie diese sind die Grammatik der Programmierung. Dadurch wird auf das Kontextobjekt zugegriffen, in dem der aktuelle Code ausgeführt wird. Es bedeutet nicht unbedingt etwas für sich, aber es hilft uns, Teile unseres Codes zu verbinden.

Es ist erwähnenswert, dass die Grammatik von Mensch zu Mensch sehr unterschiedlich ist. Das gilt auch für Programmiersprachen. Stellen Sie sich nur die Unterschiede zwischen objektorientierten und funktionalen Sprachen vor. Auch stark typisierte und schwach typisierte Sprachen. Sie sehen und handeln anders.

Schritt 4: Sprechen Sie wie ein Einheimischer

In diesem Schritt können Sie die Nachricht vermitteln, aber es hört sich komisch an. Die Leute können sagen, dass Sie kein Muttersprachler sind. Vielleicht hast du einen starken Akzent. Vielleicht macht Ihre Grammatik logisch Sinn, aber es ist einfach nicht die Art und Weise, wie die Leute normalerweise die Idee ausdrücken.

An diesem Schritt zu arbeiten ist am meisten lohnend, aber auch am schwierigsten. Sprachschüler sind stolz darauf, als Muttersprachler zu gelten. Ihr Akzent ist ein großer Teil davon, aber es gibt viele andere Dinge, die Sie beachten sollten. Die Verwendung idiomatischer Phrasen ist eine. Wortwahl ist eine andere. Registrieren Sie sich - wenn Sie förmlich sein wollen, wenn Sie lässig sind, wenn Sie vulgär sind - ist dies ein weiterer komplizierter Teil des Klangs von Einheimischen.

Als ich in Rio de Janeiro im Ausland studierte, führte mich meine Gastmutter am ersten Tag durch die Stadt. Ich habe in Copacabana drei Blocks vom Strand entfernt gewohnt. Ich überlegte, wie schön es wäre, den Sonnenuntergang vom Strand aus zu sehen, aber ich wusste nicht das Wort für "Sonnenuntergang!". Schrecklich formell, sehr gestelzt, um nach dem Sonnenuntergang zu fragen. Aber die Art und Weise, in der ich gefragt habe, war grammatikalisch korrekt, also sah sie mich komisch an und antwortete. Dann versorgte ich höflich mit Pôr-do-Sol als Wort für den Sonnenuntergang.

Sonnenuntergang über Copacabana-Strand in Rio de Janeiro, Brasilien. Dank an Shutterstock.

Die Codierung ist gleich. Sie haben viele Möglichkeiten (in einigen Sprachen mehr als in anderen), eine Idee auszudrücken. Codieren hat eine kreative - vielleicht sogar künstlerische - Seite, da Sie Ihre Ziele flexibel erreichen können.

Es ist aber auch wichtig, im Code nativ zu sein. Ich habe früh gelernt, dass Ihr Code für andere Entwickler lesbar sein sollte. Niemand möchte Code lesen, der nicht richtig eingerückt ist oder wo ungewöhnliche Leerzeichen vorhanden sind. Die Leute wollen logisch organisierten Code. Die Menschen wollen Variablennamen, die Sinn machen. Die Leute wünschen hilfreiche Kommentare.

Ebenso ist das Befolgen von Konventionen wichtig. Können Sie divs verwenden, um Kopf- und Fußzeilen für eine Seite zu erstellen? Ja. Aber warum solltest du? HTML5 gab uns Kopf- und Fußzeilen-Tags, um SEO, Zugänglichkeit und Lesbarkeit von Code für andere Entwickler zu unterstützen. Wenn Sie weiterhin divs verwenden, wird der Code gut ausgeführt, aber die Leute ziehen eine Augenbraue hoch.

Die lernende Denkweise

Um als Sprachschüler zu übertreffen, bedarf es einer gewissen Denkweise. Sie müssen kindlich sein: hungrig darauf, die Welt um Sie herum zu verstehen, bereit, neue Informationen zu akzeptieren, wenn Sie sie entdecken, und keine Angst davor haben, Fehler zu machen oder dumm auszusehen.

Das Erlernen einer Fremdsprache ist frustrierend, da Sie bestimmte Grundlagen oder Regeln der Sprache lernen müssen, um später herauszufinden, dass es eine Menge Ausnahmen von diesen Regeln gibt. In Spanisch beispielsweise setzen Sie das Adjektiv normalerweise nach dem Nomen. Die hübsche Frau wäre also mujer bonita, wo "bonita" "hübsch" ist. Dies ist für englischsprachige Personen, die Spanisch lernen, umständlich, da Sie in der Regel die Adjektive vor den Nomen stehen.

Es stellt sich jedoch heraus, dass es auf Spanisch viele Beispiele gibt, wo das Adjektiv vor dem Substantiv steht! In der Tat können einige Adjektive vor oder nach dem Substantiv gesetzt werden, und die Platzierung ändert die Bedeutung des Satzes:

Mi amiga vieja // Mein alter (in Bezug auf Alter) Freund
Mi vieja amiga // Meine alte (Sie kennen sie schon lange) Freundin

Ein erfolgreicher Sprachschüler ist in der Lage, die Frustration zu überwinden, die mit diesen Paradigmenwechseln einhergeht. Anstatt zu denken: „Was meinen Sie, dass Adjektive vor den Substantiven stehen können ?! Was für eine Zeitverschwendung! Sie hätten mir das eigentlich sagen sollen! “, Sagten sie:„ Wie interessant! Es stellt sich also heraus, dass es Fälle gibt, in denen ein Adjektiv vor einem Substantiv der Bedeutung des Satzes Nuance verleiht. Ich bin froh, dass ich zuerst die allgemeine Regel und dann die Ausnahmen gelernt habe, damit ich nicht verwirrt wurde. "

Ein guter Sprachschüler versucht nicht, eine Sprache auf einmal zu verstehen. Sie erkennen, dass es eine ständige Praxis ist. Darüber hinaus ist das Verstehen einer Sprache ein bewegendes Ziel. Sprachen verändern sich ständig und entwickeln sich weiter. Als Sprachschüler müssen Sie akzeptieren, dass sich Standards und Konventionen ständig ändern, und Sie müssen mit ihnen auf dem Laufenden bleiben.

Sie benötigen ein ähnliches Lerngefühl, wenn Sie das Programmieren lernen.

Als ich zum ersten Mal lernte, Arrays in JavaScript zu durchlaufen, tat ich dies mit einer for-Schleife. Nur so konnte ich es wissen. Später entdeckte ich .forEach (), .filter () und .map (). Die haben mich damals umgehauen! Noch später entdeckte ich .every (), .some () und .reduce (). Es stellt sich heraus, dass es viel mehr Möglichkeiten gibt, Arrays zu durchlaufen, als ich ursprünglich wusste, aber ich baute mein grundlegendes Wissen der Iteration mit for-Schleifen auf und erweiterte und modifizierte mein Verständnis von Iteration im Laufe der Zeit.

So wie sich menschliche Sprachen entwickeln, entwickeln sich auch Programmiersprachen. Ich habe gehört, dass sich viele Entwickler darüber beschwert haben, dass sie alle paar Jahre neue Frameworks lernen müssen. Ich verstehe die Beschwerden nicht. Neue Frameworks erleichtern oft die Verwendung der Sprache. Es ist unsere Aufgabe als Softwareentwickler, über die besten Verfahren und neuen Trends in den Programmiersprachen auf dem Laufenden zu bleiben.

Softwareentwickler müssen auch mit der Veröffentlichung neuer Sprachversionen auf dem Laufenden bleiben. Zum Beispiel wurden mit der Veröffentlichung von ES6-JavaScript Pfeilfunktionen (zu Recht) populär. Oft erleichtern sie das Lesen und Schreiben von Code. Warum mit der ES5-Syntax bleiben, wenn es eine bessere Alternative gibt? Es macht keinen Sinn, auf alte Weise festzuhalten.

Die vielleicht wichtigste Charakteristik eines erfolgreichen Sprachlerners ist die Fähigkeit, Fehler zu machen.

Angst hält uns vom Lernen ab. Angst vor dem Scheitern Angst dumm auszusehen. Angst, die Erwartungen nicht zu erfüllen. Angst, Fehler zu machen. So viele Leute halten den Mund. Sie gehen davon aus, dass sie, wenn sie nicht in einer Fremdsprache sprechen, keine Fehler machen können. Dies ist natürlich eine schlechte Strategie, da der Schlüssel zum Erlernen einer Fremdsprache liegt.

Ich denke, dass dies ein Grund dafür ist, dass Kinder so gute Lernende sind. Sie haben keine Angst! Sie machen Fehler nach Fehlern und schämen sich nicht. Sie sagen die ganze Zeit über unsinnige Dinge. Sie plappern. Sie bilden Wörter. Sie erzählen Geschichten ohne klare Absicht oder Handlung. Sie experimentieren. Und durch all ihre Durcheinander und Prüfungen und Fehler entdecken sie die akzeptierten Muster ihrer Muttersprache.

Für Erwachsene ist es viel schwieriger, diese Denkweise mit einer zweiten Sprache zu übernehmen, aber ich glaube, wenn Sie lernen, über sich selbst zu lachen, können Sie den Fehler aus den Augen nehmen und die Lernreise genießen.

Ich erinnere mich an den Sommer, als ich im Ausland in Sevilla, Spanien, studierte. Ich hatte gerade angefangen, Spanisch ernst zu nehmen. Ich war so aufgeregt, im schönen Süden Spaniens zu sein, aber Junge war es heiß! Und ich komme aus Florida, das sagt also etwas!

Eines Nachts ging ich mit einer Gruppe Spanier und einigen amerikanischen Freunden von einer Bar nach Hause. Wir schwitzten alle, dass es so heiß war, obwohl die Sonne unterging. Ich hatte genug und rief: Dios mío, estoy caliente! was übersetzt zu Oh mein Gott, ich bin geil!

Nach einem Moment der schockierten Stille brachen sie in Gelächter aus. Was ich hätte sagen sollen, war ¡Dios mío, tengo calor !. Es ist ein häufiger Fehler unter Englischlernern, die Spanisch lernen. Es war mir peinlich, aber ich lachte genauso hart wie sie, als ich meinen Fehler erkannte. Es wurde eine unserer Lieblingsgeschichten, die wir zu Hause erzählen konnten. Und glaub mir, ich habe nie vergessen, wie ich sagen kann, seit ich heiß bin.

Plaza de España in Sevilla, Spanien. Was für eine schöne Stadt. Gutschrift an HandLuggageOnly.

Die Quintessenz

Haben Sie keine Angst davor zu lernen, wie man schreibt, wenn Sie ein Mensch wie ich sind. Viele Entwicklerteams suchen Menschen mit ausgeprägten zwischenmenschlichen Fähigkeiten!

Ihr Hintergrund ist ein zweischneidiges Schwert. Sie werden sicherlich aufholen müssen, aber andererseits sind Sie dazu geneigt, das Programmieren sehr effektiv zu erlernen. Und die beste Nachricht ist, dass Sie eine ganze Reihe von Soft-Skills an den Tisch bringen, die traditionelle Programmierer vielleicht nicht haben.

Eine zweite Sprache zu lernen kann Spaß machen, lohnend und erfüllend sein. Ich habe festgestellt, dass das Programmieren lernen Spaß machen kann, lohnend und erfüllend. Mit einem Verständnis des Lernprozesses und der richtigen Einstellung können Sie beides erfolgreich erreichen und genießen.

Siehe auch

Die Fakten zur 5G-Technologie: Wo wir sind und wo wir hin müssen