Hvad er ChatGPT? Forklaring til begyndere med eksempler til kodning

Hvad er ChatGPT? Forklaring til begyndere med eksempler til kodning

Hvad er ChatGPT – og hvorfor er det relevant for kodning?

ChatGPT er en AI-chatbot og stor sprogmodel fra OpenAI, som kan forstå tekst, svare på spørgsmål og hjælpe med at skrive og forklare kode. For dig som begynder fungerer den som en digital hjælper, der kan vise eksempler, rette fejl og forklare logik i et mere enkelt sprog end de fleste officielle dokumentationer.

Du ”taler” med ChatGPT ved at skrive beskeder (prompts), og den svarer tilbage i tekst. Du kan spørge på dansk, blande dansk og engelsk, og du kan skifte mellem helt almindelige spørgsmål og ret tekniske kodeopgaver.

Når folk siger, at ChatGPT er en “stor sprogmodel” (LLM), betyder det kort sagt, at den er trænet på enorme mængder tekst og kode. Den har ikke bevidsthed eller følelser, men er ekstremt god til at gætte, hvilket ord, hvilken sætning eller hvilken kodebid der statistisk set passer bedst som næste skridt.

I praksis betyder det, at du kan bruge ChatGPT til for eksempel:

  • at få forklaret et stykke Python- eller JavaScript-kode linje for linje
  • at få forslag til, hvordan du kan bygge en simpel to-do-liste i HTML, CSS og JavaScript
  • at få hjælp til at forstå en fejlmeddelelse og foreslå en rettelse
  • at få idéer til små øveprojekter, du selv kan kode videre på

Det vigtige er at se ChatGPT som en med-programmør, ikke som en magisk maskine, der bare spytter perfekt kode ud. Du lærer mest, hvis du bruger det aktivt og nysgerrigt – ikke bare kopierer alt, hvad der kommer ud.

Hvad kan ChatGPT til kodning – og hvor går grænsen?

ChatGPT kan skrive, forklare og fejlfinde kode, men den kan også lave fejl, bruge forældede mønstre eller misforstå krav. Den er stærk som hjælper og sparringspartner, men den kan hverken erstatte dine egne tests eller officiel dokumentation.

Som kodningsværktøj kan ChatGPT typisk hjælpe dig med at:

  • Generere kode – fx en funktion i Python, en komponent i React eller et lille HTML/CSS-layout.
  • Forklare eksisterende kode – “hvad gør den her funktion?”, “hvorfor bruger den et loop her?” osv.
  • Fejlsøge – du kan indsætte fejlmeddelelser og bede modellen forklare, hvad der er galt.
  • Foreslå forbedringer – fx gøre koden kortere, mere læsbar eller mere effektiv (refactoring).
  • Introducere nye biblioteker/API’er – fx “vis mig et simpelt eksempel på fetch i JavaScript” eller “hvordan bruger jeg requests i Python?”.

Men der er klare begrænsninger, du skal kende fra start:

  • Hallucinationer: ChatGPT kan opfinde funktioner, metoder eller konfigurationer, der ikke findes i den version af biblioteket, du bruger.
  • Forældet viden: Modellen er ikke et live opslag i internettet. Den kan mangle de nyeste ændringer i frameworks, API’er eller sikkerhedsanbefalinger.
  • Ufuldstændige løsninger: Den kan glemme edge cases, manglende fejl-håndtering eller særlige scenarier, der først dukker op i praksis.
  • Ingen “rigtig” forståelse: Den ser mønstre i tekst, men forstår ikke dit system som helhed. Det er dig, der skal holde styr på krav, arkitektur og kontekst.

Derfor bør du aldrig bare copy-paste og shippe koden uden at læse og teste den. En god tommelfingerregel er: ChatGPT må gerne skrive første udkast, men du skal eje den endelige løsning. Hvis du vil læse mere om, hvorfor blind copy-paste er en dårlig idé, er der en god gennemgang i denne artikel om AI-kode og copy-paste.

Sådan bruger du ChatGPT til kodning som begynder

Den bedste måde at bruge ChatGPT til kodning på er at give den en tydelig rolle, et konkret mål og klare krav til output. Start med små opgaver, bed om forklaring undervejs, og brug altid de fejl og testresultater du får som input til næste spørgsmål.

En simpel workflow: problem → prompt → svar → test → ret

