Skip to content

Syllabus

Quick Info

This course is an introduction to programming. We will be using JavaScript as the programming language for practicing, but this is not a course on creating web sites with JavaScript.

Course No. 10-152-119
Session 16 Weeks
Campus Truax
Description Teaches the basic concepts of programming using the JavaScript language. Topics include: embedding JavaScript in HTML, event-driven programming techniques, program control logic, and an introduction to object-oriented programming.
Credits. 3
Instruction Mode In-person, Online, or Online-Live
Pre-requisites Website Development 10-152-120
Textbook Javascript - Absolute Beginner's Guide by Kirupa Chinnathambi
Supplies Backup mechanism, Google Drive, OneDrive, External hard drive, etc

Instructor Information

This course has multiple instructors. To find the contact information for your instructor, please see the Instructor Contact Info page in Brightspace, under the Course Info & Links module.

Course Objectives

Upon successful completion of this course, the student will be well versed in:

  • Data types
  • Variables
  • Operators
  • Program Logic
  • Looping
  • Data Type Conversion
  • Functions
  • Arrays
  • JavaScript Syntax
  • JavaScript Coding Standards
  • Design Checklists
  • Pseudo-code
  • Creating Algorithms

Environment

Students will need to participate in lecture/discussion sections, and open laboratory sessions to complete programming projects and class assignments. Lab access to the course development environment will be provided to the students.


Class Software

  • VS Code. All in-class examples and demonstrations will use this editor. Some videos might use another editor, but VS Code is the preferred editor for this course.
  • Other text editors (Notepad++, WebStorm, Textmate) are also allowed.
  • A web browser browser like Google Chrome, Safari, Firefox, or Edge.
  • We will also use Slack for class communications and questions.

Course Structure

There will be five Learning Units during the semester. A Learning unit is a collection of labs, exercises, and projects that center around a given set of concepts. Each Learning Unit can be downloaded from Brightspace.

Labs

Labs are the primary way we will practice concepts as we learn them. Labs will be done in class, but can be completed outside of class if necessary.

  • Labs are graded on a complete/incomplete basis
  • All labs should be completed
  • Labs must be submitted via Brightspace
  • When submitting your labs to Brightspace, along with a zip file of your code, you should answer our reflection questions in the submission comments. This is important as it helps you reflect on what you learned and how you can improve.

Exercises

Exercises are similar to labs, but are done outside of class. Exercises tend to be more challenging than labs, but are still practice. Their purpose is to have you practice independent mastery of the concepts we are learning.

  • Exercises are graded on a complete/incomplete basis
  • Exercises must be submitted via Brightspace
  • Not all exercises need to be completed
  • You get to choose which exercises you want to complete

Checkpoints / Quizzes

Short quizzes will be assigned most weeks. These quizzes are short and do not count towards your final grade. Their pupose is to review the concepts of the week and to help you prepare for the Timed Checkpoints, also known as Exams.

  • Quizzes are given weekly on Brightspace
  • Quizzes for a unit are due the same date and time as the project

Projects

Each Learning Unit contains one project that consist of multiple parts. The purpose of Projects are to demonstrate independent mastery of the concepts covered in the unit. Projects will be worked on individually and completed outside of class. Projects are graded on a met or not met basis. Projects that recieve a grade of not met can be resubmitted.

Grading Criteria
Compliance to the course coding standards
Logical correctness and completion of planning lists, test plans, and comments. Comments within each program must be descriptive and reasonable.
Coding correctness, this includes following coding practices discussed and demonstrated by the instructor.
Conformation to project specifications. If project specifications are misunderstood, this still is graded as incorrect program output with the consequences outlined below. Be sure to read specifications carefully, and ask clarifying questions.
Correct Output. All project output must be 100% correct.

Project Submission

Projects are submitted like labs in Brightspace. Additionally, some instructors may require you to also submit screenshots of your working programs along with the zip file of the unit.

Project resubmission

