This page is for a previous semester (Fall 2020). Please visit this page to select a more recent semester to find updated details.

Information about the Fall 2020 Exemption Exam for ES2.


Date: Friday, October 23rd, 2020
Time: 3pm to 4pm (one hour exam)
Format: VIRTUAL (see below for details)

Note: if you have a conflict or if you have accommodations that affect that logistics presented above, please email Prof. Ethan Danahy at so he can address and present you with a modification or alternative setup. (To help facilitate communication, please include “ES2 Exemption Exam” as part of your email subject.)

ES2 Exemption Exam Content:

The Exemption Exam for ES2 is designed to identify students for whom taking ES2 would not be beneficial to their education (e.g. they already have had significant prior exposure to the content of the ES2 course). See the section below for more details of the ES2 requirement based on Major at the bottom of this page.

See more about the overall course content for ES2 to understand the topics covered.

Exam Programming Language: You (the exam taker) can choose to answer the exam questions in the language of your choice (e.g. based on your own background and strengths). When taking the exam you should pick a language (see list below) and then answer all the questions using the appropriate syntax and programming structures for that language. All code (files) you create for answering the exam questions will be in that language.

  • Matlab
  • C
  • C++
  • Java
  • Python

Exam Topics: The exam mostly tests programming basics (user input of data, assignment statements, use of variables and variable types, program control statements, logical and relational conditions, loops, arrays, functions and sub procedures, use of common intrinsic functions, and formatting program output) and the application of those basics to solve typical engineering problems. These include:

  • Data Manipulation: converting data to appropriate formats for analysis
  • Data Analysis: doing statistical analysis on data sets
  • Simple Modeling: modeling systems (physical or theoretical) in code
  • Quantifying Error: identifying and minimizing error in a solution

Note that the purpose of the exam is to demonstrate the above (programming basics and ability to solve problems) and thus evaluation of the exam looks at your demonstration of those (understanding how the syntax and language is used as well as your algorithmic thinking as applied to the problems). As such, it is NOT required that you have perfect code that executes and performs flawlessly, so it is more important that you demonstrate the above (your overall coding and thinking abilities) than obsess over the minutia and exact details of any particular solution.

Exam Format (Fall 2020)

The Fall 2020 Exemption Exam for ES2 is a VIRTUAL exam. You will need to work on and complete the exam on your own (remotely) and submit your solutions (code) electronically at the end of the exam.

Practice Exam: here is a link to a practice exam that mimics what the Fall 2020 Exemption Exam for ES2 will be like (format, length, style of questions, etc.).

Download Practice Exam Here

Fall 2020 Exemption Exam for ES2 Exam: no longer posted.

Coding IDE (Integrated Development Environment): you are welcome to use whatever coding environment with which you are familiar (software on your computer, online system, etc). If you are using C, C++, Java, or Python (e.g. not Matlab), there will be an online browser-based CodingRooms Classroom available (see information about using CodingRooms Classrooms). Or If you are coding in Matlab and a student within School of Engineering, you have access to the Engineering Virtual Lab that has Matlab installed.

Submitting Your Solutions: when you are finished with the exam (e.g. you have created code for solving each presented problem), you will submit your code (either as a single ZIP file or as separate files for each question) via the following Google Form (note that you must log in with your email and verify using Tufts Duo Login).

Submit solutions here:

Real-Time Help During the Exam: During the exam itself (Friday Oct 23rd, 2020 at 3pm), if you need assistance you should join the following Zoom session where Prof. Danahy will be available to answer questions about the content of the exam or solve real-time technical issues you might have.
(Meeting ID: 945 4906 9221, Passcode: 226027)

Details of ES2 Requirement:

As a degree requirement, the Tufts School of Engineering has a computing requirement (and majors within the School of Engineering satisfy this with COMP11 and/or ES2, depending on major). Students should check their major (or intended major(s)) and see if ES2: Introduction to Computing in Engineering is a degree option or requirement. If necessary, an exception may be granted to those students who can demonstrate proficiency in the ES2 course material.

For more details on particular majors for particular class years, please visit the Engineering Degrees webpage.

If your major/degree sheet requires ES2, and you pass the Exemption Exam for ES2, you are exempted from the ES2 requirement, but the test is worth zero credits towards graduation. Thus, students needing the ES2 requirement on their degree sheet will still need to replace the ES2 requirement with another appropriate course that equivalently fills that required spot on their degree sheet.

For any questions regarding the ES2 requirement, major degree sheets, or selecting appropriate classes, please contact one of the following:

  • Your assigned faculty advisor
  • Dean Jennifer Stephan (Dean of Academic Advising and Undergraduate Studies, SOE)
  • Dean Chris Swan (Dean of Undergraduate Education, SOE)

Do I need to take the exam?

Q: I am in COMP15 (by permission of instructor) but did not take COMP11.
A: If a degree requires COMP11, but you did not take COMP11 (as in case above), then you need to petition to substitute a new course for the missing course. This petition should be filed once you determine the substitution course (not before) at some point before you graduate. Once that petition is approved, then you have satisfied the COMP11 requirement, and any degree that requires “COMP11 or ES2” will then be satisfied (and you don’t need ES2 nor to take the Exemption Exam). If your degree requires “COMP11 and ES2” then you still need to satisfy the ES2 requirement, either by taking the ES2 course or taking the Exemption Exam for ES2.

Q: In high school I took a AP CS course, have AP CS credit, or took the AP CS Exam.
A: We do not accept HS AP CS coursework, credits, or exam scores as an alternative to ES2 or the Exemption Exam for ES2. Therefore, you still need to either take ES2 or the Exemption Exam for ES2 to satisfy the ES2 requirement.

Q: I am a transfer student and took an equivalent to the COMP11 course at another institution before coming to Tufts.
A: A course transferred to Tufts from another institution will appear on your Tufts transcript as a Tufts equivalent course. If the course transfers in as COMP11 or ES 2 and is then used to satisfy the computation requirement as detailed on your major’s degree sheet, then you do not need to take ES2 nor the Exemption Exam for ES2.

More Information:

For more information about the Exception Exam for ES2, please contact Professor Ethan Danahy ( who will be administering the exam. (To help facilitate communication, please include “ES2 Exemption Exam” as part of your email subject.)