Difference between revisions of "CS111 Syllabus 2014"
(→Lateness Policy) |
(→Textbook) |
||
(2 intermediate revisions by the same user not shown) | |||
Line 66: | Line 66: | ||
=Textbook= | =Textbook= | ||
[http://www.wiley.com/WileyCDA/WileyTitle/productCd-EHEP002658.html ''Python for Everyone.''] by Cay S. Horstmann and Rance D. Necaise, Wiley pub. | [http://www.wiley.com/WileyCDA/WileyTitle/productCd-EHEP002658.html ''Python for Everyone.''] by Cay S. Horstmann and Rance D. Necaise, Wiley pub. | ||
− | It should be available at the campus-center bookstore, an also on [http://www.amazon.com/Python-Everyone-Cay-S-Horstmann/dp/1118626133 Amazon.com] | + | It should be available at the campus-center bookstore, an also on [http://www.amazon.com/Python-Everyone-Cay-S-Horstmann/dp/1118626133 Amazon.com] (and possibly at a reduced price on [http://www.chegg.com/textbooks/ chegg.com]) |
<br /> | <br /> | ||
Line 93: | Line 93: | ||
'''4 missing assignments will result in failing the class'''. | '''4 missing assignments will result in failing the class'''. | ||
− | |||
− | |||
=Grading= | =Grading= | ||
Line 104: | Line 102: | ||
=Teaching Assistants= | =Teaching Assistants= | ||
− | + | You can find when the teaching assistants are available by visiting this [http://cs.smith.edu/classwiki/index.php/Computer_Science_TA_hours page]. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<br> | <br> | ||
<br> | <br> |
Latest revision as of 09:07, 30 January 2014
CSC111 Spring 2014 -- Syllabus
Contents
Prof
Dominique Thiébaut email
Dept. Computer Science
Ford Hall, 356.
Telephone: 3854
Office hours: Monday, 1-2:30 p.m., W 2:30-4 p.m., and by appointments
Introduction
Course Overview: This course is an introduction to computers, computer science and computer programming. The programming language Python is used to introduce basic programming skills and techniques.
This is the first course in the Computer Science major, and no previous experience with computers or programming is assumed.
Objectives: The objectives for this course are for each student to become familiar with
- Basic programming constructs such as if-then statements, loop control, functions, arrays, simple input-output, searching, and recursion.
- Good programming techniques including top-down design, program documentation, modular design, all resulting in code that can be readily understood and used by other programmers.
- The Python programming language
- The basic internal operation of a computer, including the central processing unit, simple memory management, and the file system.
Prerequisites
No prerequisites!
Schedule
The class meets three times a week, MWF, in Ford Hall 240, and there are 3 lab sessions available: W1:00-2:50 p.m., Th 1-2:50 p.m., and Th 3:00-4:50 p.m.
Programming assignments will given approximately once every week. There will be an in-class midterm exam and a final take-home exam.
The due date for the homework assignments is tentatively set for Thursday evening, at midnight.
There will be regular quizzes based on readings taken from the textbook. Having access to a copy of the textbook is mandatory. The quizzes will be on-line, through moodle, and will be announced ahead of time.
Topics
The course covers the following topics (this list is tentative):
- Windows and Unix tools
- Computers and programs
- Computing with numbers
- Strings
- Objects and Object-Oriented programming (OOP)
- Functions
- Control structures
- Loops
- Classes and objects
- Advanced Topics, including recursion, sorting, searching.
Class and Lab Times
- Lectures MWF: 11-12:10 p.m.
- Lab 1 Wed 1:00-2:50 p.m. (*)
- Lab 2 Th 1:00-2:50 p.m.
- Lab 3 Th 3:00-4:50 p.m.
There will be TA sessions. Their location and time is available here.
Textbook
Python for Everyone. by Cay S. Horstmann and Rance D. Necaise, Wiley pub. It should be available at the campus-center bookstore, an also on Amazon.com (and possibly at a reduced price on chegg.com)
Other Sources of Material
Check the class homepage for additional links to Python-related sources.
Lateness Policy
No late assignments will be accepted (except in case of documented illness or personal difficulties). The assignments are tentatively scheduled to be due every Thursday evening at midnight.
You are, however, allowed to drop any one assignment without penalty. If you turn in all the assignment this semester, the one with the lowest grade will be dropped for you automatically.
You are also allowed to drop/miss one quiz this semester without penalty.
4 missing assignments will result in failing the class.
Grading
You have two options for completing each homework assignment. You can either work individually (sharing ideas with classmates and getting input from the TAs and instructors as needed), or you may work in pairs. If you work in pairs, you need to follow the protocol for 'pair programming' as discussed in this article. If you select pair programming, be sure that each partner understands the concepts and final recipe fully, since exams will, of course, be individual.
Homework assignments 40%, quizzes 10%, class participation 5%, midterm 20%, final 25%.
Teaching Assistants
You can find when the teaching assistants are available by visiting this page.