To understand the web, you need to know the difference between HTML or static pages and CGI or web programing.

Standard pages are just static pages that do nothing at all. It is as effective as printing a paper page and posting it up for everyone to see, it has value, but it always remains the same.

If you want a website to do something significant, such as collect credit cards for sales or allow people to shop and add items to a basket until they check out and pay, ou will need CGI.

CGI or Common Gateway Interface is the way the user is allowed to access programing run by the server. Essentially, a user would be able to do anything that the computer can do via a web interface.

This take the static page of HTML to a new level. Allowing for full interaction of the user and the server. Opening the door for programming like bumblebeeworks that allows the user to build a website. Or sites like myspace that allow users to build pages and search other pages.

In most cases, HTML is built using WYSIWYG editors and uploaded to the server. But HTML is not much fun. So programimg is added.

Some programing is basic like guestbooks that allow the visitors to post messages on a page. Other programing may allow users to place classified ads and pay for them. Other users may search the ads and often comment or contact the advertiser.

CGI is the technology that makes a website work. But all pages are served in HTML which is the standard for the assembly of the actual page.

Forms are used to post to programs that give responses. The response could be as simple as a thank you page or complicated responses such as driving directions between two locations.

The resulting page is static, but the CGI takes the data processes it in the back end and feeds back the final answer.

CGI is not a replacement for HTML but rather a coexisting function, one cannot survive without the other.

CGI can be accessed using many languages such as ASP, JAVA, CFM, PERL, C, RUBY, PYTHON and others.

Programers can build just about anything into a website and using Asynchronous JavaScript posts can be automated making the site smoother and seemingly more like ones own computer than static web pages.

The web has come a long way since the early days and most of the reason is CGI. Without the ability to offer programing on websites, we would still be browing static pages and picture galleries.