Course syllabus
Course-PM
EEN060 2026 Applied object-oriented programming lp3 VT26 (7.5 hp)
Course is offered by the department of Electrical Engineering
All course communication is in English.
The course is designed and delivered on campus so you are strongly encouraged to attend the sessions, but recorded lectures are posted in Chalmers Play (up to two business days later) to cover unplanned situations (such as sickness).
This page was last updated 2026-01-19.
Contact details
The course administration reserves the Fridays for our activities other than course work. We will answer canvas messages and the discussion forum during business hours on Monday-Thursday.
- Teacher and course responsible
- Carlos Natalino / carlos.natalino@chalmers.se (please prefer messages in canvas) / github.com/carlosnatalino.
- Any issues/requests/comments related to the course must be taken during the lectures (let me know at the beginning of the lecture and we talk at the end). Messages in canvas should be used only if strictly necessary. Email must not be used.
- Teaching assistants
- Kiarash Rezaei / github.com/kiarashRezaei
- Jayadev Naram / github.com/JayD2106
- Any issues/requests/comments related to the course must be taken during the lab sessions.
- Paolo Monti (Course Examiner) mpaolo@chalmers.se
- Any issues/requests/comments related to the course can be sent preferably through messages in Canvas.
- Student representatives
- To be announced
Course syllabus, purpose, prerequisites, learning outcomes, and content
Detailed information can be found here: https://www.chalmers.se/en/education/your-studies/find-course-and-programme-syllabi/course-syllabus/EEN060/?acYear=2025%2F2026
Schedule
Always check TimeEdit for the updated schedule.
Only use the following backup PDF file (as of 2026-01-08) if TimeEdit is not available: TimeEdit_EEN060_50_VT26_56112_Applied_object-oriented_programming_2026-01-19_2026-03-2..._2026-01-05_15_34.pdf
Course literature
The course mandatory literature is the lecture notes. The relevant chapter(s) must be read before the respective lecture. Students taking the course are not required to buy any book. To access the lecture notes, you must either be connected to the Chalmers network (Eduroam, for instance) or be connected to the Chalmers VPN (instructions for Windows and for Mac).
The lecture notes can be accessed through the link (new!): https://e2onprojects.e2.chalmers.se/notes/
Old link: https://onu1.s2.chalmers.se/notes
If you try to access the notes from outside of Chalmers, you will get a 403 Forbidden message.
Feedback related to the lecture notes (including anonymous feedback) is welcome here: Questions and comments about the lecture notes
The following material available online can be used for further studies, in addition to the ones referred to in the lecture notes.
- Python online documentation: https://docs.python.org/3.13/
- Python Tutorial: https://docs.python.org/3.13/tutorial/index.html
- Python Standard Library: https://docs.python.org/3.13/library/index.html
- Visual Studio Code documentation for Python: https://code.visualstudio.com/docs/python/python-tutorial
- Matplotlib: https://matplotlib.org/
- Requests online documentation: https://requests.readthedocs.io/en/master
The lecture notes and links above can be easily used with tools for students with disabilities, or simply any Chalmers student who wants a reader for the textual material. More information about these tools can be found here: https://www.chalmers.se/en/education/student-support/disability-study-support/#Software-adapted-to-students-with-disabilities:~:text=Software%20adapted%20to%20students%20with%20disabilities
The following books are recommended (optional) reference reading for those who want to further develop their knowledge or want a reference in Swedish. They are all available at the Chalmers library. To find them, search using their ISBN.
- Introducing Python: Modern Computing in Simple Packages, by Bill Lubanovic, 2nd edition, 2020, ISBN: 978-1492051367.
- Covers topics of lectures 1-6
- Relevant chapters: 1-11, 16.1-16.4, 18
- Online copy available through the library: Chalmers' Library here
- Python från början, by Jan Skansholm, 2019 or 2024, ISBN: 9789144187617 or 9789144134932
- Available in the Library: https://research.ebsco.com/c/lu54te/search/details/ntl77npocv
- Test-Driven Development with Python, by Harry Percival, 2nd Edition, 2017, ISBN: 978-1491958704.
- Covers the topics of test-driven development and code quality studied in the course.
- You can read it for free on the book website: https://www.obeythetestinggoat.com/
- Robust Python, by Patrick Viafore, 2021, ISBN: 9781098100667.
- Covers the topics of type hints and code quality.
- Available to borrow in the library: https://research.ebsco.com/linkprocessor/plink?id=eb0c1ecb-f4bb-3cc8-9900-4a9b59ab1db3
Course design
Lectures: Mondays mornings. The teacher discusses the material of the week. Starting from the second week, students are expected to have read the appropriate reading material from the lecture notes, and be ready to discuss with their colleagues. Exception in the first week where the teacher will give overall instructions.
Guided exercises: Wednesdays mornings. One TA solves a list of exercises together with the students. Students are expected to follow the session with a computer (their own, or lab computer).
Lab sessions: Thursdays mornings. The TAs are available to answer questions from the students.
Exception: During the first week, both sessions on Wednesday and Thursday will focus on support students to install the necessary software in their own computer.
None of the sessions are mandatory. However, keep in mind that this is an in-person course, not an online course. Thus, by not attending the sessions, you accept the task to get the course updates through the recorded videos or through the colleagues. The course administration is not responsible for reproducing every point and update discussed in class over other means such as canvas announcements.
Topics for each week
- Course overview and introduction to computer programming (course syllabus, chapters 0 and 1)
- Introduction to computer programming (chapters 2 and 3)
- Code quality and control flow statements (chapter 4 and 5)
- Data structures (chapter 6)
- Standard and external modules (chapter 7)
- Object-oriented programming
- Files and exceptions (sections 9.3 and 9.4)
- Data visualization (Chapter 10)
Changes made since the last occasion
A summary of changes made since the last occasion.
- Feb 3, 2026: Updated link to the lecture notes.
Examination form
The examination consists of three components:
- Weekly programming assignments, 15 points, optional
- Programming quiz, 25 points, mandatory, 50% points to pass
- Written exam, 60 points, mandatory, 50% points to pass
The grading scale is computed based on the sum of the points achieved by the student:
- less than 50% of the points in the exam or programming quiz: fail
- < 55: fail
- [55, 75): 3
- [75, 90): 4
- [90, 100]: 5
Programming assignments
Students can use up to two late dates, which allows them to submit an assignment up to one week after the due date. Late dates are meant to cover any health or unplanned events. The last date to submit a late assignment is available is shown as "available until" in canvas. A late dates counter will show you how many late dates you have used.
This element of the evaluation is not re-examined.
The number of points from programming assignments depends on the number of approved assignments:
- 1 AP
- 2 APs
- 4 APs
- 6 APs
- 9 APs
- 12 APs
- 15 APs
Programming quiz
During the last week of the study period, we will apply the programming quiz during the lab session time. The quiz is delivered through inspera. Programming tasks of similar complexity as the programming assignments will be provided and students must solve them having access only to the lecture notes, the official documentation, and a platform to run their code.
This element of the evaluation is not re-examined.
Written exam
This follows the traditional examination form in inspera. See previous exams for the format.
This is the only element of the course that is re-examined during the re-examination periods.
Any situation not covered in the syllabus will be decided by the teacher.
Course summary:
| Date | Details | Due |
|---|---|---|