https://ggbaker.ca/120/
and
https://coursys.sfu.ca/2024su-cmpt-120-d1/pages/
It's Introduction to Computing Science and Programming I
. We'll talk about basic concepts in computer science, and basic programming skills. (More later.)
Course web site: https://ggbaker.ca/120/
or find the course in CourSys.
Whoever you are, I'm glad you're here.
Instructor: Greg Baker.
Office hour: Wednesdays 3:30–4:20 and Fridays 1:30-2:20 in CSIL (ASB 9838). [Except week 1 when CSIL is closed: in TASC1 9229 this week.]
… but getting into CSIL requires a key fob. Thoughts?
TAs and their office hours: to be announced.
Outside of office hours, the discussion forum is the best place for questions.
Emailing Greg has a low chance of success.
Also available to you: Computing Science Peer Tutoring, starting in about week 3.
This class is for students with little or no prior programming experience.
If you have programmed before, you may be able to enroll directly in CMPT 125, depending on course availability and only until end of 1st week of classes. See https://coursys.sfu.ca/forms/cmpt-cmpt-120-placement-test/
Late penalty: 20%/day.
Lectures: as scheduled, in-person. Audio recordings (hopefully).
My goals: introduce the basic concepts and get you ready to do the exercises and assignments.
Due Fridays (except the Friday of week 1).
My goal: make sure you actually try out the things we have talked about and figure out how to apply them. Each exercises will consist of several short problems.
The weekly exercises are necessarily small and self-contained. They will focus on individual concepts, but…
The four assignments will be larger programming tasks and integrate ideas from across the course (up to that point).
My goal: force you to figure out how to put the ideas from lectures + exercises together to sove real
problems.
But of course the problems aren't real
: I don't need 200 programs that all do the same thing.
The point of the exercises and assignments isn't to complete them and hand something in. It's to learn the material in a way that you can't in the lecture.
With that in mind, give them the attention and time they deserve.
The quizzes will be during the lecture time:
The final exam will be whenever/wherever Student Services schedules it.
All closed book, on paper. Missing/excusing exams requires medical documentation.
There is no required textbook for this course.
Possible reference material:
There is also a course course study guide that is from offerings long ago, brought up to date (I think completely) for this semester.
It should contain very similar material to what is delievered in lecture, but in a more complete, book-like format.
To get credit for this course, I expect you to demonstrate that you know the basic knowledge and skills of the course. That means:
Failure to do these may result in failing the course.
That rule isn't intended to fail someone just because they get 49% on the exams: it will be applied on an individual basis with a judgement call on the question has this student has demonstrated that they understand the basic concepts of the course?
If you're making an honest effort to complete the course work on your own, proceed and don't worry.
Academic Honesty: it's important, as always. All code you submit must be created by you, not somebody else, and by hand not with some code-generating tool.
If we can tell where your code came from (another student or some tool), then it's too close to that source. Proposed rule for avoiding this: don't look at others' code and write your code in the same sitting.
Examples of things that are not okay and will be treated as academic dishonesty:
Working through the assigned problems is a lot of the way you're going to learn the course material. Think about them as opportunities for learning, not for marks.
In this course, I will actively look for instances of academic dishonesty.
If I find them, I will proceed as SFU policy requires, and that means filing Academic Incident Reports for the students involved. I will apply the most severe penalty that I think wouldn't be changed on appeal.
Summary of these slides: if you copy your work from someone else or ChatGPT, it's my goal for you to get an academic dishonesty case in your file and fail the course.
The quizzes and exams are individual work, closed book.
I will be asking for a grade of FD in the course for any academic dishonesty on tests.
You need access to a computer.
Windows or Mac or Linux all okay. Chromebook: probably okay. Tablet: no.
As long as you wouldn't describe your computer as absurdly old
it's probably good enough.
Bigger screens and better keyboards will probably make you happier.
You have access to CSIL (the Computing Science Instructional Lab) as part of being in this course.
You need an access fob, and will probably get an email about getting started in the lab (typically opens end of week 1).
I was the original creator of CMPT 120, but haven't taught it since 2011. Assigning courses to instructors is a complex problem.
My intention this semester: superfically modernize the course, but keep the basics the same.