Je zal in deze cursus opgaves en problemen tegenkomen waarbij je niet zeker bent over hoe je ze op moet oplossen. Het bedenken van een oplossing is een proces en een dergelijke oplossing wordt een algoritme genoemd. Maar hoe ontwerp je zo een algoritme?

Vaak beginnen de leerlingen code te typen zonder dat ze weten wat ze doen of wat ze willen doen. Ze proberen een opgave op te lossen maar weten niet hoe, en dus gaan ze maar typen. Je zult je wel realiseren dat dat geen effectieve manier is om oplossingen te maken (hoewel er op zich niks is tegen een beetje experimenteren).

Wat je in dat soort situaties moet doen is een stapje terugzetten, het toetsenbord met rust laten, en denken: “Hoe zou ik dit als mens aanpakken?” Probeer op te schrijven wat je zou doen als je het probleem met de hand zou aanpakken. Het maakt niet uit of het een saaie taak is die je nooit met de hand zou willen doen – je hebt een computer om saaie dingen voor je te doen.

Als je bedacht hebt wat je zou willen doen, bedenk dan hoe je dat in code kunt opschrijven. Want in principe is dat wat je de computer moet vertellen: de stappen die een mens zou kunnen nemen om de oplossing te bereiken. Als je geen manier kunt vinden waarmee een mens het probleem zou oplossen, dan zul je zeker niet in staat zijn een computer te vertellen hoe het probleem opgelost moet worden.