810:088 PERL/CGI Web Programming
1st 4 weeks


You will need to use the user id (your ACAD UNI USER ID) and password that I passed out to take 810:088 ONLINE Quiz #1. After you finish taking the quiz, you will receive a Carbon Copy of the email message that I receive reporting your score and the way you answered the questions. There are six questions. You may take the quiz more than once, if you wish. Let me know if you lost or forgot your user id and password, and can't get to the quiz page. Your User ID is the one with 6 letters of your last name, your 1st initial, and FOUR digits.


Quiz Thursday June 21st: Quiz #1 study guide, with additional notes about the Interest Calculator assignment, and what to turn in as printout and what to mail jacobson@cns.uni.edu as URL. First assignment: PERL/CGI Interest Calculator, adapted from the Greg Perry Perl textbook.

Here is the working Cylinder Area Calculator from the Friday, June 15th hands-on lab class. Study it to develop the understanding and technique needed for the Interest Calculator.


Posted Monday, June 18th in the evening: Menus in HTML FORMs and RGB color triplets example. Try fewer than or more than 6 characters. Try 6 characters, but have one of them not be a legal base 16 digit.

Here is a demo of the incredible versatility and power of the CGI.pm module. Posted late Monday evening, June 18th.


Lab #1 hands-on class follow up message. We will thoroughly review the lab 1 class on Thursday, June 14th.
What to study from Greg Perry PERL in 24 Hours textbook for the Friday, June 15th hands-on lab class and Monday, June 18th lecture class.

What to study for Unix from the textbooks and future handouts and in-class group exercises.


Snowball sentences and Perl algorithms to break a string into separate words, and remove all the punctuation.

snow.cgi PERL CGI script that separates and displays the words of the snowball sentence. Best to view this one with Netscape instead of Internet Explorer.


Lecture #1 review and example HTML FORM and PERL/CGI script we will study for at least the rest of week #1, and probably up until Wednesday, June 20th. Compare this to your HTML, FORM, and PERL notes from the 1st class. Much of this material will be handed out on Tuesday, June 12th. Type in your name and the name of one of your VIP friends, and try out the CGI script.
Hands-on class on Wednesday, June 13th. Read about the internet account (internet password) and the newuser account (newuser password).
User ID and password are needed to access this web site. How can such authentication be set up? Its fairly easy to to in PERL, but it will be a couple of weeks before we look at the HOW. Check it out.
Experimenting with BGCOLOR and TEXT color. Using the transliteration operator to count hexadecimal digits. Using the PERL length function to count characters. Using random numbers to generate a random color value (hexadecimal triplet).

There are two textbooks for the class. The Castro book costs $20 and the Pierce book costs $25. The total textbook cost is happily well below the average student textbook cost for a 3 hour credit class.

The 810:088 PERL/CGI Web Programming has no prerequisites. Do not be intimidated by the Instructor's permission required, as that is just RED tape that goes along with the special course number 810:088 no matter what the TOPIC is. Call me at 273-7172 or email jacobson@uni.edu if you have questions or want your student number released to register for the class.


This course counts towards Microcomputer Certification . It can be substituted for one of the other four classes.
The textbook or textbooks have not yet been selected. When they are chosen, you will be notified here.
Here are several example PERL programs that illustrate the types of things you will be able understand and do to before the 810:088 class has its July 6th when the first half of the 8 week session ends.
PERL and C compared by the author of Coy.pm PERL module that adds haiku poetry to your PERL error messages.
Amazon.com: Can you tell us a bit about your Coy.pm module, which won the 
            1999 Larry Wall Award for Practical Utility? 

Damian Conway: Coy is a little bit of whimsy, built on some fairly solid 
               computer science. Put simply, it replaces any error 
               messages a program generates with an English haiku. 
               For example, if you divide a number by zero in Perl 
               you get this: 

               Illegal division by zero at demo.pl line 4. 

That's typical of error messages: curt, uncompromising, and accusatory. 
It's no wonder programming is stressful. But if you add the Coy module to 
your program, the same mistake produces this instead: 

    A songbird above a temple.

    Con Wei dying

    beside a river. 

    The Seventh Sage's commentary...

    Illegal division by zero ("The Way of demo.pl": line 4)

You still get the same information, but packaged in a much more harmonious 
and relaxing way! Coy even has subroutines that attempt to relate the 
subject of the haiku to the error message itself (though the relationship 
is often very oblique, as in the above example). 

Coy generates a new and different haiku every time an error is detected, 
so the error messages are always fresh, interesting, and unique. And that 
actually seems to help people pay more attention to them.