Skip to content

minprog/webprogrammeren

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Inleiding Dataverwerking
en Webtechnieken
Tools voor Data Science

Versie: Januari 2024 (versie 1)

In vier weken ga je aan de slag met diverse platforms voor dataverwerking en webtechnieken. De bedoeling is om je skills mee te geven die je op verschillende plekken in de opleiding weer nodig gaat hebben.

Er zijn zeven modules. Deze modules bestaan meestal uit individuele opdrachten die helpen oefenen voor toetsjes en tentamen. Op het tentamen moet je laten zien dat je een groot deel van de behandelde commando's en constructies uit je hoofd kent en weet hoe je ze moet toepassen. In enkele modules heb je huiswerkopdrachten waar je direct punten voor krijgt.

De meeste modules van dit vak staan voor groot deel los van de andere modules, maar ze bouwen wel enigszins op je eerder opgedane programmeerervaring. Dat betekent overigens niet dat je het vak Programmeren IK gehaald moet hebben om dit vak goed te kunnen doen! Maar je moet wél een begin hebben gemaakt met programmeren en daarin wat handigheid gekregen.

Rooster

  • Zie Datanose voor het rooster.
  • Niet alle groepen hebben tegelijk les. Je moet altijd naar je eigen groep.
  • De bijeenkomsten zijn verplicht, tenzij je alle opdrachten van het hele vak af hebt.
  • Het hertentamen van Programmeren IK is gepland op 30 januari in de avond.
  • Het tentamen van dit vak is gepland op 2 februari in de vroege middag.

Docenten en assistenten

De docenten bij dit vak zijn Martijn Stegeman en Imane Tarrahi. Zij geven het vak vorm en verzorgen de organisatie. Je kunt ze bereiken via e-mail op [email protected]. Daarnaast zijn er student-assistenten, die de cursus goed kennen en jou gaan helpen op de momenten dat het nodig is: Pim Dijkhuizen, Moad Matoug, Melih Metin, Floor van Steijn en Floor Verkade.

Activiteiten, kalender en deadlines

Elke week zijn er twee onderwerpen gepland. Je kunt verwachten de volle werkweek bezig te zijn met het vak, dus zo'n 30-40 uur. De ingeroosterde uren zijn dus niet voldoende om al het werk te doen, tenzij je toevallig ervaring hebt met één van de onderwerpen.

Voor diverse onderwerpen zijn er workshops die plaatsvinden tijdens de les op dinsdag. Deze workshops hebben als doel om te zorgen dat je goed op weg bent en geen installatie- of configuratieproblemen hebt. Mocht je onverhoopt ziek zijn, zorg dan zelf dat je om hulp vraagt, bijvoorbeeld per e-mail naar de docenten.

Het kan zijn dat je het moeilijk vindt en dat je daarom uitloopt met een module. Het is prima om sommige oefeningen wat later dan gepland te maken. Maar naast aanwezig zijn moet je verplicht elke week flink voortgang maken. Als je echt achterloopt, dan is het handig om aan het begin van de derde week om advies te vragen aan Imane of Martijn over welke onderwerpen je moet kiezen voor het tentamen.

De opdrachten Homepage en Finance worden na de hieronder genoemde deadlines nagekeken en kunnen na het verstrijken van deze deadlines niet meer worden ingeleverd om welke reden dan ook.

Week 1

Homepage (basisvaardigheid). Leren schrijven van HTML en begrijpen hoe dit in de browser wordt ingeladen als DOM. Kennis maken met CSS en Javascript. Je maakt een persoonlijke webpagina die aan het eind van de week af moet zijn.

UNIX (essentieel). Kennismaken met de onderdelen van besturingsystemen. Een uitgebreide verkenning van de UNIX shell. Je gaat geselecteerde commando's leren en daarna ga je ze combineren tot "one-liners" waarmee je snelle bewerkingen op tekstbestanden met data kunt doen.

Hieronder vind je het werkrooster voor de week. De dikgedrukte activiteiten vinden plaats tijdens de colleges. De andere activiteiten zijn huiswerk. Afhankelijk van je groepsrooster moet je ochtend en middag omwisselen.

ma di wo do vr
ochtend video's
homepage
carpentry
workshop
unix homepage toetsje:
unix
middag leeswerk
unix
unix unix homepage homepage

Deadline Homepage: vrijdag 12 januari 17:15 uur

Week 2

