Wie kann ich mit ChatGPT das Programmieren lernen, wenn ich von vorne anfangen muss?

Erkundung von ChatGPT während meiner 15-jährigen Programmierreise – Mehr als nur Kopieren und Einfügen

Programmieren ist seit meinem zehnten Lebensjahr ein Teil meines Lebens. Von der Optimierung des Codes und CSS für mein Friendster-Profil in den frühen Tagen des Internets über die spannende Erforschung von SQL-Injections bis hin zum Bau eines dreibeinigen Roboters zum Spaß und zuletzt dem Eintauchen in die Python-Programmierung war meine Programmierreise abwechslungsreich und unterhaltsam!

Folgendes habe ich aus verschiedenen Programmieransätzen gelernt.

Foto von Arnold Francisca auf Unsplash

Die Art und Weise, wie ich Programmieren lerne, ist immer die gleiche; Wie die Leute sagen, ist es meistens nur Kopieren und Einfügen. 😅

Wenn es darum geht, etwas in der Programmierwelt zu bauen, ist hier eine Aufschlüsselung meines Ansatzes:

  1. Wählen Sie das entsprechende Framework oder die entsprechende Bibliothek aus.
  2. Lernen Sie aus früheren Projekten
  3. Teilen Sie es in Schritte auf
    Teilen Sie Ihr Projekt in umsetzbare Schritte auf, um die Entwicklung weniger stressig zu gestalten.
  4. Suchen Sie bei Google nach jedem Teil.
    Konsultieren Sie für jeden Schritt Google/Bing/DuckDuckGo/die Suchmaschine Ihrer Wahl, um Einblicke, Anleitungen und mögliche Lösungen zu erhalten.
  5. Beginnen Sie mit der Programmierung
    Versuchen Sie, jeden Schritt systematisch durchzuführen.

Allerdings können auch in gut durchdachtem Code Fehler auftreten. Hier ist meine Strategie zur Fehlerbehebung:

1. Überprüfen Sie die Framework-Dokumentation: Lesen Sie immer die Dokumentation!

2. Durchsuchen Sie Google und Stack Overflow: Durchsuchen Sie Google und Stack Overflow. Ein Beispiel für Schlüsselwörter wäre:

site:stackoverflow.com [Programmiersprache] [Bibliothek] Fehler [Fehlermeldung]

site:stackoverflow.com Python-Fehler ImportError: pandas Modul nicht gefunden

Stack Overflow-LösungenWenn das Problem bereits auf Stack Overflow besteht, suche ich nach den Kommentaren und Lösungen mit den meisten Upvotes und finde oft eine schnelle und zuverlässige Antwort. Diese Plattform ist eine wichtige Referenz für Entwickler zur Lösung Python-Fehler Gerüchte und Pandas Bibliothek.
vertraue meiner IntuitionWenn Stack Overflow keine Antwort hat, vertraue ich meinem Instinkt und suche bei Google nach vertrauenswürdigen Quellen. GeeksForGeeks, Kaggle, W3School und Towards Daten Wissenschaft Für DS-Sachen 😉

3. Kopieren Sie die Codelösung und fügen Sie sie ein.

4. Verifizierung und PrüfungDer letzte Schritt besteht darin, den geänderten Code sorgfältig zu prüfen und zu testen, um sicherzustellen, dass er wie beabsichtigt funktioniert. Dadurch wird sichergestellt, dass keine Codeüberprüfung stattfindet und der Code ordnungsgemäß getestet wird.

 

Sie haben das technische Problem erfolgreich gelöst!

Ist das nicht wunderschön?

 

Aber machen wir das in Wirklichkeit immer noch?!

Mir ist vor Kurzem aufgefallen, dass sich die Herangehensweise neuer Programmierer an die Programmierung verändert hat. Ich unterrichte seit etwa drei Jahren professionell das Programmieren und wechsle dabei zwischen Programmier-Bootcamps, Gastvorträgen an Universitäten und Unternehmensschulungen. Die Art und Weise, wie Programmierer das Programmieren lernen, hat sich etwas geändert, mit einem Schwerpunkt auf Künstliche Intelligenz-Tools in der Programmierung.

Normalerweise rate ich neuen Gesichtern, bei der altmodischen Methode zu bleiben und nach Antworten zu suchen, aber die Leute verwenden am Ende immer noch ChatGPT. Ihre Entschuldigung ist

 

„ChatGPT (für Programmierzwecke) zu haben, ist wie einen zusätzlichen Klassenkameraden zu haben – er spricht mit Ihnen wie mit einem normalen Menschen.“

Es ist sehr nützlich, insbesondere wenn Sie noch versuchen, Dinge aus Forschungsergebnissen und Dokumenten zu verstehen – um das zu entwickeln, was man „Intuition des Programmierers".

Verstehen Sie mich nicht falsch, ich unterstütze die Grundlagen. Stöbern, Dokumente lesen und Fragen in der Community stellen – das sind meiner Meinung nach wirkungsvolle Schritte. Sich ausschließlich auf ChatGPT zu verlassen, ist möglicherweise etwas übertrieben. Sicher, er kann eine kurze Zusammenfassung der Antworten vorbereiten, aber Herkömmliche Browsing-Methoden geben Ihnen die Freiheit zur Auswahl und zum Experimentieren, was in der Welt der Programmierung von entscheidender Bedeutung ist.

Aber ich muss Anerkennung zollen, wo Anerkennung angebracht ist – ChatGPT liefert extrem schnell Antworten, insbesondere wenn Sie noch versuchen herauszufinden, was in Suchergebnissen und Dokumenten richtig und was falsch ist. ChatGPT ist ein leistungsstarkes Tool zum Beschleunigen des Lernens und Entdecken von Lösungen für komplexe Programmierprobleme.

Mir ist bewusst, dass dieser Trend hin zur Verwendung von ChatGPT als Lernpartner nicht nur im Bereich der Programmierung stattfindet. ChatGPT hat die Art und Weise, wie Menschen lernen, revolutioniert. Ich verwende sogar ChatGPT, um meine Grammatik für diesen Beitrag zu korrigieren, entschuldige, Grammarly.

 

Die Weigerung, ChatGPT zu verwenden, ist wie die Weigerung, Suchmaschinen in den frühen 2000er Jahren zu verwenden.. ChatGPT kann jedoch Verzerrungen und Fehler aufweisen, ähnlich wie Suchmaschinen, die unzuverlässige Informationen oder Betrug enthalten. Bei richtiger Anwendung kann ChatGPT den Lernprozess beschleunigen.

Stellen wir uns nun ein Szenario aus dem echten Leben vor, in dem ChatGPT Ihnen als Programmier-Kumpel beim Debuggen helfen könnte.

 

Szenario: Python-Skript-Debugging

Stellen Sie sich vor, Sie arbeiten an einem Python-Skript für ein Projekt und stoßen auf einen unerwarteten Fehler, den Sie nicht beheben können. Dies ist ein häufiges Problem bei der Softwareentwicklung und erfordert fortgeschrittene Debugging-Kenntnisse.

So habe ich damals – in der Zeit vor ChatGPT – das Debuggen gelernt. Diese klassischen Methoden sind immer noch von großem Wert, um die Grundlagen des Debuggens zu verstehen.

Browsing-Methodik:

  1. Dokumentation:

Überprüfen Sie zunächst die Python-Dokumentation auf das Modul oder die Funktion, die den Fehler verursacht. Die Python-Dokumentation ist eine wichtige Referenz, um zu verstehen, wie verschiedene Module funktionieren und wie man sie richtig verwendet. Sie hilft Ihnen, die Ursachen von Fehlern zu erkennen und diese effizient zu beheben.

 

Beispielsweise:
- Besuchen https://scikit-learn.org/stable/modules/ Für die Scikit Learn-Dokumentation.

2. Durchsuchen Sie Google und Stack Overflow:

Wenn die Dokumentation keine Lösung bietet, können Sie sich an Google und Stack Overflow wenden. Durchsuchen Sie verschiedene Forenthreads und Diskussionen, um ein ähnliches Problem zu finden und zu beheben. Diese Ressourcen sind für die Fehlerbehebung im Bereich des maschinellen Lernens wertvoll.

