Modern Application Development I
Building web applications from the ground up — HTML, CSS, Python, Flask, SQL and the mechanics of how the web actually works.
§ 1Calendar
- Quiz 1—
- Quiz 2—
- End-term examination—
§ 2Previous Year Questions
-
MAD 1 weekwise PYQs
Past questions sorted by week.
discourse.onlinedegree.iitm.ac.inby Preethy ParthasarathyDiscourse login required
§ 3Resources
Course material3
-
Supplementary content
Extra material shared on Google Drive.
drive.google.comIITM login required -
Course YouTube channel
All lecture videos.
youtube.com -
Lab sessions
25 screencast lab sessions on HTML, CSS, Flask, databases and testing.
thejeshgn.comby Thejesh GN
Live sessions1
-
TA live sessions
Sheet of TA sessions with dates, topics and recordings.
docs.google.comIITM login required
Notes and guides6
-
MAD 1 notes
Written notes for the Diploma in Programming MAD 1 course.
medium.comby Pratham Bhalla -
MAD 1 resources
YouTube playlists and TA session details in one document.
docs.google.comby Urjaswi Banerjee -
Course notes
Notes and study material for this course.
iitmbsdegree.inby IITM BS Students' Corner -
Topic-wise notes
Topic-wise notes on ML Study Hub.
degreedost.comby ML Study Hub -
MAD 1 resources website
Notes, guides and video lectures for Flask, Jinja2, SQL, APIs and more.
shrikrishna97.github.ioby Shrikrishna Pandey -
Setup guides
GitHub, VS Code, WSL, Python virtual environments and installation help, linked from the home page.
shrikrishna97.github.ioby Shrikrishna Pandey
Syllabus
The official course syllabus, transcribed from the IITM BS Data Science & Applications course booklet.
§ 1Course Description
Building a modern application involves multiple components, including the front end, transaction handling, data storage, server communication, and API integration. The courses Modern Application Development I, and II address these aspects through a detailed, evolving case study, introducing relevant programming skills as the course progresses.
Lectures-Tutorials-Practicals-Credits: 4-0-0-4
§ 2Faculty
- Prof. Nitin Chandrachoodan, Department of Electrical Engineering, IIT Madras
- Mr. Thejesh GN, Independent Technologist, Multiple Affiliations
§ 3Week-by-week
Week 1: Applications and architectures; Web fundamentals and protocols; Web servers and performance; Replit development.
Week 2: Information representation; HTML and CSS (styling, selectors, responsive design); Bootstrap.
Week 3: MVC and views; UI/UX design and usability; Tools and accessibility; Jinja2 and command-line usage.
Week 4: Persistent storage and relational databases; ER diagrams; SQL; Flask.
Week 5: Requests and responses; CRUD; Routes and controllers; Database integration (SQLite, SQLAlchemy); Flask structure.
Week 6: API design and REST; OpenAPI and documentation; Flask-RESTful.
Week 7: Memory hierarchy; Data and database search; SQL vs NoSQL; Scaling; Database security; Logging and debugging.
Week 8: Frontend development; Asynchronous updates; Client-side operations and security; Indexing and full-text search.
Week 9: Access control; Security mechanisms; Sessions; HTTPS; Logging; Introduction to JavaScript.
Week 10: Application testing; Levels of testing; Test generation; Pytest; Flask-Security; Testing practices.
Week 11: Advanced frontend - JavaScript, custom elements, frameworks; DB migration.
Week 12: Application architecture; Services; Deployment and containers.