Göm menyn

TDDE23 Funktionell och imperativ programmering, del 1

Ht1 2021


Välkommen till kursen Funktionell och imperativ programmering, del 1! Kursen börjar med en introduktion till Linux och datorsystemen på IDA, och fortsätter sedan med programmering i Python. Kursen övergår naturligt i del 2, TDDE24 i period 2. Innehållet på dessa två kurswebbar kommer att vara delvis identiskt.

Kursen ges för förstaårsstudenter på D- och U-programmen.

Kursen ges av avdelningen Artificiell intelligens och integrerade datorsystem (AIICS).

Information om demonstrationstillfällen och inlämningstillfällen efter kursens slut finns under kursen TDDE24.

Senaste nytt...


2020‑11‑01  Avrundning av TDDE23
 

Nu rundar vi av TDDE23 som är den första delen av höstens Python-kurser. Första labbtillfället i HT2 (tisdag eller onsdag) ägnas åt demonstration av labbarna från TDDE23. För att få koden rättad måste ni också skapa en issue. Detta måste ske senast torsdag den här veckan för att komma med i den här rättningsomgången. Mot slutet av nästa vecka, när assistenterna har rättat igenom allt, kommer jag att rapportera in eventuella poäng. Det som är kvar efter detta hänvisar vi till uppsamlingen av både TDDE23 och TDDE24 som kommer ske efter jul. Glöm inte heller att programmeringsstugorna fortsätter även i TDDE24, men nu på plats. Se mer info här.


2020‑10‑19  Gruppindelning inför TDDE24
 

Gruppindelningen inför del 2 av Python-kurserna, TDDE24, är nu klar och finns i Webreg. I god tid innan nästa läsperiod drar igång behöver du göra följande:

  1. Gå in i Webreg, leta upp dig själv och kolla vem det är vi har parat ihop dig med:
  2. Ta kontakt med din labbpartner via valfri kanal och stäm av så att ni båda är med på tåget.
  3. Om du inte får tag på din labbpartner, om din labbpartner har hoppat av, om vi av någon anledning har missat dig, eller om det skulle vara något annat problem med gruppindelningen, hör av dig så fort så möjligt så försöker vi lösa det.


2020‑10‑15  Extra programmeringsstugor i tentaperioden
 

I nästa vecka har vi två extrainsatta programmeringsstugor som båda två kommer genomföras på plats på campus. Kolla på informationssidan för programmeringsstugor för att se exakta tider och platser. Där finns även info om nästa periods programmeringsstugor som också kommer vara på campus. Utnyttja gärna dessa resurser för att få extra hjälp och komma ikapp inför extra redovisningstillfället i början av nästa läsperiod.
   Ni som har missat att fylla i enkäten eller diagnosen inför gruppindelningen behöver inte vara oroliga. Alla blir indelade i par på ett eller annat sätt. Information om det kommer dyka upp i Webreg i början av nästa vecka.


2020‑10‑11  Fler chanser att demonstrera labbar
 

På fredag 15 oktober är det sista dagen i läsperiod HT1 och den officiella deadlinen för att bli klar med labbarna och datorintroduktionen i TDDE23. Alla ni som är godkända vid den tidpunkten kommer få poäng inrapporterade i början av nästkommande vecka.
   Det är dock flera som har hört av sig och är oroliga för vad som händer om man inte blir klar i tid, och till er vill jag ge lugnande besked om att loppet inte på något sätt är kört. Vi sätter nu in lite extra möjligheter:

  • Vi kommer att erbjuda extra programmeringsstugor under nästa vecka för er som behöver mer hjälp att komma vidare med labbarna. Exakta tider meddelas senare under veckan.
  • Vi kommer ge ytterligare en möjlighet att demonstrera labbarna från TDDE23 (alltså laboration 1-5) under första labbtillfället i nästa period (alltså 2-3 november).
Ta alltså chansen att komma ikapp under tentaperioden! När del 2 av kursen (TDDE24) sedan börjar kommer vi bara att ta hand om demonstrationer för labbarna som hör till den kursen. Nästa gång att redovisa labbarna från TDDE23 kommer bli först i samband med tentaperioden runt jul.


2020‑10‑07  Sista veckan i HT1
 

