!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
CMSC 122 | ![]() |
Intro to Programming via the Web | |
Web Accessibility |
05/01/18 A few additional problems for practicing recursion can be found at this link.
05/01/18 Final Exam Information: The final exam is on Saturday 5/12 from 4:00PM to 6:00PM. You must bring a photo ID to the final exam. Please plan to arrive 10 minutes early so that we can get situated and begin on time. Rooms are being assigned based on your section number. We will be checking IDs at the door, and if you do not have a photo ID or you arrive at the wrong room you will be sent away. Please check the table below carefully for your room assignment.
Section Room Assignment 0101 JMZ 0220 0201 SHM 2102 0301 MMH 1400
04/24/18 Project #5 (the last project) has been posted!
04/17/18 Regarding project #4: I've been asked by a few students about how the borders are to be done. You should create a thin solid border around the entire table, and then also create a thin solid border around each cell (td element) of the table.
04/09/18 In class today I mistakenly said that today is the last day to withdraw from a class (with a grade of 'W'). Actually, you have until Wednesday this week to withdraw from a class. Sorry for the confusion.
04/09/18 Click this link for additional array problems to practice.
04/05/18 Project #4 has been posted!
03/13/18 Project #3 has been posted. This project will take significantly longer than the previous projects. If you wait until the last minute, you will not finish it. Please begin working on it right away!
03/04/18 The Term Paper assignment has been posted. (Under the "Assignments" tab, look in the section at the topped titled "Term Assignments".)
03/02/18 Even though campus was closed today, we will still have the exam on Monday, as scheduled. Be sure you are there! Please be on time and bring pencils with working erasers. If you miss class on Monday, your grade for the exam will be recorded as 0.
02/27/18 To prevent Komodo Edit from displaying errors every time you use document.write, follow these steps: Select "Preferences" from the menu. Click on "Syntax Checking". Then select "Javascript" from the dropdown list called "language". Finally, go down to the box that says "JSHint options" and add "evil=true" to what is already there (without the quotes). No joke, evil=true. If you're curious what's going on with this.... do a google search for "eval is evil" -- it's technical and a bit controversial! We're not going to do anything "evil" or even careless, so don't worry.
02/20/18 Project #2 has been posted!
02/12/18 Regarding project submissions: Be sure that the zip file you are uploading to the submission server is under 8MB in size. If it's too big your submission will be rejected. You may need to make your photos smaller. Any photo editing tool can resize photos and there are lots of websites like this one that can resize your images as well.
02/12/18 Fawzi's office hours on Tuesdays have moved to 10:30-12:30 for the remainder of the semester.
02/07/18 Regarding photos in the project: If your photos are being displayed "sideways" (rotated 90 degrees from how they appear in other applications) it is due to the presence of EXIF data recorded with the photo that "suggests" a proper orientation. Most browsers ignore this information. I suggest removing the EXIF data from the photo and then using a photo editing tool to rotate the photo, as needed. Here is an online tool that you can use to remove the EXIF data from a photo.
02/06/18 Project #1 has been posted! Look under the Assignments tab for a link to the project description.
02/02/18 Annoyingly, the HTML-5 template that should be built-in to Komodo Edit is not working in the current version of this program (11.0). Please click this link for instructions on how to create and use your own HTML-5 template so that you don't have to start from scratch every time you create a new web page in Komodo Edit.
01/25/18 For students in section 0101 (12:00PM lecture): The University's Accessibility and Disability Service (ADS) needs someone to take notes during class. The note-taker will be paid a small amount (approximately $75) at the end of the semester. If you're interested, click this link.
01/25/18 All CMSC122 students are required to attend the lecture for which they are registered. You may not attend one of the other lectures.
01/23/18 Welcome to CMSC 122 for the Spring 2018 Semester. Important announcements will appear here as the semester goes on. Be sure to look every day.
Welcome to CMSC 122. This course provides an introduction to the internet/web capabilities and trends, and to computer programming in the context of building simple web pages. Intended for students with no previous programming experience who wish to understand the technologies making web sites possible, this course will provide a set of practical problem solving skills necessary for the development of dynamic client-side web content. This class provides non-majors with a basic skill set for leveraging web technologies and limits of such resources.
The primary focus of the course will be development of dynamic webpages using HTML, CSS, and Javascript. We may also cover the following tangential topics, as time permits:
- History of the Web/Internet
- Internet and Society
- Web/Internet Fundamentals
- Web authoring tools
- Design (pseudocode)
- Testing/Debugging
- Web Page Evaluation
- Research-Quality Web Searching
- Basics of usability and art theory in web page design
- Basics of e-commerce and tool integration in the web
Fawzi Emad
There is no required textbook for this course and no assignments will refer to a textbook.
The web is full of useful information that can help you learn the material we will be covering, and we will suggest many (free) web resources as references as we go along. For students who like having a textbook as a secondary source of explanations and for practice problems, we recommend those listed below. Older editions of these books are just as useful as the newest editions, and there are many vendors selling these materials online for reasonable prices.
A textbook may be available as an eBook (EBK). This version is the actual text, costs less than the text,and is available for 180 days. It is downloaded directly to the student's computer.
Title Authors ISBN JavaScript: A Beginner's Guide, Second Edition John Pollack 9780071809375 HTML and XHTML Pocket Reference Jennifer Niederst Robbins 9781449363352 CSS Pocket Reference (Any Edition) Eric A. Meyer 9781449399030
Final grades will be computed according the following weights.
30% Projects 8% Research Paper 10% Quizzes (Some Pop Quizzes) 13% Midterm #1 13% Midterm #2 26% Final Exam
Programming Projects
The due dates for these assignments are rigid. Programming assignments will be due at 11:00PM on the date specified at the top of the project description. You may submit a programming assignment up to 24 hours after the due date, but you will be penalized 20 points (we will subtract 20 points from your total). No assignments will be accepted after the late deadline. Exceptional circumstances will be considered only if discussed with the instructor before the assignment is due. These assignments are to be submitted electronically according to the instructions provided in the project description. We will not accept programming assignments via email.
Projects in this class must be completed individually and collaboration is not permitted. All assignments can be done on the machine of your choice. You are welcome to do the work on a home computer if you have one. There should not be any machine-specific dependencies in your code. However, if we are not able to run your program because there is a difference between your and our computer environments, you must work with us to get your program to work in our environment.
You are responsible for reading the class announcements that are posted on this webpage often (at least once a day). Important information about the course (e.g., deadlines, project updates, etc.) will be posted in this section.
- Any student who needs to be excused for an absence from a single class session , due to a medically necessitated absence shall:
- You must notify the instructor (not one of the TAs) either by email or telephone message before the class session begins.
- Upon returning to the class, present their instructor with a self-signed note attesting to the date of their illness. The note must contain an acknowledgment by the student that the information provided is true and correct. Providing false information to University officials is prohibited under Part 9(h) of the Code of Student Conduct (V-1.00(B) University of Maryland Code of Student Conduct) and will result in disciplinary action.
- This self-documentation may not be used for the Major Scheduled Grading Events as defined below and it may only be used for 1 class meeting during the course.
- Any student who needs to be excused for more than one absence, or for a "Major Scheduled Grading Event", must provide written documentation of the illness from the Health Center or from an outside health care provider. This documentation must verify dates of treatment and indicate the timeframe that the student was unable to meet academic responsibilities. The documentation should be given to the instructor, not the TA. We will not accept a "self-signed" note for "major scheduled grading events", as defined below, nor for multiple absences. The note must be signed by a health care professional.
The Major Scheduled Grading Events for this course include:
- Midterm #1
- Midterm #2
- Final Exam
- Programming Projects
- Research Paper
It is also the student's responsibility to inform the instructor of any intended absences from exams for religious observances in advance. Notice should be provided as soon as possible but no later than one week prior to the exam.
The following are examples of academic integrity violations:
Your participation in the evaluation of courses through CourseEvalUM is a responsibility you hold as a student member of our academic community. Your feedback is confidential and important to the improvement of teaching and learning at the University as well as to the tenure and promotion process. Please go directly to the website (www.courseevalum.umd.edu) to complete your evaluations.
Any student eligible for and requesting reasonable academic accommodations due to a disability is requested to provide, to the instructor in office hours, a letter of accommodation from the Office of Accessibility and Disability Service (ADS) within the first two weeks of the semester. If special accommodations are to be given for any exam, then the student is also required to schedule the exam at least four days before the date on which the exam will be taken. Exams scheduled through the ADS testing center must be scheduled for a time that overlaps with the student's actual class time. You may not schedule the exam for an alternate date or time.
Monday | Wednesday | Friday | |
---|---|---|---|
Week 1 01/22 |
(No Classes Yet) | Course overview, Intro to Networks Lecture01.pdf |
Servers, World Wide Web, DNS Lecture02.pdf |
Week 2 01/29 |
URL's, HTML, tags Lecture03.pdf Examples03.zip |
HTML validation, practice session Lecture04.pdf | Comments, attributes, lists, links, etc. Lecture05.pdf Examples05.zip |
Week 3 02/05 |
Last day for schedule adjustment (drop/add)
is Tuesday (02/06) Images, tables, block vs. inline elements Lecture06.pdf Examples06.zip |
Practice Session Lecture07.pdf |
Quiz #1 Intro to CSS Lecture08.pdf Examples08.zip |
Week 4 02/12 |
CSS Children, parent, descendants; colors; size units; comments; selectors (universal, id)
Lecture09.pdf Examples09.zip |
Class selectors; pseudo-classes; Borders
Lecture10.pdf Examples10.zip |
Box model, fonts, backgrounds, positioning Lecture11.pdf Examples11.zip |
Week 5 02/19 |
Practice session (CSS) Lecture12.pdf |
Quiz #2
Research on the web; Validity of web resources Lecture13.pdf |
Intro to JavaScript; output, comments,
strings, variables, user input (prompt), variable names Lecture14.pdf Examples14.zip |
Week 6 02/26 |
Type conversions, Math functions, comparison operators, boolean variables, if statements Lecture15.pdf Examples15.zip |
More if and if/else statements
Lecture16.pdf Examples16.zip |
Review for midterm |
Week 7 03/05 |
Midterm #1 | Return and go over Midterm; Error console in Chrome Lecture19.pdf |
While loops; nested loops Lecture20.pdf Examples20.zip |
Week 8 03/12 |
Javascript comments, Do-while loops, Intro to functions Lecture21.pdf Examples21.zip |
More functions, parameters, return values
Lecture22.pdf Examples22.zip |
Practice session
|
Week 9 03/19 |
Spring Break | ||
Week 10 03/26 |
Local vs. global variables, Event driven programming, Javascript events and event handlers, dynamically updating HTML elements
Lecture24.pdf Examples24.zip |
Another dynamic example; "Pausing" with setTimeout
Quiz #3
Lecture25.pdf Examples25.zip |
Practice Session (Event driven programming; dynamic updates) Lecture26.pdf |
Week 11 04/02 |
For-loops Lecture27.pdf Examples27.zip |
Arrays
Lecture28.pdf Examples28.zip |
Practice with arrays
Lecture29.pdf Examples29.zip |
Week 12 04/09 |
Forms: buttons, text boxes Lecture30.pdf Examples30.zip |
Last day to Withdraw from a course. More forms: Multi-line text boxes, checkboxes, radio buttons, selection boxes Lecture31.pdf Examples31.zip |
Labels, Fieldset, Legend, Client-side form submission, get vs. post Quiz #4 Lecture32.pdf Examples32.zip |
Week 13 04/16 |
Practice session |
Roundoff error; increment/decrement operators; other forms of assignment Lecture34.pdf Examples34.zip |
Review for Midterm Lecture35.pdf |
Week 14 04/23 |
Midterm #2 | Go over Midterm; Moving JavaScript to separate file Lecture36.pdf Examples36.zip |
Begin recursion Lecture37.pdf Examples37.zip |
Week 15 04/30 |
More recursion. Lecture38.pdf Examples38.zip |
Continue recursion; break and continue Lecture39.pdf Examples39.zip |
Quiz #5 |
Week 16 05/07 |
Programming tips; Using color Lecture41.pdf |
Review for final |
(No Class) |
Fawzi Emad
Email:
Office: 3265 A.V. Williams
Office Hours: Tue 10:30-12:30, Fri 5-6
Office Hours | ||
---|---|---|
Smaraki Dash | (See table below) | |
Amin Ghiasi | (See table below) | |
Adam Hamlin | (See table below) | |
Rangfu Hu | (See table below) | |
Frankie Olmsted | (See table below) | |
Pattara Sukprasert | (See table below) |
All TA office hours take place in room 1112 A.V. Williams. Please note that a TA may need to leave 5 minutes before the end of the hour in order to go to his/her class. Please be understanding of their schedules.
MON | TUE | WED | THU | FRI | |
---|---|---|---|---|---|
9:00 - 10:00 | Rangfu | Pat | Pat | Rangfu | |
10:00 - 11:00 | Rangfu | Pat | Pat | Rangfu | |
11:00 - 12:00 | Amin | ||||
12:00 - 1:00 | Amin | ||||
1:00 - 2:00 | Smaraki | Frankie | |||
2:00 - 3:00 | Smaraki | Frankie | |||
3:00 - 4:00 | Amin | Frankie | |||
4:00 - 5:00 | Amin | Adam | Adam |
Assignment | Due Date |
---|---|
Term Paper | Sunday 04/08, 11:00PM |
Assignment | Due Date |
---|---|
"My Life" Web Site | Tuesday 02/20/18, 11:00PM |
"My Major" Page (HTML & CSS) | Friday 03/09, 11:00PM |
Fun With Loops | Thursday 04/05, 11:00PM |
Rock Paper Scissors | Thursday 04/19, 11:00PM |
Country Names | Saturday 05/05, 11:00PM |