Web Design Small Cover

Buy the PDF of
Web Design:
A Complete Introduction

See the book at amazon.co.uk or amazon.com

Related Site

Web Security Topics

Related Books

Secure Communication Cover

Securing A Server Cover

Teaching Notes for Chapter 8

Download the end-of-chapter questions. (Zipped plain text files, UTF-8 encoded.)

Any students who until now have only used the Web, without enquiring into how it works, may not actually be aware how dependent most Web sites are on server-side computation. The most important thing is to make them realize how much work is done on the server, how it requires programming and database design, and what the possibilities are.

This is probably the most technical chapter in the book, so it will present a considerable challenge to students with no programming experience. There would be no great harm in omitting most of the material on courses whose main focus is on visual design. Students – and instructors – who opt to leave out this chapter should be aware that most non-trivial Web sites involve some server-side computation, so Web designers who cannot write the programs will be forced to work in teams that include specialist developers. If this is considered suitable, students only need to have a basic understanding of what goes on in Web applications and how what appears on a page can be based on information retrieved from a database. This can be demonstrated using a simple example such as an image gallery, showing the relationship between the stored data and the pages displayed, without going through the code that makes it happen. Non-programming students should also be get a feeling for when it would be appropriate to bring in specialists to deal with the technical aspects.

It would be helpful for students who do not intend to do any server-side programming to be aware of the possibility of using ready-made applications, such as Content Management Systems, a topic we describe briefly. The challenge in using such solutions is in customizing their appearance, a task well-suited to Web designers who are specializing in the visual design aspects. Practical Task 1, or something like it, would be a very useful exercise for such students. Concentrating on installing and customizing ready-made software would in some cases be much more productive than trying to teach students who are not used to symbolic thinking and abstraction how to design databases and write programs.

Computing students should feel at home in this chapter. Many will be learning more about databases in other course modules, and the programming is not demanding. PHP will be unfamiliar, and some of its features may appear bizarre, but programmers are usually quite adaptable when it comes to learning new languages. In some cases, though, PHP may not be the best choice for practical work. In particular, if Java is the only language taught in your department, and database teaching relies on JDBC, it would make sense to do the practical work for this chapter using JSP or Java servlets. This would not, of course, affect the database design. Rewriting the applications should be fairly simple. (We intend to put versions of the final glossary application translated into JSP and some other languages on this site at some point, but we cannot make any promises about when that will be done.)

At the beginning of the chapter, we recommend readers to review the relevant sections of Chapter 2. It would be helpful to run over the information summarized in Figures 2.7 and 2.8 in a lecture before embarking on the material in this chapter.