Welcome to the website for Intermediate Programming (Summer 2025) at Johns Hopkins University!
Course description: This course teaches intermediate to advanced programming, using C and C++. (Prior knowledge of these languages is not expected.) We will cover low-level programming techniques, as well as object-oriented class design, and the use of class libraries. Specific topics include pointers, dynamic memory allocation, polymorphism, overloading, inheritance, templates, collections, exceptions, and others as time permits. Students are expected to learn syntax and some language specific features independently. Course work involves significant programming projects in both languages.
All public information about the course (assignments, exercises, etc.) will be posted on this website.
Use the links at the top of the page to navigate the site.
Important links
Github is used to facilitate team collaborations as well as group and individual source code version control. Scaffolding/starter files of exercises, homeworks, and projects are shared via the course public repository. You may never share your private repository with anyone else.
Gradescope is used for assignment submission and handling. You make all your submissions on Gradescope and recieve feedback and your work in there. Regrade requests can be made and are processed on Gradescope as well. You get an invitation to the course Gradescope in the first week.
News
- May 28 — Welcome! The introductory homework 0 is available and due on June 2nd.
- Jun 5 - Assignment homework 1 is available and due on June 9th.
- Jun 12 - Assignment homework 3 is available and due on June 17th.
- Jun 18 - Midterm project has been released. Your midterm project repository will be created by Friday once you have finalized your teams.