HTML is often generated dynamically from a server-side scripting language like PHP.
People who "write" HTML, either by hand or generating it dynamically with a server-side script they wrote, are said to be doing Web Development. (Using a WYSIWYG tool to create HTML, is not considered web development.)
I've been writting HTML markup by since 1995. I contributed to the creation of HTML 5. And contributed to the creation of a number of Microformats.
There have been a number of different versions of HTML: HTML 2, HTML 3, HTML 3.2, HTML 4, XHTML 1, and XHTML 1.1, XHTML 2, and HTML 5.
For a full list of and a references for all the HTML Elements, see my HTML Elements page.
A simple example of an HTML file is...
<html> <head> <title>Example Title Here</title> </head> <body> <p> Hello world! </p> </body> </html>