The goal of this lab is to give students experience with tools and techniques needed for programming, document processing and other general software-related tasks. The best way to learn a tool is by using it. Therefore the course will be based almost entirely on software assignments. Lectures will be brief and only cover concepts on selected topics to get you started. You will have to get into the habit of filling in all details through manuals. As an old Unix adage goes: "God helps those who help themselves, computer helps those who read manuals" The other great source of information these days is of course the web.
Topic | Date | Assignments |
---|---|---|
Overview of course | 28 Jul | Revise prerequisites mentioned above, set up your environment on your unix account |
HTML -- basic features, HTML forms and CGI | 4 Aug | Prepare your homepage |
PHP, Shell programming | 11 Aug | Augment home page with a CGI program and PHP scripts |
Perl | 18 Aug | Perl assignements on pattern matching, associative arrays and file operations |
More perl..Processes & networking | 25 Aug | Perl assignements on process control and web monitoring |
Document processing: latex, bibtex, figures, graphs | 8 Sept | design a latex document |
Programming tools: makefiles, version control, debugger, profiler, purifier, | 22 Sept | Assignment on makefiles |
Profilers, Visual development environments | 29 Sept | Assignment on profilers and version control |
Lex, YACC, Java programming | 6 Oct | |
GUI development using java | 13 Oct | |
Java servelets and applets, Database access | 20 Oct |