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.

This tutorial is still being outlined. Most sections will have additional examples (and much more explanation) before learners encounter it. Suggestions and help are greatly appreciated.

Learner Persona

Lessons

  1. Introduction
  2. HTML and CSS
  3. An Hour of JavaScript
  4. JavaScript in the Browser
  5. HTTP
  6. A Server
  7. Using a Database
  8. Testing the Server
  9. Serving HTML
  10. Using Forms
  11. Using HTMX
  12. Database Migration
  13. Authentication
  14. Testing in the Browser
  15. Encryption
  16. Uploading Files
  17. Logging and Auditing
  18. Permissions
  19. Accessibility
  20. A Graphical User Interface
  21. Dynamic Graphics
  22. Internationalization
  23. Sessions
  24. Caching

Appendices

  1. Designing a Workflow
  2. Certificates
  3. License
  4. Code of Conduct
  5. Contributing
  6. Bibliography
  7. Glossary

Acknowledgments

start where you are · use what you have · help who you can