This folder contains my coursework, projects, and practice code from CSE 231: Introduction to Programming I (Python) at Michigan State University.
CSE 231 is the first computer science course for engineering and computer science majors at MSU. It introduces fundamental programming concepts using Python, focusing on problem-solving, algorithmic thinking, and computational reasoning.
Official course materials (problem statements, starter code, and test cases)
are not included. This repo is intended for portfolio and reference purposes only.
Throughout the course, I learned and practiced:
- Variables, expressions, and input/output
- Control structures (conditionals, loops)
- Functions and modular programming
- Strings, lists, dictionaries, and sets
- File I/O and exception handling
- Recursion and searching/sorting algorithms
- Object-oriented programming basics (classes, objects, methods)
- Testing, debugging, and documentation
This repository is organized into:
- Labs β Weekly lab assignments focusing on specific concepts (hidden via
.gitignoreto protect official coursework). - Projects β Larger assignments that integrate multiple concepts (hidden via
.gitignoreto protect official coursework). - Practice Code / Notes β Small programs and experiments I wrote while learning.
- Exams/Review Prep β Study code and exercises used to prepare for midterms and finals.
This repository includes a .gitignore file to keep the version control clean and focused on shareable source code.
- Hidden Folders: The
.gitignoreis set up to exclude Labs and Projects directories, since they contain official CSE 231 coursework and assignment solutions. - Other Ignored Files: Python cache directories (
__pycache__/), environment folders (like.venv/), and editor-specific settings are also excluded to prevent accidental commits of temporary files, sensitive information, or unnecessary clutter.
This ensures the repository showcases personal notes, study code, and portfolio-ready projects without violating course policies.
- Language: Python 3.x
- IDE/Editor: VSCode
By completing this coursework, I strengthened my:
- Problem-solving ability using computational thinking
- Programming fluency in Python
- Understanding of algorithms and data structures
- Software development practices (modularity, testing, debugging, documentation)
This folder documents my growth from a beginner to a capable Python programmer, and it serves as a foundation for more advanced CS courses like CSE 232 (C++) and beyond.