Programmeren voor Natuur- en Sterrenkunde

Versie: September 2017

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 helemaal geen 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 is opgedeeld in vier dagdelen en per module zijn er een aantal opgaves die digitaal ingeleverd moeten worden.

Python

Docenten

Ivo van Vulpen (Nikhef/UvA)
Martijn Stegeman (UvA)

Mail bij voorkeur naar progns@mprog.nl als je praktische vragen hebt of problemen wil melden. Als we bij het practicum zijn, kun je ons natuurlijk ook gewoon direct aanspreken!

Assistenten

Tijdens de practica van dit vak staan de assistenten voor je klaar. Je kunt bij ze terecht met vragen over het programmeren zelf, maar ook over vragen over de feedback op de opdrachten die je hebt ingeleverd of tips over het vak.

Leerdoelen

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

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 programmeer elementen onder de knie te krijgen en ga je daarna aan de slag met wat grotere opdrachten. Aan het eind van de module lever je alles digitaal in. Dat wordt beoordeeld:

Stijl

De scores voor stijl worden als volgt bepaald:

Dagelijks ritme

De opdrachten zijn ingedeeld in blokken van een dagdeel. De bedoeling is dan ook dat je voor elk blok gemiddeld een uur of vier aan werk bent. Als je niet alles af hebt aan het eind van het practicul maak dan de opdracht thuis af. Kom je in de problemen? Neem dan contact op!

Aanwezigheid

De bedoeling is dat je tijdens alle practicumuren aanwezig bent. Wij leren je namelijk ter plaatse nog dingen die je niet in je eentje kunt leren zoals het opsporen en verbeteren van fouten in je programma’s bijvoorbeeld.

Deadline

De deadline voor het inleveren van alle code is aan het eind van de dag van het laatste practicum die jouw groep heeft voor die module. Op dat moment wordt het ingeleverde werk verdeeld onder de nakijkers en gaan zij aan de slag. Er is geen mogelijkheid om het later in te leveren! Lever dus sowieso in wat je hebt! Het is prima om, voor je instuurt, de assistent nog even te vragen naar je opgave te kijken, zodat je nog verbeteringen kunt aanbrengen.

deadline groep DFGH groep EK
opdracht 1 14 september 23:59 15 september 23:59
opdracht 2 28 september 23:59 29 september 23:59
opdracht 3 12 oktober 23:59 13 oktober 23:59
opdracht 4 19 oktober 23:59 20 oktober 23:59
deadline groep ABCIJ
opdracht 1 11 november 14:59
opdracht 2 25 november 14:59
opdracht 3 9 december 14:59
opdracht 4 16 december 14:59

Tentamen

Hoewel het niet toegestaan is zou het mogelijk kunnen zijn om ongemerkt mee te liften met een medestudent tijdens het maken van de practica (als je steevast overlegt over de manier van code schrijven). Om zeker te zijn dat je zelfstandig de leerdoelen van het vak hebt gehaald sluiten we het vakl af met een (individueel) tentamen. Je moet het tentamen voldoende maken, maar het telt niet mee voor het eindcijfer.

Eindcijfer

Je krijgt een eindcijfer voor dit vak als je:

Het eindcijfer bestaat in de basis uit het gemiddelde van de problem sets. Een klein deel van het cijfer wordt bepaald door hoe je beter bent gaan programmeren tijdens het vak (de voortgang zelf dus!).

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 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.

Zie ook: