COSC-1336 Programming Fundamentals I


Arturo Gonzalez

Credit Fall 2024


Section(s)

COSC-1336-025 (89609)
LEC TuTh 4:30pm - 5:50pm DIL DLS DIL

LAB Th 6:00pm - 6:55pm DIL DLS DIL

Course Description/rationale

Course Description: Introduces the fundamental concepts of structured programming.  Topics include software development methodology, data types, control structures, functions, arrays, and the mechanics of running, testing, and debugging.  This course assumes computer literacy. This course requires the same math skills necessary for College Algebra. Students should either have taken or be currently enrolled in College Algebra or a course that requires College Algebra.

 

Prerequisite:  B Course Type: T.

 

Course Rationale:  This is an entry level programming course designed to teach students the basic concepts of computer programming.  The course will include designing, coding, debugging, testing, and documenting programs using a high-level programming language.  The course is intended to prepare students for a programming-oriented academic path.  This course in include in several degree plans including:

  • Associate of Applied Science – Computer Programming
  • Associate of Applied Science – Web Programming
  • Associate of Applied Science – Game and Visualization Programming
  • Associate of Applied Science – Information Technology Application
  • Associate of Applied Science – Software Testing
  • Associate of Science – Computer Science

Student Learning Outcomes/Learning Objectives

Course Objectives / Learning Outcomes:

1. Demonstrate problem solving skills by developing and implementing algorithms to solve problems.

2. Derive problem specifications from problem statements.

3. Develop algorithms using modular design principles to meet stated specifications.

4. Create code to provide a solution to problem statements ranging from simple to complex.

5. Test and debug programs and program modules to meet specifications and standards.

6. Create programs that contain clear and concise program documentation.

7. Implement programs that use data types and demonstrate an understanding of numbering systems.

8. Incorporate both basic and advanced control structures appropriately into algorithms.

9. Demonstrate an understanding of structure design by implementing programs with functions, including parameter passing and value returning.

10. Implement programs using classes, including strings and files.

11. Implement algorithms using one-dimensional and indexed data structures.

12. Demonstrate an understanding of array searching and sorting algorithms by desk-checking and/or modifying algorithm implementations.

13. Design and implement simple classes.

 

 

SCANS (Secretary’s Commission on Achieving Necessary Skills):

Refer to http://www.austincc.edu/cit/courses/scans.pdf for a complete definition and explanation of SCANS.  The following list summarizes the SCANS competencies addressed in this particular course:

 

RESOURCES

1.1 Manages Time

INTERPERSONAL

2.1 Participates as a member of a team

2.6 Works with Cultural Diversity

INFORMATION

3.1 Acquires and Evaluates Information

3.2 Organizes and Maintains Information

3.3 Uses Computers to Process Information

SYSTEMS

4.1 Understands Systems

4.2 Monitor and Corrects Performance

4.3 Improve and Designs Systems

TECHNOLOGY

5.1 Selects Technology

5.2 Applies Technology to Task

5.3 Maintains and Troubleshoots Technology

 

BASIC SKILLS

6.1 Reading

6.2 Writing

6.3 Arithmetic

6.4 Mathematics

6.5 Listening

THINKING SKILLS

7.2 Decision Making

7.3 Problem Solving

7.4 Mental Visualization

7.5 Knowing How to Learn

7.6 Reasoning

PERSONAL SKILLS

8.1 Responsibility

8.2 Self-Esteem

8.3 Sociability

8.4 Self-Management

8.5 Integrity/Honesty

 


Readings

Gaddis Starting Out with Python, 6th Edition

ISBN: 9780137619207

FIRST DAY Access – The textbook will be provided online within Blackboard.  The cost is covered by the student’s tuition.


Course Requirements

Grade Policy:

Student’s grade will be determined based on concepts and practical application. The overall grade will be based on the following grading scale:

Grading Method

 

 

Grading Scale

 

Class Assignments 

  10%

 

90% - 100%

