CS-A1123 - Basics in Programming Y2, Lecture, 10.1.2024-17.5.2024
Topic outline
-
Time and place for the exercise sessions:
Day
Time
Place
Mon
10-12 OK1 Y342a Mon
14-16 OK1 Y342a Tue
10-12 MaariB Wed
14-16 MaariB/T7 (varying location depending on the date!) Wed
16-18 T7/Maari B (varying location depending on the date!) Thu
8-10 T-talo T7 Thu
14-16 OK1 Y342a Thu
16-18 T7/OK1 Y342a (varying location depending on the date!)
Please note that this course is the English language equivalent of CS-A1121, and only one of the two can be included in a degree.For all questions related to the course, lectures, assignments, and the project, connect to the course's Zulip channel. Both the English version and the Finnish version of the course use the same Zulip space, you can ask your general questions in either language, but first please go over the other posts to make sure your questions are not already answered.
The course uses the A+ system for coursework, using the CS-A1121 course workspace. Once logged in, select English from the language symbol on the upper left corner using the button that looks like this:
Staff and contact information
The responsible teacher of this course is Talayeh Aledavood, DSc.
We will soon publish the names of the teaching assistants of the course. The assistants will help you both with the assignments and your course project. We use Zulip for questions & answers. Please read first the instructions from the "help with zulip" section. Before sending a message, please check if someone else has already got an answer to the same kind of problem and whether you could solve your problem the same way. Please DO NOT USE EMAILS for communicating with the course staff.
If necessary (e.g. for personal issues that need to be communicated, like long sickness) use the private message option in Zulip to contact the responsible teacher. Please do not send private messages to assistants.Signing Up, Attending, and Grading
You must sign up for the course on Sisu. You do not need to sign up for the exercise sessions and can attend any of the sessions (listed below under "Exercise sessions").
The course has two mandatory tasks (more about the tasks on A+). Both tasks (assignments and the final project) should be completed individually.
Assignments: There will be six rounds, spaced about a week apart, during period III and the beginning of period IV.
Final Project: This is a software project that includes individual online meetings with the teaching assistants according to a schedule (details on A+). The topic for the project will be chosen in mid-period III, a plan will be returned at the end of period III, and the final software with its documentation at the beginning of May (Period V). Both the program code and documentation will be returned using the Git version management system and need to be demonstrated to the teaching assistant.
You may ask for assistance (including your friends) for all tasks, but the work must be your own and not copied from or dictated by somebody else. Also, if somebody asks for help, do not give them the complete answer but guide them to learn and figure it out themselves. This course uses an automated homework grading system and also an automated plagiarism identifier.
Grading: The final grade of the course is a weighted average of both: round(0.3 * exercises + 0.7 * project), and both tasks must be acceptably completed. This course has no final exam.
Attendance: It is not mandatory to attend the lectures or the exercise sessions.
Materials and course information
Instructions and course news will mainly be in the A+ system, including related reading material and course exercises. Assignments with their materials will cover the basic contents of the course. Still, the students should be prepared to search for additional information themselves, during the assignments, and especially the project.
Partial Coursework
The whole course must be completed within the course period. Partial work from earlier years cannot be combined with current work. We have allowed this occasionally in the past. However, the course policies have been revised.Exercise sessions
The course has exercise sessions where you can come and ask the course assistants for help. Attending these sessions is optional (you can go when you need help). You do not have to register for the exercise sessions; you can go to any that suits you. You can also ask for help in relevant streams in Zulip.
Exercise sessions start on 16.1. and end on March 24th. There are no exercises in week 8 (February 20-24). In all groups, you can get help in English and Finnish. You can also get Swedish advice in Swedish in the groups marked with (SV).
Spring 2024 course schedule Week Lecture Tasks/Deadline Notes 2 Wed 10.1. 10-12 Introduction Start working on assignments 3 Wed 17.1. 10-12 architecture, objects, and exceptions Fr 19.1. at 14:00
Round 1: warmup4 Wed 24.1. 10-12 UML Fr 26.1. at 14:00
Round 2: objects5 Wed 31.1. 10-12 testing Fr 2.2. at 14:00
Round 3: version control with GIT + UML
Fr 2.2. at 14:00
Optional: proposing your own project topic (topics outside the offered topics).6 Wed 7.2. 10-12, storing information Fr 9.2. at 14:00
Project: topic selectionProject topic selection in MyCourses.
Note! Round 4 exercises have more time reserved on purpose, so please start working on them this week!7 Wed 14.2. 10-12
events and user interfaceFr 16.2. at 14:00
Round 4: testing + recursion8 Fr 23.2. at 14:00
Project PlanThe project plan should be submitted using GIT.
Note! Round 5 assignments have more time reserved on purpose, so please start working on them this week!9 Week 9: Project plan demo meeting
Fr 1.3. at 14:00
Round 5: filesProject plan demo for the teaching assistant, time reservations specified by your own assistant (can be different from other assistants) 10 Note! Round 6 exercises have more time reserved on purpose, so please start working on them this week! 11 Fr 15.3. at 14:00
Round 6:
user interface12 Fr 22.3 at 14:00
Project: checkpoint 1
Fr 22.3. at 14:00
(optional assignment round on A+)Project checkpoint: GIT + message, instructions in A+ 13 14 15 Fr 12.4. at 14:00
Project: checkpoint 2Project checkpoint: GIT + message, instructions in A+ 16 17 18 19 Fr 10.5. at 14:00
Project: code and document submission via GITThe project is submitted using GIT. After this, modifications done are ignored in grading. 20 Week 20:
Project final demo to be presented to course assistantsProject demo for the own assistant, time reservation method told by the assistant. 21 The course ends, even though Sisu shows a later end date. (Project evaluation and grading)