5
Coding 2016-2017 Instructor: Mr. Joslin E-mail: [email protected] Phone: (603)677-3968 Web: log into onCampus Course Description Coding is an introductory, semester- long computer science class focused on fundamental computational practices. The course is designed to introduce students to the breadth of the field of programming through an exploration of engaging and accessible topics. Rather than focusing the entire course on learning particular software tools or programming languages, the course is designed to focus on the conceptual ideas of computing and help students understand why certain tools or languages might be utilized to solve particular problems. The goal of Coding is to develop in students the computational practices of algorithm development, problem solving, and programming within the context of problems that are relevant to the lives of today’s students. Course Competencies & Foundations of Learning Skills * Competency #1: Content Knowledge By the conclusion of this course students will demonstrate knowledge of fundamental programming concepts and languages/environments by: a. making decisions based on input with if statements b. repeating commands until a condition is met with loops c. recalling or storing information with variables d. performing the same operations on various inputs with functions e. recognizing and employing syntax for a language or environment Competency #2: Technique By the conclusion of this course students will create, edit, and optimize code by: a. visualizing and planning solutions to problems prior to writing code b. not repeating code c. simplifying code to the minimum number of lines d. removing or avoiding unneeded functionality e. debugging their own code and that of their peers Competency #3: Skills By the conclusion of this course students will develop real-world coding skills by: a. creating media rich and interactive websites b. programming a game in Scratch c. programming a game in Python d. making an iPad app in Swift Competency #4: Communication By the conclusion of this course students will present process, product, and reflection by: a. writing with fluency and understanding of purpose and audience b. documenting process, product, and reflections via a digital portfolio Honor Code As a member of the New Hampton School community: I will conduct myself with integrity and honesty in all matters. I will demonstrate respect and responsibility in all of my actions. I will uphold the values of active citizenship and abide by the expectations set forth in the School Life Handbook Class Meetings Block: A and F Room #: Pilalas 103 Extra Help Fall/Spring: M 2:50-3:10 & Th 10:25-10:55 Winter: M 2:50-3:10 & F 9:55-10:25 Other: B, E, F Blocks or by appointment Location: Pilalas 103

Coding syllabus 2016 2017

Embed Size (px)

Citation preview

Page 1: Coding syllabus 2016 2017

Coding2016-2017

Instructor: Mr. Joslin E-mail: [email protected] Phone: (603)677-3968 Web: log into onCampus

Course Description

Coding is an introductory, semester-long computer science class focused on fundamental computational practices. The course is designed to introduce students to the breadth of the field of programming through an exploration of engaging and accessible topics. Rather than focusing the entire course on learning particular software tools or programming languages, the course is designed to focus on the conceptual ideas of computing and help students understand why certain tools or languages might be utilized to solve particular problems. The goal of Coding is to develop in

students the computational practices of algorithm development, problem solving, and programming within the context of problems that are relevant to the lives of today’s students.

Course Competencies & Foundations of Learning Skills*

Competency #1: Content Knowledge By the conclusion of this course students will demonstrate knowledge of fundamental programming concepts and languages/environments by:

a. making decisions based on input with if statements

b. repeating commands until a condition is met with loops

c. recalling or storing information with variablesd. performing the same operations on various

inputs with functionse. recognizing and employing syntax for a

language or environmentCompetency #2: Technique By the conclusion of this course students will create, edit, and optimize code by:

a. visualizing and planning solutions to problems prior to writing code

b. not repeating codec. simplifying code to the minimum number of linesd. removing or avoiding unneeded functionalitye. debugging their own code and that of their peers

Competency #3: Skills By the conclusion of this course students will develop real-world coding skills by:

a. creating media rich and interactive websitesb. programming a game in Scratchc. programming a game in Pythond. making an iPad app in Swift

Competency #4: Communication By the conclusion of this course students will present process, product, and reflection by:

a. writing with fluency and understanding of purpose and audience

b. documenting process, product, and reflections via a digital portfolio

Honor Code

As a member of the New Hampton School community:• I will conduct myself with integrity and honesty

in all matters. • I will demonstrate respect and responsibility in

all of my actions. • I will uphold the values of active citizenship