Seminariet i vecka 41 tar upp testning och undantag, men vi kommer också ha utrymme för att repetera. Om du har någon övning eller något område som du vill ta upp igen, skicka gärna ett förslag till din seminarieledare.
   Glöm inte att svara på enkäten och göra diagnosen som ligger till grund för gruppindelningen inför nästa kurs.
   Och jag vill också påminna om att göra färdigt datorintroduktionsuppgifterna innan den här perioden är över.


2020‑10‑01  Indelning i par inför nästa kurs
 

Nästa veckas seminarium kommer gå igenom funktionell programmering. Vi vet att det brukar vara lite krångligt, så kolla igenom studiematerialet i förväg så att du är lite förberedd.
   I del 2 av Python-kursen som börjar i läsperiod HT2 ska ni arbeta tillsammans i par. Hur bra det går för ett labbpar beror både på individernas kunskaper och förmåga att samarbeta. Tidigare års studenter har påpekat att de gärna vill ha stöd med att hitta labbpar och att det kan vara svårt att labba ihop om man har väldigt olika förkunskaper eller ambitionsnivå. Därför har vi under ett par år hjälpt till att bilda labbpar.
   Detta sker i två steg. Först ska ni fylla i en mycket kort enkät. Därefter ska ni svara på en Python-diagnos. Dessa båda saker måste ske senast fredag 8 oktober kl 18.00. Baserat på era svar i enkäten och era resultat på diagnosen kommer ni att bli hopparade med någon som vi tror att ni kommer funka ihop med. Det kommer ni att kunna se sedan i Webreg för kursen TDDE24.
   Om ni har någon som ni jättegärna vill jobba ihop med går det också bra, om ni har snackat ihop er redan. Skriv i så fall det i enkäten. Om ni inte vill eller hinner svara kommer vi att para ihop er slumpmässigt, med andra som inte heller har svarat.
   Länkar till enkäten och diagnosen finns i utskickat brev samt i kursrummet i Lisam.


2020‑09‑24  Vecka 39: Laboration 5
 

Nästa vecka börjar arbetet med den femte och sista labben den här läsperioden. Laboration 5 är betydligt större än de tidigare och därför är den uppdelad i tre olika delar. Det övergripande temat är bildbehandling. Vi använder det som utgångspunkt för att illustrera flera olika intressanta saker i programmering, och för att det är lite roligt när det blir fina bilder när ens kod äntligen funkar.
   Vi kommer nu att ta oss an lite större mängder kod som någon annan har skrivit. Din uppgift blir att skriva små korta funktioner som ska passa in i en större helhet. Det innebär att det kommer ta lite tid att fundera ut hur den existerande koden funkar. Men om du bara följer labbinstruktionerna steg för steg ska det nog reda ut sig. Vi kastar också in en hel del matte här, eftersom bildbehandling bygger på det. Du behöver inte förstå alla detaljer i den, utan det räcker att du kan översätta formlerna till Python. Själva matten kommer sedan tillbaka i senare kurser.
   Inför nästa veckas seminarium finns det flera delar i studiematerialet som kan vara bra att läsa i förväg. Bland annat kommer vi nu att fördjupa oss lite mer i versionshantering.
   Veckans programmeringsstuga är på onsdag kväll 17-19. Ta chansen att få lite mer hjälp av assistenterna!
   Och glöm inte att göra färdigt datorintroduktionsuppgifterna.


2020‑09‑17  Vad händer vecka 38?
 

Under kursens gång ökar vi successivt kraven för hur koden ska se ut. Vi skriver ju inte kod bara för att det ska funka, utan också för att vi själva och våra kollegor ska kunna läsa och förstå koden i framtiden, om den skulle behöva ändras. Därför diskuterar vi bl.a. kodstandard och namngivning på nästa veckas seminarium. Det här är goda vanor som kommer hjälpa dig och andra under många år framöver, även om det kanske känns lite hämmande för kreativiteten. Läs igenom studiematerialet inför nästa veckas seminarium!
   Att kunna göra upprepningar är en av hörnstenarna i programmering. I den här kursen tittar vi på två sätt: iteration och rekursion. Om du ska bearbeta varje element i en enkel lista eller en sträng är rekursion kanske inte det första naturliga valet, men det är ett bra sätt att öva rekursion. Under laboration 4 fördjupar vi oss mer i rekursion och visar på tillfällen när rekursion är det enda vettiga valet.
   Det här är kluriga saker som det kan ta tid att greppa, så ge inte upp om det till en början känns oklart. Och du behöver inte förstå allting i detalj för att bli godkänd på kursen. Det vi gör i höst är att lägga grunden, och sedan kommer flera kurser senare i programmet att återkomma till många av de frågor vi berör. Om du vill ha mer tid att bolla frågor med assistenterna, dyk upp på vår digitala programmeringsstuga som nästa vecka är på torsdag kväll.


