Om een computerprogramma te schrijven moet je over verschillende vaardigheden beschikken die je bij andere vakken of in het dagelijkse leven ook kunnen helpen:
Een computer werkt met een binaire taal (0 en 1) en is in feite maar een rekenmachine ("To compute" = rekenen).
Ondertussen gebruiken wij die "rekenmachine" wel voor heel wat ingewikkelde taken (teksten, beeld, geluid, gaming, enz) omdat een computer nu eenmaal veel sneller is dan een mens.
Deze menselijke "problemen" zoals teksten en afbeeldingen kan je echter niet zomaar omzetten in 0'en en 1'en.
Je moet als programmeur deze menselijke problemen dus omzetten in een wiskundige oplossing.
Dit noemt men "Computationeel denken".
Logisch denken: een computer is eigenlijk een heel dom (maar wel een heel snel) toestel. Om een programma correct te laten uitvoeren door een computer moet je dat programma heel logisch opbouwen.
Algoritmisch denken: een programma wordt regel per regel geschreven en ook zo uitgevoerd. Dit leert jou om een complex probleem stap voor stap uit te werken (in de logische volgorde van de vorige vaardigheid).
Decompositie: later krijg je ook grotere en complexe opdrachten. Om deze in een programma om te zetten moet je het grote en complexe probleem eerst opdelen in kleinere deelproblemen en elk van deze kleinere problemen één voor één aanpakken.
Patroonherkenning: er zijn maar een paar hoofdstructuren waarmee je kan werken. Dat wil zeggen dat er vaak gelijkaardige patronen terugkomen in verschillende opdrachten. De kunst is dus om deze patronen te herkennen en te hergebruiken (je moet deze dan wel correct aanpassen zodat die past in het nieuwe programma).
Abstractie: net zoals bij vraagstukken, staat er vaak teveel (nutteloze?) informatie in de opdracht. Je moet alleen de essentie overhouden en daarmee aan de slag gaan.
Evaluatie: je moet je programma ook grondig uittesten om zoveel mogelijke opties te testen en eventuele fouten op te sporen. Je moet jezelf dus eigenlijk evalueren en bijsturen tot het programma "perfect" werkt.
Om die 6 toe te passen moet je beschikken over enkele vaardigheden:
Exploreren: om te programmeren moet je eigenlijk een nieuwe taal leren... Maar je kan natuurlijk niet alle woorden en contructies uit je hoofd leren, dus je gaat moeten leren informatie op te zoeken op het internet en die info implementeren (=toepassen) in jouw programma.
Creëren: bekijk programmeren als puzzelen: je krijgt stukken codetaal die je op de juiste plaats in het programma moet zetten om uiteindelijk tot een werkend geheel te komen.
Foutopsporing: zet je in de plaats van de computer: wat doet elke regel code en wat zal er gebeuren? Je moet dus constant op je hoede zijn voor mogelijke fouten
Doorzetten: programmeren kan frustrerend zijn... hoe meer je kent, hoe moeilijker de problemen zullen worden (want je gaat steeds moeilijkere opdrachten aanpakken). Je gaat dus altijd op je eigen grenzen botsen. Geef niet op en blijf doorzetten! Des te groter is de mentale opluchting en vreugde als het programma uiteindelijk werkt!
Samenwerken: bij grotere programma's zal men het werk verdelen over meerdere personen (zie decompositie). Deze personen moeten wel perfect samenwerken om het grotere geheel te laten kloppen. Een goede programmeur kan dus samenwerken (het beeld dat sommigen hebben van een programmeur zijnde een "asociale nerd" is dus niet juist)
Deze memes vatten het programmeren goed samen... je zal deze later wel begrijpen ;)
2. Repetitieve taken automatiseren
Zoals al eerder gezegd: een computer is niet zo slim maar wel heel snel.
Als je als programmeur er in slaagt om een goed programma te schrijven kan een computer veel sneller werken dan een mens dat kan. Een gemiddelde computer heeft een rekenkracht van bijna 3 miljard bewerkingen per seconde.
Waar een team van 10 mensen jaren voor nodig heeft om te berekenen, kan een computer dit in een fractie van een seconde.
Bijvoorbeeld: je hebt bij wiskunde een formule geleerd die je vaak nodig hebt. Maar dit elke keer uitrekenen vraagt natuurlijk veel tijd. Je kan hier dan een programma voor schrijven dat deze berekening veel sneller kan uitvoeren dan jijzelf zodat je hier op termijn veel tijd mee uitspaart.
3. De toekomst is digitaal
Met de snelle opkomst van robotica en kunstmatige intelligentie (AI) zal vrijwel elk beroep een digitaal aspect krijgen. Zelfs beroepen zoals landbouwers, automechaniekers, houtbewerkers, bouwvakkers, verpleegkundigen enz... zullen ondersteuning krijgen van machines die geprogrammeerd/bediend moeten worden.
Wil je meer kans maken om een job te vinden of wil je snel promotie maken? Dan zijn bepaalde ICT-skills nodig. Bekijk bijvoorbeeld hieronder de video van Zora de Zorgrobot die men in de ziekenhuizen en rusthuizen gebruikt:
4. Je kan er heel rijk mee worden
In de top 10 van rijkste mensen ter wereld zitten 7 IT'ers: de oprichters/topmannen van Microsoft, Amazon, Google, Apple, Oracle, Paypal, enz zijn allemaal begonnen als gewone burgers maar hebben nu een vermogen van ettelijke miljarden. Mark Zuckerberg (Meta/Facebook) was ook de jongste miljardair ooit
De andere 3 rijkste personen hebben hun fortuin geërfd...
Kortom: als je geen rijke familie hebt, is IT de beste manier om snel rijk te worden ;)
Vele programmeertalen... wij kiezen voor Python
Je kan games maken, websites, apps voor smartphones, machines programmeren en programma's voor computers maken... Voor alles bestaan er meerdere programmeertalen met elk hun voor-en nadelen.
Wij kiezen voor de programmeertaal Python:
Python is een vrij recente programmeertaal, ontworpen om gemakkelijker te zijn dan de bestaande (en oudere) programmeertalen. Op korte tijd is Python de derdegrootste programmeertaal ter wereld geworden en wordt gebruikt door Nasa, Uber, Firefox, Netflix, Google enz... Je zal deze programmeertaal ook tegenkomen bij verdere studies (hogescholen en universiteiten).
Je kan Python gratis downloaden op deze site 1 maar hier op Dodona zit Python al ingebouwd.
Klik hieronder op "Markeren als gelezen" om door te gaan naar het volgende item: