Skip to main content Link Menu Expand (external link) Document Search Copy Copied

Exam Information

The exams are designed and intended to assess our understanding of course concepts as well as measure how engaged you have been with using and implementing the languages we have discussed throughout the semester.

Exam Format

The midterm and final exams will be given in-person.

  • The time for allowed for each exam is 75 minutes
  • You must complete the exam on your own. Do not discuss the contents of an exam with anyone outside course staff until after the grades have been released, as there may be some students with extenuating circumstances that need to take the exam late.
  • Exams are closed notes, closed internet, closed phone, closed smart watch, etc.
  • Each exam will be a mixture of question types. There may be some true/false, multiple choice, short answer or fill in the blank, short implementation (in the languages we’ve studied), and others. We’ve provided practice problems below to provide some examples of the types of questions you’re likely to see.
  • Since you will not have access to the internet during the exam, we will provide relevant documentation on the quiz itself. Hint: if you find yourself stuck at some point, review the end of the exam for the documentation that we provided to see if it might be helpful.


The midterm will cover the material from the first half of the course, through the content discussed on March 14, 2024. This includes, but is not limited to:

  • Usability and design
  • The web software model
  • HTTP, DNS, related topics
  • HTML
  • CSS
  • Bootstrap
  • Responsive design
  • LESS
  • Markdown
  • XML
  • JSON
  • How CGI scripting works
  • Perl (but we won’t ask you to write it!)
  • PHP
    • Syntax, types, functions
    • Arrays
    • Form handling
    • Regular expressions

Note: we will not ask you to remember historical dates!

Final Exam

The midterm will cover the material from the second half of the course; however, please note that you will still need to know topics from the first half due to the structure of the material. This includes, but is not limited to:

  • PHP
    • Syntax, types, functions
    • Arrays
    • Form handling
    • Regular expressions
    • Objects and Classes
    • Front controller design
    • $_SESSION and $_COOKIE
    • includes
    • Database interaction
    • JSON interaction
  • PostgresSQL
    • PHP - Postgres interaction
  • JavaScript
    • Syntax, types, functions
    • Arrays, objects
    • Event handling
    • DOM manipulation
    • Input validation
    • AJAX requests
    • jQuery
  • TypeScript
    • Relation to JavaScript
    • Syntax, types, functions
    • Compilation to JavaScript
  • Angular
    • Create project
    • Structure of components, modules, services
    • How to instantiate and build components, services
    • AJAX queries
    • Form validation
    • Data binding (one-way, two-way)
    • Event handling
    • Production build
    • CORS headers
  • And any HTML, CSS, PHP, etc, background knowledge from the first half of the semester

Note: we will not ask you to remember historical dates!

Practice Problems

Below are prior quizzes from earlier versions of the course. You can expect that the midterm and final will be in a similar format to the quizzes below. Note that the midterm will cover through the PHP we’ve discussed so far (dealing with forms), which will match quiz 1, 2, and part of quiz 3 below.

Note: while I do not have solution guides to post, you are welcome and encouraged to try any of the problems on your own to verify your solutions.