= A

Homework Assignments 

  20%

 

80% - 89%

= B

Quizzes

  30%

 

70% - 79%

= C

Exams (2)

  40%

 

60% - 69%

= D

TOTAL

100%

 

0  % - 59%

= F

 

Instructional Methodology:  This course will be taught in the classroom.  The course material will be covered in reading assignments from the textbook. Students will need to complete programming assignments on their own computer.    
NOTE:  Students must have access to a Windows or Mac computer for testing purposes with reliable Internet connection.

 



Course Policies

A.    Class Attendance:  Regular and punctual class and laboratory attendance is expected of all students.  If attendance or compliance with other course policies is unsatisfactory, the instructor may withdraw students from the class.  Students are expected to attend all classes.   If the student misses a class or is tardy, it is the student's responsibility to get assignments and missed material.  Absence is no excuse for late assignments, including when deadlines have been changed.

 

B.    Class Participation:  Students are expected to understand they have enrolled in an online distance learning course and must manage their time to keep up with the schedule and pace of the class. In this course, each new concept builds on previous concepts so that regular progress through the material is crucial to success on tests and assignments.  Students should check grades in Blackboard regularly to ensure that they are not getting behind.  All students are expected to participate in class discussions. Please feel free to ask questions any time.  There are no ‘dumb’ questions.  Class discussions benefit everyone. However, let’s have only one discussion going on, with one person talking at a time. Carrying on separate conversations distracts me and other students and makes their learning more difficult.

 

C.    Class and Lab Preparation:  All students are expected to read the chapters to be covered in class and familiarize themselves with the day’s lecture and assignment before class.  In this way, you will obtain much better value from the class, and be able to make best use of lab time.

 

D.    Class activity / Lab attendance:  Lab attendance for class activities is required unless excused by the instructor.  Success in the course depends on the student's ability to complete the assigned readings and successfully implement the concepts that have been learned in class.  The lab allows hands-on experience and one-on-one instruction.

 

E.     Guidelines for Lab Activities:

 

  • Begin each lab with an initial comment block that includes the following:  your name, instructor’s name, assignment number, assignment due date, and course number.  
  • Practice accuracy and style.

F.      Programming lab assignments:  Programming assignments must be the product of the student's independent effort.  Each assignment is due by the midnight of the assigned scheduled date.   Programming lab assignments may be turned in up to 24 hours after the due date with a late penalty of 20%.  Late submission is not accepted for the last programming lab assignments.  Scheduling of computer time outside of regular lab time is the student’s responsibility. Plan accordingly for network availability and to submit your work for grading.

 

G.    Exams and Quizzes: Students will take all the exams and quizzes remotely.  The student must attempt to complete the exam within the allotted time, so it is important to be on time and present on the day of the exam. There will be no makeup or retake if the student misses an exam or a quiz.

 

Withdrawal Policy

It is the responsibility of each student to ensure that his or her name is removed from the roll should he or she decides to withdraw from the class. The instructor does, however, reserve the right to drop a student should he or she feel it is necessary. If a student decides to withdraw, he or she should also verify that the withdrawal is submitted before the Final Withdrawal Date. The last date to withdraw for this semester is November 21, 2024. The student is also strongly encouraged to retain their copy of the withdrawal form for their records.

 

Students who enroll for the third or subsequent time in a course taken since Fall, 2002, may be charged a higher tuition rate, for that course. State law permits students to withdraw from no more than six courses during their entire undergraduate career at Texas public colleges or universities. With certain exceptions, all course withdrawals automatically count towards this limit. Details regarding this policy can be found in the ACC college catalog.

 

Incompletes

A student may receive a temporary grade of “I” (Incomplete) at the end of the semester only if ALL of the following conditions are satisfied:

  • The student is unable to complete the course during the semester due to circumstances beyond their control.
  • The student must have earned at least half of the grade points needed for a “C” by the end of the semester.
  • The request for the grade must be made in person at the instructor’s office and necessary documents completed.
  • To remove an “I”, the student must complete the course by two weeks before the end of the following semester.  Failure to do so will result in the grade automatically reverting to an “F”.

 

