Syllabus

Start  CSIS 111B-3334 SU24: Fundamentals of Computer Programming

IMPORTANT! No class meetings or online meetings are required for the fully online version of this course.

Instructor Information

Professor: Bill Bennett

Education: B.S. CTE, CSUSB Links to an external site.; M.S. CTE, CSUSB Links to an external site.; M.S. IDT, CSUF Links to an external site.

Certifications: MCP, MCSE, MCT, CCNA, CIW

Email:

Office: Room 962 on the Menifee Valley Campus in the Bus. & Technology Center.

Office Hours: Online: Mon. 9 AM - Noon via Canvas messaging or email; on campus: Room 962 in the MVC Business & Technology building, Tues. 7AM - 8AM & 10:50 AM - 11:50AM.

Web Site: http://cis.bbent.com/Faculty/Bill_Bennett Links to an external site.

Course Description

This course will introduce students with no prior programming experience to the fundamentals of computer programming. These are foundation concepts for nearly all modern programming languages including Visual Basic, C++, C#, Java, JavaScript, and Python. Topics include sequence- repetition- and selection control structures. Advance topics include arrays- file I/O- and an introduction to the principles of object-oriented programming. One or more high-level programming languages will be used to reinforce the general concepts presented in this course.

Course Learning Objectives

Upon completion of the course, the student will be able to do the following:

  • Describe and apply the steps in the program development cycle.
  • Demonstrate mastery of program notation concepts through construction of simple algorithms, flowcharts, and corresponding pseudo-code.
  • Contrast and compare high-level programming languages as to suitability to a task.
  • Demonstrate the proper use of programming syntax that includes the effective and appropriate use of variables, expressions, and functions.
  • Apply appropriate Sequential, Repetition, and Selection control structures to solve specific programming problems.
  • Demonstrate the role of arrays and File I/O through a language specific application of these techniques.

Course Learning Outcomes

  • Develop a program that correctly implements the for, while, and do while looping structure
  • Code and implement the if, if else, conditional, and switch decision constructs.
  • Develop algorithms that implement arrays for storage and data retrieval.
  • Demonstrate the use of functions for modular programming.
  • Code a complex (operations do not share the same level of precedence) algebraic expression in the target language.

Course Text Book

There is no text book requirement for this course. All content is provided through the Canvas course shell.

Reading and Assignment Due Dates

Weekly Schedule
Week Reading Assignment Due Date
1 6/3

 

Student Check-In 6/4

Prep Unit
Lesson 0: Course Setup

Human Scavenger Hunt
Student Check-In Quiz
Assignment 0 Discussion
6/9
Lesson 1 - Stored Program Concept: History of Programming, Compilers and Interpreters, High-Level vs. Low-level Languages, Procedural vs. Object-oriented Programming Journal 1
Assignment 1: Programming Language Discussion
Quiz 1
2 6/10 Lesson 2 - Structured Design Concepts: System Development Life Cycle, Software Testing Journal 2
Assignment 2: SDLC Discussion
Quiz 2
6/16
Lesson 3 - Anatomy of a Computer Program: Algorithms, Flowcharting, pseudo-code, decision tables Journal 3
Assignment 3: Algorithm Discussion
Quiz 3
3 6/17 Lesson 4 - Integrated Development Environments (IDEs): Visual Studio, writing your first program "Hello World" Journal 4
Assignment 4: Hello world!
Quiz 4
6/23
Lesson 5 - Simple Data Types, Operators, and Expressions: Constants, Variables, Data Type, Arithmetic, Boolean, and Relational Operators Journal 5
Assignment 5: Hello <input><input>
Quiz 5
4 6/24 Lesson 6 - Data Structures: Arrays, Queues, Stacks, Linked Lists Journal 6
Assignment 6: Using Data Structures Discussion
Quiz 6
6/30
Midterm Assessments Midterm Assignment
Midterm Exam
5 7/1 Lesson 7 - Sorting Algorithms: Bubble Sort, Quick Sort

Journal 7
Assignment 7: Sorting Algorithm Discussion
Quiz 7

7/7
Lesson 8 - Control Structures: Repetition Structures

Journal 8
Assignment 8: Using Repetition Structures
Quiz 8

6 7/8 Lesson 9 - Control Structures (cont.): Decision Structures

Journal 9
Assignment 9: Using Decision Structures
Quiz 9