Having students understand the material in this course is my prime objective. In order to facilitate that, project resubmissions will be allowed. After a project has been graded, it may be resubmitted with corrections. It must be submitted within 7 days of the orignal day it was graded.

Timed Checkpoints / Exams

There are two Timed Checkpoints in this course, otherwise known as Exams, a midterm and a final. Timed Checkpoints are graded in a percentage format. A grade of 80% or higher is required to recieve a "met" in your final grade calculation. There will be no make-up exams without prior notice and agreement by your instructor.

The first Timed Checkpoint will cover material from Learning Units 1 – 3; the second Timed Checkpoint will cover material from the entire course.

Timed Checkpoint Corrections

In the event that you do not score an 80% or higher on a Timed Checkpoint, you will have the opportunity to submit corrections in order to achieve a "met" grade.

Step 1: Access your Checkpoint Questions

  1. Go to “Course Activities” in Brightspace.
  2. Select “Quizzes”
  3. Scroll down until you see the Timed Checkpoint
  4. Click on “On Attempt” in the second-to-last column
  5. Click on “Attempt 1” to see your answers
  6. List the question number, the original answer, followed by the correct answer.
  7. Add an explanation of why this is the correct answer.
  8. Provide a reason why your original answer was incorrect. (Ex. “I read the question wrong.” “I didn’t know the answer.” “I didn’t study.”)

Step 4: Upload this document as a Direct Message to me in Slack.

Grading

All graded work in this course recieves either a "met" or "not met" grade. The final letter grade is determined by the following:

Assignment Total in Course A Bundle B Bundle C Bundle
Labs 13 12 11 10
Projects 5 5 5 5
Exams 2 2 2 2
Exercises 11 3 2 0

AB or BC Grades

It's important to note that learning experiences can vary among individuals, and not everyone neatly fits into predefined categories. If your performance falls between the outlined criteria above, you may earn an AB or BC in the course. Furthermore, I welcome discussions at the end of the semester to engage in a thoughtful evaluation of your learning and what final grade best represents your progress with the course. That said, all five projects must be completed and working correctly to pass the course.

Due Dates

Fall 2025

Labs

Labs are due each week. In person students, please have them reviewed as you complete them. That way you will be keeping up with the work and not get behind when it comes time for the project work. Below is the latest I would like them turned in. There isn't much sense in getting feedback on labs, when you've already started or completed the project. The labs are intended to be the formative work leading up to the project.

Definition: The goal of formative assessment is to monitor student learning to provide ongoing feedback that can be used by instructors to improve their teaching and by students to improve their learning

Projects

Projects are due the Friday after the learning unit has ended.

Learning Unit Week Date due
Learning Unit 1 Week 04 Friday, September 26 @ 9:00 PM
Learning Unit 2 Week 06 Friday, October 10 @ 9:00 PM
Learning Unit 3 Week 08 Friday, October 24 @ 9:00 PM
Learning Unit 4 Week 12 Friday, November 21 @ 9:00 PM
Learning Unit 5 Week 16 Thursday, December 18 @ 9:00 PM

Unit 5 must be turned in on the due date. There will be no credit for late projects

Weekly Checkpoints/Quizzes

Regular checkpoints are due at the end of their respective weeks.

Timed Checkpoints/Exams

Timed Checkpoint Week Section Date due
Mid-term Timed Checkpoint Week 08 All October 11 - 13
Final Timed Checkpoint Week 16 All May 09 - 13
*Final exams must be completed by midnight Thursday, December 18th

Artificial Intelligence (AI) and Searching the Internet

Searching the internet and using AI are skills that modern developers rely on. Learning to use these tools responsibly, ethically, and effectively are an important part of learning modern programming.

Before you use AI to generate code for you, it is important that you understand the fundamentals of programming. For that reason, the use of AI to write code for you is forbidden in this class, unless otherwise indicated by your instructor. Future classes may allow the use of AI to generate code, but this class is not one of them. We will still use "agentic AI" to help us debug our programs and to act as a tutor to help us understand programming concepts.

