This course introduces students to computer science. Students will design software independently and as part of a team, using industry-standard programming tools and applying the software development life-cycle model. They will also write and use subprograms within computer programs. Students will develop creative solutions for various types of problems as their understanding of the computing environment grows. They will also explore environmental and ergonomic issues, emerging research in computer science, and global career trends in computer-related fields. (The Ontario Curriculum Grades 10 to 12 Computer Studies - Revised (2008))
Welcome to the website for my ICS3U Python class. This site hosts information for both students and parents.
I suggest that you create a Replit account for this course.
Students can choose to install Python 3 at home if they wish to bring work home with them in day school.
You will write your code using IDLE. IDLE is a light-weight IDE, has a debugger and comes with Python.
You can also use a text editor like EditPad Lite or Sublime Text.
In a pinch, you can try cloud based IDE's like Replit or PythonAnywhere.
Install the Google Classroom App on your phone.
I suggest that you create a Replit account for this course.
You can download the latest free version of Python 3.x. It will come with IDLE.
Sebastian D. created this short tutorial so that you could install Python properly.
You can download the free version of EditPad Lite here.
All assignments are expected to be completed within the time allotted in the classroom. Ample and equal time will be given to all students.
The calendar has all the dates.
This course follows the assessment and evaluation policy of the school. Please see your agenda for details.
Please take a moment to read and understand the disclaimer at the bottom of this page.
The built-in 'Search' feature can save you time.
Don't bother with USB storage. You'll lose it, or it will corrupt. Use a Gmail account to store your work.
Problem Set 0 - Summative (wt. 1)
Problem Set 1.1 - I/O - Formative
Assessment 1 Walkthrough / Trace - Summative (wt. 2)
Problem Set 1.2 - Loops - Formative
Assessment 2 Walkthrough / Trace - Summative (wt. 2)
Problem Set 1.3 - If - Formative
Assessment 3 Walkthrough / Trace - Summative (wt. 2)
Problem Set 1.4 - Problem Solving - Formative
Assessment 4 Walkthrough / Trace - Summative (wt. 2)
Problem Set 1.5 - Random Numbers - Formative
Assessment 5 Walkthrough / Trace - Summative (wt. 2)
Problem Set 1.6 - Functions - Formative
Assessment 6 Walkthrough / Trace - Summative (wt. 2)
Problem Set 1.7 - Strings - Formative
Assessment 7 Walkthrough / Trace - Summative (wt. 2)
Problem Set 1.8 - Lists - Formative
Assessment 8 Walkthrough / Trace - Summative (wt. 2)
Software Development Project - Summative (wt. 4 or without code wt. 3)
Topics in Computer Science Presentation - Summative (wt. 3)
15% of final mark. This has been altered in 2020/21 because of COVID-19 to reflect 70 % Term Work + 30% Culminating Activity.
30% of final mark
15% of final mark. This has been altered in 2020/21 because of COVID-19 to reflect 70 % Term Work + 30% Culminating Activity.
There is no final exam in 2020/21
Assignments are weighted using a scale of 1 - 4.
1
problem set 0
problem sets 1.1 - 1.8 (dependent, most always formative)
2
walkthroughs / traces / quizzes / tests
3
presentations
small projects
software development project without code
4
software development project with code
large / group project
Level 1 50–59%
1- 52% / 1 55% / 1+ 58%
Level 2 60–69%
2- 62% / 2 65% / 2+ 68%
Level 3 70–79%
3- 72% / 3 75% / 3+ 78%
Level 4 80–100%
4- 84% / 4 91% / 4+ 98%
demonstrate the ability to use different data types, including one-dimensional arrays, in computer programs;
demonstrate the ability to use control structures and simple algorithms in computer programs;
demonstrate the ability to use subprograms within computer programs;
use proper code maintenance techniques and conventions when creating computer programs.
use a variety of problem-solving strategies to solve different types of problems independently and as part of a team;
design software solutions to meet a variety of challenges;
design algorithms according to specifications;
apply a software development life-cycle model to a software development project.
relate the specifications of computer components to user requirements;
use appropriate file maintenance practices to organize and safeguard data;
demonstrate an understanding of the software development process.
describe policies on computer use that promote environmental stewardship and sustainability;
demonstrate an understanding of emerging areas of computer science research;
describe postsecondary education and career prospects related to computer studies.
Students will be assessed and evaluated using the standard province-wide achievement chart that identifies four categories of knowledge and skills in Computer Studies.
Knowledge and Understanding: Subject-specific content acquired in the course (knowledge), and the comprehension of its meaning and significance (understanding).
Thinking: The use of critical and creative thinking skills and/or processes, specifically planning skills, processing skills, and critical/creative thinking processes.
Communication: The conveying of meaning through various forms.
Application: The use of knowledge and skills to make connections within and between various contexts.
The breakdown for this course is as follows:
25% Knowledge and Understanding
25% Thinking and Inquiry
20% Communication
30% Application
70 % Term Work + 15% Culminating Activity + 15% Final Exam. This has been altered in 2020/21 because of COVID-19 to reflect 70 % Term Work + 30% Culminating Activity.
These values are from the DPCDSB 2017 assessment document.
Please see the student agenda for further details.
All major assignments must be handed in on the due dates given. There will be a penalty of 10% for late work. After three school days and parental contact, the assignment will be given a mark of zero.
Minor assignments will not be accepted after the class work has been returned.
If a test is missed due to a legitimate reason, verification by parental contact must be given and arrangements will be made to either write the test, or complete an alternative assessment.
Original work is the only work that will be evaluated. Plagiarism of any kind will result in a mark of zero.
All assignments must be handed in to our Google Classroom.
Students must like solving problems
Students must want to learn how to program
Students must be willing to work in groups and on their own as per the situation
Students must use a Gmail account to back up their work
Students will not be able to use the computer lab unless they sign the handbook's user agreement.
Plagiarism of any kind will result in a mark of 0 in all categories.
If a student cannot explain their code, or pseudo-code, the assignment will be considered plagiarized.
All assignments must be submitted in the form of source code. Complied binaries will not be accepted.
All assignments will follow appropriate course naming and documentation conventions.
Late work will be handled as per the student handbook.
Students must be active learners. Participation is critical to success.
Be positive, timely, inquisitive, and willing to be challenged. Respect yourself, others and the lab.
Remember that this is an U level course, and it will be taught in a variety of styles including, demos, lecture, hands-on programming, presentation, pseudo-code writing, team work and individual study.
Students will be given ample time in which they can plan and execute their solutions in class. The use of a home computer is not necessary for successful completion of this course.