Beter lesmateriaal voor programmeertaal SQL

- EN- NL
Foto: Bart van Overbeeke
Foto: Bart van Overbeeke
Daphne Miedema verdedigde op 12 januari haar proefschrift bij de faculteit Mathematics and Computer Science.

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 verdedigde 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 een computer stap voor stap te vertellen hoe hij een probleem moet 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, terwijl andere talen commando’s als belangrijkste elementen hebben. En met een opdrachtenlijst is het veel gemakkelijker om stap voor stap te werk te gaan, bijvoorbeeld bij het zoeken naar programmeerfouten. Met SQL is dat niet zo eenvoudig."

Data organiseren

Nu data science steeds belangrijker wordt in onze samenleving - denk aan het gebruik van allerlei toepassingen van kunstmatige intelligentie, maar ook het grootschalig verzamelen en interpreteren van data - is het volgens Miedema heel belangrijk dat we goed begrijpen hoe je die data organiseert.

"De weg van data naar een voorspellingsof AI-model is niet eenvoudig. Databasebeheer is nog steeds een onderbelicht gebied, maar een goede basis is essentieel."

Voor de huidige banen in de informatica is SQL de meest gevraagde programmeertaal, wat ook aangeeft dat we onze studenten er goed in moeten trainen, benadrukt Miedema.

Veel studenten lopen tegen problemen aan bij het leren van de programmeertaal SQL. Hoewel de taal al bestaat sinds de jaren 1970 en tegenwoordig standaard in de toolbox van elke computer scientist zit, is er relatief weinig bekend over die 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

De afgelopen jaren heeft Miedema veel tijd doorgebracht in collegezalen, pratend met studenten van beginnersniveau tot SQL-experts en het analyseren van grote stapels gemaakte opdrachten.

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 inzicht is in hoe studenten SQL leren en wat de valkuilen kunnen zijn, wil Miedema hier graag in 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 in het onderwijs. Wat we hier op de TU/e zien, is een wereldwijd probleem. Dat is voor veel docenten een eyeopener. Het helpt dat we nu een kijkje kunnen nemen in het hoofd van de student."

In een nieuwe studie gaat Miedema bekijken of en hoe misconceptions omgekeerd kunnen worden; in haar eigen lectures 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 ze alle verzamelde theorie kan bundelen tot 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.

Bron: Cursor (Nicole Testerink).