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¶
-
Begin with Chapter 11 to understand web protocols and security foundations
-
Progress through Chapter 12 to learn web design and front-end development
-
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.