In this course, we use GitHub Copilot, which is integrated into VS Code. Our projects are configured to work with Copilot and to use a plugin called Specstory to log all conversations with Copilot. This is to ensure that you are using Copilot responsibly and ethically. If you use AI on any of your work in this course, you must use Specstory to log the conversation. Failure to do so will be treated as plagiarism. This is configured to work automatically when you open VS Code, but if you have any questions, please ask your instructor.

Any use of the internet, such as searching Stack Overflow or the Mozilla Developer Network, must be cited in your code comments with a link to the source. Failure to do so will also be treated as plagiarism.


Backups

It is the student’s responsibility to backup all course materials, project files, and lab files during the semester. External hard drives are fairly reliable but they can fail. Students need to make sure that their work for this course is backed up in at least 2 additional locations. The failure or loss of your external hard drive will not be an acceptable excuse for late work. We will discuss backup strategies in class.


Source Code Confidentiality

Course materials in this course, including source code for project and lab solutions, must be kept confidential between you and your instructor. Except where specifically noted by the instructor. Posting any materials from the course to a public or private online repository is strictly forbidden and will be treated as plagiarism by the college. This is a violation of the standards of academic integrity as specified in the Madison College Student Rights and Responsibilities. Any website that allows sharing of code, such as GitHub, Bitbucket, GitLab, Cloud 9, etc., comes under this rule. Because of the large implications of posting project solutions to the internet, actions of this nature will be dealt with very seriously.


Academic Integrity

Madison Area Technical College places a high value on the learning experience. As members of the college community, you are obligated to conduct your work with honesty and integrity. Plagiarism and cheating are serious offenses and may be punished by failure on a project, test or assignment, failure in the course, and or expulsion from the college. For more information refer to the “Student Code of Conduct” policy in the student catalog.

As software developers, it is common and encouraged to consult with peers (and internet sources) for help debugging and problem-solving. However, such consultations should not involve direct copying of other’s code. Copying another person’s code is considered plagiarism and will be dealt with following the Academic Integrity Policy.


Attendance

Face to Face and Online Live

Attendance is not part of your grade but is strongly encouraged for in-person and online live sections. (Online async student are welcome to join us too!) In case of absence, in-class work cannot be made up. As an adult, you may have other priorities than this class, but you need to keep your focus on the labs and projects to not to fall behind.

If you do not attend class on the first day, the instructor has the right to assume you will not be a part of the class and may give your seat to a wait-listed student. Madison College reserves the right to drop you from the course if you do not attend for two consecutive weeks or miss 25 percent or more of the total scheduled calendar days. No student will be re-admitted.

Simiarly, for online async students, if you do not log in and participate in the first week of class, and join our Slack workspace, you may be dropped from the course to make room for a wait-listed student.


Withdrawal Policy

If a situation arises that prevents successful completion of this course, it is your responsibility to formally withdraw from this course. You may withdraw from a class until class is 90 percent complete. After that, the instructor is responsible for giving you a grade. If you need to drop this course it is best to do so through myMadisonCollege or you may contact the Enrollment Center at 608-246-6210 and fill out the form.


ADA (Americans with Disabilities Act)

Madison College welcomes students with disabilities into the College’s educational programs. Every Madison College campus has Disability Resource Services available for students with disabilities. The Disability Resource Services website provides specific information related to accommodations for disability-related barriers. For further information, please visit https://madisoncollege.edu/disability-resource-services, call 608- 246-6716 (Students who are deaf should use relay) or email [email protected]

To receive consideration for reasonable accommodations for your disability, you must contact the Disability Resource Services office at the campus where you are officially enrolled. If approved for accommodations, Disability Resource Services will provide you with an accommodation plan.

Please share your accommodation plan with me and discuss your approved accommodations as early in my class as possible.


Madison College Counseling Service

The Madison College Counseling Service is available to provide aid and advice. Experienced counselors will try to help or put you in touch with others who can. This is a free service for all students. Learn more at https://madisoncollege.edu/counseling.