IT202 - Internet Applications Syllabus

Summer 2026 syllabus for Internet Applications.

General Information

ItemDetails
CourseInternet Applications
Catalog numberIT202
Section(s)450
SemesterSummer 2026
ModalityOnline Async
Credits3
InstructorMatt Toegel
Emailmatthew.toegel@njit.edu
DiscordMattToegel
GitHubMattToegel

Meeting Times

SectionTimeLocation
450N/AOnline

Office Hours

TimeLocation
General AvailabilityDiscord/Email

General availability is also provided on Discord through the course communication channel.

Overview

Internet Applications discusses the concepts and implementation of web applications across the frontend, backend, and data layers. Topics include markup and styling with HTML and CSS, client-side scripting with JavaScript and jQuery, asynchronous requests with AJAX-style workflows, server-side scripting with PHP running on Apache, and persistent data storage with MySQL.

This course is heavily hands-on and uses a milestone approach for a semester-long project. Students will use Git and GitHub throughout the semester to record work, practice professional development workflows, and submit assignment evidence through Canvas.

Catalog Description

Prerequisites: CS 100, CS 113, CS 115, or a course in a high-level programming language as approved by the department.

This course presents the concepts and software technologies that underlie web-oriented, three-tier software architectures and applications. Topics include markup languages used by browsers, client-side scripting languages and libraries, web servers, server-side scripting languages, HTTP, SQL, and MySQL. The course uses a hands-on, guided development approach with substantial assignments to illustrate the core systems and technologies and provide direct experience in their use.

Expected Background

Prior web development experience is helpful but not required. Students are expected to have a reasonable computing background and should be willing to practice:

  • File and folder navigation
  • Command line usage
  • Installing software
  • Editing text files
  • Reading error messages
  • Following structured setup instructions

If these topics are new, review these resources early:

Course Format

Class will be asynchronous. Content will be broken down into Modules where a Module typically starts on Monday 12am and ends on Sunday 11:59pm.

Modules will include presentations with recorded lectures, assignments, readings, and quizzes about a specific set of topics.

Students are strongly encouraged to ask questions via the noted communication channels in this syllabus. Many course problems are easier to fix early, especially setup, Git, deployment, database, and project structure issues.

It's recommended to reach out over Discord/Email or Canvas Inbox as a backup rather than using Canvas Comments. Canvas Comments should be used for things that are ok being seen when grading occurs, but if there's a more immediate issue/question, one of the other means of communication are faster.

Exams will require Respondus Lockdown Browser with Webcam capabilities. Students should make sure Respondus works on at least one device that can meet the exam needs.

Learning Outcomes

By the end of the course, students should be able to:

  1. Use PHP as a general-purpose programming language.
    • Install and run PHP.
    • Design an algorithm to solve a problem.
    • Write and run PHP scripts.
    • Follow standard conventions for software development.
  2. Use PHP to handle user interactions and backend logic on a running web server.
    • Run the built-in PHP web server for local development and testing.
    • Run course projects on a publicly accessible web host such as Render.com.
    • Use any approved host that supports Apache or Apache-like web hosting.
    • Connect PHP to MySQL to invoke SQL CRUD operations.
  3. Use CSS to apply styles and theming to web pages.
    • Use CSS libraries and frameworks such as Bootstrap 5.
    • Make mobile-friendly and cross-platform designs.
  4. Structure and lay out pages with HTML tags and semantics.
    • Structure valid HTML specification documents.
    • Combine language content into the same document.
    • Determine which languages will be interpreted based on the file extension.
    • Reference other files with include or require.
  5. Use MySQL for persistent data storage and retrieval.
    • Remotely connect to a MySQL instance through an IDE, development tools, and the hosting platform.
    • Construct SQL queries to create tables.
    • Construct SQL queries to read data from tables.
    • Construct complex SQL queries such as joins.
    • Construct SQL queries to add rows or records to tables.
    • Construct SQL queries to update rows or records in tables.
    • Construct SQL queries to delete rows or records from tables.
  6. Modularize code into reusable components to aid development.
  7. Problem solve and debug.
    • Use error output, logs, and other debugging techniques.
    • Formulate code to solve complex problems.
    • Analyze, interpret, and integrate course-provided code.
  8. Use version control.
    • Use Git commands through the terminal or command line.
    • Use GitHub to manage histories of course work.
  9. Gain experience with a milestone approach to building a complex project.
    • Incrementally develop a large project in a sprint-like structure based on provided guidelines.
    • Extend existing code to add new features.
    • Add new files to solve requirements.
    • Leverage course concepts effectively.

