Welcome!
This is the homepage for Section 1 of Introduction to Computer Science (CS21) at Swarthmore College in the Fall 2015 semester. This site provides information regarding the course, including the lecture schedule, homework assignments, and syllabus.
Goals
The course aims to provide students who have little or no background in the field of Computer Science with a thorough understanding of programming fundamentals. The skills you will learn from this course include:
- How to examine a problem (playing a game, cooking a meal, analyzing statistics, etc.) and construct a clear and precise algorithm which describes its solution.
- How to write a computer program in Python to execute an algorithm.
- How to run a computer program in your head and anticipate its behavior.
- How to identify and correct the faults in a Python program (debugging).
- How to compare algorithms to determine which is more efficient in terms of execution time.
- How to use Linux and several of its command-line tools.
- More generally, how to express your ideas to a computer.
If this sounds like a lot, don’t worry. All of this material (and more) fits neatly into a single semester course and requires no special knowledge or background. Computers are not as mysterious as they are often made out to be; they’re just very methodical!
Getting Started
This site should contain all of the information you need to prepare for the course.
- The course textbook can be found here.
- Information about the lecture itself appears on the schedule page. Make sure this is your section of the course; other sections can be found below.
- Make sure you are familiar with the academic integrity policy. Cheating in Computer Science looks a little different from cheating in other disciplines; make sure you don’t plagiarize by mistake!
- Try to take a quick glance at the advice page for tips on how to do well in this course.
Sections
This is the webpage for Section 1 of this course. The other sections during the Fall 2015 semester are: