The Webonomicon
An Introduction to Web Programming for the Cautious and Weary
This tutorial is a short introduction to web programming using modern tools and practices for data scientists who are comfortable using Python but have never built interactive websites before. All of the material is available under open licenses, and contributions through our GitHub repository are welcome. All contributors are required to respect our Code of Conduct.
Learner Persona
- Harper, 28, has a master's degree in animal physiology and now works for a mid-sized veterinary pharmaceutical company.
- She learned a bit of R in an undergraduate biostatistics course, then picked up Python in grad school. She spends several hours a week analyzing data with Pandas and visualizing it with Plotly Express, and is comfortable with basic Git commands.
- Harper recently became responsible for maintaining a dashboard application built with Dash. She believes a better understanding of how web applications work in general will help her debug and extend it.
- Harper has tried doing asynchronous online courses a couple of times, but strongly prefers learning in real time with other people.
Lessons
- Introduction
- HTML and CSS
- An Hour of JavaScript
- JavaScript in the Browser
- HTTP
- A Server
- Using a Database
- Testing the Server
- Serving HTML
- Using Forms
- Using HTMX
- Database Migration
- Authentication
- Testing in the Browser
- Encryption
- Uploading Files
- Logging and Auditing
- Permissions
- Accessibility
- A Graphical User Interface
- Dynamic Graphics
- Internationalization
- Sessions
- Caching
start where you are · use what you have · help who you can