uk.net.web.authoring FAQ - 1.12 - 2002-03-07

1 Introduction

2 Newsgroup usage and charter

3 FAQs

3.1 What programs should I use to author HTML for the web?
3.2 What programs should I use to author images for the web?
3.3 What other tools might be useful to a web author?
3.4 What server side technologies should I use?
3.5 Which Database should I use?
3.6 What issues are there in using... ?
3.7 What should I pay for/where should I host?
3.8 How should I choose a company to design my website, and how much should I pay?
3.9 How do I become a web author?
3.10 What is accessibility?

4 Resources

4.1 Authoring technologies
4.2 Analysis tools
4.3 Accessibility
4.4 Hosting Sites
4.5 Search engines
4.6 Related newsgroups
4.7 Useful websites

5 FAQ Information

1 Introduction

This is a short FAQ of questions and topics often discussed in the newsgroup uk.net.web.authoring.

It is also available on the web at http://www.web-authoring.org.uk/

Conventions used in the HTML version.

If your browser supports CSS, and follows our Suggestions, we use these conventions to denote various things:

Pages linked to from within a blue dashed line were updated since the last publication of the uk.net.web.authoring FAQ (2002-03-07). Links contained in a red dotted line were unavailable at the time of publication.

2 Newsgroup usage and charter

See http://www.usenet.org.uk/ , news:uk.answers, news:uk.net.news.announce, for UK News hierarchy information, including the official copy of our charter at http://www.usenet.org.uk/uk.net.web.authoring.html . New users should read http://www.xs4all.nl/~wijnands/nnq/nnqlinks.html and http://www.uwasa.fi/~ts/http/quote.html to make best use of the newsgroup.

3 FAQs

3.1 What programs should I use to author HTML for the web?

Text editors - these are purely a matter of choice. The editor will have no consequence in the quality of work developed.

Pros: you keep close to the code, easy to integrate server or client side scripts. It's all your own work. Some would say in the long run these are as quick as anything.

Cons: you need to know good HTML. Arguably slower than other methods to churn out page after page.

Examples: Vi, Emacs (all platforms, free), Notepad, Textpad, EditPad (Win32, free/shareware), PFE (Win, free), Editplus (Win32, shareware).

Tag editors - these are similar to the text editors, but also have knowledge of HTML. They differ from the visual editors in that you still edit the actual HTML rather than a visual representation.

Pros/Cons: as text editors.

Examples: Emacs (all, free), HotDog Professional 6 (Win32, 100USD), Bluefish, Screem, Webmaker (Linux, GPL), CoffeeCup (Win32/linux, shareware), Homesite 4.5 (Win32, 90GBP), Arachnophilia, 1st Page 2000, HTML-Kit (Win32, free), Quanta (linux, GPL), Zap (RISC OS, GPL), StrongED (RISC OS, free).

Visual editors - these editors allow you to make a graphical representation of the page you want, take that desired end result and turn it into code. The quality of the code is highly dependent on the tool you choose. Results vary from arguably very good to definitely very bad. Many of them include very advanced site management tools to make developing an overall style easier.

Pros: no knowledge of HTML required; content can be edited by anyone; easy to develop consistent style/design; cheap to employ staff.

Cons: variable results, often a need to 'clean up' the code without knowing HTML or the capabilities of browsers; difficult to create good compatible pages.

Examples: Dreamweaver (Win32/Mac, GBP 300), Frontpage (Win3210, GBP 100), Netobjects Fusion (Win32, GBP 250), Screem (linux, GPL)

3.2 What programs should I use to author images for the web?

Photoshop: professional graphics program; considered industry standard for graphics design; few web specific features (Win 32/Mac, GBP 500 ver 6, GBP 90 ver 5).

Paint Shop Pro: powerful general-purpose image editor; very popular; includes tools for gif animation (Win32, 90GBP).

The Gimp: the 'standard' image editor for Linux users (Linux, Win32, free).

Xara X: vector based image editor with web features (beta) (Win32, USD 175).

Fireworks: Image editor from Macromedia (Win32, USD 200).

Corel Draw: vector based graphics suite. Also includes PhotoPaint, an image editor (Win32 USD 450 ver 9, Linux USD 200).

Artworks and Vantage:RISC OS image editors (RISC OS 149GBP/240GBP)

