CS-12GP Syllabus

On This Page
Instructor Information
Name Ed Parrish
Email See instructor's homepage.
Office location See instructor's homepage.
Office hours See instructor's homepage.
Phone See instructor's homepage.
Contacting Instructor If you have any questions about the course or need assistance, please contact me during office hours in person or by telephone, or at any time by email. When contacting me by email, be sure to include the course number and your name.
Catalog Information
Course title Introduction to Programming Using Games and Simulations
Course Number CS 12GP
Section Number 95828
Course description Presents an introduction to computer programming concepts and methodologies by developing games and simulations in the Java programming language. Topics include: algorithms, data types, declarations, expressions, selection, repetition, methods, recursion, libraries, arrays, classes, objects, 2D graphics, animation, sound, files and streams. Prepares students for CS 19 or CS 20J
Course dates 01/23/17 through 05/20/17
Location Room 828 (see the Campus Map links on the instructor's homepage)
Meeting day(s) and time(s) TU 11:30AM-01:35PM
TH 11:30AM-01:20PM
Final Exam Schedule Thursday, May 18 @ 10:00 am-12:50 pm
Prerequisite(s) MATH 154 (Elementary Algebra)
Recommended Preparation CS 1L if lacking computer skills; Eligibility for ENGL 100 and READ 100.
Learner Outcomes
  1. Solve problems by designing computer algorithms.
  2. Develop small-to-medium sized Java programs that implement basic algorithmic designs.
  3. Organize and document program code following the principles of software engineering.
Lesson, Lab and Quest Schedule
  For a listing of the scheduled lectures and quests (assignments) see the Course Schedule. Most quests are electronically uploaded to Canvas and the dates and times shown in Canvas supersedes the dates shown on the schedule.
Textbooks and Other Materials
Required books Introduction to Programming with Greenfoot, 2nd Edition, Michael Kolling, Prentice Hall, ISBN: 9780134054292. Also, you may buy a 180 day subscription for a reduced price.

It is important that you have access to this book because there is required reading from the book, programming projects are assigned from the textbook, I test on material from the book, and it will help you get a better grade in the course.

Required materials You must purchase a CodeLab subscription. Cost should be $25 if you order online -- let me know if you are charged more as I negotiated a discount for my students. If purchasing CodeLab is a financial hardship, please let me know as scholarships may be available.
Teaching Methods
Design This class is designed as a multiplayer game where the students are the players and the instructor is the Game Master. At the beginning of the semester everyone in the class will choose and name their avatars. The avatars are used when publishing games online, among other activities.
Events Course events will be divided among fighting or finessing monsters (quizzes, exams etc.), completing quests (assignments, challenges) and crafting (writing computer code for games and simulations).
Guilds For some projects, students will organize into guilds based on their 1337 skillz and game interests. Guilds will choose their names. There will be several guilds of four to seven members each depending upon the final class size, skills and interests. Guild members may change during the semester.
Organization The course is organized into three parts with a Boss (exam) at the end of each:
  1. Starting game: Learning basic programming skills while producing your first game.
  2. Middle game: Learning 1337 skillz to empower your games in a variety of prepared scenarios.
  3. End game: Learning how to apply 1337 skillz to your original final project.
Grading Policies
Experience points You begin the first day of class as a Level 0 avatar. Twenty is the highest level you can achieve. Your level is based on individual experience points (XP). Cabrillo does not assign plus or minus to the final grades but you will know from your XP.

Level XP Letter Grade
20 970 A+
19 930
18 900 A-
17 870 B+
16 830
15 800 B-
14 770 C+
13 730
12 700 C-
11 670 D+
10 630
9 600 D-
8 520
7 410
6 320
5 240
4 170
3 110
2 60
1 20
0 0
XP Sources
XP Source XP Amount
Quests and Labs (see below) 360 (plus extra credit)
Boss Quizzes (see below) 45+
Arcane Studies (Boss Prep) 10+
Boss Basic (Midterm 1) 100
Boss Between (Midterm 2) 150
Boss Beyond (Final exam) 350
Easter eggs 0+
Total possible 1015+

XP sources may change during the term but will always total at least 1000. Note that Boss Quizzes are part of the XP.

Extra credit applied at end of final project (secret ballot):

  1. Guild Leader: 20 pts. (major player in the guild; gets things done)
  2. Raid Leader: 15 pts. (major contributor to the guild and its projects)
  3. Solid Guild: 10 pts. (could be counted on to do their part, but not more)
  4. Needs Rez: 5 pts. (coasting, minimal effort, needs resurrection as a player)
  5. Leeroy Jenkins: 0 pts. (Usually AFK or minimal contribution)
Quests With quests we seek to apply our skills to achieve a goal. While questing we often improve our skills. Planned quests with completion dates listed in the schedule.

Quests come in three forms:

  • Quests labeled "solo" are completed individually.
  • Quests labeled "pairs" are completed by pairs of students using pair programming.
  • Quests labeled "guild" are completed by all guild members. The guilds are given some options on how they decide to complete the quest.

Each quest contains specific instructions. Everyone must turn in their completed quests for credit, whether completed solo, in pairs or in guilds.

Grading is rigorous. Quest specifications must be met, including spelling, grammar and punctuation, or points will be deducted.

Online Labs Labs are designed to introduce new skills, which we continue to work on during lessons and quests.
Due dates Quests and labs are due at the date and time shown in Canvas. I will not accept late quests or labs without a compelling reason, such as a death in the family or a serious illness, except a single one-time exception of up to two days late for solo quests or labs. Students may, of course, perform other tasks to gain XP. Students who are never late on either labs or quests gain 5 XP.
Challenges Challenges are a way to learn or review code techniques while playing a game. The game is online at: Jumbled Games. Each challenge in the game completed perfectly enables a Boss event (Boss quiz).
Boss quizzes Boss events (quizzes) are conducted after class on Thursdays. Completing each Boss quiz is worth XP. Students may engage a Boss quiz after completing the associated challenge. Boss attempts may be repeated on a later day and questions are drawn randomly from question pools. Boss quizzes are only available until the first Boss exam.
Boss exams Boss midterm exams must be taken when scheduled, except by prior arrangement with the instructor.
Final exam The Boss final exam is a practical exam given during finals week. Students must complete a series of programming problems to show their 1337 skillz and defeat the final Boss. A final exam cannot be retaken in a course so it is important to prepare well for the final.
Alternate Grading and Incompletes
Pass/No-Pass Option You may request a pass/no-pass grading option. If so, you must complete the course work at a satisfactory (that is a "C") or better level to pass. For more information, see the Cabrillo Academic Policies and Procedures document.
Incompletes You may request an incomplete from the instructor if you are "doing passing work and regularly attending at least 75% of a course, but are unable to take the final exam (or otherwise complete the course) because of illness or other unforeseeable emergency and justifiable reasons." (Quotation from the Academic Policies and Procedures document.)
ASC Statement
Equal Opportunity Students needing accommodations should contact the instructor right away. As required by the Americans with Disabilities Act (ADA), accommodations are provided to insure equal access for students with verified disabilities. To determine if you qualify or need assistance with an accommodation, please contact the Accessibility Support Center (Formerly DSPS), Room 1073, (831)479-6379.
Student Behavior
Behavior Expectations All students are expected to:
  1. Treat other students, the instructor, and guests with courtesy and respect -- no sarcasm, no put-downs, no disruptions by speaking out of turn, side conversations, leaving the classroom in the middle of lectures or exercises, etc.
  2. Be attentive, stay on task and participate in discussions.
  3. Work collaboratively with peers as appropriate for each activity.
  4. Use computers during class only at specified times and for specified activities.
  5. Not use a cell phone during class, including texting or Internet browsing, nor allow the phone to ring in the classroom.
Consequences for Disruptive Behavior

Disruptive behavior is any action that interferes with the functioning and flow of the classroom including uncooperative, defiant, or hostile behaviors.

First incident (when not severe): discussion and verbal warning.

Second incident:
  • Dismissal from the class and possibly the next class period
  • Filing of a Disruptive Behavior Report with the Dean of Student Services.
  • Reporting of the incident to the Division Dean
  • Meeting with the instructor during office hours to write an agreement on future behavior in the class.
Third incident:
  • Dropped from the class or given a failing grade if the last drop time has passed.
  • Filing of a Disruptive Behavior Report with the Dean of Student Services.
  • Reporting of the incident to the Division Dean

Severe incidences: Severe acts of disruption, lack of respect (such as the use of a racial slur), sexual harassment or physical violence will be cause for an immediate drop from the class and a Disruptive Behavior Report filed with the Dean of Student Services for further disciplinary action.

Participation Students are expected to participate in the course, as indicated by completing homeowork assignments (labs and quests) and tests (Boss quiz and exam events). Missing the first assignment, missing more than two weeks of assignments or missing a midterm without contacting the instructor right away may result in the student being dropped from the course. However, do not rely on an instructor to drop you because you are entirely accountable for failing to drop any course.
Scholastic Honesty Policy
  Scholastic dishonesty is any act designed to give an unfair or undeserved academic advantage. Students who are scholastically dishonest hurt both themselves and other students. They rob themselves of both the knowledge of the course and the experience of learning how to learn. They harm other students as well because they may unfairly get a higher grade and nobody can trust that the graduates of a course know the material.

Scholastic dishonesty includes:

  • Cheating: Intentionally violating the rules of the course by possessing, communicating, using, or attempting to use materials or to take actions that the instructor has not allowed. For example, obtaining a copy of a solution for an assignment until after the due date.
  • Plagiarism: Use of distinctive ideas, words or code belonging to another person, without sufficiently acknowledging that person's contribution. For example, copying code from the internet and inserting the code into an assignment without attribution is plagiarism. Also, using new ideas or code from outside the class or textbook without acknowledging the source is plagiarism.
  • Collusion: Unauthorized collaboration with another person in the preparation of an academic assignment (quest) offered for credit.
  • Misrepresenting facts: Providing false information for academic advantage such as claiming a death in the family in order to postpone an exam or extend a deadline on a quest, when in fact there was no such problem.

Any person caught cheating, colluding, plagiarizing or misrepresenting facts will be given a grade of zero for the quest or assessment. The second offense will result in being dropped from the course or given a failing grade if the last drop period has passed. These offenses will be reported to the Dean of Student Services for inclusion in your academic record.

The Office of the Dean of Student Services maintains records of students who have engaged in academic dishonesty. These records are used to identify and discipline students who engage in academic dishonesty. Discipline includes suspension and expulsion from Cabrillo college.

Specific assignment (quest) and assessment rules are discussed in the following sections. For a tutorial on avoiding cheating and plagiarism see: Academic Integrity and Plagiarism Tutorials.

Quest and Lab Integrity
  You are expected to work solo on some quests and labs, and with other students on other quests and labs. The requirements are listed in the quest and lab specifications. When working solo, you must do all your own work. You may discuss quests with other people, but ultimately you must write the code yourself. Not writing all the code yourself is cheating.

When working with others, the quest specifies how you must contribute. Group work can accelerate learning, but only when each student takes responsibility for mastering all the assigned material. Little is learned if each student works only part of the assignment and merely copies answers for the rest.

If the quest seems too hard to complete without more help, whether working in groups or not, then you should contact me. My job is to help you understand the material. As an option, you may discuss your quest, and show your code to, another Cabrillo College Computer Science Instructor if they agree. Note that this list does not include tutors. Tutors must follow the same rules for acceptable help as other non-students.

Helping Others You may still help other students, and receive help from other students (or tutors), and I encourage you to do so. The following lists are intended to help clarify the rules about appropriate assistance for quests:
Acceptable Help
  1. Showing others how to use, or solve problems with, computer applications such as compilers, text-editors and debuggers, or receiving such help.
  2. Discussing problems and ideas for solving problems with other students or tutors.
  3. Describing your algorithms to other students using diagrams, psuedocode or natural-language statements (unless that was the assigned homework).
  4. Looking at another person's code and pointing out an error, as long as you do not write, type, dictate, or otherwise communicate the actual program code required by the quest.

    Tip: if you need to write code when explaining a problem, then use an example that is not part of the quest.

Unacceptable Help
  1. Typing or writing any homework solution (or parts of a homework solution) for another person, or allowing someone to type or write a homework solution for you.
  2. Looking at another person's homework code while typing or writing your homework code.
  3. Listening to someone else dictate homework code while typing or writing, or dictating to some else the homework code to type or write.
  4. Providing a copy of your quest solution, or any other person's solution, to anyone who is taking this course or might take this course in the future, including posting your solution online or emailing it to someone.
  5. Receiving a copy of an quest solution, or a part of a solution, from anyone until after you make a final submittal of your quest and the due date has passed.

These are not all-inclusive lists. Students are expected to interpret and apply the overall concepts of academic honesty in good faith. If you have questions about what is permissible, please ask me.

Also, note that these rules do not prohibit you from sharing quest solutions with other students after after both you and the other student have made a final submittal of the quest and the due date has passed. Reviewing other people's solutions can help you learn, but it is cheating unless you have already completed the quest on your own.

Tutors Tutors are often available in the CTC and the STEM Center. Tutors can provide a valuable service by helping you learn the material. However, tutors do not help if they do the work for you. Thus, you must not allow tutors to type quest code for you or tell you what to type.

Tutors can show you how to use computers and computer programs such as our Greenfoot IDE. They can discuss problems and suggest ideas for solving problems. They can also look at your code and point out errors. Tutors help you to learn the material, but must not write any quest code for you. However, tutors may show or you other example code. If a tutor writes any code for your quests, or provides you quest (assignment) code to look at or copy from, you are cheating.

Assessment Integrity
  During exams, I expect there to be no talking and no wandering eyes. You are responsible to make it abundantly clear to me that you are not cheating and that you are working alone. Cheating on exams includes, but is not limited to, the following:
  1. Communicating with anyone but the testing proctor during the test period
  2. Failing to comply with instructions given by the testing proctor
  3. Possessing materials that are not authorized by the instructor or a testing proctor, such as calculators, cell phones, pagers, lessons, books, or notes
  4. Copying from another student
  5. Using, buying, stealing, soliciting for, or transporting some or all of the contents of a test or test rubric
  6. Substituting for another person, or permitting another person to substitute for oneself, in taking a test

This is not an all-inclusive list. If you have questions about what is permissible, please ask me.

Students automatically consent to re-take an exam, or an exam deemed to be equivalent by the instructor, if the instructor has any question about the integrity of the results.

Home | Canvas | Schedule | Syllabus | Room Policies
Help | FAQ's | HowTo's | Links
Last Updated: April 23 2017 @02:46:40