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.
This content is meant for O1’s teaching assistants but is available for others to read
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.
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.
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.
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.
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!
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
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
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.
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
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
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.
Nikolas Drosdek helped translate this page into English.