Syllabus
Web Application Development
MIS2402 – Section 4
Spring 2025
Instructor:
Jeremy Shafer (jeremy@temple.edu)
Physical Office: 209D Speakman Hall
Phone: (215) 204-6432
Profile: http://community.mis.temple.edu/jshafer
Office Hours:
- 2:30 pm – 3:30 pm every Monday & Wednesday
- Other times by appointment
- Office hours are in effect 1/13/2025 through 4/28/2025
- Email: jeremy.shafer@temple.edu (Please be specific in your email communication with me, kindly include your name, course, and section for a faster reply)
Class Locations and Time:
- Section 4: 11:00 am to 12:20 pm, Tuesday and Thursday, In Person, Speakman Lab 12
- Section 4 on the web: https://community.mis.temple.edu/mis2402sec004spring2025
Prerequisites:
Either MIS2101 or MIS2901 are prerequisites. Students must also take MIS2502 in the same or prior semester. Prior programming and/or web development experience is advantageous but not required.
Course Description:
The ability to program in any language is a great asset to any person working in IT, regardless of his/her chosen area of expertise. Likewise, the Internet is a pervasive element in all IT solutions. An understanding of the underlying protocols of the Internet and how web applications work is advantageous to any IT professional.
This hands-on programming course uses open-source software to provide students with an understanding of programming fundamentals. This class is designed to develop individual proficiency and reward individual achievement as students develop the skills necessary to create solutions that interact with web APIs.
To develop a web application, the student must develop competency in multiple technologies and ultimately use them in combination to create a whole solution. This class is structured so that individual technologies are introduced and then combined to create increasingly more sophisticated results.
Generative AI tools (such as ChatGPT) do not promote the deliberate, step-by-step thinking that this course aims to nurture. Consequently, this course is structured to create an AI-free learning environment. While this environment may not reflect the modern workplace, it is a necessarily contrivance to make learning possible.
Course Objectives:
- Learn and apply the basic principles common to all programming languages (e.g., variables, algebraic expressions, logical expressions, if/else statements, loops, functions, arrays, and objects) using JavaScript.
- Develop the logical thinking skills necessary to break down tasks into component steps and express those steps in code.
- Be able to use debugging tools to identify problems with the code.
- Learn the basic structure and syntax of HTML5, CSS, and JavaScript. Be able to use and combine these languages to present a complete solution.
- Get an understanding of client/server interactions.
- Be able to use Web APIs and related protocols to send and retrieve data.
- Observe and learn the basic syntax of the HTTP protocol necessary to send and retrieve data from an API.
- Explain the concept of Single Page Architecture. Use simple jQuery commands to implement a simple Single Page Architecture.
- Be able to handle and validate user input via HTML forms.
- Learn how to use tools (i.e., libraries/frameworks) that can speed and simplify application development (e.g., Bootstrap and jQuery).
- Demonstrate the ability to get data from multiple third-party APIs and use it in the Web Application.
How This Course Will Be Taught:
This is a traditional, in-person class. We meet synchronously on Monday and Wednesday each week.
At the discretion of the instructor, some or all class meetings may be declared as “Workstation Only Days”. In these meetings, students should only use the computer workstations in the classroom. Students should not be using laptops, phones, or other devices to do class work on these days.
MIS Department Instructional Practices:
MIS faculty intentionally nurture student behaviors that promote critical thinking, curiosity, and perseverance. In this class, this means:
- Ask good questions in class
- Independently experiment to discover answers
- Break large tasks down into smaller tasks
- Don’t be satisfied with “magical” solutions
- When your code doesn’t work, step back, think, and try again.
- Turn in your work on time.
- Code a little each day. Not all at once before a due date.
Textbook and Materials:
Textbook
JavaScript Absolute Beginner’s Guide (2nd Edition) by Kirupa Chinnathambi
Series: Absolute Beginner’s Guide
Paperback: 464 pages
Publisher: Que Publishing
Language: English
ISBN-13: 978-0136502890
ISBN-10: 013650289X
Style Guide:
The instructor will provide a style guide that outlines what elements of the JavaScript language should be taught and used in this course. The style guide will also explicitly identify language elements (features, methods, techniques) that are not to be used.
The intention of the style guide is to establish clear expectations between the student and the instructor, and to nurture clear, step-by-step thinking. Clear, step-by-step thinking helps the student to adapt to programming languages other than JavaScript in the future. An over-reliance on short cuts specific to the JavaScript language does not nurture this learning.
Software:
Students should download and install Visual Studio Code. This free software runs on both Mac and PC platforms. It is important for students to install Visual Studio Code in the first week of the semester.
Visual Studio Code can be found here: https://code.visualstudio.com/Download
Additional Software
Later in the semester, students will need to install the following additional software.
Windows PC users will be expected to install the Bitvise SSH client.
The Bitvise SSH client can be found here: https://www.bitvise.com/ssh-client
Mac users will be expected to install FileZilla.
The FileZilla software can be found here: https://filezilla-project.org/download.php
Both FileZilla and Bitvise are free software products.
Other resources
This LinkedIn Learning video: Practical HTML for No-Coders (by Jen Kramer)
(To get full access, login at https://linkedinlearning.temple.edu )
Students are expected to own a personal laptop with a working audio/visual capability for web conferencing. See: https://www.fox.temple.edu/current-students/laptop-policy/
Limited resources are available for students who do not have the technology they need for class. Students with educational technology needs, including no computer or camera or insufficient Wifi-access, should submit a request outlining their needs using the Student Emergency Aid Fund form. The University will endeavor to meet needs, such as with a long-term loan of a laptop or Mifi device, a refurbished computer, or subsidized internet access.
Evaluation and Grading:
Graded Items
Item |
Percentage |
In Class Activities (14) |
10% |
Assignments (10) |
15% |
Quizzes (12) |
40% |
Final (Hands-On) Exam |
35% |
Letter Grade Scale
94 – 100 |
A |
73 – 76 |
C |
90 – 93 |
A- |
70 – 72 |
C- |
87 – 89 |
B+ |
67 – 69 |
D+ |
83 – 86 |
B |
63 – 66 |
D |
80 – 82 |
B- |
60 – 62 |
D- |
77 – 79 |
C+ |
Below 60 |
F |
IMPORTANT NOTE: Students who fail to earn the required MIS PRO points will receive an “Incomplete” for this course regardless of performance on exams or class participation! See the MIS Department PRO Points Requirement section of this document for details.
Grades are always communicated to the student as a percentage – i.e. on a scale of 0 to 100.
Once a grade is communicated electronically students have a 1-week window of time in which they may approach the instructor during office hours and question the grade received. Grade adjustments will not be considered after this window has closed. Of course, during the last week of the semester, study days, and finals week, the 1-week window may shorten.
Grade adjustments will not be considered 48 hours after the last day of final exams.
Exams and Quizzes:
The dates of the quizzes and exams are documented in the class schedule. There will be no impromptu (‘pop’) quizzes or exams.
Students will be given instructor-provided notes on Hands-On exams and/or quizzes.
There is only one exam. It is administered during finals week. Students are required to take 12 quizzes. There are two kinds of quizzes: Traditional and Hands-On.
Traditional Quizzes
Traditional quizzes are roughly 10 minutes in length. They are usually administered at the end of class in the second meeting of the week. Students are not permitted to use notes, phones or computers on the traditional quizzes.
Traditional quizzes are designed to evaluate the learning of students inside and outside the classroom. Traditional quizzes are paper/pencil based. The format of the quizzes will vary from week to week. Here are some of the possible question formats:
- Answer a multiple choice or a short answer question
- Write a very short portion of code by hand
- Identify one or more errors in a code sample
- Read a code sample and determine its output
Hands-On Quizzes
Five quizzes will have a different (non-traditional) format, they will be “Hand-On” quizzes. The Hands-On quizzes are designed to evaluate a student’s ability to apply concepts learned in the class. They are also intended to help students prepare for the final exam.
The Hands-On quizzes are given the same weight as the Traditional quizzes. Students are allotted an entire class period to take a Hands-On quiz. Students are encouraged to think of the Hands-On quizzes as low-stakes practice opportunities for the final exam.
The final exam will be similar in nature to the Hands-On quizzes. The final exam accounts for a greater percentage of the student’s grade.
Students will be given instructor-provided notes for use on Hands-On exams and/or quizzes.
The Administration of Hands-On assessments
The Hands-On assessments are technical exercises completed in a fixed amount of time. Whenever possible, these are conducted in class, and students must use a workstation in the classroom to complete the exam. No other electronic device is to be used for the exams.
What happens if you miss a quiz or exam?
Make-up exams/quizzes will not be given. Exceptions are reserved for:
1. Students who make prior, mutually agreed upon, arrangements with their instructor.
2. Documented hospitalization or other extreme circumstances.
If an exception is made, students may find the content of the make-up exam/quiz to be more difficult than the original. It is, therefore, to the student’s advantage to show up for the exam at the scheduled time and take it with the rest of the class.
In the absence of an exception, students who miss a quiz will receive a grade of zero for the quiz.
Assignments:
Throughout the semester assignments will be provided to compliment instruction. These assignments will be graded. There are 10 graded assignments provided in the semester. Unless otherwise stated by the instructor, students are expected to complete each assignment independently, and without the assistance of A.I. resources, or other aids.
Some of the assignment start files have been deliberately “contaminated” with one or more errors. This is a deliberate strategy to help students improve their debugging / troubleshooting skills.
Assignments typically conclude with instructions to “submit your work on canvas” and/or “publish your work to the class server”. You must upload your work as directed by the instructor to receive credit for it.
Work submitted any other way (e.g. email) will not be graded.
Assignment solutions will not be provided by the instructor. Students who struggle with a particular assignment are encouraged to seek assistance from the ITA, the MIS Helpdesk for Coding, and the instructor. This is advisable even in cases where assignment the due date has passed.
Assignments that use code (syntax, techniques, etc.) explicitly forbidden by the style guide will automatically receive a grade of zero. Students are expected to construct their own solutions using the programming features and elements provided in the style guide.
Late Assignment Policy
All assignments are graded on a 100 point scale. If an assignment is turned in on or before its due date, it is on time. Assignments turned in later are automatically assigned a 20 point penalty, no matter what the reason. Assignments may not be turned in more than three days late . These assignments get a grade of zero.
For the assignment to be considered “on time,” you must attach all necessary files specified in the assignment instructions by the due date. If additional/revised/corrected documents are received after the due date, then the 20 point penalty will be applied to the assignment.
In Class Activities:
In Class Activities (ICAs) are opportunities for students to try new concepts as they are presented in class. They are evaluated on the basis of completion and will be awarded a score on a scale of 0 to 100 points. Some ICAs are so simple that they are evaluated on an all-or-nothing basis (zero or 100).
Other ICAs may have multiple steps. For example, students assigned a four-step ICA could receive 25 points for each step, making for the possible grade outcomes 0, 25, 50, 75, or 100.
As the name ICA implies, students are expected (and encouraged) to complete the ICAs in class. Students are permitted to turn in their ICAs after class ends, but no later than 11:59 pm on the day of the class.
ICAs have the same late policy as assignments.
Some of the ICA start files have been deliberately “contaminated” with one or more errors. This is a deliberate strategy to help students improve their debugging / troubleshooting skills.
ICAs that use code (syntax, techniques, etc.) explicitly forbidden by the style guide will automatically receive a grade of zero. Students are expected to construct their own solutions using the programming features and elements provided in the style guide.
Attendance and Participation:
Attendance and participation are essential. While attendance is not strictly tracked, and there is no participation score, students who do not attend class and/or participate will find the class material especially difficult.
If a student does miss class, it is the student’s responsibility to catch up on any related material. While every student is encouraged to use office hours to gain a better understanding of class material, office hours are NOT for helping students catch up on material they missed because they were absent.
Academic Integrity
The MIS Department has a zero-tolerance policy for any type of academic dishonesty in theclassroom.
Academic dishonesty refers to any form of cheating, plagiarism, or other unethical practices in academic settings. This includes, but is not limited to, the following:
A. Plagiarism includes, but is not limited to, the use, by paraphrase or direct quotation, of the published or unpublished work of another person without full and clear acknowledgment. It also includes the unacknowledged use of materials prepared by another person or agency engaged in the selling or distribution of term papers or other academic materials.
B. Cheatingincludes, but is not limited to: (1) use of any unauthorized assistance in taking quizzes, tests, or examinations; (2) use of sources beyond those authorized by the instructor in writing papers, preparing reports, solving problems, or carrying out other assignments; (3) the acquisition, without permission, of tests or other academic material belonging to a member of the university faculty or staff; (4) engaging in any behavior specifically prohibited by a faculty member in the course syllabus, assignment, or class discussion; (5) or otherwise engaging in behavior that gives the Student an unfair academic advantage including, but not limited to, fabrication of data or sources, resubmitting work already submitted for another academic requirement without prior authorization, or other similar behavior.
C. Facilitating, procuring, or encouraging another person to engage in plagiarism or cheating.
To be clear, the following are unacceptable:
- Copying material directly from the Internet (or another source) without a proper citation crediting the author.
- Posting material to the Internet so that it can be used by other students who are violating this academic integrity policy (i.e. posting exam material or assignment material to Course Hero).
- Turning in an assignment from a previous semester as if it were your own and created during the current semester.
- Having someone else complete your assignment and submitting it as if it were your own.
- Fraudulently updating the attendance record.
- Use of assignments completed in one class as any part of a project assigned in another class.
- Sharing/copying any graded assignment.
- Use of any unauthorized information during an examination.
- Any attempt to deliberately interfere with the technology used in this class (e.g. the class servers), or to electronically impersonate a student other than yourself, or to knowingly share your credentials with another student.
In cases of cheating where multiple parties are involved, all parties will be held equally responsible. Under this zero-tolerance policy, any student found violating the academic integrity policy will immediately receive a final grade of “F” for the course and a formal complaint will immediately be filed with Office of Student Conduct and Community Standards. This incident will be listed on your permanent academic record. As part of my formal complaint, I will petition to have you expelled from the university. I will not discuss the penalty for violating this policy; I will simply direct you to this paragraph in the class syllabus.
** As outlined in the university’s Withdrawal from Classes policy (policy no. 02.10.14), once a student has been informed that academic misconduct is suspected, the student may not drop or withdraw from the course during the investigation and adjudication process except where the drop or withdrawal is approved for exceptional circumstances. Details about The Department of Student Conduct, and related policies and procedures, can be found here: https://studentconduct.temple.edu
Disability Disclosure Statement:
Any student who has a need for accommodation based on the impact of a documented disability, including special accommodations for access to technology resources and electronic instructional materials required for the course, should contact the instructor privately to discuss the specific situation by the end of the second week of classes or as soon as practical. Students should contact Disability Resources and Services (DRS) at 215-204-1280 in 100 Ritter Annex to learn more about the available resources. The instructor will work with DRS to coordinate reasonable accommodations for all students with documented disabilities.
Student and Faculty Academic Rights and Responsibilities:
The University has adopted a policy on Student and Faculty Academic Rights and Responsibilities (Policy # 03.70.02) which can be accessed through the following link: http://policies.temple.edu/getdoc.asp?policy_no=03.70.02
Class recordings:
Class meetings will not be recorded.
MIS Department PRO Points Requirement:
The MIS Department has instituted a PRO point (professional achievement point) requirement for all MIS majors. This class is a checkpoint to ensure that students are focused on this requirement and on track to earn their 1,000 points by graduation. Students in MIS2402 must earn a minimum of 200 points by the end of the semester. Students who fail to earn the required points will receive an “Incomplete” for this course regardless of performance on exams or class participation.
IMPORTANT NOTE: If a student fails to earn the minimum number of PRO points within one year from the end of the semester or does not notify their instructor that they have earned the minimum number of points, then their “Incomplete” will be changed to an “F” automatically. The grade of “F” will then be the student’s permanent grade.
Students are STRONGLY encouraged to, at a minimum, do the following to earn points:
1. Create an e-Portfolio and have it listed with the department.
2. Become an active member of AIS and participate in professional development activities.
3. Attend the IT Awards Reception (spring semester only).
4. Volunteer your time for department-sponsored events.
5. Discuss opportunities to earn MIS PRO points for projects with your MIS instructors. Note that students may not request course/project related PRO points more than one year after the end of the semester.
Here are two excellent resources that describe why the MIS professional achievement points are important to you.
1. http://community.mis.temple.edu/professionalachievement
2. http://community.mis.temple.edu/store
Finally, students will be given the opportunity to earn up to 50 MIS PRO points by doing an optional project. Details about the MIS2402 PRO point project will be announced on the class website.
Before Class Begins:
The semester will move quickly. Before the first day of class students should install the software titles we are using and watch video material assigned by the instructor. Relevant documentation can be found on the class site. Installation instructions are provided for both Mac and PC platforms. However, please be advised that instructional materials are written primarily with PC / Windows users in mind.
Getting Help:
Students can contact the instructor or the class ITA via email.
Please be advised that email correspondence is not an ideal way to trouble-shoot / resolve a technical problem. In-person meetings are usually much more productive.
Students who need assistance are encouraged to do the following.
1. Schedule a session with the ITA. These are first-come, first-serve, and subject to the ITA’s availability.
2. Visit the instructor during office hours.