Välkommen till Adams Weckor! De här två första veckorna är till för att du ska lära dig programmera i C. Du kommer garanterat inte känna dig färdig med C efter bara två veckor, men om du går på alla sex labbar kommer du ha fått minst 24 timmar av de 10 0000 timmar som behövs för att bli en expert på programmering, och du kommer vara väl förberedd på att läsa resten av kursen.
På varje labb kommer det att vara en eller flera uppgifter som är markerade med en stjärna. Det betyder att dessa uppgifter ska redovisas för en labbassistent. Senare under kursens kommer redovisningarna vara mer utförliga men under de här labbarna räcker det med att räcka upp handen (eller skriva upp sig på tavlan om det finns en lista) och visa vad man har gjort. Förbered gärna ett litet körexempel!
Uppgifterna bygger ofta på tidigare uppgifter och tidigare labbar, så det bästa sättet att lösa dem är helt enkelt att jobba uppifrån och ner.
Ja. Nej. Nja. Det är obligatoriskt att göra dem, men inte att göra dem på plats. Redovisning är enbart möjligt på plats, men alla labbar finns ute från dag 1 och kan göra när som helst.
Ja. Nej. Nja. Det är bra att arbeta i par om två -- dels för att du kommer att göra det senare under kursen, men också för att det ofta främjar reflektion när man sitter med någon annan och måste prata om vad man håller på med och inte "bara göra det". Det viktigaste är att varje enskild person har varit med och gjort allt som labbarna innehåller. Om du jobbar själv händer det automagiskt. Om du jobbar med någon annan måste du se till att vara 50% av tiden framför tangentbordet! Du kommer inte att lära dig programmering om du låter någon annan skriva all kod!!!*
Vi rekommenderar att man försöker hinna klart med uppgifterna på labben de ges. Varje labbs mjuka deadline är alltså samma dag som den ges. Om du av någon anledning inte hinner klart, eller om du missar en labb kan du göra klart labben på egen hand och istället redovisa den på efterföljande labb. Varje labbs hårda deadline är alltså efterföljande labbtillfälle.
Om du av någon anledning tror att du inte kommer klara någon hård deadline, hör av dig till en senior assistent eller till Tobias så hittar vi en lösning!
Det finns många sätt att komma vidare om du kör fast:
- Fråga en labbassistent - Assarna är här för att hjälpa till. Kom ihåg att de inte sitter på "det rätta svaret" (det finns nästan aldrig bara en enda lösning när man programmerar) men förmodligen kan hjälpa dig komma vidare med din efen lösning.
- Fråga en kompis - Att prata om programmering är ett utmärkt sätt att lära sig programmera, oavsett om man är den som förklarar eller den som får hjälp. Så länge man inte skriver av varandras lösningar rakt av så finns det inga problem att diskutera lösningar med varandra.
- Ställ en fråga på Piazza - På Piazza kan din fråga besvaras av assistenter och av andra studenter utanför labbtid. Gör gärna din fråga publik så att fler kan ta del av svaren!
- Googla problemet - Att kunna hitta svaret på sina frågor på Internet är en av de viktigaste sakerna man måste lära sig som programmerare. Någon gång kommer du hamna i en situation där det inte finns någon annan att be om hjälp, och då är det bra att veta hur man letar själv.
- Börja om - Det låter kanske konstigt, men ofta när man kör fast beror det på att man har lett in sig själv i en återvändsgränd. Var inte rädd att skriva om program (eller i alla fall delar av ett program) helt från början. Ta bort (eller flytta) gammal kod så att du inte ser den när du skriver den nya.
De första två veckorna har vi valt att prioritera de som inte har programmerat mycket innan så att fler ska nå en nivå där det går att samarbeta och göra intressanta och roliga saker. Om du redan kan det som tas upp här kommer labbarna att gå snabbt. Om du stöter på något som tar längre tid så visade det sig att det fanns något för dig att lära dig ändå!
Blir du klar med uppgiften tidigt får du gärna hjälpa andra, men kom ihåg att poängen med att ge någon hjälp inte är att den andra ska bli klar så snabbt som möjligt utan denne ska lära sig så mycket som möjligt!