Studiewijzer
Inleiding programmeren voor Natuur- en Sterrenkunde / September 2025
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 bedoeld voor mensen die nog geen enkele ervaring hebben met programmeren en bestaat uit vier afzonderlijke modules. Gedurende de cursus leren we 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 een aantalopgaven die ingeleverd kunnen 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:
- Ivo van Vulpen (Nikhef/UvA)
- Martijn Stegeman (UvA)
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.
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 jouw medestudenten. Juist als je bezig bent met het begrijpen van het probleem, het formuleren van jouw oplossing, dan kan een medestudent vaak goed meedenken. Let wel op dat je tijdens het implementeren van jouw 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.
- de assistent komt naar je toe zodra je aan de beurt bent
- je weet niet waar te beginnen of een onvindbare bug
- je hebt moeite met verzinnen oplossing
- alleen tijdens de geroosterde uren, de wachttijd kan soms oplopen
Mail: contact met de vakcoördinatoren via progns@mprog.nl.
- maken van persoonlijke planningsafspraken
- meedenken over grote problemen met het vak
- andere officiële zaken
- administratie na afloop van het vak
Laptophelpdesk: voor moeilijke installatieproblemen.
- laptop werkt niet meer
- installatieproblemen voor de benodigde software
- loop langs tussen 10 en 16 uur in lokaal B1.19A
- vanaf 22 september alleen nog dinsdag en donderdag 12–13 uur in B1.27A
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.
Leerdoelen
Wat willen we dat je kunt aan het einde van deze cursus?
- Je kunt een omschrijving van een programma omzetten naar werkende code
- Je kunt bijgeleverde bibliotheken gebruiken in je eigen programma’s
- Je kunt code overzichtelijk en beter leesbaar maken door een consistente stijl toe te passen
- Je kunt programmeerfouten opsporen en verbeteren
- Je kunt uitleggen hoe je een aantal numerieke technieken als programma kunt implementeren
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. De bedoeling is dan ook dat je voor elk blok ruim een uur of vier aan werk bent. Als je niet alles af hebt aan het eind van het practicum maak dan de opdracht thuis af. Kom je in de problemen? Neem dan contact op!
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 code review gaat doen, waarbij de
focus ligt op de stijl van het programma. Je kunt daarna een
verbeterde versie inleveren van dezelfde programma’s.
opdracht | deadline | verbeterd |
---|---|---|
module 1 | ma 15 sep 10:59 | wo 17 sep 19:59 |
module 2 | ma 29 sep 10:59 | wo 1 okt 19:59 |
module 3 | ma 13 okt 10:59 | wo 15 okt 19:59 |
module 4 | ma 20 okt 10:59 | - |
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
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 oefententaen beschikbaar worden gemaakt.
Samenwerken, fraude en plagiaat
Samenwerken tijdens dit vak is niet toegestaan. Dit vak heeft als doel jouw persoonlijke programmeervaardigheid te ontwikkelen. Bij vervolgvakken is het vaak wél mogelijk om samen te programmeren.
Tijdens de practica is het natuurlijk prima als je de opgave (en strategie) bespreekt met de student die naast je zit. Het is echter niet toegestaan om een regel code van je medestudenten of van internet over te nemen.
Een belangrijk verschil dus: je kunt discussiëren over de manier waarop je een probleem aanpakt, maar je kopieert niet de code van anderen. Om het jezelf niet te makkelijk te maken, is het slim om niet op het scherm van je buren te kijken.
Als je merkt dat je zodanig aan het overleggen bent dat je dezelfde code krijgt als een medestudent, is het hoog tijd om de assistent om hulp te vragen!
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.
Plagiaatregeling
Fraude volgens de UvA: “Het handelen of nalaten van een student waardoor een juist oordeel over zijn kennis, inzicht en vaardigheden geheel of gedeeltelijk onmogelijk wordt.”
We gebruiken bij de beoordeling van de opdrachten plagiaatdetectie. Als blijkt dat je opgave geheel of gedeeltelijk overeenkomt met een andere inzending of een uitwerking van internet, dan zijn er twee mogelijkheden.
-
Er is een bronvermelding: in dat geval voldoe je niet aan de eis van het zelfstandig maken van de opgaven en wordt je inzending afgekeurd. Omdat dit meestal na de deadline is betekent dat doorgaans dat je het vak dit jaar niet kunt afronden.
-
Er is geen bronvermelding: in dat geval rapporteren we aan de examencommissie welke inzendingen overeenkomen, waarna de commissie beslist over te nemen maatregelen.
Zie ook:
- de fraude- en plagiaatwebsite, en
- de onderwijs- en examenregeling van Natuur- en Sterrenkunde.