2020‑09‑10  Inför vecka 37
 

Nu hoppas jag att ni börjar bli lite varma i kläderna när det gäller Python. Det ser ut att gå bra för er, även om jag förstår att det är en hel del nytt och konstigt för många av er. I nästa veckas seminarium ska vi titta på en hel del detaljer kring olika datatyper i Python och fördjupa oss i rekursion, så kolla gärna på studiematerialet i förväg. Annars vill jag påminna om två saker:

  1. Nästa veckas programmeringsstuga är redan på måndag kväll. Vi försöker växla dagar, så att det inte ska krocka med eventuella kvällsaktiviteter som ni kanske har. Ta chansen att få lite extra hjälp! Läs mer här!
  2. Glöm inte bort att ni också ska göra färdigt den webbaserade datorintroduktionen. Deadline är visserligen inte förrän 15 oktober, men det är lätt att glömma bort. Redan nu är 28% av er helt klara och 85% är godkända på minst hälften av diagnoserna.


2020‑09‑03  Seminarium och programmeringsstuga v.36
 

Nästa vecka drar vi igång med två nya aktiviteter.

  • På tisdag är det första seminariet. Läs mer om hur de funkar och vilka spår du kan välja mellan.
  • På onsdag kväll öppnar vi vår digitala programmeringsstuga. Det är en extra aktivitet, utanför schemat, särskilt för dig som är nybörjare eller vill ha lite mer handledartid. Programmeringsstugorna är alltid 17-19, men på olika veckodagar. Läs mer om det.


2020‑08‑27  Inför nästa vecka
 

På måndag börjar vi lite mer på riktigt, med Python-programmering, och här är de viktigaste sakerna som du behöver veta:

  • I schemat är det en föreläsningstid på måndag 10-12, men det är alltså ingen föreläsning på riktigt, utan tiden är bara reserverad. Kolla istället på de förinspelade filmerna, åtminstone filmerna i avsnitt 4.
  • Nu finns det en gruppindelning inför Python-labbarna. Logga in i verktyget WebReg och leta efter dig själv så du vet vilken grupp du är med i.
  • Första labbtillfället för Python är tisdag eller onsdag. Kolla i schemat i TimeEdit efter din grupp. En del tider har vi tyvärr behövt flytta på nyligen.
  • Under första veckan kommer vi jobba med den första labbomgången. Den innehåller flera övningar och två st uppgifter som ska redovisas muntligt för era labbassistenter.
  • Om ytterligare en vecka kommer vi dra igång seminarier som vi kommer hålla på plats på campus. Läs mer om det här!


2020‑08‑05  Välkommen till höstens kurs!
 

Den här hösten blir Python-kurserna lite annorlunda. Vi brukar inte ha så många föreläsningar, men de vi hade planerat är inställda. Istället har vi spelat in dem i förväg. Du hittar filmerna, bakom inloggning, i kursens kursrum i Lisam. Observera att filmerna enbart är tillgängliga för studenter som är antagna till eller registrerade på kursen TDDE23. Seminarier och labbar kommer genomföras som planerat. Alltså, det blir ingen första föreläsning, utan börja med att kolla på de första inspelade föreläsningsfilmerna - innan första labbtillfället!


2021‑03‑23  Extra redovisningstillfällen
 

För studenter från tidigare år som vill redovisa gamla labbar, kolla på webbsidan för del 2 av kursen, TDDE24, för information.



Sidansvarig: Peter Dalenius
Senast uppdaterad: 2022-03-14