Programmeren moet – in welke vorm dan ook – verplicht worden op middelbare scholen. Dit is de discussiestelling die Computable-lezers vandaag krijgen voorgelegd.
De discussie over de kloof tussen onderwijs en praktijk is al vele jaren oud. In en voor de ict lijkt deze kloof nog veel groter dan voor andere leer- en werkgebieden. Vanuit de ict-sector klinkt al herhaaldelijk het geluid dat basale ict-vaardigheden meer en eerder in het onderwijs opgenomen moeten worden. Bijvoorbeeld door al te leren programmeren op de basisschool.
Over de basisschool valt nog wel te discussiëren, maar op de middelbare school moet ict-kennis en -inzicht toch echt worden meegegeven. Terwijl niet elk kind een programmeur moet worden, is leren programmeren een waardevolle basis voor later begrip van onze ict-afhankelijke leef- en werkwereld. Programmeren dus niet als keuzevak, maar verplicht op de middelbare school. Of toch op een hoger abstractieniveau omgaan met ict? Wat vind jij?
Definieer “programmeren” in deze context.
Mijn eerste programmeerervaring was in de jaren 80: hexadecimale codes inkloppen op een Exidy Sorcerer nadat je eerst middels flowcharts en een dik boek met alle codes het programma op papier voorbereid had.
Wil je de kinderen echt de basics bijbrengen op zo’n niveau, of gaat het om bijvoorbeeld spelenderwijs leren (logisch) combineren van bouwblokken, zoals je bijvoorbeeld met Scratch kunt doen.
Kijkend naar de ervaringen met mijn eigen kroost kan is het wellicht ook zinvol om de basisconcepten van computers op te nemen in het programma (wat is een operating systeem, apps, programma’s, netwerk enzovoort). Voor veel kinderen is het allemaal vanzelfsprekend dat het werkt, maar ze hebben geen idee wat er achter de wereld van dat tablet-schermpje schuil gaat.
Tja, programmeren verplicht… er zal vast iemand over nagedacht hebben, maar als je het niet wil of niet leuk vind wat heb je dan aan die ‘kennis’ ? Ik heb met Pascal gewerkt. ik heb het vrijwel nooit gebruikt.
Dus zonder een vaste keuze (allemaal C# of VB of… ) in taal krijg je dus een wildgroei aan wat een school een handige taal vind. Een hoger abstractieniveau lijkt mij dus beter. (dus niet ‘code’ maar nadenken over een oplossing.
Als je het als ’taal’ wil promoten moet er een standard zijn. anders is het verspilde tijd. je kan dan geen uniforme vergelijking maken (examen/tests) doen.
programmeren om beter te worden in oplossingen bedenken klinkt leuk. maar dat is naar mijn mening heel erg kort door de bocht. Zelf vind ik dat mensen beter worden in oplossen als ze niet gedwongen worden om op een bepaalde manier te denken. Oplossen is een vorm van creativiteit en inventiviteit en niet van strak volgens een model programmeren. (in die zin kan je dus beter vragen om zelfbedachte oplossingen voor fictieve problemen en die bespreken.)
Mij lijkt dat algoritmisch denken als basis veel belangrijker is dan leren programmeren.
Hebben beide auteurs elkaar vooraf gesproken?
https://www.computable.nl/artikel/nieuws/onderwijs/5720597/250449/14-miljoen-voor-aanpak-lerarentekort-informatica.html
On topic: informatica is véél breder dan enkel programmeren. Programmeren an sich is geen must om bewust(er) met de digitale economie om te gaan en ICT-inzicht op te bouwen. Wat ben je met in depth kennis zoals programmeren zonder kennis over het geheel?
Geef liever les in zaken als: logica, normalisatie van data en systeemanalyse waar je in het dagelijks leven nog iets aan kan hebben in plaats van zoiets instrumenteels als programmeren.
De meeste mensen worden geen tolk of vertaler, maar toch krijgt iedereen Engels, Frans en Duits op school.
De meeste mensen worden geen wiskundige, maar ook hier geldt dat wiskunde een basisvak is welke door iedereen moet worden gevolgd.
Hetzelfde geldt voor informatica: vele mensen worden geen informaticus (net zoals de anderen hier trek ik het wat breder dan programmeur), maar toch kan het geen kwaad als je de grondbeginselen kent. Want vooral sinds de iPad en iPhone werkt vrijwel iedereen met computers!
Informatica zou een verplicht vak moeten worden op de middelbare school. Dat hoeft niet een vak te zijn dat je je hele schoolcarrière 3 uur per week krijgt, maar 1 of 2 schooljaren lang 1 uur per week, afhankelijk van de gewenste / benodigde diepgang, zou moeten volstaan.
De informaticalessen moeten de grondbeginselen van de ICT moeten uitleggen, zodat iedereen weet wat de verschillen tussen hardware, OS en software (apps) zijn. De gevaren die we tegenwoordig in de online wereld meemaken (phishing) kunnen herkennen, zodat je er niet in trapt. Het logisch nadenken is een volgende verplichte stap. Het opdelen van grote brokken in kleinere “hapklare” brokken ook.
Gestructureerd programmeren leer je niet door hexadecimale codes in te kloppen, maar door die net gevonden hapklare brokken eerst eens in een pseudocode op te schrijven. Ook die stap mag wat mij betreft een verplicht onderdeel van het middelbare school informaticaonderwijs zijn.
Het programmeren zelf, dus het uitschrijven van de pseudocode in een programmeertaal die, eventueel na compileren, door een computer kan worden uitgevoerd, is wat mij betreft een optioneel onderdeel van de informaticalessen op de middelbare school. En of dat in een taal is waar je later, als je ooit programmeur mocht worden, nog iets aan hebt, of dat het een taal is die vooral in het onderwijs wordt gebruikt, dat maakt weinig uit.
Het denkproces van een “groot” probleem naar hapklare brokken naar pseudocode staat voorop. Dat er code kan worden gemaakt die door een computer kan worden uitgevoerd is een bonus, de kers op de taart, een bewijs dat je de voorafgaande stappen goed gedaan hebt.
Terug naar het onderwerp van de discussie: nee, ik zie geen noodzaak om programmeren verplicht te stellen, maar er is wel een grote noodzaak om een introductie in de informatica een verplicht te stellen!
@Frank: Jammer van dat ene zinnetje; “Want vooral sinds de iPad en iPhone werkt vrijwel iedereen met computers!” want de rest van je reactie snijdt wel hout.
Even ter beeldvorming: De eerste iPhone kwam in 2007, daarna kwam de iPad, daarvoor werden er inderdaad nauwelijks computers gebruikt. 🙂 /sarcasm off
Voor het overgrote deel van de bevolking zijn hardware en applicaties gebruiks-“voorwerpen”. Van koelkasten en wasmachines vraagt niemand zich af hoe het werkt, als het maar functioneert en anders bel je een deskundige. Je zet de TV en de audioapparatuur aan zonder je te bekommeren over het ontwerp van de printplaatjes. Om later auto te rijden hoeft kinderen in het basisonderwijs niet al geleerd te worden banden te wisselen. Even ridicuul vind ik het om op basisscholen, zelf in het voortgezet onderwijs, lessen in programmeren te geven.
@Technicus:
Sinds de “thuiscomputers” (Commodore 64, Sinclair ZX Spectrum, …) en pc’s staan er computers bij mensen thuis. Computers met Windows 95 geïnstalleerd verlaagden de drempel voor het aanschaffen van een pc, en de iMac maakte de computer nog weer makkelijker te gebruiken (al werd de financiële drempel hoger). Er kwamen meer huishoudens met computers, maar er waren nog steeds veel huishoudens zonder computer.
Sinds we smartphones en tablets (en altijd online internet) hebben, zijn er bijna geen huishoudens zonder computer meer.
@Jan Verschuren:
Jouw analogie gaat volledig mank!
Om auto te kunnen rijden, moet je wat basiszaken weten. Om auto te mogen rijden, heb je een rijbewijs nodig.
Een auto heeft een energiebron nodig, je moet dus weten hoe je het energieniveau (inhoud brandstoftank of accu) moet uitlezen en hoe je moet tanken / laden. Je moet ook een kilometerteller kunnen aflezen. Ik heb het niet over banden verwisselen of de werking van een verbrandingsmotor.
Zaken als brandstof, sturen, gas geven en remmen zijn basiszaken. Vergelijk dat met kennis over hardware, OS en software, en hoe je een computer bedient. In mijn eerdere reactie noemde ik ook al dat het inkloppen van hexadecimale codes niet relevant is voor enig ICT begrip.
Als je een auto kunt besturen, betekent dat nog niet dat je deel kunt nemen aan het verkeer. Dan moet je heel wat meer zaken weten en vaardigheden verworven hebben. Pas als je dat aan kunt tonen, dan haal je je rijbewijs. Met computers is het hetzelfde: als je op een icoontje kunt klikken, betekent dat nog niet dat je veilig het internet op kunt. Daarvoor moet je toch echt wat meer weten! Alert zijn op phishing, opletten met wat je op bv Facebook zet, netiquette, allemaal noodzakelijke vaardigheden als je op internet gaat.