CIS 122

Spring 2014

 

 

Home

Syllabus

Schedule

Links

Contacts

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Course Information

  • CIS 122 Introduction to Programming and Problem Solving
    CRN: 34091

    Lecture (McK 129): TR 8.30-10a
    Labs (Kla B-26): T 10a; W 8a, noon, 4p, 5p
    Drop in help (Kla B-13): M 11a-noon, 1-4p; T 11-1p; W 1-2p; R 11.30-3.30p; F 11a-3p

    M 11a-noon, 1-4 B-13
    T 8.30-10a lecture; 10-11 B-26 lab; 11a-1p B-13
    W 8, noon, 4, 5 B-26 labs; 1-2p B-13
    R 8.30-10a lecture; KF OH Des 154 10-11; 11.30-3.30p B-13
    F 11a-3p Kla B-13
  • GTF: Jason Fahrion
    Hours:
    M 11a-noon Kla B-13
    T 10-11a Kla B-26
    W 4-6 Kla B-26
    R 11.30-1.30p Kla B-13
    F 11a-1p B-26
    122staff@cs.uoregon.edu
  • GTF: Seyedsaed Rezayidemne
    Hours:
    M 2-4p Kla B-13
    W 8-9a, 12-1p, 4-6p Kla B-26
    F 1-3p B-13
    122staff@cs.uoregon.edu

Course Objectives

  • Introduce computational problem solving.
  • Introduce computational thinking concepts.
  • Introduce programming in Python.
  • Encourage further interest in Computer Science.

Textbook

Practical Programming: An Introduction to Computer Science Using Python 3, 2d ed., Paul Gries, Jennifer Campbell, Jason Montojo. The Pragmatic Bookshelf, 2013.

General Information and Policies

Updated 4/18/2014: At the end of the term, the two programming projects with the lowest grade will be dropped, i.e., will not figure into the final grade.

Tips for CIS 122 Students
Workload in CIS 122
Attendance
Programming Projects and Assignments
Pair Programming is OK
Consulting is OK
How to Submit Your Projects in Blackboard
How Your Final Grade is Calculated
Checking Your Grades
Missed Exams


Tips for CIS 122 Students

  • Attend class and lab regularly.

  • Keep up with the reading.

  • Do not fall behind; start projects early.

  • Attend extra labs for extra help; come early or stay late for between-labs help.

  • Ask questions in class and lab. Everyone will be glad that you did.

  • Take advantage of KLA B-13 122 help hours.

  • Work "smart" and know when to ask for help (sooner rather than later).

Back to Top


Expected Workload for CIS 122

CIS 122 is an introduction to programming. Programming, like any other skill, requires an investment of time at the start, as you become familiar with the tools and methods of reasoning and practicing. You should plan on spending a sometimes significant amount of time on outside of classroom learning, in addition to attending class sessions and labs.

We design the course with the expectation that there will be up to 8 hours needed per week for outside of class work (reading, projects, assignments, exams). If CIS 122 is consistently taking more time than that, please let us know.

Back to Top


Attendance

You should be aware that attending class and lab is the only way to ensure access to all course information, materials, and activities. The nature of real-time, face-to-face interaction precludes complete replication outside of the original setting; notes posted at the CIS 122 web site are summaries rather than complete transcripts of classroom events. While attendance is not required, both class and lab will certainly include course material and/or activities that are not available outside of those venues.

The midterm exams will be given in class during a regular class period.

Labs provide a small class setting with lots of time for answering questions and one-on-one help, valuable to everyone and especially to beginning programmers.

After the first week of the term, if you cannot attend your regularly scheduled lab, or if you want some extra time or help in the lab, you may attend any of the other labs. Please let me know by email ahead of time, so we can ensure there are enough seats and computers for everyone.

CIS 122 KLA B-13 Help Hours are a good place to ask questions and catch up on classroom material missed due to unavoidable emergencies or illness, but are not a substitute for a skipped class or lab.

Email is a good place to pose short, succint questions that have short, succint answers, but does not work well for long questions or answers. Class, lab, and and Klamath B-13 hours are the best places to get immediate, personal help. In sum, for you to receive the most benefit from this course, always attend class and lab(s). If you can arrange your schedule to be able to attend one or more Klamath B-13 help sessions per week, that is also helpful.

Back to Top


Programming Projects and Assignments

Projects will be assigned each week, beginning in week one. Projects will be posted on Tuesdays and will be due the following Monday at 6p. The project posted in week 9 (due in dead week) will be optional. If completed, the grade on the last project may be used to replace any other project grade.

