This course has already ended.

Luet oppimateriaalin englanninkielistä versiota. Mainitsit kuitenkin taustakyselyssä osaavasi suomea. Siksi suosittelemme, että käytät suomenkielistä versiota, joka on testatumpi ja hieman laajempi ja muutenkin mukava.

Suomenkielinen materiaali kyllä esittelee englanninkielisetkin termit.

Kieli vaihtuu A+:n sivujen yläreunan painikkeesta. Tai tästä: Vaihda suomeksi.

Info for Teaching Assistants

This content is meant for O1’s teaching assistants but is available for others to read as well.


Week Events
36 Initial staff meeting (planned for late afternoon on Wed Sep 8th)
37 The course officially begins Wed Sep 15th; first “lab sessions”.
38 First deadline Wed Sep 22nd at noon. The first weekly emails should be sent ASAP after that.
43 Lab sessions and a deadline as usual, despite the evaluation week.
48 Grading of text adventures ASAP after Wed Nov 1st.
50 Last deadline on Wed Dec 15th at noon; no more lab sessions after that.
51- We’ll take a look at the end-of-course feedback.

Lab Sessions

The most important job of O1’s teaching assistants (TAs) is to help students at the lab sessions. The first session is on Wednesday afternoon, September 15th, 2021, and the labs run from then until the last deadline at noon on Wednesday, December 15th, 2021. The details are in the lab schedule.

More about the lab sessions

Each session officially begins at quarter past the hour (“academic quarter”), but you may start earlier, especially if the session is full. There are no breaks during the lab sessions.

Assisting students

The TA’s role is to be an advisor, not a lecturer.

Students at the lab sessions complete tasks at their own pace, asking for help when needed. Of course, should many students ask the same question, the assistant may explain something to the whole class. But for the most part, the TA keeps moving about the classroom, assisting students as they ask for help.

The lab queue in A+ (see the menu) is very helpful for busy lab sessions, so do use it!

Many of the students have no prior programming experience. They may need help with things that seem obvious and that “they’ve been told many times already”. This is normal. Be patient.

Instead of giving students solutions, use indirect hints that encourage students to think and solve the problems themselves. Never write code for the students.

Know the chapters and appendices of O1’s ebook so that you can point the students to the right place when needed.

Discussion Forums

Most TAs dedicate two hours each week to answering questions on Piazza; some will have an extra lab session instead. We’ll agree on a schedule before the course kicks off. More information will be sent via email.

Answering questions on O1’s Telegram channel is completely voluntary.

Weekly Emails to Students

Each TA will be allocated a dozen or so students that the TA will monitor during the course. The TA should write an encouraging email to each of those students after each weekly deadline, commenting on the student’s progress. This is also a good opportunity to give feedback on the programs submitted the student (e.g., on programming style).

The primary target group for these messages are those Aalto SCI students who have little to no prior programming experience.

You should reserve roughly one hour a week for preparing the messages, preferably on Wednesday or Thursday.

We’ll discuss the specifics in the initial staff meeting and send more information to the staff email list.


Assistants have access to students' feedback messages, submissions, and results on A+. Please remember that these are all confidential!

Manual Grading

O1 has two assignments that aren’t automatically graded by A+ (in Chapters 10.1 and 12.2). The head assistants will take care of Chapter 12.2’s robot tournament, but we’ll need all TAs to participate in assessing Chapter 10.1’s text-adventure games. This will take place during the week right after the Week 10 deadline. More information will be sent by email.


If you can't attend a lab session, try to get another TA to host the session. For instance, you can ask on the staff email list if someone is willing to swap sessions.

If you can't find a replacement, arrange for a note in the classroom informing that the session has been cancelled. In this case, make sure to inform the head assistants as well, and if possible, post an announcement in Piazza.

Cancelling labs unannounced is not okay (except in a true force majeure situation of course).

The same goes for Piazza duty.

If an absence affects your ability to complete other TA task (i.e., weekly emails, text adventures), let the head assistants know as soon as possible.


The TAs are employed by the Department of Computer Science. O1’s teachers are part of the Learning + Technology research group.


Thousands of students have given feedback that has contributed to this ebook’s design. Thank you!

The ebook’s chapters, programming assignments, and weekly bulletins have been written in Finnish and translated into English by Juha Sorva.

The appendices (glossary, Scala reference, FAQ, etc.) are by Juha Sorva unless otherwise specified on the page.

The automatic assessment of the assignments has been developed by: (in alphabetical order) Riku Autio, Nikolas Drosdek, Joonatan Honkamaa, Jaakko Kantojärvi, Niklas Kröger, Teemu Lehtinen, Strasdosky Otewa, Timi Seppälä, Teemu Sirkiä, and Aleksi Vartiainen.

The illustrations at the top of each chapter, and the similar drawings elsewhere in the ebook, are the work of Christina Lassheikki.

The animations that detail the execution Scala programs have been designed by Juha Sorva and Teemu Sirkiä. Teemu Sirkiä and Riku Autio did the technical implementation, relying on Teemu’s Jsvee and Kelmu toolkits.

The other diagrams and interactive presentations in the ebook are by Juha Sorva.

The O1Library software has been developed by Aleksi Lukkarinen and Juha Sorva. Several of its key components are built upon Aleksi’s SMCL library.

The pedagogy of using O1Library for simple graphical programming (such as Pic) is inspired by the textbooks How to Design Programs by Flatt, Felleisen, Findler, and Krishnamurthi and Picturing Programs by Stephen Bloch.

The course platform A+ was originally created at Aalto’s LeTech research group as a student project. The open-source project is now shepherded by the Computer Science department’s edu-tech team and hosted by the department’s IT services. Markku Riekkinen is the current lead developer; dozens of Aalto students and others have also contributed.

The A+ Courses plugin, which supports A+ and O1 in IntelliJ IDEA, is another open-source project. It was created by Nikolai Denissov, Olli Kiljunen, Nikolas Drosdek, Styliani Tsovou, Jaakko Närhi, and Paweł Stróżański with input from Juha Sorva, Otto Seppälä, Arto Hellas, and others.

For O1’s current teaching staff, please see Chapter 1.1.

Additional credits for this page

Nikolas Drosdek helped translate this page into English.

a drop of ink
Posting submission...