Du kan tænke din kodningssession med ChatGPT som fem gentagende trin:

  1. Problem: Hvad vil du bygge eller forstå?
  2. Prompt: Hvordan beskriver du det tydeligt for ChatGPT?
  3. Svar: Hvilken kode og forklaring får du?
  4. Test: Virker koden i din editor/browser?
  5. Ret: Hvilke fejl eller mangler ser du, og hvordan fodrer du dem tilbage til ChatGPT?

Det er helt normalt, at du skal igennem flere runder, før det virker. Det er ikke et tegn på, at du er dårlig til at kode – det er bare sådan, samarbejdet med en model er.

En praktisk prompt-skabelon til kode

En god kodeprompt fortæller ChatGPT:

  • Rolle: Hvem skal den “være” (fx underviser, senior-udvikler)?
  • Sprog: Hvilket programmeringssprog du bruger.
  • Mål: Hvad koden skal gøre helt konkret.
  • Krav: Særlige regler, versioner eller begrænsninger.
  • Output-format: Skal svaret kun være kode, eller også forklaring?
  • Test: Evt. input / output-eksempler, som koden skal passe til.

En skabelon du kan kopiere og tilpasse:

“Du er en erfaren underviser i [sprog]. Hjælp mig som begynder.
Jeg vil skrive kode, der skal: [beskriv målet så konkret som muligt].
Brug [sprog og evt. version / framework].
Krav: [fx ingen eksterne biblioteker, kun standardbibliotek, koden skal kunne køre i browseren osv.].
Vis først selve koden, og forklar den bagefter trin for trin på et niveau, en begynder kan forstå.
Testcases: Hvis jeg giver input [X], skal output være [Y].”

Eksempel: En lille JavaScript-beregner

Forestil dig, at du vil lave en simpel plus- og minus-beregner i JavaScript til en hjemmeside.

En mulig prompt kunne være:

“Du er en erfaren JavaScript-udvikler og underviser. Hjælp mig som begynder.
Jeg vil lave en meget simpel beregner på en webside, hvor brugeren kan skrive to tal og vælge plus eller minus, og derefter se resultatet.
Brug ren HTML, CSS og JavaScript uden frameworks. Skriv alt i én fil, så jeg kan teste det ved at åbne HTML-filen i browseren.
Forklar bagefter kort, hvad hver del af JavaScript-koden gør.”

Du vil typisk få:

  • Et lille HTML-layout med to inputfelter, en select til +/-, og en knap.
  • JavaScript, der læser værdierne, laver beregningen og skriver resultatet ud.
  • En tekstforklaring af, hvordan funktionen, events og DOM-manipulation virker.

Når du har sat koden ind i din egen fil og testet den i browseren, kan du gå videre:

  • Hvis noget ikke virker: kopier fejlmeddelelsen og spørg “jeg får denne fejl, hvad betyder den og hvordan retter jeg den?”.
  • Hvis det virker: bed om en udvidelse, fx “tilføj gange og division” eller “tilføj simpel validering, så brugeren får en besked, hvis felterne er tomme”.

Hvis du gerne vil have mere styr på selve sproget, kan du kombinere ChatGPT med en introduktion som denne begynderforklaring til JavaScript.

Brug rolleprompting til at styre forklaringsniveauet

En lille, men vigtig detalje er rollen. Hvis du fx skriver:

“Du er en tålmodig underviser, der forklarer til en helt nybegynder. Brug få fagord, og giv små eksempler.”

får du typisk en langt mere pædagogisk forklaring, end hvis du bare skriver “skriv en funktion i Python der gør X”. Det gør en stor forskel, når du skal lære samtidig med, at du får løst en konkret opgave.

Vil du nørde endnu mere med prompts til kode, kan du dykke videre ned i denne guide til prompts for kodning og læring.

Eksempler på konkrete kodeopgaver til ChatGPT

De bedste kodeopgaver til ChatGPT som begynder er små og tydelige: en calculator, en to-do-liste, en simpel formularvalidering eller et kort script. Jo mere konkret opgaven er, desto lettere er det både at få brugbar kode og at forstå, hvad du laver.

1. To-do-liste i browseren (HTML/CSS/JavaScript)

Mål: Lære om variabler, events og DOM-manipulation.

Eksempel-prompt:

“Hjælp mig med at bygge en meget simpel to-do-liste i HTML, CSS og JavaScript. Jeg vil kunne skrive en opgave i et inputfelt, klikke på en knap og få vist opgaven i en liste nedenunder. Jeg er begynder, så forklar koden trin for trin. Brug ren JavaScript uden frameworks.”

