Skip to content

This textbook is in beta – content is actively being refined. Report issues or suggestions

Year 12 — Programming for the Web

This module explores modern web development through full-stack Python applications, teaching students how to build secure, accessible, and scalable web systems. From client-server architecture to database design, it covers the complete web development lifecycle with emphasis on standards, security, and user experience.

Module Overview

Web programming powers much of modern software, from simple websites to complex enterprise systems. This module teaches both front-end and back-end development using Python, with a focus on security, accessibility, and scalable architectures that prepare students for real-world web development.

Key focus areas:

  • Web protocols, security, and data transmission fundamentals

  • Standards-compliant and accessible web design

  • Full-stack Python development with databases

  • Progressive Web Apps and modern web architectures

Learning Outcomes

Students will develop the ability to:

  • Understand web technologies including protocols, data transmission, and security concepts (SE-12-03, SE-12-04)

  • Design web applications using client-server models, databases, and scalable architectures (SE-12-02)

  • Apply web standards including accessibility, security, and best practices (SE-12-06)

Chapters

Chapter 11: Web Foundations and Data Transmission

Web applications and data movement on the internet, covering protocols (HTTP/HTTPS, TCP/IP, DNS), ports, SSL/TLS encryption, certificates, authentication, and large-scale web architectures for handling big data.

Chapter 12: Designing Web Applications

Web standards and accessibility, client-server architecture, developer tools, CSS and UI/UX principles, front-end libraries and frameworks, and content management systems with evaluation of open-source development models.

Chapter 13: Back-end Databases and PWAs

Server-side Python development, database design (SQL and NoSQL), ORM patterns, performance optimization, and Progressive Web App implementation with offline capabilities and service workers.

Implementation Philosophy

This module emphasizes standards-first web development:

  • Python-only approach for consistency across full-stack development

  • Security and accessibility integrated throughout all topics

  • Progressive enhancement from simple websites to complex applications

  • Emphasis on web standards and best practices

  • Real-world considerations for scalability and performance

Prerequisites

  • Solid Python programming skills (functions, classes, data structures)

  • Basic understanding of HTML/CSS concepts (helpful but taught)

  • Familiarity with software development processes

Getting Started

  1. Begin with Chapter 11 to understand web protocols and security foundations

  2. Progress through Chapter 12 to learn web design and front-end development

  3. Complete with Chapter 13 to implement back-end systems and databases

The module builds comprehensive web development skills from network fundamentals to full-stack applications.