Quinnipiac University

INF 605 Introduction to Programming - Python

About the Course

INF 605 Introduction to Programming - Python develops computational thinking while using Python as a tool to answer real-world questions with data. Students will gain experience exploring messy datasets, cleaning and preparing data, writing programs to automate analysis, and crafting compelling visualizations that communicate insights to both technical and non-technical audiences. The class emphasizes iterative design, statistical thinking, and the ethical implications of computing with practical applications in data science and analytics.

Course Schedule

Course Materials

📄 Course Syllabus

Available Lectures

Lecture Topic Materials
-- Course Introduction and Overview Syllabus review, course expectations
1 Introduction to Computers and Python Notebook Google Drive
2 Decision Making in Python Notebook Google Drive
3 Loops and Iteration Notebook Google Drive
4 List Comprehensions Notebook Google Drive
5 Functions and Modules Notebook Google Drive
6 Exception Handling and Advanced List Operations Notebook Google Drive
7 Data Structures - Tuples, Dictionaries, and Sets Notebook Google Drive
8 Object-Oriented Programming - Classes and Objects Notebook Google Drive
9 Object-Oriented Programming - Inheritance and Polymorphism Notebook Google Drive
-- Midterm Exam (Take Home) Practice Exam Google Drive
10 File Processing and Data Formats Notebook Google Drive
11 NumPy Fundamentals and Array Operations Notebook Google Drive
12 Advanced NumPy Operations and Data Manipulation Notebook Google Drive
13 pandas Fundamentals Part 1 - Series Notebook Google Drive
14 pandas Fundamentals Part 2 - DataFrames Notebook Google Drive
15 Data Cleaning Fundamentals with pandas Optional Notebook Google Drive
16 Data Preparation and Transformation with pandas Optional Notebook Google Drive
17 Data Visualization Fundamentals with Matplotlib Notebook Google Drive
18 Data Visualization with Seaborn Notebook Google Drive
-- Final Project Work Session Project Details Project work time
-- Final Project Presentations Project Details Presentation schedule TBA

Assignments

Programming Assignments

Assignment Topic Due Date Materials
1 Meta Internship Programming Challenge - Python Fundamentals Sun, Feb 15 Assignment Notebook Google Drive Submit
2 Campus Life Programming Challenge - Advanced Python Concepts Sun, Mar 8 Assignment Notebook Google Drive Submit
3 University IT Internship - Student Records System (OOP, Inheritance, File I/O) Sun, Mar 29 Assignment Notebook Google Drive Submit
4 Sports Analytics Internship - Advanced NumPy Data Analysis Sun, Apr 12 Assignment Notebook Google Drive Submit
5 E-Commerce Customer Analytics with pandas Optional Sun, Apr 26 Assignment Notebook Google Drive Submit
6 Data Visualization with Matplotlib and Seaborn Sun, May 3 Assignment Notebook Google Drive Submit
More assignments coming soon...

Final Project

The final project is an open-ended Python project. Students may choose their own question, dataset, or build idea and submit either a data analysis portfolio piece or a small Python application. Strong projects are not necessarily the biggest projects - they are well-scoped, complete, clearly explained, and thoughtfully tested.

Final project score: 150 points. Final submission due Monday, May 4, 2026 by 11:59 PM. Submit by email to rongyu.lin@quinnipiac.edu.

Project at a Glance

Format

Individual project with a student-selected topic and scope.

Project Types

Data analysis, automation tool, interactive app, simulation, or another instructor-approved idea.

Final Submission

Email your final project package to rongyu.lin@quinnipiac.edu by Monday, May 4, 2026 at 11:59 PM.

Presentation Window

Short final presentation during finals week, May 4-8, 2026.

Project Pathways

Data Analysis Story

Use a real dataset to answer a question, clean data, analyze patterns, and communicate findings.

Automation Tool

Build a script that saves time on a repeated task such as file organization, tracking, or reporting.

Interactive Python App

Create a text-based or notebook-based tool such as a planner, recommender, quiz system, or dashboard.