Hvad du især kan lægge mærke til i svaret:

  • Hvordan JavaScript finder elementer med document.querySelector eller getElementById.
  • Hvordan events (klik på knap) kobles til en funktion.
  • Hvordan nye listeelementer oprettes og sættes ind i DOM’en.

2. Simpel formvalidering (JavaScript)

Mål: Lære om if-sætninger, betingelser og fejlmeddelelser.

Eksempel-prompt:

“Lav et eksempel på en simpel HTML-formular med et e-mail-felt og en password-felt. Brug JavaScript til at tjekke, at felterne ikke er tomme, og at e-mailen ligner en e-mailadresse. Hvis noget er forkert, skal der vises en rød fejltekst under feltet. Forklar koden kort.”

Her får du typisk en blanding af:

  • HTML med labels og inputs.
  • JavaScript der kører, når du trykker “submit”, og som stopper event.preventDefault(), hvis der er fejl.
  • Logik til at tjekke e-mail med en simpel test (ofte en regex) og skrive fejlbeskeder.

3. Lille Python-script til filbehandling

Mål: Lære løkker, fil-læsning og grundlæggende databehandling.

Eksempel-prompt:

“Jeg vil skrive et lille Python-script, der læser en .txt-fil linje for linje og tæller, hvor mange gange et bestemt ord forekommer. Vis et enkelt eksempel, og forklar, hvad hver del gør. Antag at filen ligger i samme mappe.”

Her får du erfaring med:

  • with open(...) til at håndtere filer.
  • Loops der går igennem hver linje.
  • En simpel tæller, der øges, når ordet findes.

Hvis du vil have mere styr på dit Python-miljø, før du begynder at eksperimentere med scripts, kan du overveje at sætte et virtuelt miljø op, fx med hjælp fra denne guide til Python og venv.

4. Hent data fra et API (JavaScript)

Mål: Lære om fetch, JSON og asynkron kode.

Eksempel-prompt:

“Vis et helt enkelt eksempel i JavaScript på, hvordan jeg med fetch kan hente data fra et offentligt JSON-API (fx et dummy-API), og vise titlerne i en liste på siden. Forklar kort, hvad der sker i koden. Antag at jeg bare åbner HTML-filen i browseren.”

Du lærer især:

  • Hvordan fetch() fungerer, og hvorfor der bruges .then() eller async/await.
  • Hvordan du omdanner svaret til JSON.
  • Hvordan du viser data i DOM’en.

Sådan tjekker du om ChatGPTs kode virker

ChatGPT-kode skal altid testes, fordi modellen kan lave syntaksfejl, glemme detaljer eller foreslå løsninger, der ikke passer til din version af et bibliotek. Den hurtigste vej til noget, der faktisk virker, er at fejlsøge systematisk i små trin.

Trin-for-trin debugging for begyndere

En simpel rutine, du kan bruge hver gang:

  1. Indsæt koden i din editor
    Gem filen og kør den enten i browseren (for HTML/JS) eller via terminalen (fx python script.py).
  2. Læs fejlmeddelelsen
    Hvis noget går galt, viser din browser-konsol eller terminal en fejl. De vigtigste typer er:
    • Syntax error: koden er ikke gyldig (manglende parentes, forkert indrykning osv.).
    • Runtime error: koden er syntaktisk korrekt, men fejler, når den kører (fx fordi en variabel ikke findes).
    • Stack trace: en stump “spor” der viser, hvor i koden fejlen opstår.
  3. Kopier hele fejlen ind i ChatGPT
    Skriv fx: “Jeg får denne fejl, når jeg kører koden. Forklar hvad den betyder, og hvordan jeg kan rette den.” og indsæt både fejl og den relevante del af koden.
  4. Ret én ting ad gangen
    Lav kun den ændring, du har fået foreslået, test igen, og se om fejlen forsvinder eller ændrer sig. Det gør det meget lettere at lære, hvad der faktisk virkede.
  5. Sammenlign med dokumentation
    Hvis du bruger et kendt bibliotek eller framework, så tjek et hurtigt eksempel i den officielle dokumentation. Her kan ChatGPT også hjælpe: “Vis mig et eksempel fra dokumentationen på, hvordan man gør X i [framework/version].”

Jo bedre du bliver til at læse fejlmeddelelser, jo stærkere bliver du som udvikler – med eller uden AI. Hvis du vil gå mere i dybden med selve debug-processen, er denne guide til systematisk debugging et godt næste skridt.

En lille tjekliste til kvalitetssikring

