web developer | front-end web developer |
full-stack developer | |
UI designer (UI = user interface) | |
UX designer (UX = user experience) | |
graphics designer | |
… | |
web server administrator | dev ops |
network administrator | |
database administrator | |
… |
A user who visits a web site does so for a reason, e.g.:
Different users may have different goals
Consider users of the UCC web site, e.g.:
A well-designed web site…
Can everyone easily achieve their goals?
Don't assume anything!
We'll look at some examples of the challenges we face.
(Not exhaustive and not in depth)
a regular browser or special browser
+
a screen reader,
which sends the information from the web page to a speech synthesizer
Information conveyed exclusively in images is inaccessible to these users
Where images convey info, we must always provide an alternative
Fixed-width layouts (based on pixels) work only for a handful of devices
Instead, use liquid layouts (based on percentages)
And, better still, use responsive web design (which adapt to the dimensions)
Typically, images in web pages are external resources
— stored separately, in their own files, and
fetched separately
Image files are often large
Reduce! Reduce! Reduce!
Can you eliminate images?
Can you merge images?
Can you compress images?
harmful | beneficial |
---|---|
email harvesters | search engine crawlers |
list_of_urls = [www.example.org]
list_of_emails = []
while list_of_urls is not empty:
remove a URL from list_of_urls
send HTTP GET request to the URL
receive HTTP response
find all email addresses within the response
insert the email addresses into list_of_emails
find all hyperlinks within the response
insert the URLs of the hyperlinks into list_of_urls
Now sell the list of email addresses to spammers!
brocolli | p.2, p.17, … |
carrots | p.2, p.112, … |
cheese | p.6, p.17, p.28, … |
brocolli | URLs of pages mentioning brocolli |
carrots | URLs of pages mentioning carrots |
cheese | URLs of pages mentioning cheese |
list_of_urls = [www.example.org]
while list_of_urls is not empty:
remove a URL from list_of_urls
send HTTP GET request to the URL
receive HTTP response
find all important words within the response
for each important word:
in the index entry for that word, insert the URL
find all hyperlinks within the response
insert the URLs of the hyperlinks into list_of_urls
Disguise email addresses to make life difficult for email harvesters
Make it obvious what a web page is about to make life easier for search engine crawlers
Repeat until you find a prototype that can be finalized