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. Myös suomenkielisessä materiaalissa käytetään ohjelmaprojektien koodissa englanninkielisiä nimiä kurssin alkupään johdantoesimerkkejä lukuunottamatta.

Voit vaihtaa kieltä A+:n valikon yläreunassa olevasta painikkeesta. Tai tästä: Vaihda suomeksi.

Lab Sessions

There are several lab sessions every day except on weekends. This is where you can come to discuss programming with the course staff and get help on the assignments.

All the lab sessions are at the Maarintalo building (Sähkömiehentie 3, Espoo).

Note: Some students from outside of Aalto may find it possible to attend the sessions in Espoo. If you are such a student, you’re welcome to join the sessions on Thursdays and Fridays. Bring your own laptop. If an excessive number of external students shows up at the sessions, we’ll need to limit the number of participants.

The table at the end of the page gives the schedule of the lab sessions; that information is valid until the end of Week 10. There are fewer sessions during the last two weeks (11 and 12); here’s the timetable:

Lab sessions in Week 11 and Week 12

Week 11:
Thu 29.11.2018 klo 10–12, Maari-A (Anna)
Mon 3.12.2018 klo 10–12, Maari-B (Joona)
Mon 3.12.2018 klo 12–14, Maari-B (Oskari, Valtteri)
Mon 3.12.2018 klo 14–16, Maari-B (Tobias)
Tue 4.12.2018 klo 8–10, Maari-A (Anna)
Tue 4.12.2018 klo 10–12, Maari-A (Tobias, Viljami)
Tue 4.12.2018 klo 12–14, Maari-A (Eetu, Rune)
Tue 4.12.2018 klo 14–16, Maari-A (Juuso, Oskari)
Tue 4.12.2018 klo 18–20, Maari-A (Juuso)
Wed 5.12.2018 klo 10–12, Maari-A (Ella, Joona)

Week 12:
Thu 6.12.2018 klo 10–12, Maari-A (Anna)
Mon 10.12.2018 klo 10–12, Maari-B (Joona)
Mon 10.12.2018 klo 12–14, Maari-B (Oskari, Valtteri)
Mon 10.12.2018 klo 14–16, Maari-B (Tobias)
Tue 11.12.2018 klo 8–10, Maari-A (Anna)
Tue 11.12.2018 klo 10–12, Maari-A (Tobias, Viljami)
Tue 11.12.2018 klo 12–14, Maari-A (Eetu, Rune)
Tue 11.12.2018 klo 14–16, Maari-A (Juuso, Oskari)
Tue 11.12.2018 klo 18–20, Maari-A (Juuso)
Wed 12.12.2018 klo 10–12, Maari-A (Joona)

The sessions start a quarter past the indicated hour, but you can come and go as you please. There’s no set agenda for each session: you can come to the sessions to work on the assignments and ask for help as the need arises.

Participation is voluntary but highly recommended. You don’t need to (and can’t) sign up in advance.

The assistants can help you in English, Finnish, and (in some groups) Swedish.

Time Room Dates Teaching assistants present Notes
Mon 8–10 Maari-B Sep 17th to Nov 26th, 2018 Aura Kiiskinen  
Mon 10–12 Maari-B Sep 17th to Nov 26th, 2018 Joona Lillfors, Kalle Mäkelä  
Mon 12–14 Maari-B Sep 17th to Nov 26th, 2018 Oskari Järvinen, Valtteri Nurminen  
Mon 14–16 Maari-B* Sep 17th to Nov 26th, 2018 Tobias Jern (also in Swedish), Emma Honkamaa *) exceptions: Oct 1st in Y342a; Oct 29th in Maari-A
Tue 8–10 Maari-A Sep 18th to Nov 27th, 2018 Sebastian Berner (also in Swedish), Anna Müller  
Tue 10–12 Maari-A Sep 18th to Nov 27th, 2018 Tobias Jern (also in Swedish), Viljami Nurminen  
Tue 12–14 Maari-A Sep 18th to Nov 27th, 2018 Eetu Laine, Rune Pönni  
Tue 14–16 Maari-A Sep 18th to Nov 27th, 2018 Juuso Vilppula, Oskari Järvinen, Timi Seppälä  
Tue 16–18 Maari-A Sep 18th to Nov 27th, 2018 Henri Gröhn, Juhani Numminen  
Tue 18–20 Maari-A Sep 18th to Nov 27th, 2018 Juuso Vilppula  
Wed 8–10 Maari-A Sep 19th to Nov 28th, 2018 Aura Kiiskinen, Emma Honkamaa  
Wed 10–12 Maari-A Sep 19th to Nov 28th, 2018 Ella Anttila, Joona Lillfors  
Wed 16–18** Maari-A Sep 12th to Nov 21st, 2018 Sebastian Berner (also in Swedish) **) exceptions: on Sep 12th and 19th the time is 17–19
Thu 10–12 Maari-A Sep 13th to Nov 22nd, 2018 Anna Müller  
Thu 12–14 Maari-A Sep 13th to Nov 22nd, 2018 Tuomas Aarnio  
Thu 14–16 Maari-A Sep 13th to Nov 22nd, 2018 Tuomas Aarnio  
Thu 16–18 Maari-A Sep 13th to Nov 22nd, 2018 Tatu Timonen  
Fri 10–12 Maari-A Sep 14th to Nov 23rd, 2018 Sebastian Berner (also in Swedish)  
Fri 12–14 Maari-A Sep 14th to Nov 23rd, 2018 Henri Gröhn  
Fri 14–16 Maari-A Sep 14th to Nov 23rd, 2018 Tatu Timonen  



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

Weeks 1 to 13 of the ebook, including the assignments and weekly bulletins, have been written in Finnish and translated into English by Juha Sorva.

Weeks 14 to 20 are by Otto Seppälä. That part of the ebook isn’t available during the fall term, but we’ll publish it when it’s time.

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 programmed by Riku Autio, Jaakko Kantojärvi, Teemu Lehtinen, 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 have done 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 tools from O1Library (such as Pic) for simple graphical programming 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+ has been created by Aalto’s LeTech research group and is largely developed by students. The current lead developer is Jaakko Kantojärvi; many other students of computer science and information networks are also active on the project.

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

Additional credits appear at the ends of some chapters.

Posting submission...