Osion kuvaus

  • Course FAQ

    • How do I sign up? - Use SISU
    • Is attendance to lectures/exercise sessions mandatory? - No, but highly recommended (especially the exercise sessions)
    • So, can I do the course work remotely? - Yes and no. The course reading material and exercise submissions will be available online. However, if you need help with your assignments, most or all exercise session will be in person and on campus (ongoing pandemic allowing) - learning will be easier on campus. The exam will be in person on the Aalto campus.
    • Will there be an exam? - Yes, for those who want a high grade (most of your grade is from weekly exercises)
    • Can I pass the course without the exam? - Yes (with a low grade)
    • Can I pass the course by just only taking the exam? - No
    • When/where is the exam? - In the Aalto exam studio May 16-June 6. See Exam (requires course reg + login)
      • When is the retake exam? - retake exam is arranged 28.8.2023-8.9.2023
    • Can I work together with someone on the exercises? No, the exercises solutions should be individual.
    • Where are the exercises/notes/lectures/videos? See Taking the Course (requires course reg + login)


    Course Information

    Course contents

    • Computer architecture, binary data, and logic.
    • Programming abstractions and analysis of program performance.
    • Aspects of functional programming, e.g. recursive definitions and recursion.
    • Concurrent programs
    • Introduction to computer science and problem-solving with algorithms.

    General information

    Programming 2 is taught in English. CS-A1120 is shared between several majors in Teknistieteellinen kandidaattiohjelma / Kandidatprogrammet i teknikvetenskap (Finnish/Swedish) and Aalto Batchelor’s Programme in Science and Technology (English), therefore the common language is English.

    Prerequisites

    Please note that the main programming language in this course is Scala 3, and that CS-A1110 Ohjelmointi 1 / CS-A1110 Programming 1 is a prerequisite when taking this course. (This is non-strict. Students without CS-A1110 but with equivalent programming knowledge may still apply, but knowledge of Scala - or the ability to learn it quickly and independently before the course - is assumed.)

    Registering
    Make sure that you are registered to the course in SISU before the registration period ends! Note that course staff do not have the right to manually enrol students.

    Alternative courses

    The focus of Programming 2 is computing architecture, programming techniques, and individual problem solving. Course content is mainly targeted to majors in School of Science as well as the advanced study path of the Computer Science minor. If you have previously programmed in Python, for example by completing CS-A1113 Basics in Programming Y1 or CS-A1111 Ohjelmoinnin peruskurssi Y1, you may be looking for the the courses CS-A1123 Basics in Programming Y2 or CS-A1121 Ohjelmoinnin peruskurssi Y2. These are offered in Python, and have a broader focus.

    Important: if you are unsure whether you should take this Scala-based course CS-A1120 or the Python version CS-A1121/1123, please consult your study guide or a planning coordinator of your study programme as soon as possible!

    Re-taking the course

    If you have previously passed the course with a grade and wish to re-take CS-A1120 for a chance to increase your grade, Aalto University Regulations allow most students to do so once. Important: you must re-register to the course, however. Contact Aalto Student Services to ask about retaking CS-A1120 if you already passed the course.

    If you re-take CS-A1120, no exercise points will be transferred from your previous attempt, but you are of course free to re-use any previous solutions you wrote yourself, should some of the exercises be the same.


    Welcome!