ITPG-GT 3014

Writing Good Code

New York University · UGRD · Fall 2026

1 section
Add to a schedule

Catalog description

As software projects become more complex, it becomes increasingly important to keep the code organized and manageable; otherwise, it becomes extremely difficult to implement new ideas, and the project is much more likely to be prone to mysterious and frustrating bugs. This course will demonstrate several approaches to organizing code for larger-scale projects, including how to write and name functions and classes, DRY (Don't Repeat Yourself), pure functions, unit testing and Test-Driven Development (TDD), and why to avoid "magic numbers" and global variables. The focus of the course will be on JavaScript, using P5.js, but the principles will apply to most languages. We will be doing an ongoing, step-by-step, in-class refactor* of a complex sketch. We will also be using version control to track our changes every class. Students will be expected to complete weekly readings and assignments, and to refactor one of their previous projects, using the principles learned in this course. * Refactoring means rewriting the code, without any changes to how the program behaves. Students should have some programming experience prior to taking this course, and would ideally have an existing software project they would like to develop.

Sections

Current meeting, instructor, credit, and enrollment details

Updated 15 hours ago

001

Availability not recently verified
Class #new_york-ITPGGT3014Fall 2026UGRD1 credits
Days & times
No scheduled meeting time
Meeting dates
Location
Instructor
Staff
Class numbers and section codes come from the registrar.
Spot missing or incorrect course data?