3.3 What other tools might be useful to a web author?

JPEG/Image Optimizer: graphics size optimizer allowing variable compression rates across a JPEG (Win32, USD 40, USD 100 pro).

IrfanView: a small, fast, free image viewer with some "editing" facilities (and can use plug-ins), good for batch re-sizing, making thumbnails, etc. (Win32 Free)

TopStyle 2: CSS editor (Win32, USD 50).

Formal Validators: A Real Validator (Win32, USD 25), ngmls (various, free) Linters/Checkers: HTML Validator (Win32, USD 130), Tidy (various, free)

Site Analysers: LinkBot (Win32, USD 300), Xenu Link Sleuth, (Win32, Free)

3.4 What server side technologies should I use?

Server side it matters little what you use to the end user, so you have almost complete freedom of choice, without having to worry about accessibility. The main consideration is likely to be what is available to you, or what code you can find which does all or part of the job you want.

Programming languages/environments:

ASP - Active Server Pages, is a Microsoft technology, mainly available on the IIS (webserver) under windows NT or 2000, but also available on other platforms through 3rd parties, (Free, with o/s under windows, GBP ~hundreds on other platforms) - The actual programming can be done in any "Active Scripting" language, so JScript, VBScript, Perl, Python, Tcl, are all possible, and it should be quick to learn for anyone with any experience in programming, however other than JScript/VBScript it's unlikely that 3rd party hosts will have the other languages available. COM objects can be used meaning that it's possible to either use high performance compiled routines or business logic that already exists. Disadvantages are the proprietary, expensive technology, and the higher (in general) cost of hosting.

PHP - PHP is an open source technology available for linux, unix and win32, it can be used with most webservers but is mostly used as an Apache module mod_php. This like Cold Fusion was designed from the ground up as a Web technology, so shouldn't carry over any legacy problems. Ease of learning, rapid development, and good database integration combined with the cost are generally given as its main advantages.

Cold Fusion - Macromedia technology, available on Linux, Windows and Solaris. The server costs USD 1000, but there's a fully functioning developer edition available for free and a scaled down hosting version for free.

JSP - Java Servlets, this is Java's foray into the serverside market, it has the full power of java at it's command, and is obviously very portable between hardware/operating systems. New developments that make it easier to use add tag-based functionality are becoming available, but it is still difficult to learn compared to the more genuine scripting languages. Performance is also currently a problem, but it is again free so the cost is nice.

Perl - Perl, a powerful general purpose Scripting Language, which is available for most platforms and webservers, it's main advantage is the vast amount of pre-existing open source code that is available to re-use.

3.5 Which Database should I use?

mySQL - Popular, fast, open source database engine available for linux and win32, Main advantages are the cost and speed, main disadvantages, are the absence of stored procedures, sub-selects and triggers, and most particularly the failure to meet the ACID test - it is perfect though for storing/tracking non-critical data, do not run your bank on it though.

Postgres - Widely recognised as the most advanced open source database available and is the main contender to MySQL in the Open Source arena. It meets the ACID test and provides functionality not currently available in MySQL such as built in transaction support, row level locking and triggers but is claimed to be slower (refuted by Postgres) and is more complex to administer than MySQL. It is generally perceived as a step up from MySQL but not as feature rich as the likes of Oracle and DB2.

Oracle - Expensive, slow, Beast of an RDBMS (Relational Database Management System) but with significant clustering capabilities, so if you've got the cash it'll be fast and stable enough. Ideal for running that bank.

SQL Server - Microsoft's RDBMS, available only under Windows NT/2000, Similar feature set to Oracle, probably could run the bank on it, if you could keep Windows stable enough...

ODBC - (Open DataBase Connectivity) is an interface which can be used to connect to any compatible database using a standard set of commands. It is supported by many desktop databases and scripting languages making it easy to access a database from a variety of platforms. Advantages are the common set of commands for all database types. Disadvantages include having to be restricted to the least common denominator and needing another bit of software on your server, aswell as a speed penalty. It runs on unix and win32 server platforms.

For a comparison of databases the perhaps biased, but still useful: http://www.mysql.com/information/crash-me.php may be of interest.

3.6 What issues are there in using... ?

