This page supports you to reach your course goals ― hence logistics 🛣️.
Contract¶
Semester schedule 📆¶
De første 13 uger forbereder dig til det 3-ugers projekt.
| Id | Date | CW | Topic | Notes |
|---|---|---|---|---|
| 1 | Aug. 31 | 36 | Logistics & flowchart | |
| 2 | Sep. 7 | 37 | Flowcharts | |
| 3 | Sep. 14 | 38 | RobotLab Intro | in RobotLab 🦾 |
| 4 | Sep. 21 | 39 | Functions intro | |
| 5 | Sep. 28 | 40 | Decision structures - Boolean Logic - Repetition structures | |
| 6 | Oct. 5 | 41 | Functions | |
| 7 | Oct. 12 | 42 | 🏖️ | |
| 8 | Oct. 19 | 43 | Files and exceptions | |
| 9 | Oct. 26 | 44 | Lists; Tuples; IO programming | in RobotLab🦾 |
| 10 | Nov. 2 | 45 | Dicts; sets | |
| 11 | Nov. 9 | 46 | OOP | |
| 12 | Nov. 16 | 47 | GUI Programming | |
| 13 | Nov. 23 | 48 | Project proposal feedback DBL;Product spec. methods; security | in RobotLab 🦾 |
| 14 | Nov. 30 | 49 | AI coding | project proposal deadline kl 13 - du får en mail hvis dit projektforslag bliver ikke godkendt. |
| Dec. 7 | 50 | 📚 | ||
| Dec. 14 | 51 | 📚 | project proposal 2. deadline kl 13 hvis dit projektforslag ikke blev godkendt. | |
| Dec. 21 | 52 | 🏖️ | ||
| Dec. 28 | 53 | 🏖️ | ||
| Jan 4-8 | 1 | Project | in RobotLab optional mock exam | |
| Jan 11-15 | 2 | Project | in RobotLab optional mock exam | |
| Jan 18-22 | 3 | Project | in RobotLab | |
| Jan. 24 | 3 | Report deadline | 12:00 | |
| Jan. 25 | 4 | Exam 1. day | vi har brug for to døgn i stedet for en dag. | |
| Jan. 26 | 4 | Exam 2. day |
Contact & communication¶
Online: For class-related and non-private questions, start a conversation in Discussions[1], Q&A section. Otherwise mail.
Fysisk: efter timen[2] (foretrukket) ellers komme forbi tirsdags kl 1600 på X2.19.
Course purpose¶
Videoen på hjemmesiden viser en eksempel for et endprodukt. Også kig på eksempler på de krævede deliverables.
Fra officiel kursusbeskrivelsen:
Ud fra analyse og forståelse af et praktisk problems kontekst og domæne, kan du formulere krav til softwareløsninger for industriel automation samt anvende grundlæggende programmeringsprincipper og AI-understøttede udviklingsværktøjer til at beskrive, tilpasse og teste løsningen.
I udviklede i 2. semester en webapplikation med database, 3. semester analyserede data i et projekt og til sidst i 4. semester brugte I Python som statistikværktøj. I industriel programmering vil vi skabe mere komplekse softwareløsninger, der indrager et fysisk system som en roboter med Python som app-sproget og URScript som robotterstyring-sproget.
De fleste af jer vil ikke udvikle selv kompleks software i fremtiden, men stille krav til produktet og tjekke, om kravene er opfyldt. For at stille præcise krav, er det vigtigt, at man forstår hvordan software fungerer og hvordan forskellige komponenter interagerer med hinanden. På den måde kan I bruge jeres erfaringer fra dette kursus for at formulere krav til komplekse softwareløsninger senere i jeres praktik, i projekter i 8. semester, og diplomingeniørprojekt.
Alle ugentlige moduler har deres egne læringsmål. An oversigt kan du finde på officiel kursusbeskrivelsen.
Kursusindholdet, som er formuleret med nemt sprog, kan du finde på officiel kursusbeskrivelsen.
Lokale¶
Nogle af timerne finder sted i Robotlabben i G2.61 og tilstødende G2.58.
Weekly class structure¶
We will begin each class with a test about previous weeks and homework. Then we will discuss together the solution. Then, we will introduce the new topic with ~10-15 min lecturing and ~5-30 min student activity blocks. There is no test in the first week.
My teaching philosophy is Hands-on so you can learn. In teaching practice, it means that the student does not watch someone doing or explaining something, but does it themself. Therefore, I integrate activities during the class instead of long lecturing.
I expect you to prepare for class and show up, because even there will be some lecturing, these will be relatively short (~10 min). Without preparation, you may feel lost during the class. It is important that you show up so we can create an inclusive learning environment, where we all help each other to grow.
Assessment¶
Work | Noter |
|---|---|
Afleveringer ved timens start, fx test | frivillige (ikke adgangsgivende) |
Afleveringer | adgangsgivende[3], ingen karakter |
Mundtlig eksamen | Endelig, enkel karakter baseret på presentation, deliverables, afleveringer. Se oplysninger om mundtlig eksamen. |
Hver adgangsgivende aflevering har en frist. Se Weekly deadlines for homework.
Plan for eksamen øffentliggøres efter registrationsperioden ved omkring slutningen af november. En eksempel køreplan kan ses her. Grupperne tildeles en tilfældig dag. Hvis dagen ikke passer, snakke venligst med andre grupper for at bytte.
Din karakter bestemmes efter diskussion med censoren. Hvis vi er i tvivl, kigger vi også på dine andre afleveringer og opgaver.
Your grade is not dependent on the grade of other students, in other words, the grades are not curved. Therefore it is possible for every student to get the best or worst grade. It is therefore in your best interest to help your classmates (as long as it is permitted).
Weekly deadlines for homework¶
Deadline | Name | Notes | Adgangsgivende? |
|---|---|---|---|
Lecture start +1 hour (Mon 14:00) | Test deadline | You have to be present | no |
Lecture start +7 days (Mon 13:00) | Submission deadline (SD) | visible on Classroom50 and Learn calendar | yes |
SD +7 days (next Mon 13:00) | Resubmission deadline | only visible on Learn calendar | no |
The deadlines are strict. Even the system allows submissions (including the initial one) after the first deadline, we keep track 🙂. Hvis du afleverer efter en adgangsgivende deadline, så mister du en frist. Du må maks. to gange miste en adgangsgivende frist. Hvis du er nødt til at misse tredje frist, skal du have en gyldig begrundelse og snakke med mig. Hvis du mister tre gange, så må du ikke deltage i eksamen.
Hvis du afleverer et projekt, som ikke tilsvarer de stillede opgaver, gælder det ikke som aflevering. Din aflevering skal give mening.
Afleveringerne, der hører til den første uge (hjemmearbejde, test) er øvelser for jer. De efterfølgende afleveringer tæller.
Project deadlines are in Semester schedule 📆.
Feedback¶
Der vil være forskellige måder du får feedback på:
Automatiske tests i repository
Opgaver ved timens start & gennemgang af opgaver
TA’en giver feedback til nogle af jer hver uge i round robin, så hver studerende får feedback mindst én gang i løbet af semesteret.
Efter feedbacken skal du rette din løsning og aflevere igen.
Peer feedback to homework¶
I vil give feedback til hinanden baseret på kriterier vi giver jer.
Typisk process hver uge:
2 dage tid til peer feedback efter afleveringsdeadlinen (I får en introduktion her: Peer feedback)
Peer feedback grupperne dannes i første uger af jer og i næste uger vil jeg også hjælpe med at blande grupperne.
Expected workload¶
These are averages I recommend if you want to get a good grade. Alternatively you could just do the bare minimum, e.g., required assignments, spend less time during the semester, and put more time towards the exam. However I recommend reviewing throughout the semester (spaced retrieval).
Please keep track of your weekly working hours, e.g., in your course diary – we will use this information for course evaluation later. More importantly, it will help us to adjust the workload, so you can learn best.
Feedback persons¶
In each session I will ask for two students to volunteer as feedback persons. They will observe teaching and learning during class, for example the difficulty, engagement, and duration of activities. Other students can share feedback with them. I will end class about 15 min early so I can discuss the observations with the feedback persons.
This gives the instructor continuous feedback and gives you an opportunity to reflect on the learning environment, not only the course content.
Students with disabilities¶
Be aware about our university’s special educational support (Special Pædagogisk Støtte (SPS)).
Course text and further resources¶
Vi vil bruge primært: Starting Out with Python by Tony Gaddis. Den starter helt fra bunden og har masser af opgaver. Beinholder også GUI og Databaseprogrammering.
Code fra bogen findes på https://
Andre resurser:
den gratis bog ThinkPython by Allen Downey. Her er yderligere anbefalinger:
Gratis online kurs, med mange opgaver: An Introduction to Interactive Programming in Python.
Hvis du gider at kigge på sværere opgaver: Python labs by Stanfordpython.
DTU has free access to many books. Also search for Python on DTU Findit, especially O’reilly.
Navigating the learning materials¶
Every week will have the same structure with preparation, class, and homework. Class page will be long. Make use of:
CONTENTS menu on the right column.
Exercises will be marked with
E:, so you can find them easier later.
Search field on the right top.
Breaks¶
Vi vil have omkring 10-15 min pause hver klokketime.
Tid | Aktivitet |
|---|---|
13:00–13:45 | Undervisning |
13:45–14:00 | Pause |
14:00–14:45 | Undervisning |
14:45–15:00 | Pause |
15:00–15:45 | Undervisning |
15:45–16:00 | Pause |
16:00–16:45 | Undervisning / Hjælp til hjemmearbejde |
16:45–17:00 | Mødet med feedback personer |
TA¶

