Welcome to the Dojo

A dojo is a space where we practice and learn new skills. The challenges here are intended to help you improve your web development skills through focused dojo topics.

Error Handling Dojo

  1. 200 OK
  2. 404 Not Found (this linked page does not exist) - and notice that 404 links are never treated as "already visited" by your web browser
  3. 404 Not Found
  4. 500 Internal Server Error
  5. 503 Service Unavailable
  6. API-based 200 (Success)
  7. API-based 400 (Bad Request) - something about this request is malformed
  8. API-based 401 (Unauthorized) - "Unauthenticated" would be more accurate - you need to log in (or provide an API token, etc.) so we know who you are and whether you have permission (but you still might get a 403 after that if you don't have permission)
  9. API-based 403 (Forbidden) - we know who you are and you don't have access
  10. API-based 404 (Not Found)
  11. API-based 418 (I'm a teapot)
  12. API-based 500 (Internal Server Error)
  13. API-based 502 (Bad Gateway)
  14. API-based 503 (Service Unavailable)

Common Web Application Issues

Consider adding these to the error scenarios above.

  1. HTTP 401 (Unauthorized)
  2. HTTP 404 (Not Found)
  3. HTTP 500 (Internal Server Error)
  4. HTTP 503 (Service Unavailable)
  5. Slow-loading pages (timeout issues)
  6. Broken HTML structure
  7. CSS styling errors
  8. JavaScript runtime errors
  9. Cross-Origin Resource Sharing (CORS) issues
  10. Mixed content warnings (HTTP content on HTTPS pages)
  11. Invalid SSL certificates
  12. Redirect loops
  13. Broken images or media
  14. Unresponsive UI elements
  15. API rate limit errors
  16. Slow-loading resources (images, scripts, etc. that hang up the page)
  17. Broken images (resulting in the dreaded 'missing image' icon)
  18. Misaligned layout (CSS gone wrong, elements overlapping or out of place)
  19. JavaScript errors (preventing interactive features from working)
  20. Inconsistent styling (elements looking different across the page)
  21. Accessibility issues (making the page difficult for some users to navigate)
  22. Security vulnerabilities (though simulated ones, to demonstrate the risks)
  23. Outdated content (to show the importance of keeping things up-to-date)