Technologies
Introduction
This page is here to outline the different kinds of technologies available to you on the web, what they do, and how you might best make use of them.
HTML/XHTML
Over the years Web Technologies have continued to develop so that now, virtually any type of audio-visual media can be 'carried' via the Internet.
Most of these technologies however, have effectively been 'bolted-on' to the original web page construction language; Hyper Text Markup Language (HTML). You'll notice most web addresses begin with 'http://' which means 'Hyper Text Transfer Protocol', and end with .HTM or .HTML. (In case you're wondering, the 'HTM' extension is for backward-compatibility with older 'Windows' DOS computers, which had a limit of only 3 letters).
It should be noted that even addresses that end with other extensions (PHP, etc) are still essentially 'serving' HTML pages, only via a database.
HTML is still what is used for 80% of today's websites, and in isolation can be used to produce static web pages. This allows for text and images to be arranged on a page, with 'hyperlinks' linking to other pages within the website. Hyperlinks also allow you to link to other websites elsewhere on the web. Though it may not sound like very much, a skilled designer can do a lot with these basic building blocks, and in many cases a static HTML website will be all that you need to create a professional looking brochure style web presence.
HTML is what your web 'Browser' is designed to interpret, regardless of whom makes the Browser or what computer the Browser is being used on. Unlike other web technologies, HTML is the standard and guarantees your website can be seen by anyone accessing the web.
When you request a website be designed for you, the basic package will be based on a HTML website with a few standard extras such as JavaScript scripting (see below) and perhaps some very basic Flash (see below). It should be remembered that most of the cost in creating a website goes on planning, the graphic design, the layout structure, typography, etc.
XHTML is just a 'stricter' version of HTML that adheres to SGML 'well-formedness', making it compatible with XML and other Mark-Up languages. The use of the XHTML stricter syntax is recommended for all new websites.
Beyond HTML - An Overview
So HTML will be enough for most, but there are many other technologies that can be 'embedded' into HTML and used to enhance your website in a whole variety of ways.
It should be noted that all web technologies, apart from HTML, have some limitations in terms of their scope and compatibility. What is meant by this is that these technologies will only work under a certain set of circumstances. For example, Javascript scripting can be disabled by the user on his or her Browser. Very few people do this but users do have that option. Another example; Flash 'Movies' are used on many websites these days, but Flash requires a small piece of software to be 'plugged-in' to a browser before Flash Movies can be viewed. Again, nearly everyone has and uses this plug-in, but a few may not.
Another point is that some web technologies are propriety and only work with certain computer set-ups and software. For example, Active Server Pages is a web database technology owned by Microsoft. Microsoft licenses this technology, so it may not necessarily work in every situation.
Another important consideration relates to your hosting costs, and what are termed 'Server-Side' technologies. A basic hosting package is designed to 'serve' basic HTML pages. If you wish your host to 'enable' certain other 'Server-Side' technologies, such as .Net, JSP, CF, PHP, etc, then you may have to pay for these as extras to your basic hosting package.
(Note: Flash and JavaScript are 'Client-Side' technologies, and are not affected by your hosting package.)
For more on 'Server-Side' and 'Client-Side, go to: Terminology
Having said all this, most of the web technologies mentioned so far, and those to be listed below, are widespread and in common use. Most modern, major Browsers can deal quite happily with them all. You should however, do a little research to find the technology that most closely matches your needs.
The list below gives only a basic outline of some of the web technologies available. For a more detailed view go to: Resources for links to specialist websites covering each technology. Or search via the web.
DHTML, Javascript, Ajax, CSS, etc
DHTML - the 'D' stands for 'Dynamic'. Essentially DHTML is defined by the combining of two commonly used web technologies - JavaScript and CSS - and using them in conjunction with HTML.
These technologies will usually come as standard with a designers basic HTML quote/contract. They are both 'Client-Side', so they do not affect hosting considerations.
JavaScript - is a basic scripting language (programming), specifically created to work with web pages. Although capable of creating quite complex programming procedures, JavaScript tends to be used to make small but important enhancements to a website. It can be used to detect what Browser visitors are using to view your website, for example. This allows a designer to have versions of a website optimised to a visitor's set-up.
Another common use of Javascript is what's called creating image 'Roll-Overs'. This is what happens when a visitor places their mouse/cursor over an image and it changes to a different image. You see this often on website Menu/Link images.
JavaScript also works well with CSS, enabling other tricks and enhancements that would be impossible to achieve with HTML alone (See Below).
Ajax - is in some ways similar to DHTML in that it isn't a web technology in itself. Ajax (Asynchronous JavaScript and XML) is the name given to a a group of existing technologies that can be used to exchange web based data in a particular way. The main advantage of using Ajax techniques is that data can be updated without the need for the Web Browser to request a whole new webpage. Only part of a page is updated giving it functionality more akin to 'desktop' applications.
CSS - stands for Cascading Style Sheets. CSS is a standard extension to HTML (Version 4) designed primarily to help designers, by allowing greater flexibility in web page layouts and formatting.
Another important feature is the ability CSS allows in separating form from content. If say, you have a massive website with a 100 pages and 800 paragraphs contained within those pages. Suddenly you decide you want to change the font-size or colour of all those paragraphs. Normally this would mean changing each individually. With CSS you only need change one parameter value and all paragraphs will automatically update.
When combined with JavaScript, CSS gives you further options. An example is the ability to hide text or images that are only revealed when a visitor requests to see them. You could use this in a diagram perhaps, where the diagram includes 'hot spots' that reveal an explanation of the parts when a user places their cursor over them.
For more see: Resources
Flash, Video & Audio Streaming, etc
Flash is the 'de facto' multi-media technology for the web. It is capable of 'streaming' almost any media including animation, illustration, audio, music, images, video, etc. The plug-in required to view Flash 'Documents' is already on 95% of peoples web enabled systems, so compatibility is not really an issue. However, for important information you should still provide an alternative.
Flash is ideal for interactive projects. In this respect it has huge potential for educational (e-learning) work, computer games, video and audio jukeboxes, etc.
A Flash project can range from a simple short animation to a full blown web 'application' that links and interacts with other web technologies. Design and development times will therefore vary tremendously, as will the costs involved.
Flash is a true, extremely flexible, multi-media tool, but there are other more specialised technologies. Quicktime and RealVideo, for example, are technologies especially designed to stream video across the web. There are others also for music, e-learning, etc.
Database, Middleware Powered Websites
The last major area covered here relates to websites that are built around database technologies. Just like 'desktop' database applications, this technology enables websites to collect information, store information and recall information.
Web based systems are usually two-tiered; First is the actual database which holds and structures all your data. Common web based databases include; Oracle, SQL Server, MySQL and DB2. Second, is the 'middleware' or 'application layer' technology used to build an interface and allow interaction between the website user and the database. Middleware technologies include; PHP Hyper Processor (PHP), .Net, Java Server Pages (JSP) and Cold Fusion (CFML).
Most of these database and middleware technologies are interchangeable, ie CFML will work with MySQL or Oracle for example. You should however double check for any incompatibility issues that may exist.
For a working example of these technologies in action go to : www.amazon.com
The famous on-line bookstore allows visitors to type in information, "Michael Moore" say, and a moment later a list of books relating to Michael Moore appears. Amazon's website is a massive repository of information about books, and it is all powered by the humble (albeit an extremely expensive, custom built) database.
Virtually all web-based database technologies are 'Server-Side' technologies. This means that the 'host' computer that 'serves' your web pages must have the necessary software installed, in order for these technologies to work. So if you decide to use a web-based database/middleware technology, you need to make sure the hosting package you choose is capable of running it. You need also to be aware that these extra facilities are very likely to increase your hosting costs.
The cost of developing a database powered website can be quite high, especially if the database/middleware scripting needs to be custom built.
Content Management System (CMS)
A Content Management System is a special category of Database/Middleware application, specifically designed to allow a 'standard' website to be easily updated and maintained.
The application model is similar to a desktop application in that it offers a simple interface for making edits and updates to a website. A web editor for example, is able to 'login' to their CMS application via the web, make changes and have them instantly update on the public website.
Other advantages of a CMS, is that they make it easier to include interactive functionality on your website. This interactivity could include feedback forms and surveys, event calendars, blogs and forums, members only content, etc.
© Getawebsite 2008 - Web Design by Frieze Design, London.