Databases (basisvaardigheid). Kennismaken met de relationele manier om data vast te leggen. Oefenen met het schrijven van SQL-queries om interessante data uit een database te halen.

Reguliere expressies (basisvaardigheid). Leren hoe je teksten kunt filteren en selecteren met hulp van reguliere expressies en het commando grep.

Hieronder vind je het werkrooster voor de week. De dikgedrukte activiteiten vinden plaats tijdens de colleges. De andere activiteiten zijn huiswerk. Afhankelijk van je groepsrooster moet je ochtend en middag omwisselen.

ma di wo do vr
ochtend database
lecture
database
workshop
fiftyville regex toetsje:
databases, regex
middag movies movies regex regex regex

Week 3

Pandas (basisvaardigheid). Data modelleren in Pandas zodat je Python kunt gebruiken om grote datasets te analyseren. Je gaat oefenen met allerlei commando's die je hiervoor kunt gebruiken.

Scraping (basisvaardigheid). Deze module bouwt voort op je kennis over HTML en CSS uit de module Homepage. Hier ga je oefenen met het geautomatiseerd scrapen van informatie van websites, om deze informatie verder te kunnen verwerken in eigen programma's.

Hieronder vind je het werkrooster voor de week. De dikgedrukte activiteiten vinden plaats tijdens de colleges. De andere activiteiten zijn huiswerk. Afhankelijk van je groepsrooster moet je ochtend en middag omwisselen.

ma di wo do vr
ochtend scraping pandas
workshop
pandas scraping toetsje:
pandas, scraping
middag scraping pandas pandas scraping scraping

Week 4

Flask (toepassing). Kennis maken met Flask als platform om webapplicaties mee te bouwen. Een webapplicatie bouwen als opdracht en ruimte om zelf uitbreidingen te maken.

Hieronder vind je het werkrooster voor de week. De dikgedrukte activiteiten vinden plaats tijdens de colleges. De andere activiteiten zijn huiswerk. Afhankelijk van je groepsrooster moet je ochtend en middag omwisselen.

ma di wo do vr
ochtend flask
lecture
finance finance tentamen-
voorbereiding
tentamen-
voorbereiding
middag finance finance finance vragenuur tentamen:
unix,db,regex,
pandas,scraping

Deadline voorstel extra punten: maandag 29 januari 17:15 uur
Deadline Finance: woensdag 31 januari 17:15 uur

Cijfers

Hieronder vind je per module de punten die je kunt verdienen.

  • Homepage (5 punten, huiswerk, niet herkansbaar)

    • 5 punten voor een prettig werkende en informatieve persoonlijke website, voldoende en volgens de eisen ingeleverd
  • UNIX (5 punten)

    • 1 punt door op het wekelijkse toetsje te laten zien dat je op dat moment de basis beheerst, inclusief het uit je hoofd kennen van diverse UNIX-commando's
    • 4 punten door op het tentamen aangetoonde kennis, middels het schrijven van one-liners met UNIX-commando's
  • Databases (5 punten)

    • 1 punt door op het wekelijkse toetsje te laten zien dat je op dat moment de basis beheerst, zoals het schrijven van eenvoudige SQL-queries
    • 4 punten door op het tentamen aangetoonde kennis van sql-operaties en manieren om gegevens uit meerdere tabellen te combineren, middels het schrijven van diverse sql-queries
  • Reguliere expressies (5 punten)

    • 1 punt door op het wekelijkse toetsje te laten zien dat je op dat moment de basis beheerst, door het schrijven van eenvoudige reguliere expressies
    • 4 punten door op het tentamen aangetoonde kennis van de elementaire symbolen in reguliere expressies en hun werking, middels schrijven van grep-commando's
  • Pandas (5 punten)

    • 1 punt door op het wekelijkse toetsje te laten zien dat je op dat moment de basis beheerst, door het schrijven van eenvoudige Pandas-operaties
    • 4 punten door op het tentamen aangetoonde kennis van Pandas-operaties en manieren om data in Dataframes te manipuleren, middels het schrijven van codefragmenten in Python met Pandas
  • Scraping (5 punten)

    • 1 punt door op het wekelijkse toetsje te laten zien dat je op dat moment de basis beheerst, door het schrijven van eenvoudige pup-commando's om informatie te scrapen uit een HTML-bestand
    • 4 punten door op het tentamen aangetoonde kennis van CSS selectors en toepassing om informatie te scrapen uit HTML-bestanden, middels het schrijven van scraping-oneliners
  • Flask (6 punten, huiswerk, niet herkansbaar)

    • 4 punten te verkrijgen mits opdracht voldoende en volgens de eisen ingeleverd
    • 2 punt voor een extra zelfbedachte feature van de website
      (het verplichte voorstel hiervoor moet uiterlijk op 29 januari 17:15 per mail bij mailto:[email protected] ontvangen zijn)

De verdeling van punten die je bij het tentamen kunt verdienen wordt duidelijk zodra je het oefententamen ontvangt in de loop van het vak.

Het eindcijfer bestaat daarmee uit twee deelcijfers:

  • 25/36 deel: theoretisch tentamen (herkansbaar mits voldoende aanwezig geweest)
  • 11/36 deel: praktische oefening (niet herkansbaar)

Het totaal aantal punten is 36 en daarmee is de formule voor een eindcijfer punten / 36 * 9 + 1.

Herkansing

De herkansing betreft de volledige theoretische stof, dus de volgende onderdelen:

  • UNIX
  • Databases
  • Reguliere expressies
  • Pandas
  • Scraping

Als je het hertentamen maakt vervallen alle eerder gehaalde punten van de betreffende modules, inclusief die van de wekelijkse toetsjes. Voor elk onderdeel kun je in het hertentamen dan weer 5 punten halen.

Aanpassing 16 februari 2024:

Als je niet voldoende aanwezig was (zie onder) dan kun je na herkansing nog maximaal een 6 halen voor het vak.

(De oude regel was dat je helemaal niet kon meedoen aan het hertentamen.)

Aanwezigheidsplicht

Er geldt een aanwezigheidsplicht voor alle activiteiten in het vak.

De ochtendsessies lopen van 9:00 tot 12:30 en de middagsessies van 13:30 tot 17:00 uur.

Als je minimaal 6 van de 7 bijeenkomsten volledig bijwoont (maximaal 15 minuten te laat en maximaal 15 minuten eerder vertrekken), dan mag je het hertentamen maken. Ben je niet voldoende aanwezig dan mag je geen hertentamen maken. Er zijn geen verdere consequenties aan afwezigheid.

Als je door bijzondere omstandigheden niet aan deze eisen kunt voldoen dan kun je contact opnemen met de studieadviseur om een uitzondering te bespreken. Het is dan belangrijk dat je direct melding doet van je problemen en niet pas na een tijdje.

Versneld afmaken

Als je heel erg goed gaat dan kun je de ruimte nemen om de opdrachten versneld af te maken. Zodra je alle oefeningen en opdrachten af hebt, moet je nog één keer langskomen om ze te bespreken met Imane of Martijn. Dan kun je ontheffing van de aanwezigheidsplicht krijgen.

Al eerder gevolgd

Studenten die in het tweede jaar van de opleiding Informatiekunde zitten en dit vak al een keer gevolgd hebben zijn uitgezonderd van de aanwezigheidsplicht, op voorwaarde dat opdrachten en oefeningen zijn ingeleverd op de laatste dag van het betreffende onderwerp in bovenstaande kalender. Je mag sowieso gewoon komen, maar altijd alleen in de ingedeelde groep.

Samenwerken

Je mag met je medestudenten (en anderen) communiceren in het Nederlands of Engels over je werk in deze cursus, maar niet in de vorm van meer dan een paar regels Python, JavaScript, HTML en dat soort talen. Als je twijfelt of je manier van werken passend is, neem gerust contact op met de docenten.

Citeren en hulpbronnen

Je mag gerust op het web zoeken naar uitleg die verder gaat dan de colleges en andere materialen die in de cursus bijgeleverd zijn, en je mag op zoek naar oplossingen voor technische problemen waar je tegenaan loopt, maar je mag zeker geen oplossingen voor onderdelen van de opdrachten overnemen om aan de eisen te voldoen. Daarnaast moet je bij het geheel of gedeeltelijk overnemen van codefragmenten of werken via tutorials en dergelijke altijd een precieze bronvermelding doen. Voor de meeste opdrachten geldt dat je zélf een antwoord of uitwerking moet formuleren.

Officiële regels

Wat betreft fraude en plagiaat volgen we in deze cursus de richtlijnen van de Universiteit van Amsterdam en de werkwijze van de bachelor Informatiekunde. De richtlijnen kun je hier vinden.

About

Webprogrammeren en Databases voor Informatiekunde

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •