Making the Web Work: Designing Effective Web Applications