Flashback
At the end of the last century the corporate homepage of my employer celebrated its fourth birthday. The site was hosted by a provider who didn’t support any dynamic features like CGI. Most of the pages have been static and have been updated once in two month. There was only one exception; a calendar site that should always be actual. All changes have been transmitted to our external web designer. He adjusted the appropriate HTML page and sent it to our provider.
I was asked to simplify that procedure. At this time I have never written a web page before. I knew the basics and started my first web adventure. I examined the current calendar page and guess what, it was a simple html table included in a customized head and footer. I moved the calendar data to an access database and wrote a small VB6 form. The data was edited in a grid and a click on a button produced the html file and uploaded it to our homepage with ftp. The html creating function looked something like that:
Public Function MakeHTML(rs As recordset) as string
Dim html As String
html = html + "<html>"
html = html + " <body>"
html = html + " <table>"
While Not rs.EOF
html = html + " <tr><td>"
html = html + rs!Date + " " + rs!event
html = html + " </td></tr>"
rs.MoveNext
Wend
html = html + " </table>"
html = html + " </body>"
html = html + "</html>"
MakeHTML=html
End function
This calendar has been so popular that a subset of this data should have been published to a second internet domain. This page had a different design. Moreover the design of our home page changed frequently too. I changed my approach. I installed PHP locally and batched it from my application to produce the html pages. I can’t remember the proper PHP syntax, but the templates looked similar to that:
<html>
<body>
<table>
<? php while (not rs->eof): ?>
<tr>
<td>
<?php echo rs->fields(“date”) +” “+ rs->fields(“event”); % >
</td>
</tr>
<?php
rs->MoveNext;
end while; ?>
</table>
</body>
</html>
In my memory the creation of these html files are my really first steps in "code" generation. Ok, the output is not a programming language, just html. We use it daily in our asp.net, asp, php, jsp...pages. Nothing special.
By the way, until now the calendar is still present in internet. The dates are nowadays maintained in a Windows Sharepoint Service list inside our intranet. XSLT-Stylesheets transform the list on the fly to our customers at our home page.