Skip to content

Intro to Full Stack Development

What are we trying to accomplish?

The goal of this lesson is to give students a clear mental model of how modern web applications work end-to-end. Rather than focusing on specific frameworks or syntax, this lesson emphasizes conceptual understanding—how the front-end, back-end, network, and data layer cooperate to deliver interactive user experiences.

By the end of this lesson, students should be able to reason through the lifecycle of a request, explain how data flows from a user to a database and back, and articulate the responsibilities of each layer in a full stack system. This understanding is critical before writing production front-end or back-end code, as it informs better architectural decisions, debugging strategies, and collaboration across teams.

This lesson serves as the bridge between fundamentals and applied full stack engineering in later modules.


Lectures and Assignments

Lectures

Assignments

Assignments for this lesson are conceptual and discussion-driven. Students may be asked to diagram request flows, explain application behavior, or reason through real-world application scenarios rather than write executable code.


Tangible Learning Objectives (TLO's)

  • N/A
    (This lesson focuses on conceptual grounding rather than direct implementation.)

Enabling Learning Objectives (ELO's)

  • Define what full stack development means in a professional context
  • Explain the role of HTTP in client–server communication
  • Describe the responsibilities of the front-end, back-end, and database
  • Walk through the lifecycle of a user interaction from UI to server and back
  • Explain how CRUD operations map to HTTP methods
  • Interpret HTTP request and response patterns, including status codes
  • Understand how application state drives UI updates
  • Reason about full stack systems without relying on framework-specific details