Resources
Course communications. We use Ed Discussion for course communications, including announcements and questions.
Programming environment. We use a customized version of IntelliJ, which provides a complete Java programming environment. Install it on your computer by following the instructions for your operating system: Mac OS X, Windows, or Linux. For troubleshooting, go to the Intro COS Lab.
Textbook. The course textbook is Computer Science: An Interdisciplinary Approach, by Robert Sedgewick and Kevin Wayne. Addison–Wesley Professional, 2016. ISBN 978-0134076423.
- You can purchase it through Princeton’s eCampus bookstore.
- The textbook is on reserve at the Engineering Library.
- The companion booksite includes the book’s code and solutions to selected exercises.
- Use the textbook to learn new material and to review for exams. Use the booksite while you are online.
Lecture participation. We use iClicker to make lectures more interactive. To earn participation credit, you must attend lecture and respond to iClicker polls. You must also register your mobile/web app:
- If needed, create an iClicker account.
- Select Princeton University as the institution.
- Use your name, Princeton email address (as listed on Canvas), and NetID.
- Select COS 126, Spring 2026 for the course.
Lecture recordings. We post lecture recordings in Canvas.
Precept exercises. Posted on Ed Lessons, along with solutions and additional practice exercises.
Java documentation. The following references summarize the Java constructs and APIs you will use throughout the course:
- Java cheatsheet. Summarizes Java constructs and selected APIs used in this course.
- Textbook libraries Javadoc. Provides detailed documentation for the textbook libraries.
Java visualizer. Visualize your code with the Java Visualizer.
Computers. If your laptop fails during the semester, there are a few options:
- OIT can troubleshoot laptop issues.
- McGraw Digital Learning Lab has computers setup with our programming environment.
- Your residential college may offer loaner laptops.
Submitting assignments. We use the platform TigerFile for submitting programming assignments and programming exams. Each assignment will have its own TigerFile submission link.
Feedback and grading. Grades and feedback are distributed across several systems:
- We post grades on Canvas.
- We use codePost for feedback on programming assignments.
- We use Gradescope for feedback on written exams.
- You will receive invitations to join codePost and Gradescope.
Zoom. We may use Zoom for certain office hours.