CSC 121: Programming 1: Control Structures. 3 hours

30 Mar 2023 - 11:39 | Version 1 |

Description

An introduction to computer application development using a high level, object oriented, GUI based language. Emphasis is on the use of problem solving methods, algorithms, control structures, documentation and debugging. Lab: CSC 121L. Prerequisites: CSC 102 or permission of the instructor

Goals for CSC 121 are:

Upon completion of the course, students will
  1. Be able to write small (two pages) programs independently of outside help
  2. Begin to develop technical writing skills
  3. Have developed simple habits of secure programming

Course outcomes for CSC 121 are:

Upon completion of CSC 121, students will know:
  • how to write 2 - 3 page programs in a high level language
  • how to document code and a program
  • how to come up with a simple testing plan that includes input, output, and some error conditions
  • how to work with a simple IDE to debug a program

Program outcomes for CSC 121 are:

  1. Analyze a complex computing problem and to apply principles of computing and other relevant disciplines to identify solutions. (Computing student learning outcome 1)
  2. Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program\x92s discipline. (Computing student learning outcome 2)
  3. Communicate effectively in a variety of professional contexts. (Computing student learning outcome 3)
  4. Recognize professional responsibilities and make informed judgments in computing practice based on legal, ethical, and moral principles. (Computing student learning outcome 4)
  5. Understand and use appropriate cloud technologies in specified areas (Computing student learning outcome 8)
  6. Apply computer science theory and software development fundamentals to produce computing-based solutions. (Computer Science student learning outcome 1)
  7. Apply security principles and practices to maintain operations in the presence of risks and threats. (Cyber Security student learning outcome 1)

Integration

  1. Self-learning at the introductory level by having some programming assignments that include using some simple features not covered in class (such as simple math function, formatting, string functions that are easy to understand and covered by the textbook)
  2. Note taking at the introductory level by not posting lecture notes and holding students responsible for the content.
  3. Technical writing at the introductory level by requiring students to understand and properly express a problem summary and requirements and the steps of a program and a complete (but somewhat informal) testing report.
  4. Professionalism at the introductory level by having students track how long it takes to write programs (so that they are better equip to estimate this in the future) and comment on what they learned and what they would want to to better with a program if they could.
  5. Cybersecurity at an introductory level by requiring students to document possible invalid input what happens for all programs. By the end of the semester, they should handle some of the invalid input (i.e. secure programming).
  6. Ethics at an introductory level by having at least two programs assigned that could have ethical implications and having the students discuss that in their reports.

Details

  • Professor: Dr. Cathy Bareiss
  • Office SB 031
  • Class Time: MW 2:00-2:50 (section 01)
  • Lab Time: TR 1:00-1:50 (section 02) or 2:00-2:50 (section 01)
  • Class Location: S 025 or zoom
  • Resources: All resources (textbook, lessons, etc.) are found in SkillSoft of the Learning Center available to any member of ACM (go to acm.org)
  • Textbooks:
    • Let Us Java, Fourth Edition by Yashavant Kanetkar. ISBN: 978-93-8817-638-5
    • Java -- A Beginner's Guide, Eighth Edition by Herbert Schildt. ISBN 9781260440218
    • Java in Easy Steps, 7th Edition by Mike McGrath. ISBN 9781840788730
  • Additional Resources: Course Series: Getting Started with Java Programming

Course Content

Policies

Labs

Homework

Most assignments will be made in class. Notes should be taken at that time.

  • Reactions to current events/publications. A reaction to an article includes enough to convince me that you have read the entire article and not just the headline or first paragraph. It should include s summary of what was said and your reaction. Be sure to give a complete reference to the item. These should be turned in as a hard copy in class within one week of the item being published. You may pick when. Each one does have a deadline. The ones you pick must be unique to this course
    1. Write a reaction to one article in the ACM TechNews. This needs to be completed by midterm.
    2. Write a reaction to one article in XRDS. This needs to be completed before the final.

Grades

  • Homework, etc. is worth 10% of the final grade
  • Programs are worth 40% of the final grade
  • Exams are worth 50% of the final grade with the cumulative final being worth twice a normal exam
  • Grade scale
    • 93% <= average <= 100% → A
    • 90% <= average < 93% → A-
    • 87% <= average < 90% → B+
    • 83% <= average < 87% → B
    • 80% <= average < 83% → B-
    • 77% <= average < 80% → C+
    • 73% <= average < 77% → C
    • 70% <= average < 73% → C-
    • 67% <= average < 70% → D+
    • 63% <= average < 67% → D
    • 60% <= average < 63% → D-
    • 0% <= average < 60% → F

Tentative Schedule

Monday Tuesday Lab Wednesday Thursday Lab
      01/05 First Program and your environment
01/09
Syllabus, Overview, First Program
01/10: Finish Lab 1 01/11
I/O, Variables, Constants, selection
01/12 Selection and colors
01/16
MLK day, no class
01/17 01/18
Selection and repetition
01/19 Repetition and colors
01/23
Repetition
01/24 01/25
Files and repetition
01/26 Repetition, files, and colors
01/30
Exam 1
01/31 02/01
Methods
02/02 Methods: Tools for colors
02/06
Methods
02/07 02/08
Methods
02/09 Methods: Calendars
02/13
Methods
02/14 02/15
Methods and/or Arrays
02/16 Methods: Arithmetic Quizzer
02/20
Exam 2
02/21 02/22
Arrays
02/23
02/27
Spring Break
02/28
Spring Break
03/01
Spring Break
03/02
Spring Break
03/06
Arrays
03/07 Arrays: Almost done with Mastermind 03/08
Arrays
03/09
03/13
Recursion
03/14 Bin Packing 03/15
SIGCSE
Exam 3
03/16
SIGCSE
03/20
Exceptions
03/21 03/22
Debugging
03/23
Searching
03/27
Searching
03/28 03/29
sorting
03/30
04/03
Sorting
04/04
Search then sort or just sort
04/05 04/06
Easter Break
04/10
Exam 4
04/11 04/12
Classes
04/13
Finish Mastermind with objects
04/17
Classes
04/18 04/19
Review
04/20
04/24
Final Exam: 1:00-3:00
04/25
Final Exams
04/26
Final Exams
04/27
Final Exams

Campus Integrity Policy

The student handbook (p. 156) states: “Any act of deceit, falsehood or stealing by unethically copying or using someone else’s work in an academic situation is strictly prohibited.

  1. A student found guilty of plagiarism or cheating will receive an “F”(zero) for that particular paper, assignment or exam. Should this occur, the professor will have an interview with the student and will submit a written report of the incident to the academic dean.
  2. If a second offense should occur, the student will be asked to appear before the professor, the academic dean and the vice president for student development.

The student should realize that at this point continuation in a course and even his/her academic career may be in jeopardy. In the event of a recommendation for dismissal, the matter shall be referred to the Student Development Committee.”

Covid Policy

Everyone should follow the current Bethel University covid policy. See: https://www.betheluniversity.edu/intheknow for details

Services

The Americans with Disabilities Act (ADA) is a law which provides civil rights protection for people with disabilities. Bethel University, in compliance with equal access laws, requests that students with disabilities seeking to acquire accommodations make an appointment with the Center for Academic Success—Disability Services. It is located in the Miller-Moore Academic Center, 033. You may also phone 574-807-7460 or email rachel.kennedy@betheluniversity.com.edu for an appointment.

DEI Statement

During this particularly difficult time, this statement momentarily underscores and deepens what is expressed in the Lifestyle Covenant regarding the dignity of all humans. The statement will remain in all Bethel Faculty syllabi until spring 2023 and then be remanded back to the Faculty. Bethel University respects the dignity of all God’s image-bearers, and stands against racism, prejudice, and discrimination. Because Christ calls us to love our neighbor as ourselves, Christian discipleship includes pursuing the good of those who suffer injustice due to their color, race, or ethnicity. Therefore, we aim to continually transform our classrooms into safe and hospitable spaces where we listen to one another with mercy, learn from and value each other with tenacity, and commit to pursuing justice for the most vulnerable in our community.

Education Majors:

Please use the link below to review all appropriate standards. Standards
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback
This website is using cookies. More info. That's Fine