Sluitstuk | Beter lesmateriaal voor programmeertaal SQL
Een nieuwe computertaal aanleren is een vak apart, zo blijkt uit het promotieonderzoek van TU/e-informaticus Daphne Miedema. In een wereld vol enen en nullen laten studenten al snel computers opdrachten uitvoeren in bekende talen zoals Java, Python of C++. Maar leren programmeren met database-taal SQL gaat veel studenten Computer Science minder makkelijk af. Miedema schoof daarom opnieuw de collegebanken in en onderzocht de valkuilen. Met de ontwikkeling van nieuw lesmateriaal wil ze SQL-onderwijs optimaliseren.
Voor een buitenstaander mogen alle programmeertalen op elkaar lijken, toch is de momenteel meest gevraagde taal SQL van een ander kaliber, vertelt Daphne Miedema. Met een masteropleiding van zowel Computer Science als Human Technology Interaction op zak, bekeek ze het huidige SQL-onderwijs vanuit verschillende perspectieven. Vrijdag 12 januari verdedigt ze haar proefschrift aan de faculteit Mathematics and Computer Science, tevens aanleiding voor het mini-symposium ‘Data Education for the Future Engineer’.
Opdracht of beschrijving
Wat maakt SQL dan zo anders dan andere bekende programmeertalen? “Structured Query Language (SQL) heeft een heel andere opzet. Het lijkt een beetje op gewoon Engels, maar wel zodanig dat het wordt begrepen door databasemanagementprogramma’s. Je kunt zo met databases communiceren en het bijvoorbeeld inzetten voor het beheer van gegevens; het vormt de basis van elke website. In plaats van stap-voor-stap opdrachten hoe een computer een probleem kan oplossen, kun je met SQL declaratief programmeren. Daarbij ligt de nadruk op het beschrijven van het probleem zelf, en dus niet zozeer hoe je het oplost. Kort gezegd gebruikt SQL beschrijvingen, waar bij ander talen opdrachten de belangrijkste elementen zijn. En door een opdrachtenlijstje is het veel eenvoudiger om stapsgewijs heen te lopen, bijvoorbeeld op zoek naar programmeerfoutjes. Met SQL gaat dat niet zo makkelijk.”
Data organiseren
Data wetenschap wordt in onze maatschappij steeds belangrijker, denk aan het gebruik van allerlei kunstmatige intelligentie-toepassingen, maar ook het grootschalig verzamelen en interpreteren van data. Daarom is het volgens Miedema belangrijk dat we goed begrijpen hoe je die data organiseert. “Je komt niet zo maar van data tot een voorspelling of AI model. Databasemanagement wordt nog vaak wat onderbelicht, maar een goede basis is essentieel.” Bij de huidige banen in het Computer Science werkveld is SQL de meest gevraagde programmeertaal, en ook dat geeft aan dat dat we onze studenten daar goed in moeten opleiden, benadrukt Miedema.
Want veel studenten komen problemen tegen bij het aanleren van programmeertaal SQL. Hoewel de taal al sinds de jaren zeventig van de vorige eeuw bestaat en tegenwoordig dus wordt ingebouwd in de standaard toolbox van elke computerwetenschapper, is er vrij weinig bekend over problemen in het SQL-onderwijs. Voor Miedema – met een passie voor het overdragen van kennis – een kans om in dit gat te springen. “Al sinds de middelbare school geef ik bijles in de exacte vakken, wat hier op de TU/e overliep in meerdere student-assistentschappen. Via een PhD-TA positie ben ik steeds meer betrokken geraakt bij het onderwijs en heb uiteindelijk ook zelf enkele lectures ontwikkeld.”
Verkeerde aannames
Afgelopen jaren was Miedema veel in de collegebanken te vinden, sprak ze studenten van beginnersniveau tot SQL-experts en analyseerde ze stapels gemaakte opgaven. Hoe lossen studenten problemen op, en hoe maken ze bijvoorbeeld de vertaalslag van Engels naar SQL?
Heeft dat meer duidelijkheid gegeven in de fouten die studenten maken en het waarom? Miedema knikt. “Veel studenten kennen al een andere programmeertaal voordat ze SQL leren. We zien vaak dat studenten het leren van SQL onderschatten omdat ze al kunnen programmeren. Ook zien we dat er een bepaald gedachtepatroon ontstaat: “Ik heb geleerd dat iets op deze manier werkt, dus werkt dat in SQL ook zo.” Zo neemt een student iets verkeerd mee naar een nieuwe taal, die heel anders werkt. Deze verkeerde aannames – misconceptions – zijn een nieuwe ontwikkeling binnen het data systems onderwijs.”
Nieuw lesboek
Nu er meer zicht is op hoe studenten SQL leren en wat de valkuilen kunnen zijn, wil Miedema hier graag met het SQL-onderwijs op inspelen, met haar proefschrift als leidraad. In eerste instantie ontwikkelde ze een workshop om docenten bewust te maken van onderzoek over het leren van SQL. Ze heeft deze al op enkele internationale conferenties gegeven. De feedback is lovend, geeft ze schoorvoetend toe. “Er is echt behoefte aan vernieuwing van het onderwijs. Wat we hier op de TU/e zien, speelt wereldwijd; voor veel docenten een eyeopener. Het helpt dat we nu wat meer in het hoofd van de student kunnen kijken.”
In een nieuwe studie gaat Miedema bekijken of en hoe misconceptions omgekeerd kunnen worden; in haar eigen lessen legt ze hier al meer de nadruk op. “Ik neem mijn onderzoek zo mee de klas in.” Ondertussen oriënteert Miedema zich op een Amerikaans avontuur, ook gericht op het optimaliseren van SQL-onderwijs aan beginnende studenten. Ze hoopt dat alle verzamelde theorie kan samenkomen in nieuw materiaal dat docenten moet gaan helpen. Want over haar einddoel is ze heel duidelijk: het zou mooi zijn als die beginnende studenten straks háár nieuwe lesboek onder de arm hebben.
Discussie