HTML - HTML was designed as a text mark-up language. Later extensions permit a degree of layout control, but later still these have been deprecated in favour of using CSS to control layout and appearance. For absolute appearance control other techniques, such as PDF, may be better.

Javascript - Javascript support cannot be relied on as many user agents (browsers) do not support Javascript and some people disable it in their browser. Therefore you should never rely on Javascript to provide navigation or other essential effects. However, client side script can be useful to enhance the experience for the user.

Java - Java support can also not be relied on as many people disable Java for security and speed reasons. The only time it is worth using over Javascript is where two-way communication with the server is needed, for example, in chat programs or similar. Otherwise Javascript can usually achieve the same with a larger number of people having it enabled and easier fallback if they have disabled it.

Flash - Flash is commonly used to add visual impact to a page. Flash support can not be relied on either and users on many platforms, or with many disabilities, cannot use it at all, so it isn't normally a good idea to put important information only in Flash. Many people dislike strongly Flash intros so an option to skip the intro should be offered, especially on anything but an advertising site.

PDF - PDF is a document format from Adobe that enables you to create documents that will look the same on multiple platforms. This is useful if you wish to provide documents where the exact layout is important, for example, contracts or forms, especially if they are to be printed out. However you limit your potential audience so it should be used only when the layout is essential.

Server Side Generation - generating pages or performing actions on the server is essential for a lot of websites. Whether it's sending e-mail, processing an order, or controlling the nuclear power station, most actions require server side processing. Which languages/technologies you use is almost completely down to personal choice as it is transparent to the visitor, and the decision should be made by what's available and what you want to learn.

Cookies - cookies are a data store on the client that websites can store small amounts of data, they are used to track users or information through sites. Many people disable them or have user agents that don't implement them, so it is again not a good idea to rely on them. Cookies are also owned by the user who can modify the contents at will, so you should never rely on the information only containing what you might expect.

Sound - you have to be very, very careful with sound, many people use their computers sound card for other things, perhaps they are listening to an online radio station, perhaps they are listening to a CD, perhaps they are browsing in an enviroment where their machine suddenly starts playing some midi is not welcome (work perhaps?). I would like to say never use sound unless the person asks for it, but there may be a reason, so just be very, very careful.

3.7 What should I pay for/where should I host?

See http://www.bigbytes.co.uk/faq/ and http://www.cooper.org.uk/corp-isp.txt for more answers to this question.

3.8 How should I choose a company to design my website, and how much should I pay?

The first thing to decide when purchasing a website is what you want it to achieve. Without a clear idea of this, the amount you should spend, and who would be good suppliers are very difficult to answer. If you're looking to sell a product or generate leads then quantifying the return of the website should be simpler than if it provides product support, or is a general marketing tool. If you can't see any reason to have a website beyond a feeling you should have one, there's probably no point spending any money.

It's a good idea, as with accountants, to choose a website provider for whom your business would provide a significant but not overwhelming percentage of their total business. This makes you important to them, so you get their best, rather than having your site worked on in their slack time, or by the trainee.

Make sure that prospective suppliers have the technical ability to produce the kind of site you want. Look at similar sites that they've created - there's no point in going to a company specialising in on-line shops when what you want is an online advert.

Many small businesses produce excellent websites. One thing to consider is that the expertise, though often superior to that available in a larger firm, may be limited to one or two individuals so you need to be very careful in your negotiations as to what happens if these crucial staff, or the whole company, disappeared. Will the site be in a form that another company could pick up support on quickly?

As with any purchasing, a breakdown of how the quote was arrived at is helpful. Hourly rates commonly range from 25-75 UKP but different sites and technical requirements can change this significantly.

Another important consideration is maintenance and ongoing development of the site. People are very unimpressed with out of date information on the web, so it's important to sort out how the site will be maintained. This could be done in-house or as part of a maintenance contract, but whatever it is make sure it's simple. If it's too complicated to organise then it'll just be seen as a chore for all concerned.

3.9 How do I become a web author?

By authoring web sites :) Web authoring is a very young industry and the majority of people currently working in it have had no formal training. While there is still a shortage of skilled labour, just being able to demonstrate ability should get you a job with little trouble so formal qualifications aren't needed. University courses are now becoming common, although I've yet to see any graduates so can't gauge how useful the degree may be.

