Compsci 1jc3 Course Outline
Compsci 1jc3 Course Outline
Compsci 1jc3 Course Outline
Course Outline
Curtis D’Alves
McMaster University
Note: This course outline contains important information that may affect
your grade. You should retain it and refer to it throughout the semester, as
you will be assumed to be familiar with the rules specified in this document.
Instructor
Curtis D’Alves
Office: ITB 229
Email: curtis.dalves@gmail.com
Office Hours: To see me, please send me an email message with some times
you are free.
Please only contact TA’s about tutorial content, for all other inquiries con-
tact the Instructor
Schedule
Lectures C02/C03 MoWe 2:30–3:20PM Virtual Classroom
Tutorial T06 Mo 12:30–1:20PM Virtual Classroom
Tutorial T06 Tu 1:30–2:20PM Virtual Classroom
Tutorial T05 MoWe 1:30–2:20PM Virtual Classroom
All Virtual Classroom’s will take place via Microsoft Teams
1
Course Web Site
This course will be administered via Avenue to Learn (Avenue for short).
Go to
http://avenue.mcmaster.ca/.
to access the course’s Avenue to Learn page. Please send only normal email
to the instructional staff; do not send mail via Avenue.
Students should be aware that, when they access the electronic compo-
nents of this course, private information such as first and last names, user
names for the McMaster email accounts, and program affiliation may become
apparent to all other students in the same course. The available informa-
tion is dependent on the technology used. Continuation in this course will
be deemed consent to this disclosure. If you have any questions or concerns
about such disclosure please discuss this with the Instructor.
It is the student’s responsibility to be aware of the information on the
course’s Avenue to Learn page and to check regularly for announcements.
Calendar Description
“Exploration of thinking that is inspired, supported, and enabled by com-
puting. Survey of the salient ideas, methods, and technologies in the major
areas of computing including basic data types, logic, operating systems,
computer networking, web computing, information security, digital media,
software development, and problem solving techniques. Introduction to the
fundamentals of functional programming.”
Mission
The mission of the course is to (1) introduce students to computational
thinking (i.e., thinking that is inspired, supported, or enabled by comput-
ing) and (2) help students begin the process of developing a sophisticated
understanding of computing. The students will achieve these goals by ex-
ploring the salient ideas, methods, and technologies in computing and by
solving problems using functional programming.
2
Learning Objectives: Postcondition
A learning objective for a course is something the student is expected to
know and understand or to be able to do by the end of the course. The
learning objectives for this course are given below. Taken together, this set
of learning objectives constitute the postcondition of the course.
Required Textbooks
See the official Campus Store listings for textbooks here
3
Software Resources
1. Haskell Stack Tool provides the command line tools required to pro-
gram in Haskell. See https://docs.haskellstack.org/en/stable/
README/).
Work Plan
There will be lectures, discussion sessions, tutorials, M&Ms, a discussion
forum, programming assignments, two midterm tests, and a final exam.
The material in the entire text of CCT and in Chapters 1–13 of HCFP will
be covered. Each student is expected to devote a minimum of nine hours of
work per week for this course.
The lectures for the course will be video presentations with slides given
by the Instructor. The slides and a link to the video presentations will be
posted on Avenue.
Three 50-minute discussion sessions (which are scheduled during the lec-
tures times) will be led by the Instructor. The discussion sessions will be
online meetings via Microsoft Teams. During the discussion sessions, stu-
dents will be selected from a randomized class list and asked questions about
the material covered in the lectures and reading assignments for the week.
If a student is asked a question during a discussion session, the student will
receive a mark of 0 if the student is not present and a mark between 1 and
1.5 if the student is present. A mark of 1 is considered a full mark; a mark
of 1.25 is a full mark plus a 25% bonus; and a mark of 1.5 is a full mark
plus a 50% bonus.
Two 50-minute tutorials on programming in Haskell will be led by the
TAs. The tutorials will be online meetings via Microsoft Teams. There will
be video presentations with slides that the students should watch before the
tutorials. The slides and a link to the video presentations will be posted on
Avenue.
At the end of each week, the students are required to submit a short
paragraph (2–4 sentences) describing something from the week’s lectures
or discussion sessions that was (1) especially meaningful or memorable to
the student or (2) not understood by the student. These meaningfuls and
memorables (M&Ms) are intended to help the student to reflect on what
she is learning and to give the Instructor feedback on what the students are
4
experiencing in the course. The M&Ms are submitted to a discussion on
Avenue under Communication / Discussions.
The students are required to participate in a discussion forum is located
on Avenue under Communication / Discussions. Students are encouraged
to use the forum to discuss the course material and to ask and answer
questions. The Instructor and TAs will monitor the forum and participate
in the discussion as needed.
There will be five programming assignments that will be marked by the
TAs. The mark for an assignment will be determined in part by running
the code and in part by reading the code. Each programming assignment
will be due approximately two weeks after it is posted on Avenue. There
will be an opportunity to receive bonus marks by doing optional extra credit
assignments.
There will be two 50-minute online midterm tests during the normal
lecture times, one on Wednesday, October 7, and another on Wednesday,
November 18. The final exam will be 2 hours long. It will test accumulative
knowledge and will take place on the date scheduled by the University.
Academic Dishonesty
You are expected to exhibit honesty and use ethical behaviour in all as-
pects of the learning process. Academic credentials you earn are rooted in
principles of honesty and academic integrity. It is your responsibility to
understand what constitutes academic dishonesty.
Academic dishonesty is to knowingly act or fail to act in a way that
results or could result in unearned academic credit or advantage. This be-
haviour can result in serious consequences, e.g. the grade of zero on an
assignment, loss of credit with a notation on the transcript (notation reads:
“Grade of F assigned for academic dishonesty”), and/or suspension or expul-
sion from the university. For information on the various types of academic
dishonesty please refer to the Academic Integrity Policy, located at https:
//secretariat.mcmaster.ca/university-policies-procedures-guidelines/
The following illustrates only three forms of academic dishonesty:
5
1. plagiarism, e.g. the submission of work that is not ones own or for
which other credit has been obtained.
Online Proctoring
Some courses may use online proctoring software for tests and ex-
ams. This software may require students to turn on their video camera,
present identification, monitor and record their computer activities, and/or
lock/restrict their browser or other applications/software during tests or ex-
ams. This software may be required to be installed before the test/exam
begins.
6
Conduct Expectations
As a McMaster student, you have the right to experience, and the responsi-
bility to demonstrate, respectful and dignified interactions within all of our
living, learning and working communities. These expectations are described
in the Code of Student Rights & Responsibilities (the Code). All students
share the responsibility of maintaining a positive environment for the aca-
demic and personal growth of all McMaster community members, whether
in person or online .
It is essential that students be mindful of their interactions online, as the
Code remains in effect in virtual learning environments. The Code applies to
any interactions that adversely affect, disrupt, or interfere with reasonable
participation in University activities. Student disruptions or behaviours that
interfere with university functions on online platforms (e.g. use of Avenue 2
Learn, WebEx or Zoom for delivery), will be taken very seriously and will be
investigated. Outcomes may include restriction or removal of the involved
students access to these platforms.
7
Copyright And Recording
Students are advised that lectures, demonstrations, performances, and any
other course material provided by an instructor include copyright protected
works. The Copyright Act and copyright law protect every original literary,
dramatic, musical and artistic work, including lectures by University in-
structors The recording of lectures, tutorials, or other methods of instruction
may occur during a course. Recording may be done by either the instructor
for the purpose of authorized distribution, or by a student for the purpose
of personal study. Students should be aware that their voice and/or image
may be recorded by others during the class. Please speak with the instructor
if this is a concern for you.
Extreme Circumstances
The University reserves the right to change the dates and deadlines for any
or all courses in extreme circumstances (e.g., severe weather, labour dis-
ruptions, etc.). Changes will be communicated through regular McMaster
communication channels, such as McMaster Daily News, A2L and/or Mc-
Master email.
Discrimination
The Faculty of Engineering is concerned with ensuring an environment that
is free of all adverse discrimination. If there is a problem, that cannot be re-
solved by discussion among the persons concerned, individuals are reminded
that they should contact their Department Chair and the Human Rights and
Equity Services (HRES) office as soon as possible.
Missed Work
A student who would like to receive accommodation for missed academic
work due to an absence needs to complete a McMaster Student Absence
Form (MSAF) on-line at
http://www.mcmaster.ca/msaf/.
When the MSAF tool asks you for the party who should receive your request
for accommodation, enter dalvescb@mcmaster.ca. Students must follow up
with the instructor immediately after submitting an MSAF. MSAFs sent to
any other email address will be ignored. MSAFs for assignments will result
in a 3 day extesion (from the original due date not time of MSAF submitted).
For midterms a make-up midterm shall be scheduled
8
Course Modifications
The Instructor and University reserve the right to modify elements of the
course during the term. The university may change the dates and deadlines
for any or all courses in extreme circumstances. If either type of modification
becomes necessary, reasonable notice and communication with the students
will be given with explanation and the opportunity to comment on changes.
It is the responsibility of the student to check their McMaster email and
course web sites weekly during the term and to note any changes. Your
McMaster email is the one with the address ending in @mcmaster.ca. This
is a separate email address from your Avenue address.
9
Other Policy Statements
1. Significant study and reading outside of class is required.
3. Assignments and M&Ms may not be submitted late and the midterm
tests may not be taken later without prior approval from the Instruc-
tor.
5. A student may not use his or her notes and books during the midterm
tests and the final exam.
10
Marking Scheme
The course grade will be based on the student’s performance on class par-
ticipation, programming assignments, midterm tests, and the final exam as
follows:
Class participation
a. Discussion session questions 10%
b. Meaningfuls and memorables (M&Ms) 5%
Programming assignments (5) 30%
Midterm test 1 10%
Midterm test 2 15%
Final exam 30%
Total 100%
Course review session bonus 1%
Maximum discussion session bonus 5%
Maximum extra credit assignments bonus 10%
Notes:
1. The Instructor reserves the right to adjust the marks for a program-
ming assignment, midterm test, or final exam by increasing or decreas-
ing every score by a fixed number of points.
Course Schedule
The course schedule is given in a separate document entitled Course Sched-
ule.
11