Illustrative Schedule

The schedule is a guideline and may change based on class pace, project needs, and troubleshooting needs. Some modules may span more than one week.

ModuleTopics
Module 1Overview/Introduction of Course, environment setup, Git/GitHub intro
Module 2PHP and JavaScript intro, data types, flow control, loops and iterations
Module 3HTML intro, forms, JavaScript/CSS selectors
Module 4SQL basics, project and SQL setup, user authorization registration, navigation with dynamic state changes, user authorization login, PHP templating / conditional HTML concepts, project data source chosen from RapidAPI.com
Module 5Regex intro, flash messages and user feedback, alternative login username, user profiles, midterm
Module 6Authorization user roles, login enhancement, dynamic content and data-driven development, project milestone 1 introduced
Module 7Ajax intro, Bootstrap, reusability, working with APIs
Module 8jQuery intro and comparison, using API data via PHP, CRUD operations of core project data, API data, custom user-entered data, project milestone 2 introduced
Module 9Entity associations between API/custom data and users, milestone 3 concepts, project milestone 3 introduced
Module 10Other data associations and analytics, public user profiles, automatic fetching/refreshing of API data, continued milestone 3 concepts, final project wrap-up

Schedule Notes

Although some modules aim to isolate certain concepts, due to the full-stack nature of the course there will commonly be usage of most of the noted programming languages in later modules.

When applicable, security and best practices will be discussed in each module.

Assignments

Each week there will be coding samples, guided practice, worksheets, labs, quizzes, or project work related to the current module. Additional online resources and recordings will be available through Canvas to support your learning.

Canvas is the main hub for mapping course content, deadlines, assignment instructions, quizzes, and submission requirements. The Learn Courses Platform may be used for assignment evidence gathering, structured worksheet output, or course-specific workflow support when directed.

Assignments are generally graded out of 10 points unless otherwise noted.

Semester-Long Project

There will be a semester-long project that each student will incrementally develop as new topics are learned. A set of requirements and objectives will be given through a proposal document at the start of the semester.

The project will be based on an agreed-upon proposal and will cover the material discussed in class. During the semester, there will be milestone deliverables for groups of features from the project. These milestones will cover the gist of the features; there commonly is some time between the last milestone and the final demo or deliverable where the remaining features can be implemented or cleaned up.

Milestones are graded out of 10 points.

Students are expected to use the course material and structure to work on the project because this aids learning, debugging, and grading, and it provides helpful perspective for anyone already familiar with a particular design or structure.

Quizzes

There will be weekly online quizzes that test the current module's topics. These will be taken through Canvas by the designated due date, typically the following Monday night of the particular module unless Canvas states otherwise.

Each quiz requires a passphrase, generally has one attempt unless otherwise noted, and will generally be capped at 10 minutes. Scoring is out of 10 points.

These are expected to be closed notes and taken individually. Part of the goal is to highlight the topics that require extra review or study because they will come up again in the semester.

Exams

The midterm will use Respondus, so be sure to have a compatible device available on the day of the assessment. The midterm will cover the material from modules one to four. The exam will be closed book unless the instructor announces a different arrangement.

The exam is graded out of 100 points.

Grading Breakdown

CategoryWeight
Midterm20%
Quizzes15%
Participation/Attendance5%
Assignments10%
Milestones 1-225%
Final Project Deliverable25%
Final DemoIncluded in final project deliverable

All points will be converted to a final percentage and letter grade at the end of the semester. Canvas will already have the weights applied.

Extra Credit

Extra credit may be given for exceptional programming projects at the discretion of the instructor.

Grading Scale

GradePercentage Range
A89.5% to 100%
B+84.5% to below 89.5%
B79.5% to below 84.5%
C+74.5% to below 79.5%
C69.5% to below 74.5%
D+64.5% to below 69.5%
D59.5% to below 64.5%
FBelow 59.5%

Materials And Technologies

This course uses online resources instead of a traditional textbook. Required and recommended resources will be mapped through Canvas.

Common references include:

