Issue #Chapter_17: web factory