Learn to Publish Your Ideas on the Internet
Who am I?
My name is Daniel Talsky. I started computers and programming computers starting when I was 12, and I've been programming for the web for about five years. I own my own business with a partner, called Robotic Cat Communications. I do this every day, and I still like it, and I still get excited about it.
Why Web Publishing is Important
Why am I teaching about documents, instead of taking a different approach?
Documents are about ideas, and web documents are about being able to share you ideas with anyone.
Learning these skills is like learning carpentry, even a little. There will always be fine woodworkers who can build unbelievable cabinets, but even if you only know a little carpentry you can build a table you can eat on. This class is like showing you how to build a table.
Everyone has ideas, and if you just have the basic knowledge to distribute your ideas, you have a lot of power. Never before in history has absolutely everyone had publishing power. Just like the government, or the biggest corporation, you can publish your information in exactly the same way.
This is a real manifestation of free speech, and that's why I want to teach it.
Purpose of the Class
To understand the basics of making a web document, and publishing that document to the world wide web. This class will put you in a good position to take a more advanced web development class, and be able to study and understand books about web development.
To be able to understand and modify existing web pages.
Purpose of "Basic Web Design"
Class One
To understand what a document is, and how to think of a web page as a document. To be able to construct a simple, valid XHTML web page and see it display in a browser.
Filesystem and hyperlink basics.
Class Two
To use the style rules and tables to affect colors and fonts in a document.
How to transfer a file using FTP.
Purpose of "More Web Design"
To understand how to publish to the web, set up a basic hosting environment and upload files to it.
Basic Web Design
Class One
- Introductions
- What's going to be covered in each class.
- Some basic computer skills that are important for web development:
- Taskbar switching. (Web development usually involves multiple applications.)
- FireFox and browser tab switching.
- Saving and opening files. Saving files as text.
- Copy and paste with keyboard shortcuts.
- Documents:
-
What is a document?
- written document, papers -- (writing that provides information (especially information of an official nature))
- (anything serving as a representation of a person's thinking by means of symbolic marks)
- Use word to show formatting of a document.
- Example documents: tax form, resume, letter, article, report, web pages. Ask the class for examples.
- Text as the basic type of document.
- How do text-based containers do it? How would the class do it? How do proofreaders do it...markup. Hence, HTML.
- HTML:
- Tags are containers. Opening and closing tags in HTML.
- The basic form and containers of the web page. (Draw containers) html, head, title, body
- Doctype...w3c, standards...don't get too out of control!
- The browser, the rendering engine for HTML/CSS (compare to word). (Other browsers, ie, etc.)
- Basic Body tags: p, h1, ul/ol, li,div, span, b, img
- The incredible collapsing whitespace. pre tag
- HTML-Kit and XHTML documents.
- Maybe HTML special characters?
- Links and filesystem if possible. Explain hyperlinks.
- Resources and future learning.
Class Two
- Review of XHTML information and questions.
- Review of filesystem (or introduce with hyperlinks)/
- CSS, companion language to HTML.
- How CSS "hooks-into" HTML. First example using script tags, then inline.
- Default styles of HTML elements.
- Font, text and color styles.
- Basic page design.
- Inline vs. block style. Margin and basic box model.
- LINK tag and seperate stylesheets.
- HTTP Hypertext transfer protocol.
- The basic overview of a server: The server, HTTP, domain name.
- The server: it's just a computer running a specific kind of program. It's just like the computer you're on, and in fact, the computer you're on could be configured to serve web pages.
- HTTP is Hyper Text Transfer Protocol. We learned that HTML is HyperText Markup Language. So HTTP is used to "transfer" HTML pages (and other kinds of hypertext).
- So what's special about the computer is that it has to be running a special program called an HTTP Server. An HTTP server is basically a computer program that accepts requests for web pages, and then doles them out.
- More remote filesystems and FTP.
- This program (mention some, Apache, IIS, tomcat) basically just needs to know how to accept requests and how to find the files on that computer's hard drive so it can give them up.
- Every web page is sitting on a computer somewhere. You can pay a small monthly fee for this service and you don't need to know how to set it up.
- DNS connects the dots. Simplify. Places on the web have IP addresses, and domains are just friendly ways to refer to them.
-
Steps for having a place to put web pages:
- Get hosting.
- Find out your host's nameserver.
- Buy a domain name, point it at your host's nameservers.
- Tell your host what your domain is.
- Put an index.html file in your docroot.
- Wait 24-72 hours.
More Web Design
Class One
- Review XHTML
- More css, positional, the box model, etc, if it hasn't been covered... probably do a whole CSS refresher.
- Building a multipage site with navigation.
- Making navigation work.
Class Two
- Review of last class. Any questions?
- Workshop on personal projects.
- Study of existing simple sites.
- Modifying an existing web site.
- Take questions.
- Any time left? Go back and do some more CSS?