D-cipher: Breaking the Jargon
by Stuart Jones
It is easy to feel overwhelmed by new terms, and web development has a lot of them. In fact, it seems like web programmers and developers are speaking another language. LetÕs try and start to break down that language barrier, shall we?
HTML, XHTML, DHTML, SHTML, XML
If those acronyms havenÕt scared you off, itÕs a good start. The very first thing for newcomers to any kind of computing to get around is the abundances of Acronyms. HTML is HyperText Markup Language. Don't worry. It isnÕt as scary as it sounds. A Markup language is a simple text-based script which gives a program (such as a browser) step-by-step instructions to produce a web-page. The HyperText part relates to the method of moving between pages by the use of hyper-links.
HTML is built out of elements, which are specified using tags and attributes. A Tag looks like <p> or <img width="32" height="32">, and attributes are assigned as <p id=Õparagraph1Õ>. An element can defined by a single tag, such as with <img>, or a pair of opening and closing ones, like <p>É</p> . HTML forums has a section specifically tailored for HTML questions:
(HTML Page Layout)
XML is a new, generic system which is more of a framework in which data is sent between a Server and a Client. It is not necessary to understand this if you are starting out, as it is only necessary in data-exchange.
XHTML is a subset of XML Š it is basically the same as HTML except there are certain restrictions Š such as all tags must be written in lowercase, and must have certain attributes set, and so on. I would recommend learning the extra rules from XHTML, as it is becoming the standard, and offers long-term stability. HTML has had a rocky past, and as such there are things that some browser will recognise, while others wonÕt. Of course, XHTML standardisation is not universal yet, but it is the way things are heading.
DHTML is relatively archaic term now (at least, as far as web-design goes) Š it means Dynamic HTML. This description included all the rollover effects and expanding menu systems that you would expect to find in a standard Windows or OS application, except that they were on the web-page. It was fairly specific, with the different browsers of the time implementing their own solutions. The functionality is mostly replaced now by JavaScript, which is called a Client-Side Script.
SHTML is another old term. Server HTML was a system of enabling a designer to incorporate common elements without having to replicate a design modification across 200 pages (for example, the link to the homepage). This has been extended now into a more powerful functionality, called Server-Side Scripting which incorporates a vast family of scripting languages.
CSS Š Cascading Style Sheets
Some people confuse CSS with Client-Side Scripting. CSS is a universally recognised acronym for Cascading Style Sheets. It started out as an attempt to separate style from content Š enabling the look of a site to be changed globally from one file. The cascading aspect is due to the limited hierarchy in style.
Firstly, if there is a specification of a particular HTML element in the stylesheet file, then element will have that specification. However, if the page itself has styling specified within the <head> section of its code, then this will override the styling from the external file. Finally, the tag itself can contain a style attribute, which can override the previous two style specifications. Questions on CSS can be asked (and answered) at:
(Cross platform layout)
Client-Side Scripting
This enables certain, limited, things to be processed at the client. A client, in web terms, is a browser which is viewing the page. Graphic effects, such as rollovers and drop-down menus, can be generated using client side scripts. Other effects, such as pop-up windows, form input manipulation (if someone selected a country other than the US, for example, then you would disable the State input), and so on, can also be generated. Even validating user input (checking for valid email addresses on forms, etc) can be done at the client level. The advantages of this are that you remove the need to refresh the page, saving some time to process a form, for example. You also save some processing time on your web-server Š which speeds up the experience for other people browsing on your site.
The disadvantages are that it cannot always be relied upon. Users can disable their browsers from enacting the scripts, and so destroy any of your special effects.
A skilful web-designer will make use of a client-side script, but will include an alternative behaviour in HTML, just in case the userÕs browser will not recognise the script. The most popular language for client-side scripting is JavaScript, and the ability to react to JavaScript scripts is included in most of the major browsers by default. JavaScript is not to be confused with Java, which is a Server-Side language. Visit
Client-Side Scripting to find out more on JavaScript and client-side scripting in general.
Server-Side Scripts
These are run on a web-server and allow for some powerful web-design solutions. They are used to interact with databases, which may be storing user information, sho
pping orders for on-line stores, or simply messages for a bulletin board or forum, among other uses. The two main flavours for Server-Side Scripts are PHP and ASP. ASP itself is more of a framework, and can be written in languages such as JavaScript, vbScript or even phpScript.
What each of them do is fairly simple Š the web-server must first distinguish a server-side script from an ordinary HTML file. This is usually done with the file extension, by using .php or .asp for example. It then runs a program associated with that file which will scan through the script and create pure HTML Š which is then delivered to the browser over the internet.
The advantages of server-side are that a user cannot bypass any security checks that you have entered into the scripts (assuming, of course, you havenÕt left a back-door in your own code). The disadvantages are that in order for the script to react to the user, the page must be reloaded.
Web-design incorporates all solutions in varying ways. The server-side section at HTML Forums includes two sub-forums, one for PHP and one for ASP, but we also have members who are knowledgeable in the various other server-side solutions such as Java, Perl, Python, and so on.
(Server side programming) Questions on databasing are kept in a separate section -
Databasing
Web-servers
Contrary to popular belief, a server isnÕt a big box which beeps and whirs and sits in a massive air-conditioned room. It isnÕt even hardware. A server is a piece of software that provides a service. Okay, so it may be running on a big box in an air-conditioned room, but thatÕs just for serious server applications where there are many users relying on it. Your own computer has some services running in the background, and you can even turn it into a web-server. This is great for testing purposes, and enables you to see how your server-side scripts will behave.
The setting up of web-servers is covered in our new Server Admin sections:
Windows -
Linux -
Unix -
BSD - although there are many threads in the
Software and Hardware Info and sometimes specific issues related to server-side scripts are dealt with in their own forum
Server-Side Programming.
It is not recommended that you use your home PC as a public web-server, though, because as well as problems of limited connection speed, hard disk space and other hardware factors, your ISP will most likely object to the sudden increase in requests they receive from people trying to view your masterpiece. There are many web-hosts out there, able to provide a web-space and a high-bandwidth connection so that many concurrent users can view your site in all its glory. Some are free, and some are not. You can find more information about various aspects of web-hosting and such at:
(Domains & Web Hosting)
Well, I hope this has helped you out Š and if you want to find out more, you know where to ask.