CS 101: Introduction to Computer Science
CS 101: Introduction to Computer Science
**Fall 2025 | Youngstown State University** |
Course Overview
Course Information:
- Credits: 3 credit hours
- Prerequisites: None
- Meeting Time: TBD
- Location: TBD
- Instructor: Dr. Hailong Jiang
Course Description: A foundational course introducing students to the principles of computer science, programming fundamentals, and computational thinking. This course provides a comprehensive introduction to the field, covering essential concepts that form the basis for advanced study in computer science.
Course Schedule & Calendar
Week | Topic | Activities |
---|---|---|
Week 1-2 | Introduction to Computer Science | Lecture 1: What is Computer Science? Lecture 2: History and Evolution of Computing Lab 1: Setting up your development environment |
Week 3-4 | Computational Thinking | Lecture 3: Problem-solving strategies Lecture 4: Algorithms and efficiency Lab 2: Basic problem-solving exercises |
Week 5-6 | Programming Fundamentals | Lecture 5: Variables, data types, and expressions Lecture 6: Control structures (if/else, loops) Lab 3: First programming exercises |
Week 7-8 | Functions and Modularity | Lecture 7: Function definition and calling Lecture 8: Parameter passing and return values Lab 4: Building modular programs |
Week 9-10 | Data Structures | Lecture 9: Arrays and lists Lecture 10: Basic searching and sorting Lab 5: Data structure manipulation |
Week 11-12 | Object-Oriented Programming | Lecture 11: Classes and objects Lecture 12: Inheritance and polymorphism Lab 6: OOP project |
Week 13-14 | Advanced Topics | Lecture 13: File I/O and exception handling Lecture 14: Introduction to algorithms Lab 7: Final project preparation |
Week 15 | Review and Final Project | Lecture 15: Course review and Q&A Final Project: Due at end of week |
Lecture Slides & PPT Downloads
Module 1: Foundations
Module 2: Programming Basics
Module 3: Data and Objects
Course Syllabus
Learning Objectives
By the end of this course, students will be able to:
- Understand fundamental computer science concepts
- Write basic programs in a high-level programming language
- Apply computational thinking to problem-solving
- Design and implement simple algorithms
- Work with basic data structures
- Understand object-oriented programming principles
Grading Policy
- Assignments: 40%
- Lab Exercises: 25%
- Midterm Exam: 15%
- Final Project: 15%
- Participation: 5%
Assignments & Projects
Programming Assignments
- Assignment 1: Hello World & Basic Operations
- Assignment 2: Control Structures
- Assignment 3: Functions and Modularity
- Assignment 4: Data Structures
- Assignment 5: Object-Oriented Programming
Lab Exercises
- Lab 1: Environment Setup
- Lab 2: Problem Solving
- Lab 3: Basic Programming
- Lab 4: Functions
- Lab 5: Data Structures
- Lab 6: OOP Project
- Lab 7: Final Project
Final Project
Reading Materials
Required Textbook
- Title: “Introduction to Computer Science Using Python”
- Author: Charles Dierbach
- ISBN: 978-0470555156
- Publisher: Wiley
Additional Resources
Online Tutorials
Software & Tools
Required Software
- Python 3.x: Download Python
- Visual Studio Code: Download VS Code
- Git: Download Git
Development Environment Setup
Important Dates
Date | Event | Details |
---|---|---|
Week 1 | Classes Begin | Course introduction and overview |
Week 3 | Assignment 1 Due | Hello World program |
Week 5 | Assignment 2 Due | Control structures |
Week 7 | Assignment 3 Due | Functions |
Week 9 | Midterm Exam | Covers weeks 1-8 |
Week 11 | Assignment 4 Due | Data structures |
Week 13 | Assignment 5 Due | OOP concepts |
Week 15 | Final Project Due | Comprehensive project |
Week 15 | Course Ends | Final presentations |
FAQ & Resources
Common Questions
Q: Do I need prior programming experience? A: No, this course is designed for beginners with no prior programming experience.
Q: What programming language will we use? A: We’ll use Python, which is excellent for beginners and widely used in industry.
Q: How much time should I spend on assignments? A: Expect to spend 6-10 hours per week on this course, including lectures and assignments.
Q: Can I work with others on assignments? A: Collaboration is encouraged for learning, but all submitted work must be your own.
Getting Help
- Office Hours: See main teaching page for schedule
- Email: hjiang@ysu.edu
- Discussion Forum: Available on course management system
- Tutoring: Free tutoring available through the CS department
Quick Links
This course is designed to be your gateway into the exciting world of computer science. I’m here to help you succeed, so don’t hesitate to reach out with questions!