Studiewijzer

Inleiding programmeren voor Natuur- en Sterrenkunde / September 2026

Welkom bij deze cursus inleiding programmeren voor Natuur- en Sterrenkunde! Dit blok gaan aan de slag met de programmeertaal Python om te leren hoe we wetenschappelijke problemen uit de wis-, natuur- en sterrenkunde met behulp van een computer op kunnen lossen.

De cursus is opgezet voor mensen die nog geen enkele ervaring hebben met programmeren en bestaat uit vier afzonderlijke modules. Tijdens de cursus leren we via de opdrachten steeds meer over programmeren en de manier waarop we complexe problemen gestructureerd aan kunnen pakken. Elke module (twee weken, met elke week twee afzonderlijke werkcolleges) is steeds opgedeeld in vier dagdelen. Per module zijn er opgaven die ingeleverd moeten worden.

Docenten en assistenten

De docenten zijn de ontwerpers van deze cursus. Je zult ze af en toe zien of horen in een filmpje en ze denken graag met je mee als je een probleem hebt. Je kunt ze mailen via progns@mprog.nl:

Tijdens de werkcolleges zijn er assistenten die je kunnen helpen. Het zijn studenten die het vak eerder hebben gevolgd en een heleboel problemen zelf al zijn tegengekomen.

Leerdoelen

Wat willen we dat je kunt aan het einde van deze cursus?

  1. De student kan eenvoudige natuurkundige problemen oplossen in Python.
  2. De student kan kleine datafiles verwerken, normaliseren; vragen beantwoorden met hulp van Python
  3. De student kan een kleine simulatie ontwerpen van een natuurkundig of ander systeem
  4. De student kan enkele numerieke technieken toepassen, zoals integreren met de monte-carlomethode
  5. De student kan random getallen gebruiken bij het oplossen van bepaalde programmeerproblemen
  6. De student beheerst het gebruik van functies, loops, condities, input/output, en datastructuren zoals lists en strings
  7. De student kan bestaande Python-libraries zoals matplotlib en math toepassen.
  8. De student kan een nette programmeerstijl toepassen.
  9. De student kan zelf-ontwikkelde algoritmes valideren

Opdrachten

Vanaf de eerste dag van de cursus ga je oefenen met het omzetten van een idee voor een programma naar werkende Python-code. Per module doe je eerst wat kleine oefeningen om de nieuwe programmeerelementen onder de knie te krijgen en ga je daarna aan de slag met wat grotere opdrachten.

Let op: je eindcijfer voor dit vak wordt volledig gebaseerd op je score tijdens het tentamen.

Ritme

De opdrachten zijn ingedeeld in blokken van een dagdeel. Als je niet alles af hebt aan het eind van het practicum maak dan de opdracht thuis af. Is het je aan het eind van de module niet gelukt om alle opdrachten te maken, lever dan alles in en neem contact op met de studentassistenten.

Deadline inleveren opdrachten

Er zijn twee deadlines voor het inleveren van opdrachten: eerst lever je van zoveel mogelijk opdrachten jouw oplossing in, waarna deze automatisch wordt gecontroleerd op werking met checkpy. We controleren hierbij dus of je code het juiste antwoord geeft. Daarna volgt een werkcollege waarin je een zogenaamde ‘code review’ doet, waarin je samen met een mede-student elkaars code op leesbaarheid en functionaliteit bespreekt. De focus ligt in die stap op de stijl van het programma. Je kunt gelijk daarna een verbeterde versie inleveren van dezelfde programma’s.

opdracht deadline verbeterd
module 1 ma 14 sep 10:59 vr 17 sep 11:59
module 2 ma 28 sep 10:59 vr 2 okt 11:59
module 3 ma 12 okt 10:59 vr 16 okt 11:59
module 4 ma 19 okt 10:59 -

Kom je in tijdnood? Bespreek het even met de docenten. We willen het graag zo oplossen dat je het vak zelfstandig kunt halen. Programmeren is echt iets dat je zelf even onder de knie moet krijgen.

Bij elke module is er ook een uitdagende opdracht. Die is bedoeld voor mensen die al redelijk wat ervaring hebben of de andere opdrachten wat makkelijk vinden. Als je daar niet aan toekomt is dat geen probleem.

De opdrachten worden niet becijferd maar dienen als voorbereiding voor het tentamen.

Tentamen

Tijdens de practica is het prima als je de opgaven en de mogelijk strategie bespreekt met je medestudenten. Als je thuis aan de slag gaat met de opdrachten zal de verleiding groot zijn om met ChatGPT of Claude aan de slag te gaan. Let er goed op dat je zelfstandig de oplossingen in code omzet. Dat is belangrijk voor het tentamen.

Om zeker te zijn dat je zelfstandig de leerdoelen van het vak hebt gehaald sluiten we het vak af met een (individueel) tentamen. Dat tentamen bestaat uit een aantal korte opdrachten en bepaalt je eindcijfer voor het vak. Let op, het tentamen maak je niet op je eigen laptop, volledig zelfstandig en er is geen verbinding met internet. In aanloop naar het tentamen zal er ook een oefententamen beschikbaar worden gemaakt.

Vragen stellen

Tijdens dit vak zul je vaak de hulp inroepen van de assistenten en medestudenten. Er zijn diverse opties voor het stellen van vragen. De beste optie hangt af van het soort vraag dat je wil stellen.

Jouw eerste aanspreekpunt punt zijn je medestudenten. Die zijn met hetzelfde probleem bezig en in het formuleren van je vraag en mogelijke oplossingen waar je aan denkt kunnen medestudenten vaak het best meedenken. Let wel op dat je tijdens het implementeren van je oplossing in Python altijd moet zorgen dat elke regel code jouw eigen werk is. Het beste is dus om medestudenten in te schakelen in de fase vóór het echte programmeren.

Assistentie: direct contact met een assistent, voor moeilijk te formuleren vragen.

Mail: contact met de vakcoördinatoren via progns@mprog.nl.

Laptophelpdesk: voor moeilijke installatieproblemen.

Kom je helemaal niet verder en heb je even geen hulp?

Juist even niet aan de opdracht werken kan je verder helpen!

  • Neem een halfuurtje echt even afstand van je computer; dit helpt je brein afstand nemen van het probleem. Met een frisse blik kom je dan toch weer verder.

  • Ga even door met de volgende opdracht van de module om te kijken hoe je daar mee gaat.