Department of Engineering

IT Services

Advanced WWW page production

Many Mac/PC based programs exist to produce sophisticated Web pages that make use of numerous features. The sections below cover some of these features, describing what they do and how you might use them without needing special software.

Producing graphics


Graphics production shouldn't be a problem. Many WWW graphics are in GIF format, though the PNG format is safer and better for non-photographic images. The JPEG format is commonly used for photos. Adding images to a web page is easy. You should reduce the size of the image file so that the resolution is just sufficient for your purpose.


There are many formats for moving images, which makes it difficult to reliably offer moving images.

Advanced HTML

With HTML 4 came "Cascading Style Sheets" (like Word's styles). These aid design and make possible some effects that can't be done in other ways. However, not all browsers handle them well. Even before HTML 4, Forms were available. They're easy enough to use but processing the replies can be harder.

CGI Scripts, Perl and Counters

Sometimes (when a form is processed, for example) it's useful for a page to call a program on the server's machine. Though these programs (Common Gateway Interface scripts) can be written in many languages, perl is popular because it's an interpreted language and also has modules aimed at internet use. Note that for security reasons on the Teaching System you can't have your own CGI scripts.


If straight HTML doesn't provide enough facilities you can enhance the language. These enhancements can be processed by the server ("server-side scripting") or by the browser ("client-side scripting").

  • You can only use server-side scripting if the webserver is configured so that your pages can use the feature. Ask your provider what's available, or if you're running your own apache server, see what's been configured in. On the Teaching System's www2.eng we don't provide these facilities, but on our other servers (www.eng, www-g.eng, etc) some of these facilities are supported (though you won't be able to mix PHP and SSIs on one page).
  • You can only use client-side scripting if the user's browser is configured to cope. Given the security anxieties associated with these features, it's understandable for users to disable them.

Amongst the options are

  • Server-Side Includes - these offer a way to add date information to pages, and include other HTML pages; useful for adding standard headers, etc. Easy to use but rather limited.
  • PHP - Server-side. Powerful, and integrates with databases. However, see our PHP security page.
  • Java - Client-side. Complete applications with graphics can be written in java.
  • Javascript - Client-side. Popular for special effects. Along with HTML4 features it can produce so-called "Dynamic HTML"
  • Active Server Pages - Server-side, for Windows machines.


Scripted WWW front-ends exist for some databases. Using such a front end spares developers having to learn/buy a new database program, and provides a reasonable interface.

Note that there's a drive towards the unification of CUED databases, so staff may wish to consult others before committing themselves to a database program. The database that admin will use is likely to be oracle.

Options that have been used within CUED include

  • the perl DBI (database interface). It is a robust method that allows easy connections between web pages and almost any database.
  • mSQL and mySQL - two free/cheap databases for which there are many pre-created web front ends using PHP, etc.


The Extensible Markup Language is intended to be the future language for WWW pages.

Virtual Reality Modeling Language (VRML)

See the VRML Repository. Floppy's VRML Guide is very useful too.

MathML and Maths

If you create documents with LaTeX, then latex2html will create a little GIF for each maths character (see the LaTeX Maths and Graphics for an example). It's not beautiful, but unless you can create PDF (Acrobat) files (or Postscript files), a perfect option doesn't exist. People are working on MathML (released as a W3C Recommendation on the 7th April 1998) as a way to display maths on the WWW. Look at W3's site for news and a MathML testsuite.

See also the Producing HTML and PDF files with LaTeX document and Writing Math on the Web (Brian Hayes).

Wikis, Chatrooms, Calendars, Google apps

The department has a license for Calcium, a configurable calendar and resource-booking facility.

Before you think of writing your own sophisticated facility, or try to use a free product, see if CamTools does what you want. It offers Kwikis, Chatrooms, , Calendars, Discussion boards, DropBoxes, Quizzes, etc. Contact webadmin if you have queries - others in the department may already have a solution to your problem.

The Computing Service provides a University (Raven-authenticated) Google Apps for Education service


Not as bad as they sound - see our Web Mashups page.