Saturday, August 24, 2013

Chapter 02: HTML Basics

Although I could spend pages explaining the differences between HTML, XML, XHTML, and HTML5, I think we'll just begin with the basics using the currently accepted methods.

To design, build, and develop web pages you really don't need any specialized programs.  Although programs like DreamWeaver and Front Page are great, all we really need is a text editor.  On a PC we can use Notepad, but I recommend Notepad++ (NEVER Microsoft Word).  On a Mac you can use TextEdit or TextWrangler.

Every HTML page will have two main components: A Head and a Body.

A basic HTML5 web page template:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Page Title Goes Here</title>
<meta charset="utf-8">
</head>
<body>
... body text and more HTML5 tags go here ...
</body>
</html>
After you have typed your web page into a text editor, save it to a folder with the extension .html (.htm works as well, but .html is the standard).  For example, you could save your page as whatever.html or index.html.

Testing:  Next you can test your document.  Generally it's easiest to simply double-click the icon of the file that you saved.  This will open the web page in your default browser (i.e. Internet Explorer).  You can also right-click the icon (if you're using a PC) and select, "Open With..." and choose which browser you would like to test. The first few pages you create will most likely look the same on all browsers and computer platforms,

Header Element:  The H1 to H6 tags are used for Headers in a web page, moving from largest to smallest.  As you'll find out later in the course, the H1 and H2 tags are the most important because they get indexed more readily by Google.  Also, Header tags are used by Accessibility programs (i.e. screen readers) and some page indexing programs.

Breaking Text:  The 'p' tag (short for paragraph) will break the text and add a blank line.  The 'br' tag (short for break) will break the text and continue immediately on the next line.

Lists:  Lists help you display information on your page in an easily readable format.  The types of lists below are actually show in a list -- in this case, an ordered list (although I will use an unordered list a little later).
  1. Ordered Lists: These are generally numbered and imply an order or importance.  They can be indicated using the "ol" (ordered list) tag with individual items being added with 'li' tags.  HTML5 now offers a 'reversed' attribute, which is nice for doing a countdown.
  2. Unordered Lists: These are generally bulleted lists and imply no particular order or importance.  Be aware, however, that Unordered Lists are considered obsolete and are being deprecated because they convey no value.
  3. Description List:  HTML5 introduces this "new type of list" -- which is basically exactly like the "definition list" which has been deprecated -- kind of.  It's basically the same thing.
Special Characters:  The copyright symbol © is an example of a "special character" that you may want to add to your web page.  Doing the &___; with "copy" in place of the lines will give you the correct symbol. Another use would be to substitute nbsp (non breaking space) which lets you separate words/characters by more than one space.

Div Element:  This is a way of saying that everything between the 'div' and the '/div' is a specific "division".  A block of "stuff" separated by a blank line on top and bottom.  We'll be learning some other useful structural elements as well, but for now let's focus on the Divs.

Hyperlink Elements:  Hyperlinks make web pages interactive.  They are the "buttons" that users can click on to navigate to other pages or open other files.  When creating hyperlinks, try to keep accessibility in mind.  For example, if someone [a visually impaired person, for example] is using a screen reader, a link which says "Search the course schedule" is more useful than "More information".