Statement on Scholastic Dishonesty

A student attending ACC assumes responsibility for conduct compatible with the mission of the college as an educational institution. Students have the responsibility to submit coursework that is the result of their own thought, research, or self-expression. Students must follow all instructions given by faculty or designated college representatives when taking examinations, placement assessments, tests, quizzes, and evaluations. Actions constituting scholastic dishonesty include, but are not limited to, plagiarism, cheating, fabrication, collusion, and falsifying documents. Penalties for scholastic dishonesty will depend upon the nature of the violation and may range from lowering a grade on one assignment to an “F” in the course and/or expulsion from the college.

 

See the Student Standards of Conduct and Disciplinary Process.

 

For this course, the penalty for scholastic dishonesty is a grade of ‘F’ for the course.

 

Student Rights and Responsibilities

Students at the college have the rights accorded by the U.S. Constitution to freedom of speech, peaceful assembly, petition, and association. These rights carry with them the responsibility to accord the same rights to others in the college community and not to interfere with or disrupt the educational process. Opportunity for students to examine and question pertinent data and assumptions of a given discipline, guided by the evidence of scholarly research, is appropriate in a learning environment. This concept is accompanied by an equally demanding concept of responsibility on the part of the student. As willing partners in learning, students must comply with college rules and procedures.


Course Subjects

Course Subjects

  • Introduction to Computers and Programming
  • Input, Processing, and Output
  • Decision Structures and Boolean Logic
  • Repetition Structures
  • Functions
  • Files and Exceptions
  • Lists and Tuples
  • More about Strings
  • Dictionaries and Sets
  • Classes and Objects

 

Each course subject includes reading, graded quizzes and programming lab assignments.

 


Tentative Course Schedule

Week

Week of

Topics 

Classwork

 Quiz

Homework

Week 1

08/26

Course Introduction: GitHub
Intro to Functions and Unit Testing

Assignment 0

 


 

 

Week 2

09/02

Input, Processing, and Output

Assignment 1

Quiz 1
 

Homework 1

Week 3

09/09

Decision Structures and Boolean Logic

Assignment 2

Quiz 2

Homework 2

Week 4

09/16

Repetition Structures 

Assignment 3

Quiz 3
 

Homework 3

Week 5

09/23

Functions 

 


 

Homework 4

Week 6

09/30

Functions

Assignment 4

Quiz 4

Homework 5

Week 7

10/07

More About Strings
 

Assignment 5

Quiz 5
 

 

Week 8

10/14

Midterm Exam 
Arrays, Lists, and Tuples

 

 

 

 

Week 09

10/21

Arrays, Lists, and Tuples

Assignment 6

Quiz 6
 

Homework 6 

Week 10

10/28

Dictionaries and sets

Assignment 7

Quiz 7

Homework 7

Week 11

11/04

Files and Exceptions

 

Assignment 8

Quiz 8

Homework 8

Week 12

11/11

Introduction to Object-oriented Programming
and Classes

Assignment 9

Quiz 9

Homework 9

Week 13

11/18

Classes

Assignment 10

Quiz 10

Homework 10

Week 14

11/25

Classes

Assignment 11

Quiz 11

 

Week 15

12/02

GUI Programming
 

 

 

 
Week 16 12/09 Final Exam Week      

Office Hours

M W 5:00 PM - 5:55 PM Round Rock Campus

NOTE Zoom link: https://austincc.zoom.us/j/86023864662?pwd=oa3YF3g98bola8bqx3cWyD7VFShQiS.1

T Th 6:00 PM - 6:55 PM Zoom

NOTE https://austincc.zoom.us/j/87038147698?pwd=xjUg8uqWbrnatXJbb4CyhoYFrzTJKk.1

Published: 08/14/2024 20:13:08