What exactly is HTML?

Basic concept

HTML is short for HyperText Markup Language. It is a way of formatting text, so the browsers can turn it into a readable page. We are talking mundane things like "here the text is in italics", "here we have an indent", "here we have a table", etc. HTML is not a program per se, which is why it is sort of misleading to call it programming a web page.

The reason that it is not entirely misleading is that we often use programming routines to make parts of the site/page do something specific, e.g. when clicking on a picture or fill out an application sheet. Especially with the current versions of HTML you have some tools at your disposal that resembles programming.

What can it do?

HTML is a part of the trinity that makes World Wide Web (WWW) work. When we navigate on the internet, we use three things: URL (Uniform Resource Locator) which is a database lookup, ensuring that when you write the name of a site, the computer contacts the right computer out there in the world. HTTP (HyperText Transfer Protocol) which is the programming routine that makes the various computers communicate and get the requested pages. And so, HTML is the part that tells how the page should look in terms of content and layout.

Is it dangerous? You hear so much about virus and other stuff!

In itself, no. HTML can't do anything dangerous, as it is only a tool for formatting the page.

The reason you hear so much about virus and hijacking of computers etc., is that you can combine your HTML with e.g. Java, JavaScript, php and many other types of programming, and with those you can do some nasty stuff. This is why you need to ensure that you have a firewall and antivirus on your computer... and ensure they are always updated. It is similar to a piece of paper. In itself it isn't dangerous, but if you use it for packaging of a bomb or anthrax, you obviously have something which is dangerous as a whole. Only it isn't the paper which is dangerous, but the content. Same thing with HTML. In its current form, HTML can only show the content of a page, the way you have coded/specified it to do.

Are there any alternatives to HTML?

Oh yes... several have appeared since HTML was introduced in 1992/1993... e.g. php, XML and XHTML. Actually, HTML was supposed to be phased out and replaced by other formats, but instead, some people decided to improve HTML, so it could handle the current requirements and remains a fantastic tool for making web sites.

The alternatives are covered on other sites, but yes, there are some excellent alternatives.