3. Vertrauen Sie Ihrer Intuition:

Wenn das Problem einzigartig oder nicht gut dokumentiert ist, vertrauen Sie Ihrem Instinkt! Sie können bei Google Artikel und Quellen durchsuchen, die Sie in der Vergangenheit als vertrauenswürdig eingestuft haben, und versuchen, ähnliche Lösungen auf Ihr Problem anzuwenden. Dieser Ansatz verbessert Ihre technischen Fähigkeiten zur Problemlösung.

Sie können sehen, dass die Ergebnisse im obigen Suchergebnis von W3school stammen – (vertrauenswürdige Website zum Erlernen des Programmierens, ideal zum Schummeln) und die anderen beiden Ergebnisse die offizielle Pandas-Dokumentation sind. Sie können sehen, dass Suchmaschinen den Benutzern vorschlagen, einen Blick auf die offizielle Dokumentation zu werfen. 😉

So können Sie ChatGPT zur Fehlerbehebung verwenden.

 

Ein neuer Ansatz mit ChatGPT:

  1. Interagieren Sie mit ChatGPT in Gesprächen:

Anstatt nur Dokumente und Foren zu durchsuchen, können Sie mit ChatGPT in einem Live-Gespräch interagieren. Geben Sie eine kurze Beschreibung des Fehlers ein und stellen Sie Ihre Frage. Sie können beispielsweise ChatGPT verwenden, um sofortige Hilfe beim Verstehen und Debuggen häufiger Programmierfehler zu erhalten.

 

„Ich habe ein Problem mit meinem [Programmiersprache]-Skript, bei dem [Fehlerbeschreibung] auftritt. Können Sie mir helfen, die möglichen Ursachen dieses Fehlers zu verstehen und eine mögliche Lösung vorschlagen?“

2. Konzepte mit ChatGPT klären:

Wenn der Fehler mit einem Konzept zusammenhängt, das Sie nicht verstehen, können Sie ChatGPT bitten, dieses Konzept zu erklären. Zum Beispiel,

 

„Erklären Sie, wie [konkretes Konzept] in [Programmiersprache] funktioniert? Ich denke, das könnte mit dem Fehler zusammenhängen, den ich erhalte. Der Fehler lautet: [Fehler].“

3. Fragen Sie nach Empfehlungen zur Fehlerbehebung:

Sie können ChatGPT um allgemeine Ratschläge zur Fehlerbehebung bei Python-Programmen bitten. Zum Beispiel,

 

„Welche gängigen Strategien gibt es, um mit [Problem] umzugehen? Gibt es Empfehlungen für Tools oder Techniken?“

Mögliche Vorteile:

  • Benutzerdefinierte Richtlinien: ChatGPT kann Ihnen eine personalisierte Anleitung basierend auf den spezifischen Details, die Sie zum Fehler angeben, und Ihrem Verständnis des Problems bieten. Diese Funktion baut auf den Fähigkeiten des großen Sprachmodells (LLM) von ChatGPT auf, um maßgeschneiderte Unterstützung zu bieten.
  • Begriffsklärung: Sie können Erklärungen und Erläuterungen zu Konzepten direkt von ChatGPT anfordern und dabei die Funktionen seines großen Sprachmodells (LLM) nutzen.
  • Effiziente Fehlerbehebung: ChatGPT bietet möglicherweise präzise und relevante Tipps zur Fehlerbehebung, die den Debugging-Prozess vereinfachen können.

Mögliche Einschränkungen:

Lassen Sie uns nun über die Nachteile sprechen, die sich ergeben, wenn man sich zu 100 % auf ChatGPT verlässt. Mir sind diese Probleme bei der Nutzung von ChatGPT durch meine Schüler häufig aufgefallen. In der Zeit nach ChatGPT kopierten und fügten meine Studenten die einzeilige Fehlermeldung aus ihrer Befehlszeilenschnittstelle ein, obwohl der Fehler 100 Zeilen lang war und sich auf einige Module und Abhängigkeiten bezog. Manchmal kann es funktionieren, ChatGPT zu bitten, eine Problemumgehung durch Angabe eines einzeiligen Fehlercodes zu erklären. Schlimmer noch: Es kann ein oder zwei Stunden manuelle Debugging-Arbeit in Anspruch nehmen.