Arthur Picherit s225142@student
Arthur studerer Master Sustainable Energy Technologies og har en BSc i General Engineering. Han har allerede været TA til andre kurser. Han kan godt lide kunst og tegning, derudover nørkler han gerne med sin computer, cykel, mm.
Han vil give feedback til jeres hjemmearbejde og hjælpe jer i 3 ugers periode.
Instructor¶

Gökçe Aydos gokay@dtu.dk
I have a computer engineering background and Python is my favorite programming language. I got introduced to programming in school years and still use it daily like a Swiss army knife ― e.g., for getting an overview student submissions or organize my photo album.
I lived nearly two decades in Germany 🇩🇪 and I am born in Türkiye 🇹🇷. Jeg taler dansk på et rimeligt niveau, men jeg vil gerne forbedre mig! Så tale med mig på dansk! As hobby, I dance Argentinian Tango 💃 and play the guitar 🎸.
I’d like to get to know you better outside of class. I’m usually at Verners on Fridays, if they are open — feel free to come find me there.
Adjustments¶
Her er ændringerne sammenlignet med sidste år baseret på feedback fra studerende:
Læringsmålene og indhold er tilpassede, så en del nice-to-know indhold er fjernet for at frigøre plads til en langsommere introduktion. For eksempel har vi nu flere timer til flowcharts, projektaflevering, og værktøj-installation.
Kursets mål & deliverables vil blive klar i første time
Mere feedback ved Peer feedback to homework.
Jeg vil bruge skiftende feedbackpersoner hver uge for at træne og etablere konstruktiv feedback gennem semestret.
Eksamen skal trænes tidligere i semestret gennem prøveeksamener
I stedet for C# bruges nu Python, som typisk er nemmere for begyndere at lære.
Tidligere kursus materialierne¶
Hvis du er nysgerrig: Legacy materials
Det betyder: du skal aflevere, så du må deltage i eksamen.
Med 3 weekender: 21 dage: 140/21 ~= 7 timer om dagen
Uden weekender: 15 dage => 140/13 = 10 timer om dagenWhy Discussions?
Other apps like Discord and Whatsapp are popular, but peoples’ issues get usually lost. Q&A section in discussions enables threads and provides a way to flag problems as solved.
We want to keep the tools we use minimal. Therefore we will try to use Discussions for all communication.
Hvorfor ikke før timen? Jeg er optaget af forberedelse lige inden timen starter.