RU Pythoncursus

Welkom bij de Pythoncursus aan de Radboud Universiteit! In deze cursus ga je in zes bijeenkomsten leren om simpele programmaatjes te schrijven in Python. Iedere week is er een bijeenkomst op de universiteit waarin je onder begeleiding van studenten een aantal opdrachten gaat maken. In deze opdrachten moet je heuse programma's in elkaar zetten!

CS Circles

Voor deze cursus maken we als achtergrondmateriaal gebruik van de online Pythoncursus van CS Circles. Door het volgen van deze cursus kun je je basisvaardigheden ontwikkelen. Deze basisvaardigheden heb je tijdens de bijeenkomsten nodig om aan de wat moeilijkere opdrachten te werken.

Als voorbereiding op iedere bijeenkomst is het de bedoeling dat je aantal van de CS Circles-opdrachten maakt. Op die manier kun je tijdens de bijeenkomst snel aan aan slag met de inleveropdrachten. Welke opdrachten je moet inleveren, kun je hieronder vinden.

Als je thuis de opgaven aan het maken bent en er niet helemaal uit komt kan je ons altijd even contact opnemen. Dat kan door ons een e-mail te sturen, maar ook door op de "help"-knop te klikken. Deze kun je onderaan elke opgave vinden.

Programmeeromgeving

Voor deze cursus gebruiken we de VSCode programmeeromgeving. Deze staat op de universiteit al op de computers.

Voor thuis: installeer eerst de laatste versie van Python 3, en download daarna VSCode. Vervolgens installeer je in VS Code de Python extension. Je kunt ook gebruik maken van de gratis Community Edition van PyCharm. In deze PDF kun je uitleg vinden over het gebruik van deze programmeeromgeving.

Als PyCharm niet beschikbaar is, kun je sommige van de opdrachten ook maken in de online Repl.it omgeving.

Planning

In onderstaande tabel staan de geplande bijeenkomsten. De fysieke bijeenkomsten beginnen om 10.00 uur en duren tot ca 16.00 uur. De online bijeenkomst begint om 14.00 uur en duurt tot 16.00 uur. Het is de bedoeling dat je het huiswerk uit CS Circles vóór de geplande bijeenkomst hebt gemaakt. In de bijeenkomst is er dan vervolgens tijd om aan de opdrachten te werken.

We snappen dat er waarschijnlijk nogal wat niveauverschil tussen jullie zal zitten. Daarom is deze planning een voorlopige planning. Voel je dus vrij om iets vooruit te werken of iets achter te lopen.

Hier zullen geleidelijk ook de voorbeelduitwerkingen van de opdrachten beschikbaar komen. Wijkt jouw code af van de uitwerking die hier gegeven is? Dat is niet erg, er zijn vaak vele manieren om een programmeerprobleem op te lossen. Bij sommige opdrachten hebben we ook meerdere uitwerkingen gegeven. Vaak is er dan één 'naïve' uitwerking die gebruik maakt van de stof die jullie bij die opdracht al geleerd hadden, en de andere uitwerkingen gebruiken geavanceerdere Python-technieken.

Datum Zaal Huiswerk uit CS Circles Slides Extras Opdrachten Uitwerkingen
15 November HG00.023 0, 01, 01E, 02, 02X, 03, 04, 05, 06, 06D, 07, 07A, 07B, 07C Week 1
22 November Online 08, 09, 10, 11A, 11B, 11C, 12 Week 2
29 November HG00.023 13, 14, 15, 16, 17, 18 Week 3

Extra uitdagingen

Je leert bij deze cursus een aantal basisvaardigheden die komen kijken bij programmeren. Er is echter maar één manier om echt goed te leren programmeren: veel oefenen. Dat kan door zelf projectjes te verzinnen om uit te werken, maar de ervaring leert dat dat vaak niet even gemakkelijk gaat. Er zijn echter ook enorme lijsten met problemen beschikbaar die anderen al bedacht hebben die je als oefening kunt gebruiken. Er bestaan zelfs heuse programmeerwedstrijden, waar mensen binnen zo kort mogelijke tijd (of met zo efficient mogelijke code) allemaal hetzelfde probleem oplossen. In week 1 heb je al een opdracht gezien uit een van de kwalificatierondes van Google Code Jam. Hieronder vind je een lijst van een aantal websites waar vergelijkbare problemen zijn verzameld.

Je kan natuurlijk nog veel meer met Python dan alleen algoritmische problemen oplossen. Hieronder zullen we een aantal vervolg-tutorials verzamelen die je zou kunnen proberen.

Opmerkingen, verbeteringen en tips

Deze kun je via deze link anoniem aan ons doorgeven. We waarderen de feedback!

Assistenten

Ieder jaar wordt de Pythoncursus mogelijk gemaakt door de inzet van een team docenten, medewerkers en student-assistenten. Hieronder vind je de huidige en voorgaande student-assistenten op een rijtje.

Huidige assistenten
  • Lars van Rhijn (2021)
  • Job van Doesburg (2021)
  • Marijn Meuleman (2021)
Voorgaande assistenten
  • Joost Rijneveld (2014-2015)
  • Koen Dercksen (2016-2018)
  • Koen van Ingen (2014-2015)
  • Ramon Janssen (2014-2015)
  • Tanja Crijns (2016-2018)
  • Marein Könings (2014-2019)
  • Michiel van de Noort (2019)
  • Julian van der Horst (2019-2020)
  • Luko van der Maas (2019-2020)
  • Brian Wieggers (2020)

Contact

Als je ergens vragen of opmerkingen over hebt, voel je vrij ons aan te spreken of even een mailtje te sturen. Je kunt ons bereiken op het volgende mailadres: pythoncursus [AT] cs.ru.nl