ChatGPT hat die Einschränkung, dass der Kontext Ihres Codes nicht angezeigt werden kann. Natürlich können Sie Ihrem Code immer einen Kontext geben. Bei komplexerem Code können Sie möglicherweise nicht jede Codezeile an ChatGPT übergeben. Die Tatsache, dass ChatGPT nur einen kleinen Teil Ihres Codes sieht, ChatGPT entweder Es wird angenommen Der restliche Code basiert auf seiner Wissensbasis oder halluzinierend.

Hier sind die möglichen Einschränkungen bei der Verwendung von ChatGPT:

  • Fehlende dynamische Interaktion in Echtzeit: ChatGPT bietet zwar wertvolle Einblicke, es fehlt jedoch die Echtzeit-Interaktion und der dynamische Austausch, die Foren oder Diskussionsthreads bieten können. Auf StackOverflow schlagen Ihnen möglicherweise 10 verschiedene Personen 3 verschiedene Lösungen vor, die Sie entweder durch Selbermachen (Do it yourself, try it) oder durch Anschauen der Anzahl der Upvotes vergleichen können.
  • Auf Vorwissen aufbauen: Die Qualität der Antwort von ChatGPT hängt von den Informationen ab, mit denen es trainiert wurde, und es ist möglicherweise nicht über die neuesten Framework-Updates oder die spezifischen Details Ihres Projekts informiert.
  • Kann die Fehlerbehebung zusätzlich in Anspruch nehmen: ChatGPT verfügt nicht über den Kontext für Ihren vollständigen Code, daher kann dies zu mehr Zeit für das Debuggen führen.
  • Eingeschränktes Verständnis des Konzepts: Traditionelle Browsing-Methoden geben Ihnen die Freiheit, auszuwählen und ein wenig zu experimentieren, was in der Welt der Programmierung entscheidend ist. Wenn Sie wissen, wie Sie die richtige Quelle auswählen, lernen Sie möglicherweise mehr, wenn Sie selbst browsen, als wenn Sie sich auf ein generisches ChatGPT-Modell verlassen.
    Sofern Sie nicht ein trainiertes Sprachmodell fragen, das auf Programmierkonzepte und -technologie spezialisiert ist, Forschungsarbeiten zu Programmierthemen, populäre Vorlesungen über Deep Learning von Andrew Ng oder einen Tweet von Yann Le Cunn auf X (früher Twitter) lesen, wird ChatGPT eine weitgehend allgemeine Antwort geben.

Dieses Szenario zeigt, wie ChatGPT ein wertvolles Tool in Ihrem Programmier-Toolkit sein kann, insbesondere für persönliche Anleitungen und konzeptionelle Klärung. Denken Sie daran, die Unterstützung von ChatGPT mit Navigationsmethoden abzuwägen und fragen Sie die Community unter Berücksichtigung der Stärken und Grenzen.

Das Endergebnis

Empfohlen für Programmierer: Wichtige Tools und Ressourcen

 

Wenn Sie das Autocomplete-Modell wirklich nutzen möchten, verwenden Sie statt nur ChatGPT VScode-Erweiterungen für Code-Autocomplete-Aufgaben wie CodeGPT – GPT4-Erweiterung für VScode، Oder GitHub-Copilot, oder KI-Autovervollständigungstools in Google Colab. Diese Tools steigern die Produktivität der Entwickler erheblich.

Wie Sie im Screenshot oben sehen können, gibt Google Colab dem Benutzer automatisch Vorschläge für den nächsten Code.

Eine weitere Alternative ist Github Copilot. Mit GitHub Copilot können Sie KI-basierte Vorschläge in Echtzeit erhalten. GitHub Copilot schlägt Entwicklern beim Schreiben des Codes die Vervollständigung vor und wandelt Eingabeaufforderungen basierend auf dem Projektkontext und den Stilkonventionen in Codierungsvorschläge um. Demnach Veröffentlichung von GithubCopilot Chat wird jetzt von GPT-4 von OpenAI unterstützt (ein ähnliches Modell, das von ChatGPT verwendet wird).

Ich habe CodeGPT aktiv als VSCode-Erweiterung verwendet, bevor ich herausfand, dass Github Copilot kostenlos verfügbar ist, wenn man sich für Tutorials interessiert. CodeGPT Co wurde bisher 2 Million Mal im VSCode Extension Marketplace heruntergeladen. CodeGPT ermöglicht eine nahtlose Integration mit der ChatGPT-API, Google PaLM XNUMX und Meta Llama.
Sie können Codevorschläge über Kommentare erhalten.So geht's:

  • Schreiben Sie einen Kommentar und fordern Sie einen bestimmten Code an.
  • Klicken cmd + shift + i
  • Benutze den Code 😎

Sie können auch ein Gespräch beginnen. Über die Erweiterung im Menü und gehe zu den Coding-Gesprächen 💬

Wenn ich an meinen Weg als Programmierer zurückdenke, ist die wertvolle Lektion, die ich gelernt habe, dass es keine allgemeingültige Lernmethode gibt. Es ist wichtig, eine Vielzahl von Lernmethoden zu nutzen und traditionelle Praktiken wie das Browsen und die Interaktion mit der Community mit den innovativen Möglichkeiten von Tools wie ChatGPT und Tools zur automatischen Codevervollständigung zu kombinieren.

 

Was zu tun:

  • Profitieren Sie von personalisierten Lernressourcen: Machen Sie das Beste aus den Lernmaterialempfehlungen von ChatGPT und verwenden Sie es als wichtiges Hilfsmittel auf Ihrem Lernweg.
  • Zusammenarbeiten, um Probleme zu lösen: Verwenden Sie ChatGPT als Kooperationspartner, als würden Sie mit Ihren Freunden programmieren, und verbessern Sie so Ihre Fähigkeit, Programmierherausforderungen effektiv zu bewältigen.

Was Sie vermeiden sollten:

  • Übermäßiges Vertrauen in ChatGPT: Verlassen Sie sich nicht ausschließlich auf ChatGPT und verfolgen Sie einen ausgewogenen Ansatz zur Entwicklung unabhängiger Problemlösungsfähigkeiten. ChatGPT ist zwar ein leistungsstarkes Tool zum Verstehen von Codestrukturen und zum Generieren von Ideen, aber wenn Sie sich ausschließlich darauf verlassen, kann dies Ihre Entwicklung analytischer und kritischer Denkfähigkeiten behindern, die für die Entwicklung eines kompetenten Entwicklers unerlässlich sind.
  • Vernachlässigung der direkten Interaktion mit der Programmier-Community: Obwohl ChatGPT wertvolle Einblicke bietet, sollten Sie die Vorteile der direkten Interaktion und des Feedbacks von Programmier-Communitys nicht vernachlässigen. Dies trägt auch zum Aufbau eines guten Rufs in der Community bei. Durch die Interaktion mit anderen Programmierern haben Sie die Möglichkeit, von deren Erfahrungen zu lernen, Wissen auszutauschen und unterschiedliche Perspektiven auf die Herausforderungen zu gewinnen, vor denen Sie stehen.
  • Ignorieren Sie die praktische Programmierpraxis: Gleichen Sie die ChatGPT-Anleitung mit praktischer Programmierung aus, um theoretisches Wissen durch praktische Anwendung zu erweitern. Die praktische Anwendung ist der Schlüssel zur Umsetzung theoretischer Konzepte in praxisnahe Fähigkeiten. Versuchen Sie, selbst Code zu schreiben, mit verschiedenen Lösungen zu experimentieren und Fehler zu beheben. Dies wird Ihnen helfen, Ihr Verständnis der Konzepte zu festigen und Ihre Problemlösungsfähigkeiten zu entwickeln.

Erzählen Sie mir in den Kommentaren, wie Sie ChatGPT als Hilfe beim Programmieren verwenden!
Viel Spaß beim Programmieren!

 

Kommentarfunktion ist geschlossen.