This course ended on December 13, 2011 |
Department of Mathematics and Computer Science Hobart and William Smith Colleges Fall 2011. Instructor: David J. Eck (eck@hws.edu) Course Handout: http://math.hws.edu/eck/courses/cpsc120_f11.html Monday, Wednesday, Friday, 12:20--1:15 AM Monday, Wednesday: Lecture in Room Napier 201 Friday: Lab in Room Gulick 208 Office Hours, Lansing 313 (If I'm not there, check the lab, Lansing 310.): Monday: 11:15--12:10 Wednesday: 1:30--3:00 Thursday: 10:00--11:30 Friday: 11:15--12:10 TA Hours, Lansing 310: Sunday through Thursday, 7:00--10:00 PM. (Note: TAs for Sunday, Tuesday, Thursday know some Web Site Development.)
Lab Worksheets | |||
Lab 1, September 1 Intro HTML and CSS |
Lab 2, September 9 Intro to JavaScript |
Lab 3, September 16 A Muti-page Web Site |
|
Lab 4, September 23 Publish a Web Site |
Lab 5, September 30 JavaScript Graphics |
Lab 6, October 6 If, and Form Elements |
|
Lab 7, October 14 Loopy Art |
Lab 8, October 21 Introduction to Gimp |
Lab 9, October 28 HTML Forms |
|
Lab 10, November 4 JQuery Animations |
Lab 11, November 11 AJAX and JQuery |
Lab 12, November 18 Work on Lab 11 or on Web Portfolio |
|
Lab 13, December 2: A Bit of MySQL and PHP | |||
Lab 14, December 9: Work on your Web Portfolio or Lab 13 |
Welcome to the course. You should read Book 1, Chapters 1 and 5, and Book 2, Chapters 1 and 2, from the textbook. These chapters cover some of the basic ideas of HTML and CSS. In lab on Friday, you will write your first web pages using HTML and CSS. You will be introduced to the Web site editor Aptana Studio 3, which we'll use throughout the course.
We will continue to look at HTML and CSS this week. Among the most important topics to be covered are the <div> and <span> elements and the id and class attributes, and how they are used in CSS. I will also discuss images, links, and URLs more completely. The reading for the week includes:
The lab on Friday will be a short introduction to JavaScript. I want you to get some experience early with how JavaScript can be used to modified the appearance of a web page. There is no reading from the book about JavaScript at this time. We will return to JavaScript in a more serious way after the first test.
We are already coming up on the first of three in-class tests! It will take place next week, on Wednesday, September 21, and it will cover everything that we've done in the first three weeks of the course, including the labs.
The reading for this week is Book 2, Sections 4 and 5. (Pages 250 to 256 are optional.) This will finish up HTML and CSS for the time being. After the test, we will do more work with JavaScript.
The first test is this Wednesday. An information sheet about the test is available.
On Monday, we will do examples and review for the test. (In fact, we mostly spent the day getting a preview of the fundamental aspect of programming: variables, assignment statements, functions, control statements, events, and data structures.)
For the lab this week, you will publish a web site on 000webhost.com, and you will start work on your web portfolio. (Note: The 000webhost.com idea did not work out at all, because their site would only let one person in the lab create an account! That part of the lab has been canceled. Nevertheless, you might want to try it out on your own.)
Following last week's test, we begin the second part of the course, in which we will work mostly on JavaScript programming. The first reading on this topic is Book 4, Chapter 1, especially pages 340 to 350. However, a lot of what we will be doing this week is not from the book.
For the lab this week, you will be using JavaScript to draw on a "canvas." The <canvas> element is a relatively new addition to HTML and is not supported in older browsers. (On Internet Explorer, it is only supported starting in Version 9.)
We will continue the study of JavaScript programming. We still have some work to do on variables, functions, and parameters. We will start working on "control statements" by looking at if statements and boolean-valued expressions. We will also start working with HTML form elements such as text input boxes, and we will see how they can be used in JavaScript.
HTML forms and form input elements are covered in Book 2, Chapter 7 of the textbook. For this week, we will only use a few of the form elements covered in that chapter. We might cover more of them in the future.
The JavaScript if statement is covered in Book 4, Chapter 2, pages 259--365.
Because of Fall Break, there is no class on Monday this week. As a result, there is only one lecture for the week. That lecture will introduce JavaScript for loops. The reading is Book 4, Chapter 3, pages 373--380. The reading covers while loops as well as for loops, but we will only cover for loops in class. You should also read Book 4, Chapter 4, pages 395--404, which covers functions, which you have already been learning about and using in lab exercises.
Because of the abbreviated week, the exercises from Lab 6 will not be collected on Friday. Instead, they will be due next Monday. For Lab 7, there will be a new exercise that uses loops.
There is a test coming up on Wednesday of next week, October 19. An information sheet is available.
There is a test on Wednesday. We will spend Monday reviewing for the test, and maybe looking at a few new aspects of JavaScript programming. The lab on Friday will be an introduction to the Gimp image processing program.
We will spend some time on Monday reviewing some of the material covered in the second quarter of the course. In particular, we will go over variables and how they are used in JavaScript. We'll also talk about a few new things, such as the onload event and why it is necessary.
After that, we take a break from programming and go back to HTML to cover HTML forms and input elements. We will see how forms are used with server-side programs. In the lab for this week, you will create some forms that will interact with programs on the math department's web server.
For reading this week, you only need to finish Book 2, Chapter 7, on HTML forms.
We started the week by looking at HTML tables, which are covered in the textbook in Book 1, Chapter 4, pages 74 to 81.
This week, we began our study of the JQuery JavaScript library. We covered how to use JQuery on a page, how to use an "init" function in JQuery, animations, and some basic events. This material is covered in the textbook in Book 7, Chapters 2 and 3, pages 747 to 760 and 771 to 790; however, we did not cover this material in as much depth as the textbook does.
This week, we cover AJAX and in particular how AJAX is used in JQuery. In the lab, you will work with AJAX to make a very simple interactive web page. The material that we are covering is mostly not taken from the textbook, but it would be useful to read pages 731--732 on the basic idea of AJAX and pages 418--421 on JSON object notation.
There is a test on Wednesday, November 16. An information sheet is available.
Aside from the test, we will spend Monday reviewing for the test and talking a little more about AJAX and JQuery. The lab on Friday will be part 1 of a two-part lab on the server side. Change of plan: There will not be a new lab on Friday. You can work on your web portfolio, or you can continue work on lab 11, which is due next Monday.
There is no class on Wednesday or Thursday this week because of Thanksgiving break. Happy Thanksgiving!
On Monday, I spent the period answering student questions about how various things work on the Internet. After break, we will look briefly at aspects of server-side programming: MySQL and PHP.
This week, we will be looking at two server-side technologies: databases and server-side programs. This will be just a brief encounter. We will consider relational databases, the SQL language, and the MySQL database server. For a server-side programming language, we will consider PHP. The textbook has large sections devoted to MySQL (Book VI) and to PHP (Book V). However, since we will be covering these topics so briefly, I don't suggest reading them. You should try to follow what we do in class and lab.
Reminder: The final exam is Tuesday, December 13, at 1:30 PM.
On Monday of the last week of classes, I will finish up my discussion of PHP, and I will talk about some aspects of the Internet and the Web that were not covered in the course.
On Wednesday, we will review for the final exam.
On Friday, class will meet as usual in Gulick 208 for a lab. You can work on your web portfolio and/or finish up Lab 13. Lab 13 will be collected on Friday at 3:00. You will fill out a course evaluation form at the end of the lab. You get 5 points for your lab grade for being there (and filling out the form).
The final exam will take place in Albright Auditorium at 1:30 PM on Tuesday, December 13. An information sheet is available.
Your web portfolio should be in final form by the time of the final exam. It will be graded some time after the final.