Advanced Web Technologies (CIS-2450) Home Page
This page is under development for the Fall 2024 semester!
This is the home page for Peter Chapin's Advanced Web Technologies course notes for the Fall
2024 semester. Here you will find electronic versions of class handouts, homework assignments,
lecture slides, and links to other references of interest. If you are a student taking
Advanced Web Technologies, consider bookmarking this page.
- The homework submission area and grade book are on Canvas but all other course resources
are here.
- The course syllabus gives an overview of the course and
its content, lists course resources, and describes the grading policy and related issues.
- During most of this course we will be using XAMPP as a
platform for development.
- For a development environment, we will use PhpStorm, an integrated development
environment (IDE) for doing PHP and web development by JetBrains.
- I've prepared some general information on submitting
assignments.
- My home page contains other resources of potential interest.
Lecture Topics
Both the lectures and the labs for this course are face-to-face.
Slides
Lab Assignments
The lab set is summarized in the lab summary document, along with
links to specific lab handouts and supporting code samples.
Samples
Because many of these samples contain PHP, the web server on Lemuria will normally interpret
that PHP and show you the result. The PHP is stripped before it is sent to the browser, so you
can't see it. To work around that effect, the "disabled" version of each file has been
renamed, so it is not interpreted by the PHP processor on Lemuria, allowing you to download
the actual sample.
Resources/Articles
HTML and CSS
- Mozilla has some nice (and relatively approachable) documentation about HTML and CSS.
- The HTML Living Standard as defined
by WHATWG is the most current and most authoritative definition of HTML. Note that WHATWG
took over the evolution of HTML from the World Wide Web Consortium (W3C) in May 2019.
Although the W3C is still involved in the development of HTML, it no longer defines the
standard.
- The W3C still controls the CSS standard (as
far as I can see).
- The W3C's Amaya browser is a technology
demonstration and web browsing/editing tool. Development on it seems to have stopped around
2012, so it is a bit out-of-date, but it is still an interesting concept-browser.
- Ryan's Tutorials have a much more digestible
presentation of HTML and related topics.
PHP
- The text is Programming
PHP, 4th Edition.
- The PHP Manual contains details on various
PHP language and library features.
- This page describes the process of setting
up debugging for PhpStorm. It is somewhat involved: you first install a third party
extension into your PHP installation (Xdebug). Next, you install an extension in whatever
web browser(s) you intend to use. Finally, you use the controls in PhpStorm to manage a
debugging session. It does work!
- Here is a nice tutorial on PHP's null
coalescing operator.
Apache
Linux
- PuTTY is a free SSH
client program for Windows. It is relatively simple, yet provides a rich collection of
features. I have a document that describes how to set up and use
PuTTY to access Lemuria (you only need to do the steps in Part 1 of that document). If
you are a Mac user, you might find these notes about SSH on
the Mac useful.
- I wrote an overview of Unix that provides some conceptual
background and describes some basic commands. It is an old document, and rather too long,
but you may still find it useful. There are many other descriptions of basic Linux commands on line. There are
also cheat sheets.
- For transferring files to and from Lemuria, you might find WinSCP useful. Use the "SFTP" transfer method
(file transfer over SSH) and don't forget to specify the non-standard port 2221 (and host of
lemuria.cis.vtc.edu)
Last Revised: 2024-05-20
© Copyright 2024 by Peter Chapin <peter.chapin@vermontstate.edu>