7/14
Lesson 10 - Modular Programming: User-defined functions, methods, and procedures Journal 10
Assignment 10: Using Methods
Quiz 10

7 7/15 Lesson 11 - File I/O: Reading and Writing Files Journal 11
Assignment 11: Using Methods & File I/O
Quiz 11
7/21
Lesson 12- Exception Handling: Try, Catch, Finally Blocks Journal 12
Assignment 12: Exception Handling
Quiz 12
8 7/22 Final Assessments

Final Assignment
Final Exam
Student Self-Assessment

7/25

Course Grading

Each assignment that you need to complete in this class will display the total number of points you can earn for the assignment. Each assignment also has a scoring rubric which you can view to assist you on meeting the requirements of the assignment and achieving the highest score possible.

There are 3,466 total points possible to be earned in this class. Your final grade in the class will be determined by the total number of points you have earned in the class divided by the total points possible. The resulting percentage will be a letter grade based on the following grading scale.

Grading Scale: A > 89%, B > 79%, C > 69%, D > 59%, F < 59%.

Assignment Revisions

Sometimes it takes some practice to nail down the skills we are learning. That’s okay! I’m more concerned with you leaving the course with the skills than how many times it takes us to get there. Any of the assignments in this class (excluding deductions for missed peer reviews, lateness, plagiarism, or a failure to meet the minimum qualifications of the assignment, including but not limited to length and source requirements) may be resubmitted for a revised grade. To resubmit an assignment, read the comments I posted in the scoring rubric for your assignment on what needs to be fixed. Resubmissions are due one week after your assignment score is posted. Resubmit the assignment using the same link you used in Canvas for the initial assignment post.

Late Assignments

All assignments must be completed by 11:59 P.M. on the due date listed for the assignment under the Due Date column in the Course Schedule section of the Syllabus. NO LATE ASSIGNMENTS WILL BE ACCEPTED without extenuating circumstances. “I had to work,” “I was sick,” or “I didn’t understand the instructions” are NOT extenuating circumstances. Hospitalization or death of an immediate family member are, but will require supporting evidence. This does not exempt you from completing any assignment which MUST be submitted by the last day of the class.

With that said, I do understand that life can throw roadblocks at you. If you encounter health issues, family concerns, or other challenging situations while completing this class, please contact me if you would like an extension on an assignment or exam; please do not give up. There are opportunities to still turn in your work, but please reach out to me to let me know how you are doing and how I can support you. Although I will not be able to relieve you of the responsibilities of course assignments, I can suggest strategies to help you prioritize the work you have remaining. Please also do your best not to fall too far behind in this class as it may impact your ability to receive timely feedback.

Note: Due Dates for all Assignments, Exams and/or Quizzes are listed in the Syllabus for this class.

Student Drop Policy

Any student who fails to complete three or more assignments, exams or quizzes may be dropped from the course by the instructor. If you enrollment status in this class warrants it, you will be notified via a Canvas message sent to your Inbox or an email sent to your MSJC email address with a drop warning and given one week to contact me and demonstrate your desire to stay in the class. At that time I will work with you to help you get back on track.

Should you decide that you want to drop or withdraw from the class, you should consult with a counselor first to learn how this action could impact your scholarship at the college.

Instructor's Regular Effective Contact Policy

For quickest response to questions or problems regarding this course, students should always send me an email using the format specified in the CIS Email Policy Links to an external site. to the email address listed in the instructor box at the top of the Syllabus.

When emailing me during my stated online office hours, which can be found by clicking on the “Hours” link within the Instructor's box of this course, I will usually respond within the same day - depending on my student case load for that particular day. Students are always responded to on a first come first served basis.

When emailing me outside of my posted office hours, when posting to a discussion thread, or when submitting an assignment, students can expect that they will receive an appropriate response, when required, within 48 hours of the post or submission (Monday thru Thursday at 5:00 P.M.). Emails received after Thursday at 5:00 P.M. will be responded to on the following Monday.

To schedule a face-to-face meeting during the posted face-to-face office hours or to request synchronous contact via: virtual office, by telephone, or IM (Instant Messaging); please email your request so that we can schedule a mutually convenient meeting time.

