Semester: S2 2026
Course Code: DE6412
Schedule: Thursdays, 1:00 pm – 6:00 pm
Duration: 15 weeks + Examination Period
| Week | Date | Lecture Topic | Lab Activity |
|---|---|---|---|
| Week 1 | 16/07/2026 | Course Introduction & Python Review | Reviewing python data structures, built in functions, libraries |
| Week 2 | 23/07/2026 | Introduction to RAD (Rapid Application Development) & Modern Development Practices | Introduction to RAD & Git Collaboration Exercises |
| Week 3 | 30/07/2026 | Virtual Environments & Package Management (venv, pip, requirements.txt) | Lab 1: Building a Simple GUI Calculator with Virtual Environments |
| Week 4 | 06/08/2026 | Object-Oriented Programming Fundamentals (classes, objects, inheritance) | Building basic OOP applications |
| Week 5 | 13/08/2026 | Advanced OOP Concepts (polymorphism, encapsulation, design patterns) | Implementing design patterns in Python |
| AssignmentWeek 6 | 20/08/2026 | API Fundamentals (REST, HTTP methods, JSON) & Assignment 1 Due | Consuming public APIs with requests library & Assignment 1: OOP Practice Project |
| Week 7 | 27/08/2026 | Building APIs with FastAPI/Flask | Building APIs with FastAPI/Flask Exercises |
| Week 8 | 03/09/2026 | Building APIs with FastAPI/Flask (API Development Continuation) | Lab 2: Real-Time Data Analysis of an Engineering Application |
| Break | 10/09/2026 | Mid-Semester Break | No Classes |
| Break | 17/09/2026 | Mid-Semester Break | No Classes |
| Week 9 | 24/09/2026 | Revision & Project Work | Practice and assignment preparation |
| Week 10 | 01/10/2026 | Lecture 8: Flask for Beginners — Build Simple APIs Web server basics, Flask routing, request methods (GET/POST), returning JSON, building simple API endpoints |
FastAPI & Flask API Practice Exercises on building endpoints and handling HTTP requests |
| TestWeek 11 | 08/10/2026 | Test (Weeks 1-7 content) | Test Review & Practice |
| Week 12 | 15/10/2026 | Lecture 9: Containerization & Docker Basics — To-Do App with Flask + Docker Docker architecture, Dockerfile instructions, building custom Flask images, port mapping, environment variables, multi-stage builds |
Lab 3: Introduction to Docker & Containerization Dockerizing existing python applications and orchestrating basic containers |
| AssignmentWeek 13 | 22/10/2026 | Lecture 10: JavaScript, WebSockets & IoT Web Application JavaScript Fundamentals (DOM manipulation, fetch API), WebSockets for real-time bi-directional communication, Mini Project: Real-Time Temperature Monitoring System |
Lab 4: Introduction to n8n Automation Connecting frontend clients to websocket servers for live updates |
| Week 14 | 29/10/2026 | Lecture 11: Workflow Automation with n8n Workflow automation with n8n, visual programming nodes, HTTP request nodes, Webhooks, automating responses, integrating FastAPI with n8n |
Practice and assignment preparation Building automated APIs and monitoring services using n8n workflows |
| Week 15 | 05/11/2026 | Final Examination preparation | Final Examination preparation |
| ExamWeek 16 | 12/11/2026 | Examination Period | Examination Period |
| ExamWeek 17 | 19/11/2026 | Examination Period | Examination Period |
Key Deliverables & Assessments
| Week | Assessment | Due Date | Weight |
|---|---|---|---|
| Week 3 | Lab 1: Building a Simple GUI Calculator with Virtual Environments | 31/07/2026 | 10% |
| Week 6 | Assignment 1: OOP Practice Project | 21/08/2026 | 5% |
| Week 8 | Lab 2: Real-Time Data Analysis of an Engineering Application | 04/09/2026 | 10% |
| Week 11 | Mid-semester Test (Weeks 1-7 content) | 08/10/2026 | 10% |
| Week 12 | Lab 3: Introduction to Docker & Containerization | 16/10/2026 | 10% |
| Week 13 | Assignment 2: Complete Web GUI + API + Docker project | 23/10/2026 | 5% |
| Week 13 | Lab 4: Introduction to n8n Automation | 23/10/2026 | 10% |
| Week 16 | Final Examination | TBC (12/11/2026) | 40% |