Welcome to CS110
We think this is a wonderfully exciting course that will introduce
you to some of the cool things that computers can do and
put some of that power in your hands!
There are a few things you need to know right away:
Outline
- Big Ideas
- Course Overview
- Course Administration
- Brief Introduction to HTML
Big Ideas
- Representation of Information:
numbers, text, images, video, sound, web pages, programs,
encryption, compression.
- Problem Solving:
divide/conquer/glue, abstraction, modularity/reusability,
programming.
- Project Development Lifecycle:
requirements, design, implementation, testing.
Course overview
- HTML - HyperText Markup Language
- CSS - Cascading Style Sheets
- Some programming in JavaScript (not Java)
- Concepts and tools for graphics, sound, forms, animation,
movies and so forth.
- Social and ethical issues in the era of cyberspace.
- Designing a web site and implementing it using HTML, CSS, and
JavaScript.
Why Programming?
- Computer Science is about computation as a tool for
understanding the world: building models, experimenting, and
finding implications
- Programming is a formal notation for specifying
algorithms = computational recipes = procedures for doing things
- Programming constructs are the trees, computation is the
forest
Term Project!
- Form teams of two students and an advisor.
- Find a client in need of a web site.
- Specify client's requirements.
- Design, implement, and test
web pages.
- Deliver final product.
- Present your website in class.
See syllabus for schedule
details.
For the summer offering, there will be just two
phases: design (30 percent) and coding (70 percent). See the syllabus page
for due dates. Also, you will work by yourself and for yourself, not with
a partner or for a client. The design document will describe the set of
pages you will create, their names and interconnection (the navigation
structure of your site). Your minimum requirements will be:
- At least five pages
- A form validated with a JavaScript function
- Rollovers or some other JavaScript application
Course Administration
About your instructors
Behold! The power of links.
Course Texts
The required texts are listed on the administration
page. All the texts are available in the bookstore. Additional books
are in E101 and on reserve in the Science Center Library.
Grading
In-class exercises are not collected and graded. They are
for your benefit. Graded assignments are listed on the
requirements page.
Choosing a password
You will need to use an account on our department server (you'll
fill out the request in a minute) in order to do the work for this
course. Before you apply for an account, it's worth thinking about
passwords for a minute.
Why is it important to choose a good password? There really are
people trying to hack into computers on the net (many of them use
programs searching for unprotected computers). A good password is
therefore necessary for two reasons: 1) To protect your own
information from theft, unauthorized perusal, or destruction (and to
prevent others from using up your storage). 2) To protect others in
the community from the same problems should someone use your account
as a beachhead to mount an attack.
What are some good rules for passwords?
Getting Started
Today, in class, please fill out an
account request, which helps us set up a course account for you.
This form requires a "magic word"; your instructor
will tell this to you in class.
Classroom Computers
In this course, we meet in E101, which has 15 Macintosh computers
running Mac OSX. If you're unfamiliar with OSX, please read the following
Introduction to Mac OS X
Using C110-Q&A
- Drag this conference to your desktop and read it regularly.
- If you have a problem, scan recent message titles to see if your question
has already been asked/answered.
- Use meaningful titles in your own messages.
- In the body of your messages, provide an informative description of
your problem. "My page doesn't look right" or "my code doesn't work"
are not informative.
- Never post HTML, CSS, or JavaScript code. However,
if you want the instructor to look a a private page,
please include the URL to that page in your message.
- If you posted a question, but then figured out the answer, please
post another message indicating that your problem is solved.
Even better, explain the solution to help out others.
- When you pick a project, post a message that you've taken that project.
- Be patient in waiting for answers. The 110 staff regularly monitors the
Q&A list, but is not available 24/7. In particular, questions posted
at night may not be answered until the next day.
A Brief Introduction to HTML
Exercise
Use View/View Source in Safari or Firefox to look at the
source for this web page. Use your intuition to answer the
following questions. You'll learn better if you write out the answers
and compare them with your neighbor's answers. Discuss any
discrepancies or ambiguity.
- How is the title of a web page specified?
- How is a
TITLE different from H1?
(each web page should have a distinct title)
- How is
H1 different from H2? from
H3?
- What does
BLOCKQUOTE do?
- How is the beginning and end of a region marked?
- Are there any tags that don't have both a beginning and an
end?
- How are bullet lists done?
- How are hyperlinks done?
Ask questions about anything you don't understand. For now, don't
worry about the LINK tag, just notice its existence and
location; we'll talk about LINK in the next lecture.
HTML syntax
Computer scientists distinguish between the syntax of a
language (the alphabet, punctuation and word order) and the
semantics of a language. The syntax of HTML is fairly
straightforward:
- Every tag starts with a left angle bracket and ends
with a right angle bracket
- Most tags, such as
TITLE and H1, come
in pairs: a beginning tag and an ending tag. The ending tag is
always exactly the same as the beginning tag except it has a
forward slash (/) at the front.
- Some tags don't have an ending tag, and for some, the ending
tag is optional.
- Regions must always nest properly, like measuring
spoons or Russian dolls.
- Whitespace (e.g., spaces, tabs, and line breaks) in
the source usually don't matter. We'll warn you when they
do.
- Case doesn't matter in HTML: uppercase is the same as
lowercase.
BLOCKQUOTE is the same as
blockquote is the same as BlockQuote or
even BlOcKqUoTe (but don't do that). Pick a style you
like and stick with it: it'll be easier on your eyes.
Tell Us About Yourself
To help us get to know you, please send your instructor an email
describing a little about yourself,
what you're looking forward to (or dreading) about the class,
or anything else you'd like to say.
Send it to your instructor by the end of today:
© Computer Science 110 Staff
This work is licensed under a Creative Commons License
Date Modified:
Monday, 16-Jun-2008 12:24:23 EDT