Når ChatGPT har skrevet eller rettet kode, kan du stille dig selv de her spørgsmål:

  • Virker koden for de konkrete eksempler, jeg bad om?
  • Hvad sker der, hvis jeg giver et underligt input (en tom streng, null, meget store tal osv.)?
  • Er der steder, hvor der helt mangler fejl-håndtering?
  • Giver koden mening, når jeg læser den langsomt igennem linje for linje?
  • Hvis jeg søger efter et lignende eksempel i dokumentationen, ligner det så nogenlunde det samme?

Når du begynder at bygge lidt større projekter, kan du også kigge på automatiske tests og CI. Der er en blid introduktion til, hvordan simple test- og CI-opsætninger kan hjælpe dig i artikler som denne om tests i Vite-projekter og denne om små CI-workflows.

Hvilken ChatGPT-plan eller hvilket værktøj giver mest mening til kodning?

Til de fleste begyndere er gratis ChatGPT rigeligt til at lære og løse små kodeopgaver. Hvis du arbejder mere intensivt, eller bliver begrænset af kø-grænser og funktioner, kan en betalt plan eller et værktøj som Copilot begynde at give mening – men det er sjældent nødvendigt fra dag ét.

Gratis vs. betalt ChatGPT (vejledende)

Planer og priser ændrer sig løbende, så se følgende som en tommelfingerregel, ikke et præcist tilbud:

Valg Typisk brug Er det nok til begyndere?
Gratis ChatGPT Tekst- og kodeprompts i et begrænset omfang, god til læring og små projekter. Ja, ofte rigeligt til at lære, få kodeforklaringer og løse mindre opgaver.
ChatGPT Plus (ca. 150 kr./md., vejledende) Mere stabil adgang, typisk hurtigere svar og flere funktioner. Relevant, hvis du bruger det dagligt til kode, lange sessioner og mange iterationer.
Højere planer / Pro Intensiv brug, teams, integrationer og ofte API-adgang. Normalt kun relevant, hvis du bygger værktøjer eller arbejder professionelt med AI.

Dobbelttjek altid aktuelle priser og funktioner på den officielle side, før du beslutter dig.

ChatGPT vs. Copilot vs. dokumentation

Det er også værd at kende forskellen på nogle af de typiske værktøjer, du vil støde på:

  • ChatGPT: God til dialog, forklaring, idéudvikling og hele kodeeksempler. Bedst til “hvorfor?” og “hvordan gør jeg X?”.
  • GitHub Copilot: Integreres i din editor (fx VS Code) og foreslår kode, mens du skriver. Bedst til “skriv lige den her funktion færdig” eller gentagne mønstre.
  • Officiel dokumentation: Den primære kilde til, hvordan et bibliotek eller framework faktisk virker i en bestemt version.

En god arbejdsdeling kan være:

  • Brug ChatGPT til at forstå koncepter og få en første skitse af koden.
  • Brug dokumentation til at sikre, at du bruger funktioner og API’er korrekt.
  • Brug Copilot (eller lignende) til at accelerere det daglige skrivearbejde i din IDE, hvis/når du når dertil.

Hvis du vil have en lidt bredere refleksion over, hvordan AI kan fungere som med-programmør uden at du mister styringen, kan du læse denne artikel om AI som medprogramør.

Sikkerhed og privatliv, når du bruger ChatGPT til kode

Brug aldrig ChatGPT som lager for følsomme data, private nøgler eller ukontrolleret virksomhedskode. Når du arbejder med kode, er hovedreglen at dele så lidt som muligt, anonymisere det du kan – og altid teste output, før du bruger det i et rigtigt projekt.

Hvad du aldrig bør sende ind

Som begynder kan det være fristende bare at copy-paste hele dit projekt, men der er nogle ret klare “nej tak”-typer af data:

  • API-nøgler og tokens – fx nøgler til Stripe, OpenAI, Google osv.
  • Adgangskoder eller andre login-oplysninger.
  • Følsomme persondata – CPR-numre, helbredsoplysninger, privatøkonomi osv.
  • Fortrolig virksomhedskode, hvis du arbejder på noget, hvor der er klare regler om, at koden ikke må deles udenfor organisationen.

Hvis du bare vil vise strukturen af noget, kan du ofte:

  • Erstatte rigtige nøgler med noget som YOUR_API_KEY_HERE.
  • Fjerne bestemte tekststrenge, der er følsomme.
  • Udklippe kun de relevante funktioner i stedet for hele repoet.

Har du lyst til at forstå secrets og API-nøgler bedre (og hvorfor de er så følsomme), kan du fx kigge på denne gennemgang af API-nøgler og den mere generelle artikel om secrets i kodeprojekter.