and abide by the expectations set forth in the School Life Handbook

Class MeetingsBlock: A and F

Room #: Pilalas 103

Extra HelpFall/Spring: M 2:50-3:10 & Th 10:25-10:55

Winter: M 2:50-3:10 & F 9:55-10:25 Other: B, E, F Blocks or by appointment

Location: Pilalas 103

Page 2: Coding syllabus 2016 2017

Course Expectations

Cell PhonesIt is the expectation that cell phones are turned off and stored out of sight for the entire class. Cell phone use of any kind is not permitted during class.

If a cell phone is used in class, it will be collected until the end of the period.

If a pattern of misuse develops, students may be asked to turn in their cell phones at the beginning of each class.

Course MaterialsThe following must be brought to class daily:

• Headphones (for viewing instructional videos)• Pen or Pencil• A positive attitude• Willingness to work through challenges

The following will be needed at times, but you will be given advance notice on when they are required:

• Charged iPad w/ Cord, & Case• iPad Apps: NHS provided apps, Socrative

The following materials are optional:• Personal Computer: charged with cord• Notebook: the paper kind• Calculator: any scientific calculator

There is no textbook for this class. All teaching material (videos, articles, websites, etc.) will be available in onCampus.

Technology PolicyWhile there will be times where technology is not necessary, you will be expected to sign into a school computer or open your laptop and begin working independently at the start of most classes.

RED LIGHT: Technology is off and stored away. (Rare in this class!)

YELLOW LIGHT:Technology is used for specific purpose as designated by the teacher. (95% of the course!)

GREEN LIGHT:Technology is used for designated tasks, homework, current events, reading Wired or MAKE magazines, or independent programming projects. (Also rare!)

Attendance/TardinessAttendance is required at all class meetings. If your absence is not excused, you will receive a cut. Please be on time. If you are not present when class begins (i.e. when the door is closed), you are tardy. If you are tardy three times you will receive a cut.

ParticipationA successful student in Coding will participate fully each day, will come to class prepared with all required materials and work, and will organize all course materials in a clear and concise manner. Students are expected to meet the Personal Tech 3 C’s when asked to do so.

Participation will not be assessed explicitly as the students will generally be allowed to move through the course content at their own pace. Effective use of time, meeting deadlines, and demonstrating skills mastery is dependent upon active and consistent participation.

PersonalTech4 C’s

Charged CordCase

Page 3: Coding syllabus 2016 2017

Make-up/Late WorkLate assignments will be assessed a grade-related penalty based on how late the assignment is submitted. It is your responsibility to get coursework from onCampus when you miss class.

Incomplete WorkLate minor assignments will lose 25% credit per calendar day. Late major assignments will lose 10% credit per calendar day. It is your responsibility to ensure that late work is received by the teacher.

Unexcused AbsenceAny missed assignment or assessment due to an unexcused absence will receive zero credit.

Unplanned Excused AbsencesYou will have the same amount of time to make up homework as the time you missed (i.e. 2 excused absences = 2 classes upon your return to make up work). You will have 1 week to make up a test or project.

Planned Excused AbsencesIf you have a planned excused absence, you must complete your work while away and submit it upon your return. You must get homework assignments from the group page. Tests & projects must be completed immediately upon your return.

Course Work

Competency-Based GradingOn one assignment you may see multiple grades. That is because different skills are being assessed. For instance, you may have done an excellent job in a web post on writing a reflection but may have made some errors in the design process. By assessing you in this way I can better target feedback and instruction.

Out of Class WorkYou should expect to spend a minimum of 30 minutes per class on coursework

assignments. Many times, this work will be a continuation of what you started in class and may not be graded. Because portions of this class are self-paced, you should always have the unit deadline in mind. You will not meet the deadline if you try to do all your work in class.

Grading ProceduresSemester grades are calculated using the following categories and percentages:

Competency % Grade

Content Knowledge 30%

Technique 20%

Skills 30%

Communication 20%

CourseworkThere will be a variety of graded assignments in this course, including (but not limited to):

• reading, writing, and problem solving assignments• programming and web development exercises• projects