Simulation or Model

Design a simulation, forecast, or scenario model using structured data and repeated computation.

Research or Domain Project

Investigate a topic in sports, finance, health, campus life, language, sustainability, or another approved domain.

Custom Proposal

If your idea does not fit a category, propose it anyway. Original, well-scoped ideas are encouraged.

Minimum Technical Expectations

Every project must include all of these

  • A complete Python workflow that runs end-to-end.
  • At least 3 custom functions with meaningful names and clear responsibilities.
  • Structured input and output such as user input, CSV or JSON data, text files, or saved results.
  • Basic validation or error handling where it makes sense.
  • Readable code and organization that another student could follow.
  • Written explanation of the project goal, approach, and final result.

Also include at least 3 of the following

  • Control flow with conditionals and loops that drive core project logic.
  • Lists, dictionaries, sets, or tuples used in a meaningful way.
  • File processing with text, CSV, or JSON data.
  • Classes and objects for project structure.
  • NumPy for array-based computation.
  • pandas for cleaning, aggregation, or analysis.
  • Matplotlib or Seaborn visualizations.
  • A multi-file structure with a clear separation of responsibilities.

Deliverables and Timeline

Deliverable Date What to Submit
Project Idea Approval Friday, April 24, 2026 by 11:59 PM Email a short topic proposal explaining your idea, intended audience, and planned Python features to rongyu.lin@quinnipiac.edu.
In-Class Work Session Monday, April 27 and Wednesday, April 29, 2026 Bring a working draft, questions, and any blockers you want feedback on.
Final Project Submission Monday, May 4, 2026 by 11:59 PM Email your code, notebook or app files, a short project report or README, and any slides or demo materials to rongyu.lin@quinnipiac.edu.
Final Presentation May 4-8, 2026 A 5-7 minute presentation or demo explaining the project, the final result, and what you learned.

Rubric

Category Points What Strong Work Looks Like
Problem Definition and Scope 20 The project has a clear goal, an appropriate scope, and a sensible plan for what it will accomplish.
Technical Implementation 40 The code runs correctly, the solution is functional, and the project demonstrates careful implementation choices.
Use of Course Concepts 30 The project uses Python concepts from the course in meaningful, visible, and well-integrated ways.
Analysis, Insight, or Usefulness 25 The project produces useful results, thoughtful interpretation, or a practical outcome for a real audience.
Documentation and Organization 20 The submission is easy to follow, well-structured, and clearly explains the project and its limitations.
Presentation and Demo 15 The presentation is clear, professional, and demonstrates both the project outcome and the student's understanding.
Total 150 Final project score recorded as 150 points.

Ideas, Data, and Academic Integrity

Possible Project Ideas

  • Campus meal plan tracker, class workload planner, or study habit analyzer.
  • Sports performance tracker, workout log analyzer, or team statistics explorer.
  • Budget manager, habit tracker, or personal productivity tool.
  • Book review analyzer, keyword extractor, or readability checker.
  • Weather trends, transportation data, housing prices, or public policy data analysis.
  • Quiz game, recommendation engine, simulation game, or rules-based assistant.

Policies and Boundaries

  • Use public, self-created, or instructor-approved data.
  • Cite every dataset, image, library, or outside reference you use.
  • Do not use sensitive personal data or private student information.
  • The submission should be individually authored, even if you discussed ideas with others.
  • If you use outside help, including AI tools, tutorials, or sample code, disclose it clearly in your documentation.
  • You should be prepared to explain any part of your code during the presentation.

Email Submission Format

What to Include in the Email

  • Your full name and course number: INF 605.
  • A clear subject line such as INF 605 Final Project - Your Name.
  • Your project files as attachments, or a GitHub / Drive link if the files are too large for email.
  • A short message explaining what is attached and any setup instructions needed to run the project.

Recommended Attachment Structure

  • Main code files or notebook.
  • Any supporting dataset or a link to the dataset source.
  • A short README or report describing the goal, methods, and results.
  • Optional slides or demo screenshots for the presentation.