Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Up and running with GitHub, GitHub Classroom, a...

Up and running with GitHub, GitHub Classroom, and GitHub Actions

Interested in learning more about this topic? Visit my teaching page for additional details: https://www.gregorykapfhammer.com/teaching/.

Avatar for Gregory Kapfhammer

Gregory Kapfhammer

May 30, 2025
Tweet

More Decks by Gregory Kapfhammer

Other Decks in Education

Transcript

  1. Up and Running with GitHub, GitHub Classroom, and GitHub Actions

    Hemani Alaparthi and Gregory M. Kapfhammer PyCon Education Summit 2025
  2. Traditional Assignment Challenges Inefficient workflows cause Version chaos via email

    submissions Time-consuming manual testing Delayed feedback disconnected from code Limited visibility into student progress Unrealistic development practices How can we create a workflow that automates repetitive tasks, provides immediate feedback, and teaches industry-standard practices? PyCon Education Summit 2025
  3. Key Solution: GitHub, GitHub Classroom, and GitHub Actions A complete

    ecosystem for programming education offering: Industry-standard tools: Git, CI/CD, code review Good practices: Commit messages, branching, reviews Task automation: Testing, style checks, distribution Immediate feedback: Pass/fail checks and detailed logs Student portfolios: Real-world projects on GitHub Instructor insights: Progress tracking and code reviews PyCon Education Summit 2025
  4. GitHub Classroom Benefits For Students Version control Immediate feedback Clear

    guidance with TODOs Portfolio building Development environment For Instructors Automated distribution Centralized collection Automated testing Progress visibility Consistent environments Summary: GitHub Classroom bridges the gap between learning and professional development while saving time for students and instructors PyCon Education Summit 2025
  5. Implementation Workflow Setup Repositories Write full solution with tests Apply

    implementation ablation Set up CI/CD pipeline Setup GitHub Classroom Link organization and repositories Set deadlines and visibility Invite students to classroom Feedback & Assessment Track progress via GitHub insights Code reviews via pull requests Assignment clarifications via issues Monitor Progress Automated test results ( ✅/ ❌) Detailed logs for error diagnosis Student feedback and code review Create solution and starter repositories for each assignment PyCon Education Summit 2025
  6. Implementation Ablation After solution creation, must create a starter repository:

    Remove implementation details from your solution Replace with well-documented TODOs as placeholders Leave structure intact for students to complete Keep tests and various checks to guide students Tests run automatically on each push to student’s repository: ✅/ ❌ Status checks provide immediate feedback 🛠️ Detailed logs highlight errors for quick diagnosis PyCon Education Summit 2025
  7. Multi-level Feedback System Automated GitHub Actions check: pass/fail status for

    each check Code quality checks: PEP8 compliance with Ruff Test coverage reports: Pytest and Coverage.py Manual In-line code comments: specific suggestions on code Pull request reviews: detailed feedback on approach Issue-based feedback: high-level design discussions PyCon Education Summit 2025
  8. Integrating with External Tools GitHub Actions can integrate with tools

    like Pytest for test coverage Ruff for style checking Chasten for AST-based pattern checking Custom grading tool such as ExecExam … And many more! Integration Benefits: Automated feedback fosters code quality, adoptions of industry practices, and eases instructor workload PyCon Education Summit 2025
  9. Common Challenges and Solutions GitHub Classroom creates a realistic, automated

    workflow that benefits both students and instructors. But there are challenges! Challenges Solutions Git confusion Provide cheat sheet and office hours Merge conflicts Teach basic conflict resolution Test failures Make test output student-friendly Missing setup Include detailed environment setup Privacy concerns Use private repositories Challenges: Learning curve for Git and GitHub and associated tools PyCon Education Summit 2025
  10. Key Takeaways Streamlined workflow from assignment creation to grading Industry-relevant

    skills that benefit beyond the classroom Automated testing for immediate feedback Visible progress through tracking commit history Reduced administrative overhead with integrated tools Thank You! Questions? PyCon Education Summit 2025