Lab: Web Technology

Covers
* HTTP (httplib, requests)
* XML (DOM, SAX or ElementTree)
* WSGI (wsgiref)
add Web Technology lab to Volume 3
add TCP/IP section

Outline rest of the lab.
explain JSON

Explain what JSON is and basic reading and dumping.
explain XML

Begin section on XML.  Explain the difference between DOM and SAX.
more xml content
initial commit of chat client/server

The grand culmination project of the lab.
Chat over HTTP using JSON.
introduce concept of serialization.
expand ElementTree explanations

give examples for parse and iterparse.
begin problem description

The students will write a message board client
add examples of an http get request
add datetime serialization problem

Students will need this to properly solve the big problem at the end of
the lab.

The message server requires a timestamp with each message and for
fetching new messages.
Merge branch 'develop' into webtech
rewrite introduction of lab
tcp server/client example
fix compile error
fix compile error in table

Explain TCP example code.

Include missing file.
make nicknames unique

Fix infinite loop.
explain TCP better
expand final problem statement