and tags of the static html file in example - are missing strictly speakingsuch tags should be printedbut web browsers don' mind the omissionsand this book' goal is not to teach legalistic htmlsee other resources for more on html guis versus the web before moving onit' worth taking moment to compare this basic cgi example with the simple gui of example - and figure - herewe're running scripts on server to generate html that is rendered in web browser in the guiwe make calls to build the display and respond to events within single process and on single machine the gui runs multiple layers of softwarebut not multiple programs by contrastthe cgi approach is much more distributed--the serverthe browserand possibly the cgi script itself run as separate programs that usually communicate over network because of such differencesthe standalone gui model may be simpler and more directthere is no intermediate serverreplies do not require invoking new programno html needs to be generatedand the full power of gui toolkit is at our disposal on the other handa web-based interface can be viewed in any browser on any computer and only requires python on the server machine and just to muddle the waters furthera gui can also employ python' standard library networking tools to fetch and display data from remote server (that' how web browsers do their work internally)and some newer frameworks such as flexsilverlightand pyjamas provide toolkits that support more full-featured user interfaces within web pages on the client (the rias mentioned earlier)albeit at some added cost in code complexity and software stack depth we'll revisit the trade-offs of the gui and cgi schemes later in this bookbecause it' major design choice today firstlet' preview handful of pragmatic issues related to cgi work before we apply it to our people database running web server of courseto run cgi scripts at allwe need web server that will serve up our html and launch our python scripts on request the server is required mediator between the browser and the cgi script if you don' have an account on machine that has such server availableyou'll want to run one of your own we could configure and run full production-level web server such as the open source apache system (whichby the waycan be tailored with python-specific support by the mod_python extensionfor this howeveri instead wrote simple web server in python using the code in example - we'll revisit the tools used in this example later in this book in shortbecause python provides precoded support for various types of network serverswe can build step adding web interface