(Note: I am using { } in place of < > so the program doesn't assume actual links)
  • Anchor Tags: "Anchors" (used with the 'a' tag) is a link to another page or file.
  • Absolute Hyperlinks:  Using the anchor tag, this is the way we would link to an absolute address.  For example:
    <a href="http://www.mypage.com/pictures/me.jpg">My Picture</a>
    will always point to that specific address.  It's like telling a cab driver to take you to 123 North Main Street, Lakeport, California and park in the alley behind the red fence.  No matter where you are [or where the taxi is] they will find that place.
  • Relative Hyperlinks:  Using the anchor tag, this will link to a relative address.  For example,
    <a href="mypage.html">My Page</a>
    would open mypage.html if it existed in the current folder.  It's equivalent to telling a cab driver to stop at the red house.  Obviously if you're on a different street, the red house will be a DIFFERENT red house -- or there may not BE a red house.  The positive to using a relative hyperlink is that if you use the same collection of pages in a different site, you don't have to change every link.
  • Email Hyperlinks:  Again, using the anchor tag you will specify a link which will open an email program.  For example:
    <a href="mailto:rgriffith@mendocino.edu">rgriffith@mendocino.edu"</a>
    would [if equipped] open an email program and compose a new email to rgriffith@mendocino.edu.  Note: Some people set up their programs to show "Email Me" instead of showing their email address.  This is not recommended since many people don't have email programs set up to automatically open when clicked.  People often highlight the email address, copy it, and paste it into a program like Gmail.
HTML Validation:  W3C has a validation service at http://validator.w3.org which HTML coders can use to validate the syntax of their web pages.  It's definitely worth trying, especially if you're having trouble finding pesky little problems (missing semicolons, for example).

(Watch: "How Search Works" by Google)


These are a couple of previous tutorials which I have not updated since the release of HTML5, but they should give you a pretty good handle on what is going on here.


Tuesday, August 20, 2013

CSC 130 Class Syllabus

Syllabus: CSC 130: Web Page Design & Development
Instructor: Robert Griffith (rgriffith@mendocino.edu)

Required Text:
Web Development & Design Foundations with HTML5, 6th Edition by Terry Felke-Morris. Published by Addison Wesley. ISBN 0-13-278339-8, and is available at the Mendocino College Bookstore.  (Author's website for the text book: http://www.webdevfoundations.net)

This is a link to the publishers page where you can also order a web-based copy of the book:
http://www.mypearsonstore.com/bookstore/product.asp?isbn=0132783398

Note, however, that you can get the book cheaper at Amazon here or here.

Also, if you print out a book reseller (i.e. Amazon) the Mendocino College Book Store will do price matching.

In addition to the required textbook, there is a wealth of free information about XHTML and other web design technologies on the Internet. One excellent site is http://www.w3schools.com.

Students are not required to purchase any software. All software necessary for this course is available on the Internet as either trialware or freeware.

Course Description

This course includes the basics of creating web pages using HTML5 (including page and text formatting topics such as lists, tables, frames and graphics). Advanced web page construction topics are introduced, such as web page construction tools, interactive web pages, and graphics production. Students will create and publish a number of web pages.

Student Outcomes and Objectives

At the conclusion of the course, students will be able to:
  • Design, create, test, and verify web pages using XHTML tags.
  • Demonstrate the ability to use the World Wide Web as a learning resource.
  • Demonstrate the ability to produce visually appealing web pages by applying visual design principles and including visual elements such as graphics.
  • Demonstrate the ability to apply a variety of formatting options in the creation of web pages, including the use of style sheets.
  • Demonstrate the ability to use a variety of web page elements, including lists, tables, frames, and links
  • Demonstrate the ability to use some advanced tools and techniques in the creation of web pages, such as WYSIWYG editors, forms and interactive web page technologies.
Method of Instruction

This is an online class requiring students to be self-motivated and organized.  Time management is critical.  This class is hands-on with weekly assignments. Each week students can expect 2 hours of reading and 3 hours of hands-on computer work (including design, research, video tutorials, and online [eTudes] participation.

Because we do not meet face-to-face, I will attempt to supplement the text book by streaming video instruction and online activities as well as a variety of eTudes tools (chat, message forums, surveys, tests, etc.).

If you have difficulty with any aspects of the course [things not working, not understanding the assignments, etc.] please contact me ASAP.  You are responsible for your own learning.

Procedures and Policies

Students are required to follow the procedures and policies established by Mendocino College. Please note the following procedures/policies found in the course catalog:

Dropping and Grades of Withdrawal (see page 9 of the 2006-2008 course catalog for complete text) - "TelReg may be used to drop a class during the allowed drop period or the student may submit a completed drop card at Admissions and Records at the Ukiah Campus, or the Lake or Willits Centers."

Note: The instructor will not drop Students who are not participating. It is the responsibility of the student to take the appropriate steps to drop the class. Students who fail to turn in work and fail to drop the class risk failing the course. If you cannot complete the course, do not fail! Drop the class!

Students are required to adhere to the college's Academic Honesty Guidelines

All Mendocino College students are expected to avoid any type of dishonesty including: Plagiarism (copying someone else's sentences/phrases without properly citing the source), fabrication, duplication of assignments (your own or that of another student), and/or aiding in dishonesty. (See page 14 of the 2006-2008 course catalog for full text of the policies)

Additionally, CSC130 students must not use graphics, videos, or audio, which are subject to copyright law.  In addition to college disciplinary action, violation of copyright law in an arena as public as a website subjects students to the possibility of a legal action, including lawsuits and fines, should the copyright holder choose to prosecute.  It is tempting and easy to use cool images from the Internet, but do not do it, it is not worth the risk.

CSC130 students who violate the college's Academic Honesty Guidelines or copyright law will receive a failing grade on the assignment. Should a second violation of copyright law or Academic Dishonesty occur, the student will fail the course.

Grading Policy

While the majority of the grade is based on completed assignments, there will be chapter quizzes to ensure that students are keeping up with the reading.  Students are required to complete weekly assignments.

A weighted grading scale is used to determine final grades as follows:
  • Getting Started Activities 5%
  • Chapter Assignments 50%
  • Final Project 40%
  • Final Exam 5%
The grading scale is as follows:
A = 90-100%  /  B = 80-89%  /  C = 70-79%  /  D = 60-69%  /  F = 59% or less
Credit = 70% or better

Note: Students interested in the credit/no credit option must file the appropriate paperwork with the Admissions and Records office BEFORE the cut-off date, (TBA).
Tentative Schedule:
Week Begins CSC 130 [ONLINE]: Topics & Reading Assignments
1 19-Aug  Chapter 1: Intro to the Internet & WWW / Google, Gmail & Blogger
2 25-Aug  Chapter 2: HTML Basics
3 1-Sep  Chapter 3: Configuring Color and Text with CSS
4 8-Sep  Chapter 4: Visual Elements and Graphics / Photo Editing
5 15-Sep  Using FTP / Setting Up FTP Accounts
6 22-Sep  Chapter 5: Web Design
7 29-Sep  Chapter 6: Page Layout
8 6-Oct  Chapter 7: More on Links, Layout & Mobile
9 13-Oct  Chapter 8: Tables
10 20-Oct  Chapter 9: Forms
11 27-Oct  Chapter 10: Web Development
12 3-Nov  Chapter 11: Web Multimedia and Interactivity
13 10-Nov  Chapter 12: E-Commerce Overview
14 17-Nov  Chapter 13: Web Promotion
15 24-Nov  Chapter 14: A Brief Look at JavaScript
16 1-Dec  Final Project: Complete and Publish
17 8-Dec FINAL EXAM

Chapter 1: Introduction to the Internet and World Wide Web

  1. Browse Chapter 1 of the textbook but focus specifically on Accessibility and the Web (p.5) and Ethical Use of Information on the Web (p.7-8). 
  2. This video shows what people in 1969 thought the future of technology might be.  It's short and interesting to see just how accurate these predictions were:
  3. Check out this brief video about the Internet from 1981.  It's pretty amazing to see how far we have come. 
  4. Check out this news story video which was from a few years later and was talking about the Internet.
  5. Don't stress over the "alphabet soup" that is web page design.  I tend to avoid questions such as "Define the following: CERN, NCSA, NSF, ARPA, W3C, TCP, XML, XHTML, CSS, etc.".  I mostly want you to get a feel for where these things came from and their context.  To help with this, check out the brief video called "Warriors of the Net".  This video does a great job of explaining how the Internet works in human terms -- while still managing to fit in some "computerese".  I like it.  :)