From time to time, as it is deemed necessary, contact will be initiated with you, individually or jointly, via: email, Canvas Announcements, or Discussion Board posts to help keep you informed and up-to-date regarding your progress or status in this course. Be sure that you read all Announcements I post on Canvas and check your MSJC email on a daily basis. Please click "Reply" when responding to an email I send you so that my email message is included in your email response. That way I can easily keep track of what our discussion thread pertains to.

Plagiarism, Cheating, and Stealing Policies (Academic Integrity)

  • Any student who plagiarizes the work of any other person will be given a zero on any and all assignments where plagiarism has been utilized.
  • Any student caught cheating on a quiz or final exam will receive a zero for quiz or final exam.
  • Any student caught removing items from the classroom including but not limited to: lab materials and tools, without authorization, will be dropped from the course and given an automatic "F".

For more details on plagiarism and cheating, please review theMSJC Student Conduct Web Resources Links to an external site. page.

Artificial Intelligence (AI) Policy

It is my view that Artificial Intelligence is on its way to becoming just as ubiquitous as is the Internet. Meaning that in order to be successful in life you will need to know how and when to use it. Whereas I will not tolerate you plagiarizing copyrighted material or stealing content created by others in any shape or form, I do not have a problem with you using AI to the extent you feel is helpful for completing your assignments. However, keep in mind that one of the best techniques for learning new material is elaboration. Explaining what you are learning to others goes a long way in helping you to sort out and better retain in your grey matter the content you are learning in this class.

What I am saying is, learning to use AI is a good thing, but be careful that you don't rely on so much as to be a deterrent to your learning experience. It is a slippery slope for sure, but I will leave it up to you to metacognitively evaluate what works best for you as far as your learning is concerned. Keep in mind you paid to be here to learn and understand the subject matter being presented, don't let the lure of AI override your desire to learn this subject matter to the best of your ability.

Learning Environment

All students are entitled to an environment that encourages learning. If a student behaves in a manner that negatively affects other class members, he or she is guilty of disruptive behavior. Such behavior will be addressed in a manner consistent with school policy. 

Need Tutoring?

Check out the MSJC Learning Resource Centers! Academic Support is available for all students through the services provided in the Learning Resource Centers Links to an external site. on each campus. Inquire at each center regarding hours of operations and specific subjects for which tutors are available. In addition, some subject area specialist tutors are available for courses through specific departments. Ask your instructor if specialized tutors are available for your individual course.

Tutoring for some CIS classes including Microsoft Office applications tutoring will be available from Career Education Student Support at MVC. Lab/tutor schedules can be found at https://www.msjc.edu/careereducation/studentsupport/ Links to an external site.. Tutors change each semester, please check with the Business/CIS computer lab to learn what subjects have available tutors for the current semester.

Disability Statement

Mt. San Jacinto College abides by the American with Disabilities Act and Section 504 of the Rehabilitation Act of 1973 that prohibits federal and state agencies or programs from discriminating against qualified individuals with disabilities. Students in this course who have a documented disability, that limits a major life activity which may have some impact on your work in this class and for which you may require accommodations should meet with a  Accommodation Services Center Links to an external site. Links to an external site. counselor as soon as possible.

Diversity, Equity, and Inclusiveness

Mt. San Jacinto College is committed to supporting the diversity of its students and communities and as such, this virtual classroom will be a space committed to anti-racism, anti-sexism, and anti-homophobia. I believe it is important that our class is a space where we can work to understand ourselves and others better. To do this, we must have respect for each other and treat each other with dignity, which requires that we value and affirm each other’s experiences. We, the Mt. San Jacinto College Faculty, Classified Professionals, and Administrators, acknowledge there are systemic barriers that have historically excluded and prevented equal outcomes for students on the basis of:

  • Race/ethnicity
  • Gender Identity and Expression
  • Sexuality
  • National Origin
  • Socioeconomic status
  • (Dis)Ability
  • Language
  • Religion
  • Age
  • Physical Appearance
  • Intersections of these identities.

Therefore, we define equity as an investment and commitment to achieving parity in academic outcomes by removing institutional barriers and creating an inclusive and culturally affirming learning environment. As such, we are dedicated to challenging our perceptions, biases, and blind spots through self-reflection and constant inquiry to identify and eliminate equity gaps and reinvest in our communities. Our purpose is to celebrate diversity, instill hope, and empower our students to transform their lives and those around them.

Student Support Hub

For more information about MSJC's dedication to student success see the Student Support Hub Links to an external site..

Click or tap Next ➧ to continue.