uk.net.web.authoring FAQ  version 1.01 2000-11-20
 
 Contents
 
 1 Introduction
 2 Newsgroup usage and charter
 3 FAQs
     3.1 What programs should I use to author?
     3.2 What server side technologies should I use?
     3.3 What issues are there using...?
     3.4 What should I pay for/where should I host?
     3.5 How should I choose a company to design my website,
         and how much should I pay?
     3.6 How do I become a web author?
     3.7 What is accessibility?

 4 Resources
     4.1 Authoring technologies
     4.2 Analysis tools
     4.3 Accessibility
     4.4 Hosting
     4.5 Search engines
     4.6 Related newsgroups
     4.7 Useful websites
 
 5 Other FAQ type stuff at the end (maintainer/suggestions, etc.)
 _________________________________________________

 1 Introduction

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

 2 Newsgroup usage and charter                                   

   See <URL: 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 
   <URL: http://www.usenet.org.uk/uk.net.web.authoring.html >.  
   New users should read 
   <URL: http://www.xs4all.nl/%7ewijnands/nnq/nnqlinks.html >
   and 
   <URL: 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 for the web?            

  HTML authoring:
      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).

      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).

    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)
               

  Image editing: 

    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: vector based 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).

  Other tools:

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

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

    Validators (Linters): HTML Validator (does not do formal
    validation) (Win32, USD 130), A Real Validator (Win32, USD 25)

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

 3.2 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 - Allaire's technology, available on Windows & Unix
  (maybe others, but Allaire's site is so full on 'puff' and light on
  what systems it runs on, I don't know.) It's a tag-based mark-up
  language, much like HTML, its main strength is its simplicity and
  the range of development tools available. The server costs over USD
  1000, although a scaled down (in performance/capability) is
  available for free, generally slower in performance terms than
  ASP/PHP.

  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.

  For a comparison of the 4 technologies above:
  <URL: http://www.zdnet.com/eweek/stories/general/0,11011,2646052,00.html >
  may be instructive.

  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.

  Databases : 

  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.

  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:
  <URL: http://www.mysql.com/information/crash-me.php >
  may be of interest.

 3.3 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.4 What should I pay for/where should I host?

  See <URL: www.uk-hosting.org.uk/faq.htm > and
  <URL: http://www.cooper.org.uk/corp-isp.txt > for more answers
  to this question.

  3.5 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.6 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.7 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) 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
    <URL: http://www.htmlhelp.com/faq/ >

    Javascript - comp.lang.javascript FAQ
    <URL: http://jibbering.com/faq/ >

    W3 - World Wide Web Consortium - A "standards" organisation
    <URL: http://www.w3.org/ >

    comp.infosystems.www.authoring.stylesheets FAQ
    <URL: http://css.nu/faq/ciwas-mFAQ.html >

    Perl FAQ Index
    <URL: http://www.cpan.org/doc/FAQs/ >

    Java Programmers FAQ
    <URL: http://www.afu.com/javafaq.html >

    PHP FAQs
    
    <URL: http://rpmain.dfxwebs.com/PHP/php_oufaq.shtml >

    ASP FAQs
    <URL: http://developer.irt.org/script/asp.htm >
    <URL: http://www.4guysfromrolla.com/webtech/faq/faqtoc.shtml >
    <URL: http://www.aspfaqs.com/aspfaqs/ >

  4.2 Analysis tools
 
    Evaluation, Repair, and Transformation Tools for Web Content
    Accessibility
    <URL: http://www.w3.org/WAI/ER/existingtools.html > 

    Online HTML validators, link checkers and other tools
    
    

  4.3 Accessibility

    <URL: http://www.cast.org/bobby/index.html > - Bobby
    <URL: http://www.w3.org/WAI/ >               - WAI
    <URL: http://www.rnib.org.uk/digital/hints.htm > - RNIB

  4.4 Hosting

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

  4.5 Search engines

    <URL: 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
    comp.lang.perl                             - Perl

  4.7 Useful websites

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

 5 This is the first 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). 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
 <URL: http://opencontent.org/opl.shtml >. This FAQ may be modified,
 copied and redistributed according to the terms of the Open Content
 License.