Web authoring covers a wide range of disciplines that require very different skills, such as designing, programming and graphic illustration. It's a good idea to focus on one area unless you really want to start your own company.

3.10 What is accessibility?

Accessibility is about making your site accessible to everyone, whatever their user agent (web browser), connection, or disability. HTML lends itself well to being represented in many ways, so browsers exist in many varieties. However you can create pages that some browsers have difficulty with, although accessibility is about not doing this. For example don't put important text information only in an image where a text browser, or speech browser, can't access it.

Under the Disability Discrimination Act (1995) (DDA) providers of a service cannot discriminate against people by reason of their disability, this makes accessibility a legal requirement rather than just a web authoring one. No cases have yet been brought to court in the UK, so there's little real knowledge of what a judge may think on the subject.

Another accessibility issue is the international nature of the Internet. You do not know where your viewer may be, so it's a good idea not to use ambiguous date forms, such as 10-12-2000, which could be read either as the 10th of December, or 12th of October. Telephone numbers should include the international dialling code. Careful use of language is also a consideration. Gas/petrol is one obvious example which could confuse many American English users.

4 Resources

4.1 Authoring technologies

HTML - Web Design Group's Web Authoring FAQ
http://www.htmlhelp.com/faq/
Javascript - comp.lang.javascript FAQ
http://jibbering.com/faq/
W3 - World Wide Web Consortium - A "standards" organisation
http://www.w3.org/
comp.infosystems.www.authoring.stylesheets FAQ
http://css.nu/faq/ciwas-mFAQ.html
Perl FAQ Index
http://www.cpan.org/doc/FAQs/
Java Programmers FAQ
http://www.afu.com/javafaq.html
PHP FAQs
http://www.alt-php-faq.org/
ASP FAQs
http://developer.irt.org/script/asp.htm
http://www.4guysfromrolla.com/webtech/faq/faqtoc.shtml
http://www.aspfaqs.com/aspfaqs/

4.2 Analysis tools

Evaluation, Repair, and Transformation Tools for Web Content Accessibility
http://www.w3.org/WAI/ER/existingtools.html
Online HTML validators, link checkers and other tools
http://valet.webthing.com/
http://www.htmlhelp.org/validator/

4.3 Accessibility

WAI guidelines
http://www.w3.org/WAI/
RNIB guidelines
http://www.rnib.org.uk/digital/hints.htm
Alt text advice and discussion
http://ppewww.ph.gla.ac.uk/~flavell/alt/alt-text.html

4.4 Hosting Sites

Budget site guide.
http://www.bigbytez.co.uk/
Performance indices.
http://www.webperf.net/
Check connectivity.
http://www.traceroute.org/

4.5 Search engines

http://www.searchenginewatch.com/

4.6 Related newsgroups

comp.infosystems.www.authoring.html - HTML authoring
comp.infosystems.www.authoring.stylesheets - Style sheets (CSS)
comp.infosystems.www.authoring.site-design - Site design
comp.lang.javascript - Javascript
comp.lang.java - Java
alt.www.webmaster - Webmasters (US)
alt.php - PHP
alt.html - HTML authoring
comp.infosystems.www.authoring.cgi - CGI programming
comp.infosystems.www.authoring.images - Web images
comp.infosystems.www.authoring.tools - Tools
microsoft.public.inetserver.asp.general - ASP

see http://www.perldoc.com/perl5.6/pod/perlfaq2.html for perl newsgroups.

4.7 Useful websites

Authoring techs.
http://hotwired.lycos.com/webmonkey/
http://www.webreference.com/
PHP/ASP/Databases/NT.
http://www.weberdev.com/

5 FAQ Information

This is an early version of the uk.net.web.authoring FAQ, it has been composed by the group, and is being edited by Jim Ley (jim@jibbering.com), it can be found at http://www.web-authoring.org.uk/ . Please post any

comments/suggestions to the group, or via e-mail to the editor.

This FAQ is Copyright (c) 2000 by Jim Ley, and is distributed under the Open Content License version 1.0 as detailed at http://opencontent.org/opl.shtml . This FAQ may be modified, copied and redistributed according to the terms of the Open Content License.

The FAQ uses the stylesheet faq.css and is generated from the xml source uknwa.xml by the windows script host script uknwa.wsf which also checks the links.