Skip to main content
MyCourses MyCourses
  • Schools
    School of Arts, Design, and Architecture (ARTS) School of Business (BIZ) School of Chemical Engineering (CHEM) –sGuides for students (CHEM) – Instructions for report writing (CHEM) School of Electrical Engineering (ELEC) School of Engineering (ENG) School of Science (SCI) Language Centre Open University Library Aalto university pedagogical training program UNI (exams) Sandbox
  • Service Links
    MyCourses - Instructions for Teachers - Teacher book your online session with a specialist - Digital tools for teaching - Personal data protection instructions for teachers - Instructions for Students - Workspace for thesis supervision Sisu Student guide Courses.aalto.fi Library Services - Resourcesguides - Imagoa / Open science and images IT Services Campus maps - Search spaces and see opening hours Restaurants in Otaniemi ASU Aalto Student Union Aalto Marketplace
  • ALLWELL?
    Study Skills Support for Studying Starting Point of Wellbeing About AllWell? study well-being questionnaire
  •   ‎(en)‎
      ‎(en)‎   ‎(fi)‎   ‎(sv)‎
  • Toggle Search menu
  • Hi guest! (Log in)

close

Can not find the course?
try also:

  • Sisu
  • Courses.aalto.fi

CS-A1120 - Programming 2, 01.03.2021-28.05.2021

This course space end date is set to 28.05.2021 Search Courses: CS-A1120

  1. Home
  2. Courses
  3. School of Science
  4. department of...
  5. cs-a1120 - pr...
 
Syllabus

General

  • General

    General

    Welcome to CS-A1120 Programming 2 - 2021

    Quick links
    • Lectures and material
    • Exercises (table)
    • Deadlines
    • Exercise sessions
    • Grading
    • Contact

    FAQ
    • Don't forget to sign up for the course at oodi
    • The course lectures are delivered as recorded videos
    • All course notes are available online (please read them; there is no course book)
    • Exercises are delivered via A+
    • Passing the course is done by accumulating a sufficient number of exercise points for grade 1. (There is no exam in this edition of the course.)


    Course contents

    In this course we will introduce you to many of the central principles of computing and programming; to the computer as a machine, and to programming paradigms that enable you to virtualize and scale up your computations all the way to industrial-scale infrastructure.

    • The course material is collected in an extensive set of course notes.
    • The course consists of 11 rounds, each round has an associated set of exercises.

    Rounds and deadlines
    Round
    Material
    Main exercise deadline (100%)
    Extended deadline (70%)
    1. Warmup
     (video, slides, notes, exercises)
    March 5, 2021 March 10, 2021
    March 16, 2021
    2. Bits and data
     (video, slides, notes, exercises) March 12, 2021
    March 23, 2021
    3. Combinational logic
     (video, slides, notes, exercises) March 19, 2021
    March 30, 2021
    4. Sequential logic
     (video, slides, notes, exercises) March 26, 2021
    April 6, 2021
    5. A programmable computer
     (video, slides, notes, exercises) April 7, 2021
    April 27, 2021
    6. Collections and functions
     (video, slides, notes, exercises) April 21, 2021
    May 4, 2021
    7. Efficiency
     (video, slides, notes, exercises) April 28, 2021
    May 11, 2021
    8. Recursion
     (video, slides, notes, exercises) May 7, 2021
    May 18, 2021
    9. Concurrency and parallelism
     (video, slides, notes, exercises) May 14, 2021
    May 25, 2021
    10. Virtualization and scalability
     (video, slides, notes, exercises) May 21, 2021
    June 1, 2021
    11. Machines that learn?
     (video, slides, notes, exercises) May 28, 2021
    June 4, 2021

    Course information and exercises


    The exercises are distributed and returned in the A+ system, where the content will be opened in the first lecture.

    Workload
    Reserve around 9 hours to work on the exercises of each round. It is recommended that you start working on the exercises in good time before the deadline.
    Course staff will hold exercise sessions online most workdays during the course where you will be able to recieve help. Attending these is an excellent way to schedule your studies.

    Deadlines
    • The exercises on each round have two deadlines per round:
      1. a main deadline, and
      2. an extended deadline.
      Deadlines for each round can be found in the table below. All deadlines are in Finnish time.
    • Exercises returned within the main deadline are graded with full points
    • After the main deadline is reached, there is an extended deadline
    • Exercises returned after the main deadline but before the extended deadline are graded and given 70% of the full points
    • It is not possible to return the exercises for grading after the extended deadline

    • Course schedule 2021

    Normal exercises and challenge exercises

    The exercises in each round are divided into normal exercises and challenge exercises. The challenge exercises are meant to be programming puzzles, which you can use to challenge yourself. Note that some of the challenge exercises are intentionally made to be much more laborious than the normal exercises, and that the course can be passed with the grade 5 by only solving normal exercises. Only try to solve the challenge problems if you feel you need more challenge from this course and you have the enthusiasm and time to work on them! Note also, that the teaching assistants will mainly only help with the normal exercises.


    Working on the exercises
    • Programming is both an individual and group activity, where sufficient individual skills lays the basis for productive group work. The idea of the course CS-A1120 Programming 2 is to work individually to achieve sufficient individual programming skills. Because writing code independently is a compulsory skill for a programmer, writing code together with someone is forbidden in this course.
    • Each students solves and returns the exercises for grading by themselves as confidential and individual solutions. Confidentiality here means that you are not allowed to share your solutions individually or publicly so that the other students independent programming skills suffer or that they cannot be evaluated based on the returned solutions, for example because the program code was copied
    • More information:
      • Aalto University Code of Academic Integrity and Handling Violations Thereof
    • Please note that because this is a very large course, the course staff will not be able to provide help on solving exercises via email or direct messages.
      • If you need help, please come to our remote exercise sessions on Zulip! where you can request one-on-one help in our lab queue.

    Software
    We use Visual Studio Code (with the Scala Metals extension). Please see the notes for more information on how to get started using it and the course material on your own computer or Aalto VDI (please note that VDI can be really busy).

    Getting Help

    If you need help we encourage you to join our course Zulip discussion, where you can ask questions and request one-on-one help over zoom from course staff using our lab queue.

    Detailed instructions are available in the course notes.
    The Zulip lab queue is open the following times throughout the week, with at least two TAs present:

    Zulip lab queue open.


    Grading

    The course is graded as follows. It is possible to get 200 points (including bonus for providing feedback) from the warmup round and at least 400 points from each of the the other 10 rounds. In addition, solving challenge problems allows for more points. The course grade is determined by summing up the points from all of the rounds. The sum includes all point including the ones from normal exercises, challenge exercises, and feedback. After the sum is computed the grade is determined by reading it from the following scale:

    • less than 1200 points -- failed,
    • at least 1200 points -- grade 1,
    • at least 1900 points -- grade 2,
    • at least 2600 points -- grade 3,
    • at least 3300 points -- grade 4,
    • at least 4000 points -- grade 5.

    Contact

    • Responsible teacher for the course is Assistant Professor Shaofeng Jiang (firstname.lastname@aalto.fi)
    • Exercise sessions are led by University Teacher Lukas Ahrenberg (firstname.lastname@aalto.fi)

    The best way to discuss course content and to get help with exercises and ask questions is via our Zulip workspace.

    Please note that because this is a very large course, the course staff will not be able to provide help on solving exercises via email or DMs.



    • icon for activity ForumAnnouncements Forum