ChatGPT som sparring – ikke som sikkerhedsekspert

Du kan godt spørge ChatGPT om generelle sikkerhedsprincipper, men du bør ikke stole på det som eneste kilde til sikkerhedskritisk kode. For eksempel:

  • Brug det til at få forklaret, hvad hashing, kryptering eller CSRF er.
  • Brug det ikke som eneste grundlag for at designe en sikker login-løsning til et rigtigt produkt.

Når noget handler om sikkerhed, produktion eller brugere, bør du altid:

  • tjekke op mod officiel dokumentation
  • kigge efter etablerede best practices
  • spørge mere erfarne udviklere, hvis du har muligheden

Næste skridt: Lær af ChatGPT uden at blive afhængig

Hvis du bruger ChatGPT bevidst, kan det være et stærkt værktøj til at lære hurtigere og bygge ting, du ellers ville kæmpe længere med. Nøglen er at blive ved med at forstå koden, ikke bare producere mere af den.

Et par konkrete måder at bruge det læringsorienteret:

  • Bed jævnligt om forklaringer linje for linje på kode, du får.
  • Spørg “kan denne funktion skrives mere simpelt?” og sammenlign versionerne.
  • Lav små øvelser, hvor du prøver at skrive noget selv først og så beder ChatGPT om feedback.
  • Dokumentér, hvad du lærer, fx i en README eller en lille logbog over dine projekter. Hvis du vil have hjælp til den del, er guiden til at skrive en læsbar README et fint sted at starte.

Hvis du vil se flere konkrete kodestumper og små projekter at øve dig på, kan du også gå på opdagelse i samlingen af kodeeksempler og kombinere dem med dine egne prompts til ChatGPT.

Nej, undgå at sende hemmelige eller personfølsomme oplysninger direkte. Brug anonymiserede eller minimale reproducerbare eksempler, erstat nøgler med placeholder-tekster, og overvej en hosting-løsning med datakontrol (fx enterprise-tilbud eller on-prem) hvis du skal arbejde med følsomme data.
Kør koden i et isoleret miljø, brug linter og type-checker, og skriv eller bed modellen om enkle unit-tests som dækker de vigtigste tilfælde. Samtidig skal du sammenligne med officiel dokumentation og pinne biblioteksversioner for at undgå uoverensstemmelser.
Giv kontekst: sprog og versioner, fejlmeddelelse, hvad du forventede, og hvad du allerede har prøvet. Indsæt et minimalt, reproducerbart eksempel, ikke hele projektet, så får du mere præcise forslag og kan lettere teste rettelserne selv.
Brug ChatGPT når du vil have forklaringer, arkitektur- eller refaktoringsforslag, længere eksempler eller samtalebaseret debugging. Brug Copilot eller andre inline-plugins til hurtige autocompletions og mindre snippets direkte i din editor; de arbejder bedre med løbende kontekst i filen.

Ida Balslev er den type ven, der pludselig dukker op i din messenger med et link til en lille web-app, hun lige har bygget for sjov – og bagefter gerne viser dig, hvordan du selv kan lave den. Hendes passion for kodning startede med en hjemmebygget hjemmeside til en hestestald og er langsomt vokset gennem aftener med tutorials, fejlmeldinger og små, hjemmelavede projekter.

På Codingclass.dk deler Ida den viden, hun selv manglede i starten: konkrete eksempler, tydelige forklaringer og ærlige historier om, hvad der typisk går galt første, anden og tredje gang. Hun elsker at tage et abstrakt begreb som fx "API" eller "asynkron JavaScript" og koge det ned til noget, du kan se, klikke på og lege med i browseren. For hende handler kodning ikke om at være perfekt, men om at turde prøve, bryde ting og bygge dem op igen.

Ida skriver især om webudvikling med HTML, CSS og JavaScript, små Python-scripts og grundlæggende koncepter som debugging, versionsstyring og struktur i din kode. Hun tænker altid i næste skridt: når du først forstår idéen, viser hun dig, hvordan du kan udvide det med en ekstra funktion, lidt pænere styling eller en smartere måde at tænke din kode på.

Gennem sine artikler på Codingclass.dk vil Ida gerne give dig følelsen af, at du ikke sidder alene med koden – men at der faktisk er en, der har kæmpet med de samme fejlmeddelelser og nu gerne vil vise dig en vej igennem dem, i et tempo hvor alle kan være med.

Send kommentar

You May Have Missed