web dev chapter 3