Course home

Course home
Skip Upcoming events
Upcoming events
Loading There are no upcoming events
Go to calendar...
  • CS-A1120 - Programming 2, 01.03.2021-28.05.2021
  • Sections
  • General
  • Home
  • Calendar
  • Learner Metrics

Aalto logo

Tuki / Support
  • MyCourses help
  • mycourses(at)aalto.fi
Palvelusta
  • MyCourses rekisteriseloste
  • Tietosuojailmoitus
  • Palvelukuvaus
  • Saavutettavuusseloste
About service
  • MyCourses protection of privacy
  • Privacy notice
  • Service description
  • Accessibility summary
Service
  • MyCourses registerbeskrivining
  • Dataskyddsmeddelande
  • Beskrivining av tjänsten
  • Sammanfattning av tillgängligheten

Hi guest! (Log in)
  • Schools
    • School of Arts, Design, and Architecture (ARTS)
    • School of Business (BIZ)
    • School of Chemical Engineering (CHEM)
    • –sGuides for students (CHEM)
    • – Instructions for report writing (CHEM)
    • School of Electrical Engineering (ELEC)
    • School of Engineering (ENG)
    • School of Science (SCI)
    • Language Centre
    • Open University
    • Library
    • Aalto university pedagogical training program
    • UNI (exams)
    • Sandbox
  • Service Links
    • MyCourses
    • - Instructions for Teachers
    • - Teacher book your online session with a specialist
    • - Digital tools for teaching
    • - Personal data protection instructions for teachers
    • - Instructions for Students
    • - Workspace for thesis supervision
    • Sisu
    • Student guide
    • Courses.aalto.fi
    • Library Services
    • - Resourcesguides
    • - Imagoa / Open science and images
    • IT Services
    • Campus maps
    • - Search spaces and see opening hours
    • Restaurants in Otaniemi
    • ASU Aalto Student Union
    • Aalto Marketplace
  • ALLWELL?
    • Study Skills
    • Support for Studying
    • Starting Point of Wellbeing
    • About AllWell? study well-being questionnaire
  •   ‎(en)‎
    •   ‎(en)‎
    •   ‎(fi)‎
    •   ‎(sv)‎