Hvad er de forskellige typer af programmeringskurser?
Der er en række forskellige computerprogrammeringskurser, nogle meget standard og andre målrettet mod bestemte brancher. Generelt kan de fleste programmeringskurser klassificeres efter det sprog, der undervises, eventuel anvendelse af viden eller af de specifikke nichesystemer, der undervises. Grundlæggende programmeringssprogskurser underviser kun i et enkelt sprog i gradvis mere dybdegående sessioner, normalt kategoriseret efter den krævede erfaring for den pågældende klasse. Klasser, der underviser i en bestemt applikation eller branche, såsom sikkerhed eller netværkssystemer, er normalt ikke til introduktionsstuderende og kræver en vis mængde viden, ikke kun om programmering, men også om generel datalogi. Nicheklasser kan målrettes mod at undervise i, hvordan man skriver programmer til en enkelt type maskine, som en mainframe, eller til en bestemt abstrakt programmeringsgrænseflade (API), og kræver generelt en stærk baggrund inden for datalogi, dog ikke nødvendigvis computerprogrammering.
Generelle computerprogrammeringskurser på et indgangsniveau beskæftiger sig stort set enten med de overordnede begreber inden for computerprogrammering på en sprogneutral måde eller fokuserer skiftevis udelukkende på at undervise i, hvordan man programmerer på et specifikt sprog. Disse typer af kurser er vigtige for at have et solidt grundlag for at bygge ind i mere specifikke videnområder. Nogle kurser samler muligvis mere end ét sprog, såsom HyperText Markup Language (HTML) og Hypertext Preprocessor (PHP), i en enkelt lektionsplan, hvis sprogene er tæt bundet i praktisk brug.
Der er mange computerprogrammeringskurser, der underviser i en bestemt anvendelse af programmering. Flere af disse typer kurser findes, de fleste med forudsætninger i et programmeringssprog eller datalogi. Sådanne kurser udvikles konstant, når nye teknologier dukker op. Eksempler er programmering til neurale netværk, grafik og billeddannelse, realtidssystemer og sikkerhedssystemer.
Niche-computerprogrammeringskurser søger at uddanne studerende i, hvordan man bruger et enkelt system eller en metode, der muligvis ikke umiddelbart finder anvendelse på bredere programmeringsemner. Disse klasser har næsten altid sprogkrav, fordi målsystemerne normalt kun bruger et enkelt sprog. Nogle kurser har dog ikke sprogkrav, især hvis nichesystemet bruger sit eget proprietære sprog. Disse kurser kan omfatte programmering til en type mobil enhed, specielle ingeniørsystemer eller endda luftfartssystemer.
Der er også computerprogrammeringskurser, der er unikke inden for deres område. Sådanne klasser kan involvere teoretiske koncepter, forsøg på at udvikle programmeringssprog, der bruger naturlig grammatik eller endda programmering på eksperimentelle maskiner. Disse kurser kan give værdifuld indsigt i, hvordan computere og programmeringssprog fungerer, men de giver undertiden ikke nogen praktisk viden og forbliver i stedet for området teoretisk programmering.