Students will use:

  • Canvas for official assignments, assessments, grades, and announcements
  • Learn Courses Platform for assignment evidence gathering or course workflow support when directed
  • Git and GitHub for version control and assignment evidence
  • VS Code or another suitable editor
  • PHP, Apache, and MySQL for the web application stack
  • Render.com to host a QA version of their content and a production version of their hosted content
    • The QA instance is for testing and verifying that things work outside of localhost. It is a sandbox before moving to production
    • The free tier will be used on this platform
  • A remote MySQL connection provided for each student to utilize across their environments
  • A local VM path for local Apache/PHP/MySQL practice when assigned
  • A device meeting YWCC minimum specifications

Students need administrative access to their computer to install required software.

This class has a GitHub page where you can find out how the course materials are built and have changed over time.

Required Tools

The current course direction uses these tools:

Course Workflow Expectations

Students should expect to submit evidence that demonstrates both behavior and process:

  • GitHub repository link
  • Branch or pull request evidence when requested
  • QA deployment link for screenshot and worksheet evidence
  • Production deployment link for graded deployed behavior when required
  • Screenshots or worksheet outputs when requested
  • Database evidence when requested
  • Explanation of what changed and why
  • AI collaboration disclosure when used

Policies

Course Structure And Template Use

Assignments must follow the provided templates, naming conventions, repository structure, and lesson code unless the assignment explicitly allows another approach.

Submissions that replace the taught structure with unrelated generated code or unsupported frameworks may receive no credit because they cannot be fairly evaluated against the course objectives.

Academic Integrity

The work done is expected to be your own, any group work should clearly distinguish ownership of tasks. Use of snippets/material from others should be kept to a minimum and the source should be accredited where applicable.

Academic Integrity is the cornerstone of higher education and is central to the ideals of this course and the university. Cheating is strictly prohibited and devalues the degree that you are working on. As a member of the NJIT community, it is your responsibility to protect your educational investment by knowing and following the academic code of integrity policy that is found at:

Please note that it is my professional obligation and responsibility to report any academic misconduct to the Dean of Students Office. Any student found in violation of the code by cheating, plagiarizing, or using any online software inappropriately will result in disciplinary action. This may include a failing grade of F, and/or suspension or dismissal from the university. If you have any questions about the code of Academic Integrity, please contact the Dean of Students Office at dos@njit.edu.

AI Usage Policy

AI may be used as a support tool, but it may not replace the student's understanding, implementation, or explanation.

Acceptable AI use includes:

  • Asking for syntax explanations
  • Asking for error-message explanations
  • Reviewing code the student wrote
  • Generating practice ideas
  • Asking for debugging strategies

Unacceptable AI use includes:

  • Submitting code the student cannot explain
  • Using AI to bypass the course template or requirements
  • Pasting generated full solutions
  • Hiding meaningful AI assistance

When AI is used meaningfully, it must be disclosed and cited according to the NJIT Library AI citation guidance. Failure to disclose AI use within the policy may result in a zero for the assignment.

Requesting Accommodations

Students who need accommodations due to a disability should contact the Office of Accessibility Resources & Services to discuss their needs. A Letter of Accommodation Eligibility from OARS is required before accommodations can be applied.

Resources For NJIT Students

NJIT provides student services including technical support:

Class Etiquette

Students who attend, participate, and ask questions are usually more successful. Questions are encouraged because they make setup, debugging, and implementation issues easier to solve before they become larger problems.

Students are responsible for checking Canvas regularly, reviewing each module's posted work, and keeping track of their own progress, deadlines, submissions, and feedback.

Proctoring

NJIT policy requires midterm and final exams to be proctored regardless of delivery mode unless an assessment type is exempt. The exam for this course will use Respondus. Students are responsible for having a compatible device that can meet the exam requirements.

Late Policy

Deliverables may receive a 5% penalty per day late based on the posted due date. Canvas will automatically mark late or missing assignments as zero until grading is completed.

Assignments may also have a lock date. After the lock date, the assignment can no longer be submitted without an approved Dean of Students reason.

Missed exams or quizzes will result in a zero, but may be rescheduled within a reasonable timeframe with an approved Dean of Students reason.

If you will miss class or cannot submit an assignment, contact the instructor as soon as possible. Emergency absence situations should go through the Dean of Students absence verification process.

Attendance Policy

Students are expected to keep up with each scheduled module and complete required participation, quiz, assignment, and project work by the posted deadlines. Attendance or participation will be recorded through Canvas activity, required submissions, or other announced course checks.

Face-to-Face sections will record attendance each class.

Closing Notes

This syllabus is subject to change. Attend class and monitor Canvas to stay current.