For each assignment, the grading criteria will be discussed or distributed when the assignment is given. Many assignments will be graded with the use of a rubric, which will be distributed prior to the assignment. All rubrics will be available in onCampus.

Page 4: Coding syllabus 2016 2017

Course Work (cont.)

Extra CreditThe best way to earn credit is to do the work assigned by the teacher. Extra-credit projects will not be provided at the request of the student.

Self-Paced Learning

Each unit may consist of all or some of the following: • set of instructional videos• assignments• exercises• quizzes• projects

Students will be allowed to progress through the sequence of work at their own pace within a

given timeframe (generally 1-2 weeks). There will be one deadline for each unit when most of the unit coursework is due.

If a student finishes all coursework in a unit prior to the deadline, they may be asked to:•assist with instructing other students•proceed to the next unit•work on their independent programming project due at the end of the term

Skills Mastery

In an effort to encourage students to take academic risks and to do their best to reach proficiency with the skills and content being taught, students will be required to improve or “re-do” all coursework (except the final project) until a grade of “Proficient” (80%) is earned. A student may not progress past a unit until they have demonstrated proficiency on all assignments, exercises, and projects in that unit.

I encourage all students to utilize Office Hours to ensure that expectations are met and that they are mastering the skills taught in the course.

A student may need more time than is provided during Office Hours. I am happy to meet with individual students during free blocks, after classes, or in Study Hall, although the student must initiate and schedule these times.

Independent Programming Project (Final Project)The last few weeks of the semester will be dedicated to an independent project. Each student will choose from one of the following three topics for their project:

• Web Development• Introduction to Arduino• Game Development using Scratch, Python, or Swift

Students will learn the fundamental concepts of their chosen topic much the same way they learned the material for each of the previous units. They will then work with me to develop the desired outcomes of their project and an outline of the necessary steps to achieve these outcomes.

In this project, students will be responsible for • organizing their time• mastering the requisite skills• using an iterative process to refine their project.

Page 5: Coding syllabus 2016 2017

Selected Topics and Assignments for 2016-2017

Week Topics Competencies Emphasized

Videos/Resources & Coursework

Introduction and Web Development with HTML and CSS

1-2 Course IntroductionHour of CodeHTML & CSS Intro

1a, 1b, 1e, 3a, 4a-b

Hour of Code Activity & ReflectionCodecademy HTML & CSS ModulesSyntax QuizzesDigital Portfolio/Goal Setting

Visual Programming with Scratch

2-3 If Statements, Loops, Variables, and FunctionsProgram Debugging

1a-e, 2b-e, 3b, 4a

Scratch videosScratch Blocks QuizDebugging ExercisesWriting Assignment

3-4 Game Development 1a-e, 2a, 2b-e, 3a-b, 4a-b

Frogger GameGame Programming ProjectDigital Portfolio/Reflection

Python

5-6 Python Syntax, Strings and Console, Conditionals

1a, 1c, 1e, 2b, 2e, 3c, 4a

Codecademy Python ModulesSyntax Quizzes

7 Lists, Functions, Loops 1b-e, 2b, 2c, 2e, 3c, 4a

Codecademy Python ModulesWriting Assignments

8 Programming Logic 1a-e, 2a-e, 3c, 4a-b

Debugging ExercisesLogic Game ProjectDigital Portfolio/Reflection

Swift

9-10 Swift Syntax, Naming, Constants, and Strings

1a-e, 2c, 3d, 4a

Swift PlaygroundApp Development with SwiftSyntax Quizzes

11 Building and Running an App in XCodeManaging/editing files in Xcode

1a-e, 2a-e, 3d, 4a-b

App Development with SwiftWriting AssignmentsPicture App

12 My First (Solo) App 1a-e, 2a-e, 3d, 4a-b

Debugging ExercisesFirst App ProjectDigital Portfolio/Reflection

Independent Programming Project

13-16 Game Development ORLogic Program ORApp Development(choose 1 of the above)

1a-e, 2a-e, 3a, 3b or 3c or 3d, 4a-b

Scratch TutorialsCodecademy Modulesor App Development with Swift iBookIndependent Programming Project

17 Final Project 4a-b Digital Portfolio/ReflectionIndependent Project Showcase