In a one quarter programming class, knowledge is cumulative and the weeks go by quickly. Therefore, to receive credit, projects and assignments must be submitted by the due date. At the end of the term, the two programming projects with the lowest grade will be dropped, i.e., will not figure into the final grade.

Back to Top


Pair Programming is OK

Pair Programming refers to a particular way of programming with a partner:

"... a practice in which two programmers work side-by-side at one computer, continuously collaborating on the same design, algorithm, code, or test. ... One person is typing or writing, the other is continually reviewing the work. But, both are equal participants in the process." --All I Really Need to Know about Pair Programming I Learned in Kindergarten,Williams and Kessler, Communications of the ACM, May, 2000.

You may work with one partner on the programming projects. Taking turns in writer/reviewer (sometimes called "driver/navigator) roles can work well. Others may prefer for partners to work side-by-side at their own keyboards. What does not work well is for one person to always be at the keyboard while the partner watches. If you work as a team for programming projects, each individual should:

  • Understand the solution you are turning in (and be prepared to explain it).

  • Keep copies of all of the work on your own computer or computer space.

  • Submit your copy of the project files on Blackboard; use the comments section to identify your programming partner and also any other sources that contributed significantly to your solution.

A significant amount of the midterm and final exams will include concepts covered in the programming projects. The best way to learn to program is by programming!


Back to Top


Consulting is OK

You may get help from any source for the programming projects, as long as you:

  • Credit the source(s) (in the comments box of your Blackboard submission) of any and all significant help.

  • Understand the solution you are turning in (and be prepared to explain it).

  • Keep copies of all of the work on your own computer or computer space.


Back to Top


How to Submit Your Projects in Blackboard

Submit all projects on time. Late projects are by prior arrangement only. The lowest project grade will be dropped at the end of the term.

From the menu on the left hand side of the screen, chooose "Projects". In the projects folder, choose "Submit Project X" where X=the number of the current project.

In Section 2 of the page that is displayed, scroll down to "Attach file" and choose "Browse My Computer".

Locate the file you need on your computer, and doubleclick on it. The file name will appear on an "Attached Files" list that you will see. Repeat "Attach File" and "Browse" for as many files as you need to attach for the current project.

At the bottom of Section 2, you will see a "Comments" window. This is where you credit all of the sources of any help you may receive on this assignment, including your partner if you are working in a programming pair. This is also the place to include any feedback you may have about the assignment and/or any remaining questions you may have.

Scroll down to Section 3 and hit the "Submit" button. You may re-submit your project up until the project deadline. Only the final submission will be graded.

Back to Top


How Your Final Grade is Calculated

The final grade for each student will be determined as follows:

Projects - 25%
Midterm Exam 1 - 20%
Midterm Exam 2 (cumulative) - 25%
Final Exam (cumulative) - 30%

There will be 8 graded projects. At the end of the term, the two projects with the lowest grades will be dropped, i.e., will not figure into the final grade.

The project posted in week 9 (due in dead week) will be optional. If completed, the grade on the last project may be used to replace any other project grade.

Extra credit will be given to the first student who alerts me to any "bug" in any project or assignment. ("Bug" here refers to any significant error in Python example code or any other part of the project or assignment.)

Extra credit will be given to the first student who alerts me to any broken link or other out-of-date, incomplete, or otherwise erroneous information at the class website or in Blackboard.

Extra credit may also be available on project "challenges".

Note: Extra credit does NOT translate into "real" points. The final grade is based on points accumulated on projects and exams, as outlined above. Extra credit is mainly for fun, though it may be used (only) in the cases of borderline grades.

A - 90%
B - 80%
C - 70%
P - 67%
D - 65%

Back to Top


Checking Your Grades

Please check your grades regularly. If there is any error or omission (these things do happen), please let the instructor know sooner rather than later. The earlier I know what needs to be fixed, the easier and less time-consuming it is for everyone involved. An email can alert me to simple errors; for larger issues, please come to office hours or schedule an appointment.

In Blackboard, choose Tools Areas/My Grades to view your grade report. Grades should be posted within one week to 10 days after assignments are submitted. If you do not see your grade and it has been more than 10 days after the due date, please let me know.

A (!) in the gradebook means your project has been submitted but needs to be graded.
A (-) in the gradebook means your project has not been submitted.
Unsubmitted projects will receive no points.

Back to Top


Missed Exams

If you have a legitimate reason for missing an exam, please contact me in advance to make arrangements. If it is not possible to contact me in advance, then you must do so as soon as possible after the exam. No makeup exam will be given without instructor approval.

In fairness to all of the students in the class, you must have a justifiable and verifiable reason for missing the exam.

Back to Top