Course: EECS1012 3.00 Introduction to Computing: a Net-centric Approach
Sections: M
Term: Winter 2023
Course Webpage: eclass.yorku.ca and www.eecs.yorku.ca/course/1012
Students who are not officially enrolled in the course (and plan to enroll) are expected to attend the lectures and labs from the first week of the term and complete all required works within the deadlines. Please contact the course instructor for details on how to obtain temporary access to the course materials while your enrolment status is being decided. Otherwise, if you miss any assessment deadline, you will receive 0 for that assessment. For official enrollment to the course, you must contact the UG office by emailing eecs-ug@yorku.ca, or use the QLess app to talk to an advisor. You must choose the EECS Undergrad office on QLess and not Bergeron/Lassonde advising team.
This document communicates course information and defines expectations and responsibilities. In the case of petitions, it is used in the adjudication process as the definitive source of information about a course. This document expands on the course outline, which is also provided to students at the beginning of the academic year.
This is an introductory programming course in computer science and engineering. It introduces skills and concepts such as computational thinking, procedural programming, variables/control-flow constructs, event-handling, and test-driven development within a net-centric context (using HTML, CSS and JavaScript).
Sec |
Location (time) |
Instructor |
Email |
Office |
Office hours |
M
|
ACW 109 (R 8:30-10:30)* |
Hui Wang |
hui.wang@yorku.ca |
LAS 2013 |
R 11:30-12:30 or by appt |
First lecture is on
Jan 12
* All time zones in this document are the local time in Toronto.
Lab sessions: depending on your enrollment is one of the following sessions:
Sec M, Labs 01 (WSC105) M 10:00–13:00 first lab is on January 16
Sec M, Labs 03,04 (WSC106,108) T 09:30–12:30 first lab is on January 17
First SMQ quiz is
on Jan 22
We expect all students to have arranged for a dependable internet connection and reliable computer, for online quizzes, if any, as well as for submitting assignments. Regardless, students should also mitigate risks by having backup plans and leaving an adequate time buffer for each coursework and assessment.
There are two hours of lectures and three hours of experiential labs weekly. Lectures introduce the concepts mainly using a problem-based approach; Students implement such concepts in labs. Labs are supervised, in that students will do the lab in a specific location at a specific time. Labs will be posted the week before they are due. Importantly, students should work on the lab exercises prior to their lab session. There will be teaching assistants in each lab to provide (limited) hints. Students are highly encouraged to discuss concepts of the lectures and exercises of the labs with their peers. This should be done mostly outside lecture and lab sessions--while complying with policies on academic honesty and integrity. We take matters related to academic dishonesty seriously and will use various technological means to ensure academic integrity. Make sure you learn the concepts by doing the lab step by step yourself– do not just copy to finish the lab. Overall, the labs’ credit weight is very low, and they are primarily to prepare you for individual tests where you must work independently and will have a significantly higher credit weight.
This course is demanding in terms of time and should not be added to an already heavy load: Slides and many other resources are available online; yet, not actively engaging in lectures, lab work, office hours, and exercises could severely impact your grade to the extent of forcing you to drop the course or fail in it. The Lassonde standard recommendation is to spend ~10 to 13 hours per week on a 3-credit course. That means in addition to attending 2-hour weekly lectures, you need to spend 8 to 11 hours to review the topics by doing each weekly lab assignment. Most of this time should be actual doing, not watching or reading (online) materials. That means ~2 hours of purely programming per every and each weekday. If you do not have programming experience, you may find yourself to spend more hours per week to see good results. Also, remember to do coding every day consistently as opposed to once or twice a week. Talk to the course instructor in the first week for more tips.
1.
Use a set of computing skills such as reasoning about
algorithms, tracing programs, test-driven development, and diagnosing faults.
2.
Explain and apply fundamental constructs in event-driven
programs, including variables and expressions, control structures
(conditionals/loops), and API usage.
3.
Write simple programs using a given software infrastructure.
4.
Gain exposure to net-centric computing, client-server
applications.
5.
Become familiar with the notion of syntax, both for programs
and web documents, and the principle of separation of concerns.
Lecture notes, labs and other resources will be made available on the course’s eClass page. In addition, online quizzes and subject matter tests, as well as lab submissions will be conducted using eClass. You are responsible for all information posted on eClass including all discussions and information in online forum of eClass.
· Computer Science: A First Course, by Alexandra I Forsythe
o this is a great resource for many computational thinking examples and exercises, with the flowchart symbols we use in EECS1012.
o This is a link if you like to purchase it: https://www.amazon.ca/Computer-Science-Alexandra-I-Forsythe/dp/0471266817
· JavaScript for Kids, by Nick Morgan
o this is a great book for those of you new to programming. Don’t underestimate the book because of its title as many topics in this book are well advanced. A digital copy of this book is available here. The strong point of this book is that it guides you how to develop simple projects quickly. This book can be used as a straightforward guideline for some of the quizzes in this course, even though you could find those topics in other online sources too. The major weak point of this book is that it does not teach computational thinking.
· Eloquent JavaScript, 3rd Edition, by Marijn Haverbeken
o this is a great book to start programming with and continue to excel it. A must-read for anyone who wants to gain a great knowledge of JavaScript. A digital copy of this book is available here. This book can be used as a straightforward guideline for some of the quizzes in this course, even though you could find those topics in other online sources too. The major weak point of this book is that it does not teach computational thinking.
·
Web Design with HTML, CSS, JavaScript and jQuery Set, by Jon Duckett
o these are a set of two great books for those who want to start programming and become a great front-end developer. This is a link if you like to purchase it: https://www.amazon.ca/Web-Design-HTML-JavaScript-jQuery/dp/1118907442 again this is not a good resource for learning computational thinking.
Assessment Item |
Time |
Weight, % |
9 weekly labs |
starting
the week of Jan 16 |
14 |
4 tests and lab tests |
1.
Feb
16 (during your official lecture) 2.
Week
of Feb 27 (during your official lab session) 3.
Mar
30 (during your official lecture) 4.
Week
of Apr 2 (during your official lab session) |
9 10 12 14 |
5 subject matter quizzes (SMQ) |
1.
Sun
Jan 22, 10~15 minutes from 13:00 to 23:00 2.
Sun
Feb 5, 10~15 minutes from 13:00 to 23:00 3.
Sun
Feb 26, 10~15 minutes from 13:00 to 23:00 4.
Sun
Mar 19, 10~15 minutes from 13:00 to 23:00 5.
Sun
Apr 9, 10~15 minutes from 13:00 to 23:00 |
6 |
Project |
Multiple stages from Jan 12 to Apr 7 |
15 |
Final |
Apr 12 to 25 (determined by the university) |
20 |
optional CTC activities |
weekly from Jan to Apr (bonus) |
0 ~ 4 |
Your final grade in the course will be based on the assessment items above. No "extra credit" assessments will be provided. To be fair and consistent with regards to the entire class, individual grades are not negotiable. Furthermore, marks will not be "rounded" or "bell-curved".
Overall, there are 9 labs, 2 tests, 2 lab tests, 5 SMQs, multi-stage project, and a final exam. For labs and SMQs, we will automatically omit your one worst grade from the final calculation of your points, to mitigate for a bad day that you may have due to internet disconnection or other incidents.
Labs. Details for each lab will be posted approximately five days before they are due. Each lab will have a PDF that you are expected to have read prior to the lab. TAs are available to help you. Of course, you are strongly encouraged to attempt your labs before the lab sessions. Your work can be marked by a TA before the lab session time ends. For that, it is important that you sign-in to your officially enrolled lab. The labs files must be submitted to eClass not later than the deadline (usually Wednesdays) at 21:00.
Students repeating this course are expected to redo all lab exercises from scratch. Reusing work from a previous offering of the course (even if it is your own work) or any other source is a violation of the Senate Policy on Academic Honesty.
Tests. These tests consist of two parts: Design and Concepts. In the design part, you provide a solution for a computational problem typically using the flowchart language. In the conceptual part, there are several multiple-choice or similar (like short answer, filing blank, etc.). As with the other tests, any direct or indirect communication is not allowed. Students are responsible to have their photo ID.
Lab tests. These are two labs that are to be completed individually. You will still have access to reference resources on HTML, CSS, and JavaScript. However, as with the other tests, any direct or indirect communication with anyone is prohibited. The structure of lab tests consists of a Design part and a Development part. In the design part, you provide a solution for a computational problem typically using the flowchart language. In the development part, you provide a programming solution mainly using the JavaScript language while you may need to develop some HTML and/or CSS parts too.
Both types of the tests described above must be completed during the scheduled lectures and lab sections you are officially enrolled in. That also means that these tests are not asynchronous, and you are expected to be available to do finish them during the specific hours within your scheduled lecture or lab.
You will be able to review your test and labtests during office hours. Any concern about the marking can be discuss during review.
Project. There is a web application project in the
course that will be delivered in 4 phases: requirements definition, design,
implementation and testing, deployment. The project must be done in teams of
two or three people. Individual work is NOT accepted. Further details will be announced in eClass.
Subject-Matter
Quizzes. The 5 SMQs
tend to test your knowledge on recently addressed materials. For instance, in
SMQ1, we may ask you questions to verify if you have read this document (the
course syllabus/outline) thoroughly, among other questions. SMQs are
asynchronous. In particular, you can write them any time between 13:00 and
23:00 on the quiz day; however, note that once you open each quiz, you have
up to 15 minutes to answer it. You are responsible to make sure you
have a secure internet connection and reliable computer before starting each
quiz.
Final
Exam. The
final exam will be scheduled by the university between December 8 and 23.
Students are expected not to arrange travel plans until they know about their
exams schedule.
Bonus points: Students who do not have any programming background or students who perform very well in the course are highly encouraged to conduct some special tasks which are as bonus and are worth up to 4%. One type of special tasks is to effectively participate in the CTC; CTC has been designed mostly for students who do not have any computational thinking background; but, everyone can participate. Everyone has the option of conducting these tasks or having their weight included in their tests and exam.
Missed labs (and SMQs). If you miss up to
one lab (and up to one SMQs) due to illness or technical problems such as
internet disruption—or any other reason beyond your control—you
will not lose any marks as we drop the worst grade; If you missed two, the weight of one missed assessment will
automatically be transferred to your final exam. No paperwork is required as
this will be done automatically for all students before we omit their one worst
grade in each of these categories for calculating their final grade. In other
words, conducting one single bad lab or SMQ is treated the same way as missing
it completely; hence, you should always try to conduct it if you can as you
will not lose any point.
Missed tests or lab-tests: If you miss Test 1 or Lab-Test 1 due to illness or technical problems such as internet disruption—or any other reason beyond your control—you will not lose any marks; instead, the weight of such a missed test will automatically be transferred to your Test 2 or Lab-Test 2, respectively. No paperwork is required. If you write Test 1 but miss Test 2, its weight will be transferred to your final exam. If you miss Lab-Test 2 or the final exam, you should request for a Deferred Standing Agreement.
The
following table illustrates the resolution when a student missed one or more
assessments.
Missed Assessment(s) |
Resolution |
One lab only |
Omitted as worst; it does not affect the final
grade |
One SMQ only |
Omitted as worst; it does not affect the final
grade |
Two labs |
The weight is transferred to the final exam |
Two SMQs |
The weight is transferred to the final exam |
Three or more labs |
Will potentially reduce your final letter
grade by one point |
Three or more SMQs |
Will potentially reduce your final letter
grade by one point |
Test 1 only |
The weight is transferred to Test 2 |
Lab Test 1 only |
The weight is transferred to Lab Test 2 |
Test 2 only |
The weight is transferred to the final exam |
Lab Test 2 only |
Student should request a Deferred Standing;
otherwise 0 |
Both Test 1 and Test 2 |
Receive 0 in Test 1; The weight of Test 2 is
transferred to the final exam. |
Both Lab Test 1 and Lab Test 2 |
Receive 0 in Lab Test 1; You should request a
Deferred Standing for Lab Test 2; otherwise, 0 in Lab Test 2 too. |
Final Exam |
Student should request a Deferred Standing;
otherwise 0 |
·
We highly encourage you to ask questions during lectures or
office hours, and use the eClass discussion forum, before
emailing the course instructor.
·
Submission of any work (such as labs) by email receives 0.
You should use eClass to upload any class work or paperwork within the
designated deadlines. Email should be used only for special circumstances that
are not facilitated in eClass.
·
To save yourself time, do not ask a question answer to which
is in the Course Outline and Syllabus or in the forum. Search this document and
the course forum first.
·
Only use your York email account.
·
Please include “EECS1012”, a brief indication of
the topic in the subject line, and your formal name (the one used within YorkU
systems), Passport York username, and student number at the end of your
message. These are necessary to access your course records and materials. Also
include any additional information that is pertinent to the topic of your
email.
·
Use grammatical English. Do not use SMS-style talk (e.g.,
“r u gonna return the tests tmr?”) or other shorthand or slang. For
guides on writing professional emails, read this.
·
Email messages not complying
with these guidelines may not be answered in a timely manner.
·
We generally respond to emails within 24 hours (usually much sooner).
However, we reserve the right to not respond to any emails on weekends or
during holidays, as well as the emails that pose questions that have been
already answered in this document or in the discussion forum.
Course announcements will be posted on eClass in the "Course Announcements" section. By default, all enrolled students should receive an email notifying them of a new announcement. Regardless, it is the responsibility of each student to be aware of all course announcements that are made, so check the discussion forum in eClass regularly.
Also, all lecture notes, link to other resources, lab instructions, deadlines, and important dates are on eClass. Students will be required to submit their lab work on eClass within the designated deadlines.
To be fair and consistent with
regards to the entire class, we do not make exceptions for individual students.
Images and materials presented in lectures are subject to Canadian copyright law. Lectures are the intellectual property of the professor. Course materials are the intellectual property of the associated author(s). You may not and may not allow others to reproduce or distribute lecture notes, test questions and other course materials publicly for commercial and non-commercial purposes without an express written permission from the professor or author. If it can be shown that these terms were violated by you, your course grade may be changed to an F even after the course is completed.
Students are expected to do their own work and to act with integrity. Accessing someone else's work during a test, communicating with other persons during a test, using unauthorized aids during a test, plagiarism, not reporting cheating by someone else, and impersonation are all examples of academically dishonest behaviour. Students repeating this course are expected to redo all lab exercises from scratch. Reusing work from a previous offering of the course (even if it is your own work) or any other source is a violation of the Senate Policy on Academic Honesty.
We take matters related to academic dishonesty seriously and we take measures to detect irregularities during all assessments. For example, network traffic may be logged, video surveillance may be considered, and multiple versions of the questions may be used. The work you submit may also be checked for signs of cheating using automated tools, sometimes not immediately.
Students are expected to read and understand the Senate Policy on Academic Honesty, with additional comments and explanations here: https://lassonde.yorku.ca/student-life/academic-honesty-integrity-faculty-resources. If you have any questions about the policy or would like to report a violation, please speak with your instructor.
Other Resources There is an academic integrity website
with comprehensive information about academic honesty and how to find resources
at York to help improve students' research and writing skills, and cope with
University life. Students are strongly encouraged to review the materials on
this SPARK
Academic Integrity website.
·
Students are encouraged to participate in the online eClass
forums to ask or comment on questions relating to course concepts.
·
Check to see if your question has already been posted. You
are expected to search the forums, but you do not have to read each post. If
your question has not already been asked, create a new post.
·
Use a clear, informative subject line ("Please
Help!" is not informative). Try to be as specific as
possible.
·
Post comments appropriate to the particular discussion.
Off-topic posts may be deleted.
·
Post only material relevant to the course. Other posts may
be deleted.
·
Be respectful. Posts containing personal insults, attacks,
intimidation, or profanity may be deleted. Remember, TAs and instructors read
forum posts too.
·
Any post that appears to violate this code of conduct may be
edited, moved, or deleted at the discretion of the moderators. If a post also
gives indication of violating the Senate Policy on Academic
Honesty
or the York University Student Code
of Conduct,
further action may be taken. It is specifically forbidden to
post or solicit solutions for quizzes, tests, or labs through the discussion
forum (or elsewhere, for that matter; we monitor various online venues).
·
We may consider some bonus points based on your activities
in the forum – if it’s significant.
Students and instructors are expected to maintain a professional relationship characterized by courtesy and mutual respect. Moreover, it is the responsibility of the instructor to maintain an appropriate academic atmosphere in the classroom and other academic settings, and the responsibility of the student to cooperate in that endeavour. Further, the instructor is the best person to decide, in the first instance, whether such an atmosphere is present in the class. The policy and procedures governing disruptive and/or harassing behaviour by students in academic situations is available online. See also:
· Student Rights and Responsibilities - http://oscr.students.uit.yorku.ca/student-conduct
· York University Racism Policy and Procedures – https://rights.info.yorku.ca/race/
· York University’s Policies on Sexual Violence - https://www.yorku.ca/secretariat/policies/policies/sexual-violence-policy-on/
· York University’s Policies on Gender/LGBTQ*/Positive Space - http://rights.info.yorku.ca/lgbtq/
Several platforms will be used in this course (e.g., eClass) through which students will interact with the course materials, the course director / TA, as well as with one another. Please review the syllabus to determine how the class meets (in whole or in part), and how office hours and presentations will be conducted.
Students shall note the following:
· Zoom is hosted on servers in the U.S. This includes recordings done through Zoom.
· If you have privacy concerns about your data, provide only your first name or a nickname when you join a session.
Technology requirements and FAQs for eClass (aka Moodle) can be found here:
https://lthelp.yorku.ca/95440-student-faq
Access/Disability: York University is committed to principles of respect, inclusion and equality of all persons with disabilities across campus. The University provides services for students with disabilities (including physical, medical, learning and psychiatric disabilities) needing accommodation related to teaching and evaluation methods/materials. These services are made available to students in all Faculties and programs at York University.
Students in need of these services are asked to register with disability services as early as possible to ensure that appropriate academic accommodation can be provided with advance notice. You are encouraged to schedule a time early in the term to meet with each professor to discuss your accommodation needs. Please note that registering with disabilities services and discussing your needs with your professors is necessary to avoid any impediment to receiving the necessary academic accommodations to meet your needs.
Additional information is available at the following websites:
·
Student Accessibility Services
Religious Observance Accommodation: York University is committed to respecting the religious beliefs and practices of all members of the community, and providing reasonable accommodations for observances of special significance to adherents. Should any of the dates specified in this syllabus for an in-class test or examination pose such a conflict for you, contact the course coordinator within the first three weeks of class. Similarly, should an assignment to be completed in a lab, practicum placement, workshop, etc., scheduled later in the term pose such a conflict, contact the course coordinator immediately. Please note that to arrange an alternative date or time for an examination scheduled in the formal examination periods, students must complete an Examination Accommodation Form, which can be obtained from Student Client Services, Student Services Centre or online.
· Religious Observance - https://w2prod.sis.yorku.ca/Apps/WebObjects/cdm.woa/wa/regobs
Health and
Safety: As part of York’s Community of Care
Commitment, all members of the York community share in the responsibility of
keeping others safe on campuses. In this class, as
elsewhere on campus, students must comply with all
University health and safety protocols,
Information about COVID-19 health and safety measures can be found on the Better Together website.