Initial commit
This commit is contained in:
17
.claude-plugin/plugin.json
Normal file
17
.claude-plugin/plugin.json
Normal file
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"name": "course-builder",
|
||||
"description": "Tools for creating educational content for data science, ML, AI, and MLOps courses",
|
||||
"version": "1.0.0",
|
||||
"author": {
|
||||
"name": "Brad Boehmke"
|
||||
},
|
||||
"skills": [
|
||||
"./skills"
|
||||
],
|
||||
"agents": [
|
||||
"./agents"
|
||||
],
|
||||
"commands": [
|
||||
"./commands"
|
||||
]
|
||||
}
|
||||
3
README.md
Normal file
3
README.md
Normal file
@@ -0,0 +1,3 @@
|
||||
# course-builder
|
||||
|
||||
Tools for creating educational content for data science, ML, AI, and MLOps courses
|
||||
57
agents/course-architect.md
Normal file
57
agents/course-architect.md
Normal file
@@ -0,0 +1,57 @@
|
||||
---
|
||||
description: Expert in creating educational content for data science, ML, AI, and MLOps courses
|
||||
---
|
||||
|
||||
You are a course architect specialized in creating high-quality educational content for data science, machine learning, AI, and MLOps courses.
|
||||
|
||||
## Your Expertise
|
||||
|
||||
You excel at:
|
||||
- Writing clear, pedagogically sound textbook chapters
|
||||
- Creating assessments that test true understanding
|
||||
- Designing hands-on Jupyter notebooks for learning
|
||||
- Developing presentation slides that engage students
|
||||
- Adapting content to different student levels (undergrad vs grad)
|
||||
- Balancing theory with practical application
|
||||
- Using appropriate tools and libraries for each course level
|
||||
|
||||
## Your Approach
|
||||
|
||||
**Course-Aware Content Creation:**
|
||||
Before creating any content, you identify which course you're creating for and load the appropriate course profile. This ensures:
|
||||
- Content matches student level and prerequisites
|
||||
- Examples use the right tools and libraries
|
||||
- Explanations match the course's learning philosophy
|
||||
- Complexity is appropriate for the audience
|
||||
|
||||
**Progressive Learning:**
|
||||
You structure content to build understanding incrementally:
|
||||
- Start with concrete examples before abstract concepts
|
||||
- Build on previously introduced ideas
|
||||
- Provide visual aids and interactive elements
|
||||
- Include checkpoints to verify understanding
|
||||
|
||||
**Hands-On Focus:**
|
||||
For data science courses, you emphasize:
|
||||
- Working with real or realistic datasets
|
||||
- Writing actual code, not just pseudocode
|
||||
- Visual exploration of results
|
||||
- Iterative refinement and experimentation
|
||||
|
||||
## Working with Skills
|
||||
|
||||
You have access to skills that provide:
|
||||
- **pedagogy**: General teaching principles for data science education
|
||||
- **content-templates**: Structures for chapters, quizzes, notebooks, slides
|
||||
- **courses/{course-name}**: Course-specific context including audience, tools, style, and standards
|
||||
|
||||
Load course skills progressively based on which course the user is working on.
|
||||
|
||||
## Key Principles
|
||||
|
||||
1. **Know your audience** - Content for undergrads differs from grad students
|
||||
2. **Tool-appropriate** - Use the right libraries for each course level
|
||||
3. **Theory meets practice** - Balance conceptual understanding with hands-on application
|
||||
4. **Visual and interactive** - Leverage notebooks and visualizations
|
||||
5. **Incremental complexity** - Build understanding step by step
|
||||
6. **Real-world relevant** - Connect concepts to actual applications
|
||||
46
commands/create-companion-nb.md
Normal file
46
commands/create-companion-nb.md
Normal file
@@ -0,0 +1,46 @@
|
||||
---
|
||||
description: Create a companion Jupyter notebook for a textbook chapter
|
||||
---
|
||||
|
||||
# Create Companion Notebook
|
||||
|
||||
Generate a Jupyter notebook that accompanies a textbook chapter, allowing students to explore concepts interactively.
|
||||
|
||||
## Process
|
||||
|
||||
1. **Invoke the course-architect agent** to create the notebook
|
||||
2. The agent will:
|
||||
- Ask which course this notebook is for
|
||||
- Load the appropriate course profile
|
||||
- Ask what chapter or topic this accompanies
|
||||
- Generate a notebook that:
|
||||
- Follows the chapter's structure
|
||||
- Includes executable code examples
|
||||
- Uses course-appropriate libraries
|
||||
- Provides interactive explorations
|
||||
- Includes exercises for students to complete
|
||||
|
||||
## What the Agent Does
|
||||
|
||||
The course-architect will:
|
||||
- Create code cells with working examples from the chapter
|
||||
- Add markdown cells explaining concepts
|
||||
- Include visualizations to build intuition
|
||||
- Design exercises that build on examples
|
||||
- Use the technical stack specified in the course profile
|
||||
- Match the complexity to student level
|
||||
|
||||
The agent has access to skills for:
|
||||
- **pedagogy**: Interactive learning principles
|
||||
- **content-templates**: Notebook structure patterns
|
||||
- **courses/{course-name}**: Course-specific tools and libraries
|
||||
|
||||
## Output
|
||||
|
||||
A complete Jupyter notebook (.ipynb format) including:
|
||||
- Markdown cells with explanations
|
||||
- Code cells with working examples
|
||||
- Visualizations and interactive elements
|
||||
- Student exercises (with solutions in comments or separate cells)
|
||||
- Clear instructions and learning objectives
|
||||
- Proper imports and setup
|
||||
233
commands/create-lab-nb.md
Normal file
233
commands/create-lab-nb.md
Normal file
@@ -0,0 +1,233 @@
|
||||
---
|
||||
description: Create a lab assignment Jupyter notebook
|
||||
---
|
||||
|
||||
# Create Lab Notebook
|
||||
|
||||
Generate a Jupyter notebook for a hands-on lab assignment where students apply concepts to solve problems.
|
||||
|
||||
## Interactive Workflow
|
||||
|
||||
This command uses a numbered-option interactive workflow to gather requirements and create the lab notebook.
|
||||
|
||||
### Step 1: Course Selection
|
||||
|
||||
Ask the user which course this lab is for:
|
||||
|
||||
```
|
||||
Which course is this lab for?
|
||||
|
||||
[1] BANA 4080 (Intro to Data Mining - Undergraduate)
|
||||
[2] BANA 6043 (Statistical Computing - Graduate)
|
||||
[3] BANA 7075 (ML in Business - Graduate)
|
||||
|
||||
Please select an option by number:
|
||||
```
|
||||
|
||||
**Course Mappings:**
|
||||
- BANA 4080 → `bana-4080` profile (inherits from `intro-to-data-mining`) - Undergraduate
|
||||
- BANA 6043 → `bana-6043` profile (inherits from `statistical-computing`) - Graduate
|
||||
- BANA 7075 → `bana-7075` profile (inherits from `ml-in-business`) - Graduate
|
||||
|
||||
Load the appropriate course profile and, for BANA 4080, also load the `lab-template-guide` skill.
|
||||
|
||||
### Step 2: Chapter Input
|
||||
|
||||
Ask which chapters the lab should reinforce:
|
||||
|
||||
```
|
||||
Which chapters should this lab reinforce?
|
||||
(Provide chapter numbers or names, e.g., "Chapters 7-9" or "Control Flow, Functions")
|
||||
```
|
||||
|
||||
Read the specified chapters if available to analyze content.
|
||||
|
||||
### Step 3: Topic Confirmation
|
||||
|
||||
Based on the chapters, analyze and present planned topics:
|
||||
|
||||
```
|
||||
Based on [chapters specified], I plan to cover these topics:
|
||||
- [Topic 1 identified from chapter analysis]
|
||||
- [Topic 2 identified from chapter analysis]
|
||||
- [Topic 3 identified from chapter analysis]
|
||||
[- Additional topics as appropriate]
|
||||
|
||||
[1] Accept these topics
|
||||
[2] Add or modify topics
|
||||
|
||||
Please select an option:
|
||||
```
|
||||
|
||||
If option [2], ask:
|
||||
```
|
||||
Please specify additional topics to include or modifications:
|
||||
```
|
||||
|
||||
### Step 4: Dataset Strategy
|
||||
|
||||
Present the dataset plan and ask for confirmation:
|
||||
|
||||
```
|
||||
Dataset plan:
|
||||
- Part A (guided reinforcement): [Primary dataset from chapter readings]
|
||||
- Part B (independent challenges): [Dataset from end-of-chapter exercises]
|
||||
|
||||
[1] Accept these datasets
|
||||
[2] Specify alternative datasets
|
||||
|
||||
Please select an option:
|
||||
```
|
||||
|
||||
If option [2], ask:
|
||||
```
|
||||
Please specify which datasets to use:
|
||||
- Part A dataset:
|
||||
- Part B dataset:
|
||||
```
|
||||
|
||||
### Step 5: Week Number
|
||||
|
||||
Ask what week this lab is for:
|
||||
|
||||
```
|
||||
What week number is this lab for?
|
||||
(Used for filename: XX_wkX_lab.ipynb)
|
||||
```
|
||||
|
||||
### Step 6: Save Location
|
||||
|
||||
Detect if a `lab/` or `labs/` directory exists in the current working directory or nearby. Present options:
|
||||
|
||||
```
|
||||
Where should I save the lab notebook?
|
||||
|
||||
[Suggested path: /path/to/lab/]
|
||||
|
||||
Please provide the directory path (or press Enter to use suggested path):
|
||||
```
|
||||
|
||||
### Step 7: Generate Lab
|
||||
|
||||
**For BANA 4080 labs:**
|
||||
1. Read the template file at `/Users/b294776/Desktop/UC/uc-bana-4080/planning/templates/lab_notebook_template.ipynb`
|
||||
2. Follow the structure exactly as defined in the template
|
||||
3. Replace all `[PLACEHOLDERS]` with appropriate content based on:
|
||||
- Chapters/readings specified
|
||||
- Topics confirmed
|
||||
- Datasets selected
|
||||
- Week number
|
||||
- Course profile and lab-template-guide
|
||||
4. Ensure the 75-minute structure:
|
||||
- Part A: ~30 minutes of guided reinforcement
|
||||
- Class Q&A: ~5-10 minutes
|
||||
- Part B: ~35-40 minutes of independent challenges (6 challenges)
|
||||
- Wrap-up: ~3-5 minutes
|
||||
5. Include:
|
||||
- Clear learning objectives (3-4 items)
|
||||
- Business context for all concepts
|
||||
- Step-by-step instructions for Part A
|
||||
- Progressive challenges for Part B (no starter code, no AI)
|
||||
- Reflection questions
|
||||
- Troubleshooting section
|
||||
6. Save as `XX_wkX_lab.ipynb` in specified directory
|
||||
|
||||
**For BANA 6043 and 7075 labs:**
|
||||
1. Use the general lab template structure from `content-templates/templates.md`
|
||||
2. Adapt to graduate level and course-specific context
|
||||
3. Follow course profile standards
|
||||
4. Save in specified directory
|
||||
|
||||
### Step 8: Completion Message
|
||||
|
||||
Display success message with reminder about TA guide:
|
||||
|
||||
```
|
||||
✅ Lab notebook created successfully!
|
||||
|
||||
Location: [full path to created file]
|
||||
|
||||
Next steps:
|
||||
1. Review the lab notebook and make any necessary edits
|
||||
2. When ready, use `/course-builder:create-ta-guide` to create the TA guidance notebook
|
||||
|
||||
The TA guidance notebook will include:
|
||||
- Complete solutions for all challenges
|
||||
- Teaching guidance for Part A sections
|
||||
- Common student difficulties and hints
|
||||
- Timing and facilitation strategies
|
||||
```
|
||||
|
||||
## What the Agent Does
|
||||
|
||||
The course-architect agent will:
|
||||
|
||||
**Planning Phase:**
|
||||
- Load appropriate course profile based on selection
|
||||
- For BANA 4080: Load lab-template-guide skill
|
||||
- Analyze specified chapters to extract key concepts
|
||||
- Identify topics requiring hands-on practice
|
||||
- Determine appropriate datasets from chapter content
|
||||
- Confirm all details with user using numbered options
|
||||
|
||||
**Content Creation Phase:**
|
||||
- For BANA 4080: Read and use the actual template file
|
||||
- Generate lab following the exact structure required
|
||||
- Fill all placeholders with specific, contextual content
|
||||
- Create Part A with guided examples and "Your Turn" exercises
|
||||
- Create Part B with 6 progressive business-focused challenges
|
||||
- Include appropriate scaffolding for student level
|
||||
- Add business context to every concept and exercise
|
||||
- Ensure timing estimates are realistic
|
||||
|
||||
**Quality Assurance:**
|
||||
- Verify all placeholders are replaced
|
||||
- Ensure learning objectives align with activities
|
||||
- Confirm business context is present throughout
|
||||
- Validate structure matches template requirements
|
||||
- Check that timing adds up to 75 minutes (for BANA 4080)
|
||||
|
||||
## Course-Specific Requirements
|
||||
|
||||
### BANA 4080 (Undergraduate)
|
||||
- **Template:** Must use the provided template file exactly
|
||||
- **Structure:** Part A (30 min) + Q&A (5-10 min) + Part B (35-40 min) + Wrap-up (3-5 min)
|
||||
- **Part A:** Guided reinforcement with TA leading students
|
||||
- **Part B:** 6 independent group challenges with NO starter code, NO AI tools
|
||||
- **Tone:** Encouraging, accessible, builds confidence
|
||||
- **Examples:** Relatable business scenarios for beginners
|
||||
- **TA Guide Required:** Yes, created separately with `/course-builder:create-ta-guide`
|
||||
|
||||
### BANA 6043 & 7075 (Graduate)
|
||||
- **Structure:** Flexible based on course needs
|
||||
- **Tone:** More formal, assumes stronger technical background
|
||||
- **Examples:** Advanced business applications, research scenarios
|
||||
- **Complexity:** Higher mathematical rigor and conceptual depth
|
||||
- **TA Guide:** Optional, based on instructor preference
|
||||
|
||||
## Skills Available to Agent
|
||||
|
||||
The agent has access to:
|
||||
- **pedagogy**: General teaching principles for data science
|
||||
- **content-templates**: Lab notebook structure patterns
|
||||
- **courses/bana-4080**: BANA 4080 course profile and lab-template-guide
|
||||
- **courses/bana-6043**: BANA 6043 course profile
|
||||
- **courses/bana-7075**: BANA 7075 course profile
|
||||
- **courses/intro-to-data-mining**: Base profile for BANA 4080
|
||||
- **courses/statistical-computing**: Base profile for BANA 6043
|
||||
- **courses/ml-in-business**: Base profile for BANA 7075
|
||||
|
||||
## Output
|
||||
|
||||
A complete Jupyter notebook (.ipynb format) including:
|
||||
- Professional header with learning objectives
|
||||
- Setup and data loading
|
||||
- Guided learning sections (Part A for BANA 4080)
|
||||
- Independent practice/challenges (Part B for BANA 4080)
|
||||
- Business context throughout
|
||||
- Reflection and wrap-up
|
||||
- Troubleshooting section
|
||||
- Appropriate complexity for student level
|
||||
- Realistic time estimates
|
||||
|
||||
**Note:** The TA guidance notebook is created separately using the `/course-builder:create-ta-guide` command after the instructor reviews and approves the student lab notebook.
|
||||
287
commands/create-module-overview.md
Normal file
287
commands/create-module-overview.md
Normal file
@@ -0,0 +1,287 @@
|
||||
---
|
||||
description: Create a Canvas module overview document
|
||||
---
|
||||
|
||||
# Create Module Overview
|
||||
|
||||
Generate a Canvas module overview document that summarizes the week's learning objectives, content, and activities.
|
||||
|
||||
## Interactive Workflow
|
||||
|
||||
This command uses a numbered-option interactive workflow to gather requirements and create the module overview.
|
||||
|
||||
### Step 1: Course Selection
|
||||
|
||||
Ask the user which course this module overview is for:
|
||||
|
||||
```
|
||||
Which course is this module overview for?
|
||||
|
||||
[1] BANA 4080 (Intro to Data Mining - Undergraduate)
|
||||
[2] BANA 6043 (Statistical Computing - Graduate)
|
||||
[3] BANA 7075 (ML in Business - Graduate)
|
||||
|
||||
Please select an option by number:
|
||||
```
|
||||
|
||||
Load the appropriate course profile.
|
||||
|
||||
### Step 2: Module Number
|
||||
|
||||
Ask what module/week this overview is for:
|
||||
|
||||
```
|
||||
What module/week number is this overview for?
|
||||
(e.g., 4, 6, 10)
|
||||
```
|
||||
|
||||
### Step 3: Content References
|
||||
|
||||
Ask which content materials to include:
|
||||
|
||||
```
|
||||
Which chapters should be referenced for this module?
|
||||
(Provide chapter numbers or names, e.g., "Chapters 7-9" or "Control Flow, Functions")
|
||||
```
|
||||
|
||||
Then ask:
|
||||
|
||||
```
|
||||
Path to Tuesday lecture slides (or description of lecture topics):
|
||||
(Press Enter to skip if not available)
|
||||
```
|
||||
|
||||
Then ask:
|
||||
|
||||
```
|
||||
Path to Thursday lab notebook (or description of lab activities):
|
||||
(Press Enter to skip if not available)
|
||||
```
|
||||
|
||||
### Step 4: Analyze Content
|
||||
|
||||
Read and analyze the provided materials:
|
||||
- If chapter paths are provided, read the chapters to extract learning objectives and key concepts
|
||||
- If slide path is provided, read the slides to understand lecture structure
|
||||
- If lab path is provided, read the lab to understand hands-on activities
|
||||
- Extract module title from content (e.g., "Control Flow, Iteration, and Functions")
|
||||
- Identify learning objectives (aim for 5-8 measurable objectives)
|
||||
- Extract key concepts and skills for "What You'll Learn This Week"
|
||||
- Summarize Tuesday lecture and Thursday lab activities
|
||||
|
||||
### Step 5: Supplemental Files
|
||||
|
||||
Ask about supplemental files:
|
||||
|
||||
```
|
||||
Are there any supplemental files or materials to include?
|
||||
(e.g., companion notebooks, example code, additional resources)
|
||||
|
||||
[1] No, leave as "TBD"
|
||||
[2] Yes, I'll provide details
|
||||
|
||||
Please select an option:
|
||||
```
|
||||
|
||||
If option [2], ask:
|
||||
|
||||
```
|
||||
Please list the supplemental files and materials to include:
|
||||
(e.g., "Chapter 23 Logistic Regression Notebook: link", "Reading Quiz: Available Monday-Wednesday")
|
||||
```
|
||||
|
||||
### Step 6: Generate Overview
|
||||
|
||||
Using the template at `/Users/b294776/Desktop/UC/uc-bana-4080/planning/templates/module_overview_template.md`, generate the module overview by:
|
||||
|
||||
1. Reading the template file
|
||||
2. Replacing all `{PLACEHOLDERS}` with content extracted from analysis:
|
||||
- `{MODULE_NUMBER}` - Week/module number
|
||||
- `{MODULE_TITLE}` - Descriptive title extracted from content
|
||||
- `{MODULE_TOPIC_BLURB}` - 2-3 paragraph overview connecting technical content to business context
|
||||
- `{LEARNING_OBJECTIVE_X}` - Specific, measurable learning objectives (5-8 items)
|
||||
- `{KEY_POINT_X}` - Concise bullets highlighting skills/concepts from "What You'll Learn"
|
||||
- `{TUESDAY_LECTURE_TITLE}` - Title of Tuesday's lecture
|
||||
- `{TUESDAY_LECTURE_ACTIVITIES}` - 2-4 bullets describing lecture activities
|
||||
- `{THURSDAY_LAB_TITLE}` - Title of Thursday's lab
|
||||
- `{THURSDAY_LAB_ACTIVITIES}` - 2-4 bullets describing lab activities
|
||||
- Supplemental files section (TBD or user-provided content)
|
||||
|
||||
3. Ensure tone is:
|
||||
- Approachable and practical
|
||||
- Business-focused
|
||||
- Encouraging
|
||||
- Concrete with specific examples
|
||||
|
||||
4. Remove all HTML comments and guidance text from the final output
|
||||
|
||||
### Step 7: Present Draft
|
||||
|
||||
Display the complete generated overview to the user:
|
||||
|
||||
```
|
||||
Here's the proposed module overview:
|
||||
|
||||
───────────────────────────────────────────
|
||||
[Full generated overview text]
|
||||
───────────────────────────────────────────
|
||||
|
||||
Does this look good?
|
||||
|
||||
[1] Yes, save this overview
|
||||
[2] No, I'd like to make changes
|
||||
|
||||
Please select an option:
|
||||
```
|
||||
|
||||
If option [2], ask:
|
||||
|
||||
```
|
||||
What changes would you like me to make?
|
||||
```
|
||||
|
||||
Then regenerate with the requested changes and present again.
|
||||
|
||||
### Step 8: Save Location
|
||||
|
||||
When user accepts the overview, ask where to save:
|
||||
|
||||
```
|
||||
Where should I save the module overview?
|
||||
|
||||
[Suggested: /Users/b294776/Desktop/UC/uc-bana-4080/planning/canvas_docs/]
|
||||
|
||||
Please provide the directory path (or press Enter to use suggested path):
|
||||
```
|
||||
|
||||
Then ask for filename:
|
||||
|
||||
```
|
||||
What should I name the file?
|
||||
[Suggested: week{X}_overview.md]
|
||||
|
||||
Please provide the filename (or press Enter to use suggested name):
|
||||
```
|
||||
|
||||
Save the file and display confirmation.
|
||||
|
||||
### Step 9: Completion Message
|
||||
|
||||
```
|
||||
✅ Module overview created successfully!
|
||||
|
||||
Location: [full path to created file]
|
||||
|
||||
The overview includes:
|
||||
- Module topic introduction with business context
|
||||
- {X} learning objectives
|
||||
- "What You'll Learn This Week" summary
|
||||
- Tuesday lecture and Thursday lab descriptions
|
||||
- Supplemental files section
|
||||
|
||||
Next steps:
|
||||
- Review the overview in your editor
|
||||
- Copy and paste into Canvas module page
|
||||
- Add any course-specific formatting or links
|
||||
```
|
||||
|
||||
## What the Agent Does
|
||||
|
||||
The course-architect agent will:
|
||||
|
||||
**Analysis Phase:**
|
||||
- Load appropriate course profile
|
||||
- Read and analyze provided chapters, slides, and lab materials
|
||||
- Extract key learning objectives from content
|
||||
- Identify core concepts and skills
|
||||
- Understand Tuesday lecture structure and activities
|
||||
- Understand Thursday lab structure and activities
|
||||
|
||||
**Content Generation:**
|
||||
- Read the module overview template
|
||||
- Generate engaging 2-3 paragraph module topic introduction
|
||||
- Create 5-8 specific, measurable learning objectives
|
||||
- Write concise, business-focused "What You'll Learn" bullets
|
||||
- Summarize Tuesday lecture activities (2-4 bullets)
|
||||
- Summarize Thursday lab activities (2-4 bullets)
|
||||
- Include supplemental files if provided
|
||||
- Maintain consistent structure across all weeks
|
||||
|
||||
**Quality Assurance:**
|
||||
- Ensure tone is approachable and business-focused
|
||||
- Verify all placeholders are replaced
|
||||
- Check that learning objectives are measurable
|
||||
- Confirm activities are described concretely
|
||||
- Remove all guidance comments
|
||||
- Present for user review before saving
|
||||
|
||||
## Course-Specific Requirements
|
||||
|
||||
### BANA 4080 (Undergraduate)
|
||||
- **Template:** Must use the provided template exactly
|
||||
- **Tone:** Approachable, encouraging, practical
|
||||
- **Business Context:** Strong emphasis on real-world business applications
|
||||
- **Examples:** Concrete, relatable scenarios (customer data, marketing, retail)
|
||||
- **Structure:** Consistent week-to-week format for Canvas
|
||||
|
||||
### BANA 6043 & 7075 (Graduate)
|
||||
- **Tone:** More formal but still engaging
|
||||
- **Business Context:** Advanced applications, research scenarios
|
||||
- **Examples:** Complex business problems, industry case studies
|
||||
- **Structure:** Adapt template to graduate-level expectations
|
||||
|
||||
## Template Structure
|
||||
|
||||
The overview follows this structure:
|
||||
|
||||
1. **Module Title**: Module X Overview: [Topic]
|
||||
2. **Module Topic**: 2-3 paragraphs connecting technical content to business context
|
||||
3. **Learning Objectives** (🎯): 5-8 measurable objectives with action verbs
|
||||
4. **What You'll Learn This Week** (✅): Concise bullet list of key concepts/skills
|
||||
5. **How You'll Practice** (🛠): Tuesday lecture + Thursday lab descriptions
|
||||
6. **Lectures & Other Supplemental Files** (📂): Readings, assessments, notebooks, links
|
||||
|
||||
## Key Principles
|
||||
|
||||
**Content Extraction:**
|
||||
- Learning objectives should align with chapter/lecture/lab content
|
||||
- "What You'll Learn" should be concrete and specific
|
||||
- Practice activities should emphasize hands-on application
|
||||
- Business relevance should be clear throughout
|
||||
|
||||
**Writing Style:**
|
||||
- Use active voice and action verbs
|
||||
- Keep examples concrete and relatable
|
||||
- Emphasize practical application over theory
|
||||
- Maintain encouraging, supportive tone
|
||||
- Connect concepts to career skills
|
||||
|
||||
**Quality Checks:**
|
||||
- All placeholders filled with specific content
|
||||
- No generic or vague statements
|
||||
- Business context present throughout
|
||||
- Consistent with course profile tone and standards
|
||||
- User reviewed and approved before saving
|
||||
|
||||
## Skills Available to Agent
|
||||
|
||||
The agent has access to:
|
||||
- **pedagogy**: General teaching principles for data science
|
||||
- **content-templates**: Template structures and patterns
|
||||
- **courses/bana-4080**: BANA 4080 course profile and standards
|
||||
- **courses/bana-6043**: BANA 6043 course profile
|
||||
- **courses/bana-7075**: BANA 7075 course profile
|
||||
|
||||
## Output
|
||||
|
||||
A complete markdown file ready for Canvas with:
|
||||
- Professional module overview with business context
|
||||
- Clear, measurable learning objectives (5-8 items)
|
||||
- Concise "What You'll Learn" summary
|
||||
- Detailed descriptions of Tuesday and Thursday activities
|
||||
- Supplemental files section (TBD or populated)
|
||||
- Consistent formatting and structure
|
||||
- User-reviewed and approved content
|
||||
- No template comments or guidance text
|
||||
|
||||
The overview should be immediately usable in Canvas with minimal additional editing.
|
||||
215
commands/create-quiz.md
Normal file
215
commands/create-quiz.md
Normal file
@@ -0,0 +1,215 @@
|
||||
---
|
||||
description: Create a reading comprehension quiz based on chapter content
|
||||
---
|
||||
|
||||
# Create Quiz
|
||||
|
||||
Generate a reading comprehension quiz to test student understanding of textbook chapter(s).
|
||||
|
||||
## Purpose
|
||||
|
||||
Creates "reading quizzes" that verify students comprehended key concepts from assigned chapter readings. These quizzes focus on understanding, not memorization, and use business scenarios to bring concepts to life.
|
||||
|
||||
## Process
|
||||
|
||||
1. **Invoke the course-architect agent** to create the quiz
|
||||
2. The agent will:
|
||||
- Ask which course this quiz is for
|
||||
- Load the appropriate course profile
|
||||
- **Ask which chapter(s) to base the quiz on** (e.g., "Chapter 5: Data Visualization")
|
||||
- **Confirm the number of questions** (default: 10 questions, but allow customization)
|
||||
- **Ask for the week number** (e.g., "Week 9") for filename generation
|
||||
- **Ask where to save the quiz** (provide default based on course, allow customization)
|
||||
- Read the specified chapter(s) to understand content and learning objectives
|
||||
- Generate quiz questions that:
|
||||
- Test comprehension of key concepts from the reading
|
||||
- Include business scenario-based questions
|
||||
- Use appropriate question types (multiple choice, true/false, multiple answer, numeric entry)
|
||||
- Match the course's pedagogical style
|
||||
- **Save the quiz** as a markdown file to the specified location
|
||||
|
||||
## Quiz Structure
|
||||
|
||||
Each quiz question must include:
|
||||
|
||||
1. **Question Number and Title** (e.g., "Question 3: Linear Regression Coefficients")
|
||||
2. **Question Type** (Multiple Choice, TRUE/FALSE, Multiple Answer, or Numeric Entry)
|
||||
3. **Scenario** (for scenario-based questions) - Business context that applies the concept
|
||||
4. **Question** - Clear, specific question text
|
||||
5. **Answer Options** - Varies by question type:
|
||||
- Multiple Choice: 4 options (A, B, C, D)
|
||||
- TRUE/FALSE: 2 options (A: TRUE, B: FALSE)
|
||||
- Multiple Answer: 4-5 options with instruction to "Select ALL correct"
|
||||
- Numeric Entry: Blank for student to fill in, with acceptable answer range/precision
|
||||
6. **Correct Answer** - Clearly identified with precision requirements for numeric entries
|
||||
7. **Tip/Hint** - Helpful guidance for wrong answers that:
|
||||
- Doesn't give away the answer
|
||||
- Points to the key concept they need to reconsider
|
||||
- Helps them think through the problem
|
||||
- References relevant parts of the reading
|
||||
- For numeric questions: points to the calculation method or formula needed
|
||||
|
||||
## Question Types Distribution
|
||||
|
||||
For a typical 10-question quiz:
|
||||
- **5-6 Multiple Choice** questions (standard comprehension + scenario-based)
|
||||
- **2-3 TRUE/FALSE** questions (test common misconceptions)
|
||||
- **1-2 Multiple Answer** questions (select ALL correct - tests nuanced understanding)
|
||||
- **0-2 Numeric Entry** questions (test calculation/application skills)
|
||||
|
||||
**Important:** Mix scenario-based questions throughout. At least 40-50% of questions should use business scenarios.
|
||||
|
||||
## What the Agent Does
|
||||
|
||||
The course-architect will:
|
||||
- Read the specified chapter(s) to extract key concepts and learning objectives
|
||||
- Create questions that test understanding, not just recall
|
||||
- Write realistic business scenarios that apply the concepts
|
||||
- Ensure questions match the course's student level and style
|
||||
- Provide helpful tips that guide thinking without revealing answers
|
||||
- Balance question types and difficulty
|
||||
- Avoid questions that are too easy (pure recall) or too trick-y
|
||||
|
||||
The agent has access to skills for:
|
||||
- **pedagogy**: Assessment design principles (test understanding, not memorization)
|
||||
- **content-templates**: Quiz format templates
|
||||
- **courses/{course-name}**: Course-specific context, student level, and learning philosophy
|
||||
|
||||
## Output Format
|
||||
|
||||
A complete quiz markdown file including:
|
||||
|
||||
```markdown
|
||||
# Week [X] Quiz: [Topic Name]
|
||||
|
||||
**Instructions:** This quiz tests your comprehension of Week [X] material including [key topics]. Choose the best answer(s) for each question.
|
||||
|
||||
---
|
||||
|
||||
## Question 1: [Concept Name] ([Question Type])
|
||||
|
||||
**Scenario:** [Business scenario if applicable]
|
||||
|
||||
[Question text]
|
||||
|
||||
A) [Option A]
|
||||
B) [Option B]
|
||||
C) [Option C]
|
||||
D) [Option D]
|
||||
|
||||
**Correct Answer:** [Letter]
|
||||
|
||||
**Tip for wrong answers:** [Helpful guidance that doesn't reveal the answer]
|
||||
|
||||
---
|
||||
|
||||
[Repeat for remaining questions]
|
||||
```
|
||||
|
||||
## Example Question Patterns
|
||||
|
||||
**Scenario-Based Multiple Choice:**
|
||||
```
|
||||
## Question 5: Model Evaluation (Multiple Choice)
|
||||
|
||||
**Scenario:** A retail analytics team builds a sales forecasting model.
|
||||
Training RMSE is $450, but Test RMSE is $1,200.
|
||||
|
||||
What does this suggest?
|
||||
A) The model is ready for deployment
|
||||
B) The model is overfitting
|
||||
C) The model is underfitting
|
||||
D) The test data is bad
|
||||
|
||||
**Correct Answer:** B
|
||||
|
||||
**Tip:** Consider what a large gap between training and test performance indicates about how well the model generalizes to new data.
|
||||
```
|
||||
|
||||
**Concept Application TRUE/FALSE:**
|
||||
```
|
||||
## Question 2: Correlation vs. Causation (TRUE/FALSE)
|
||||
|
||||
**Statement:** If advertising spend and sales have correlation 0.85,
|
||||
we can conclude advertising causes sales increases.
|
||||
|
||||
A) TRUE
|
||||
B) FALSE
|
||||
|
||||
**Correct Answer:** B
|
||||
|
||||
**Tip:** Remember that correlation measures association, not causation.
|
||||
What other factors might explain both variables moving together?
|
||||
```
|
||||
|
||||
**Numeric Entry:**
|
||||
```
|
||||
## Question 8: Calculate Correlation (Numeric Entry)
|
||||
|
||||
**Scenario:** A marketing analyst calculates the covariance between
|
||||
advertising spend and sales as 1,200. The standard deviation of
|
||||
advertising spend is 30 and the standard deviation of sales is 50.
|
||||
|
||||
What is the correlation coefficient? (Round to 2 decimal places)
|
||||
|
||||
Answer: ______
|
||||
|
||||
**Correct Answer:** 0.80
|
||||
|
||||
**Acceptable Range:** 0.79 to 0.81
|
||||
|
||||
**Tip:** Remember the formula: correlation = covariance / (SD of X × SD of Y).
|
||||
Make sure you're dividing, not multiplying the standard deviations.
|
||||
```
|
||||
|
||||
**Multiple Answer:**
|
||||
```
|
||||
## Question 10: Regression Assumptions (Multiple Answer - Select ALL correct)
|
||||
|
||||
Which of these are key assumptions of linear regression?
|
||||
|
||||
A) The relationship between predictors and outcome is linear
|
||||
B) The residuals (errors) are normally distributed
|
||||
C) All predictor variables must be normally distributed
|
||||
D) The variance of residuals is constant
|
||||
E) Residuals are independent of each other
|
||||
|
||||
**Correct Answers:** A, B, D, E
|
||||
|
||||
**Tip:** Linear regression doesn't require predictor variables to be normally
|
||||
distributed, only that the residuals follow a normal distribution.
|
||||
```
|
||||
|
||||
## Save Location
|
||||
|
||||
The agent will ask where to save the quiz and provide a course-specific default:
|
||||
|
||||
**For Intro to Data Mining (BANA 4080):**
|
||||
- Default: `/Users/b294776/Desktop/UC/uc-bana-4080/planning/quizzes/`
|
||||
- Filename format: `week[X]_quiz.md` (e.g., `week9_quiz.md`)
|
||||
|
||||
**For other courses:**
|
||||
- The agent will suggest an appropriate location based on the course profile
|
||||
- Always confirm the save location before writing the file
|
||||
|
||||
**After generation:**
|
||||
1. Show the user the complete quiz content
|
||||
2. Confirm the save location and filename
|
||||
3. Use the Write tool to save the file
|
||||
4. Confirm successful save to the user
|
||||
|
||||
## Important Notes
|
||||
|
||||
- **Chapter-driven:** Always ask which chapter(s) to base the quiz on
|
||||
- **Week number:** Ask for the week number to create proper filename
|
||||
- **Confirm quantity:** Ask to confirm 10 questions (or get desired number)
|
||||
- **Scenario-based:** Mix business scenarios throughout (40-50% of questions)
|
||||
- **Helpful tips:** Guide thinking, don't reveal answers
|
||||
- **Course-appropriate:** Match student level and course style
|
||||
- **Question type variety:** Use all four types (Multiple Choice, TRUE/FALSE, Multiple Answer, Numeric Entry)
|
||||
- **Numeric precision:** For numeric entry questions, always specify:
|
||||
- Required precision (e.g., "rounded to 1 decimal place")
|
||||
- Acceptable answer range to account for rounding differences
|
||||
- Clear calculation context from the scenario
|
||||
- **No coding questions:** Reading quizzes test conceptual understanding and calculations, not coding ability
|
||||
- **Save workflow:** Always confirm save location and filename before writing the file
|
||||
265
commands/create-slides.md
Normal file
265
commands/create-slides.md
Normal file
@@ -0,0 +1,265 @@
|
||||
---
|
||||
description: Create presentation slides for a lecture
|
||||
---
|
||||
|
||||
# Create Slides
|
||||
|
||||
Generate presentation slides for teaching a course topic using the Quarto RevealJS format.
|
||||
|
||||
## Interactive Workflow
|
||||
|
||||
This command uses a numbered-option interactive workflow to gather requirements and create lecture slides.
|
||||
|
||||
### Step 1: Course Detection
|
||||
|
||||
Automatically detect the course based on the current working directory path:
|
||||
|
||||
- Check if the path contains `uc-bana-4080` → BANA 4080
|
||||
- Check if the path contains `uc-bana-6043` → BANA 6043
|
||||
- Check if the path contains `uc-bana-7075` → BANA 7075
|
||||
|
||||
**If course detected:**
|
||||
```
|
||||
Detected course: BANA [X] from directory path
|
||||
Proceeding with [Course Name]...
|
||||
```
|
||||
|
||||
**If no course detected:**
|
||||
```
|
||||
Unable to detect course from directory path.
|
||||
|
||||
Which course are these slides for?
|
||||
|
||||
[1] BANA 4080 (Intro to Data Mining - Undergraduate)
|
||||
[2] BANA 6043 (Statistical Computing - Graduate)
|
||||
[3] BANA 7075 (ML in Business - Graduate)
|
||||
|
||||
Please select an option by number:
|
||||
```
|
||||
|
||||
Load the appropriate course profile.
|
||||
|
||||
### Step 2: Chapter Input
|
||||
|
||||
Ask which chapters the slides should cover:
|
||||
|
||||
```
|
||||
Which chapters should these slides cover?
|
||||
(Provide chapter numbers or names, e.g., "Chapters 7-9" or "Control Flow, Functions")
|
||||
```
|
||||
|
||||
Read the specified chapters if available to analyze content and extract key concepts.
|
||||
|
||||
### Step 3: Week Number
|
||||
|
||||
Ask what week these slides are for:
|
||||
|
||||
```
|
||||
What week number are these slides for?
|
||||
(Used for filename: w[X]_tuesday.qmd)
|
||||
```
|
||||
|
||||
### Step 4: Dataset Confirmation
|
||||
|
||||
Present the dataset plan:
|
||||
|
||||
```
|
||||
Dataset plan for demonstrations:
|
||||
I'll use the primary dataset from the chapter readings for live coding examples.
|
||||
|
||||
[1] Accept this dataset
|
||||
[2] Specify a different dataset
|
||||
|
||||
Please select an option:
|
||||
```
|
||||
|
||||
If option [2], ask:
|
||||
```
|
||||
Please specify which dataset to use for demonstrations:
|
||||
```
|
||||
|
||||
### Step 5: Present Slide Outline
|
||||
|
||||
Analyze the chapters and present a proposed outline:
|
||||
|
||||
```
|
||||
Based on [chapters specified], here's the proposed slide outline:
|
||||
|
||||
Opening & Agenda (5 minutes)
|
||||
├── Week overview and learning objectives
|
||||
└── Connection to course progression
|
||||
|
||||
Review & Warm-Up (10-15 minutes)
|
||||
├── Previous week concept review
|
||||
└── Think-pair-share connection activity
|
||||
|
||||
Main Content (35-45 minutes)
|
||||
├── [Concept 1 Title]
|
||||
│ └── Interactive Activity: [Activity description]
|
||||
├── [Concept 2 Title]
|
||||
│ └── Hands-On Demo: [Demo description]
|
||||
└── [Concept 3 Title]
|
||||
└── Interactive Activity: [Activity description]
|
||||
|
||||
Wrap-Up (10-15 minutes)
|
||||
├── Key takeaways
|
||||
├── Thursday lab preview
|
||||
└── Q&A
|
||||
|
||||
[1] Accept this outline and generate slides
|
||||
[2] Request changes to outline
|
||||
|
||||
Please select an option:
|
||||
```
|
||||
|
||||
If option [2], ask:
|
||||
```
|
||||
What changes would you like to make to the outline?
|
||||
```
|
||||
|
||||
Then regenerate the outline and present again.
|
||||
|
||||
### Step 6: Save Location
|
||||
|
||||
When user accepts the outline, ask where to save:
|
||||
|
||||
```
|
||||
Where should I save the slides?
|
||||
|
||||
[Suggested: Look for slides/ directory or current working directory]
|
||||
|
||||
Please provide the directory path (or press Enter to use suggested path):
|
||||
```
|
||||
|
||||
### Step 7: Generate Slides
|
||||
|
||||
**For BANA 4080 slides:**
|
||||
1. Read the template file at `/Users/b294776/Desktop/UC/uc-bana-4080/planning/templates/tuesday_slide_template.qmd`
|
||||
2. Follow the structure exactly as defined in the template
|
||||
3. Replace all `[PLACEHOLDERS]` with appropriate content based on:
|
||||
- Chapters/readings specified
|
||||
- Week number
|
||||
- Dataset selected
|
||||
- Course profile requirements
|
||||
4. Create interactive think-pair-share activities (3-4 minimum)
|
||||
5. Include hands-on demonstrations with business context
|
||||
6. Add appropriate timers with unique IDs
|
||||
7. Generate visualizations using Mermaid diagrams or Python code where applicable
|
||||
8. Save as `w[X]_tuesday.qmd` in specified directory
|
||||
|
||||
**For BANA 6043 and 7075 slides:**
|
||||
1. Use general slide template structure from `content-templates/templates.md`
|
||||
2. Adapt to graduate level and course-specific context
|
||||
3. Follow course profile standards
|
||||
4. Save in specified directory
|
||||
|
||||
### Step 8: Post-Generation Notes
|
||||
|
||||
After saving the slides, provide notes about elements requiring attention:
|
||||
|
||||
```
|
||||
✅ Slides created successfully!
|
||||
|
||||
Location: [full path to created file]
|
||||
|
||||
📋 Action Items:
|
||||
The following elements may need your attention:
|
||||
|
||||
Images Needed:
|
||||
- [List any image placeholders with slide numbers]
|
||||
- Suggested sources: Create with Mermaid, generate with Python, or source from [suggestions]
|
||||
|
||||
Visualizations Created:
|
||||
- [List Mermaid diagrams or Python-generated visualizations included]
|
||||
|
||||
Custom Content:
|
||||
- [Any sections that may need customization based on specific context]
|
||||
|
||||
Next steps:
|
||||
1. Review the slides in your editor
|
||||
2. Add or create any required images
|
||||
3. Test render the .qmd file to HTML
|
||||
4. Review interactive elements and timers
|
||||
```
|
||||
|
||||
## What the Agent Does
|
||||
|
||||
The course-architect agent will:
|
||||
|
||||
**Analysis Phase:**
|
||||
- Load appropriate course profile based on selection
|
||||
- Read and analyze specified chapters to extract key concepts
|
||||
- Identify 3-4 core concepts for gentle introduction
|
||||
- Map business applications and real-world relevance
|
||||
- Plan hands-on demonstration opportunities
|
||||
|
||||
**Outline Design Phase:**
|
||||
- Design 3-4 think-pair-share activities with business scenarios
|
||||
- Create 1-2 hands-on demonstrations for immediate success
|
||||
- Develop progressive concept flow from familiar to sophisticated
|
||||
- Plan Thursday lab connections and motivation
|
||||
- Present outline for user approval
|
||||
|
||||
**Content Generation Phase:**
|
||||
- For BANA 4080: Read and use the actual template file
|
||||
- Generate slides following the exact structure required
|
||||
- Fill all placeholders with specific, contextual content
|
||||
- Create business scenarios that students find relatable
|
||||
- Develop code demonstrations (using chapter datasets)
|
||||
- Design timer activities with unique IDs
|
||||
- **Prefer Mermaid diagrams or Python-generated visualizations** over external images
|
||||
- Add speaker notes for instructor guidance
|
||||
|
||||
**Quality Assurance:**
|
||||
- Verify all placeholders are replaced
|
||||
- Ensure 3-4 interactive activities included
|
||||
- Confirm business context is present throughout
|
||||
- Validate structure matches template requirements
|
||||
- Check that timing adds up to 60-75 minutes
|
||||
- Note any image placeholders that need attention
|
||||
|
||||
## Course-Specific Requirements
|
||||
|
||||
### BANA 4080 (Undergraduate)
|
||||
- **Template:** Must use the provided template file exactly
|
||||
- **Duration:** 60-75 minutes total
|
||||
- **Structure:** Opening (5 min) + Review (10-15 min) + Main Content (35-45 min) + Wrap-Up (10-15 min)
|
||||
- **Interactive Activities:** Minimum 3-4 think-pair-share activities with timers
|
||||
- **Hands-On Demos:** 1-2 live coding demonstrations using chapter datasets
|
||||
- **Tone:** Gentle introduction, business-focused, success-oriented
|
||||
- **Philosophy:** First exposure to concepts before readings and Thursday lab
|
||||
- **Visualizations:** Prefer Mermaid diagrams and Python-generated charts
|
||||
|
||||
### BANA 6043 & 7075 (Graduate)
|
||||
- **Structure:** Flexible based on course needs
|
||||
- **Tone:** More formal, assumes stronger technical background
|
||||
- **Examples:** Advanced business applications, research scenarios
|
||||
- **Complexity:** Higher mathematical rigor and conceptual depth
|
||||
|
||||
## Skills Available to Agent
|
||||
|
||||
The agent has access to:
|
||||
- **pedagogy**: Presentation and lecture design principles, gentle introduction strategies
|
||||
- **content-templates**: Slide structure patterns
|
||||
- **courses/bana-4080**: BANA 4080 course profile and standards
|
||||
- **courses/bana-6043**: BANA 6043 course profile
|
||||
- **courses/bana-7075**: BANA 7075 course profile
|
||||
|
||||
## Output
|
||||
|
||||
A complete Quarto RevealJS presentation (.qmd format) including:
|
||||
- YAML header with RevealJS configuration
|
||||
- Professional title slide with background image
|
||||
- Opening and agenda slides
|
||||
- Previous week review section with interactive activity
|
||||
- Main content sections with business context
|
||||
- Interactive think-pair-share activities with timers
|
||||
- Hands-on demonstrations with code
|
||||
- Mermaid diagrams or Python-generated visualizations (preferred over external images)
|
||||
- Key takeaways and Thursday lab preview
|
||||
- Wrap-up and Q&A slides
|
||||
- Speaker notes for instructor guidance
|
||||
- Appropriate complexity for student level
|
||||
- Realistic time estimates (60-75 minutes total)
|
||||
|
||||
**Post-Generation Notes:** The agent will provide a list of any image placeholders, visualization elements created, and items requiring instructor attention before finalizing the slides.
|
||||
202
commands/create-ta-guide.md
Normal file
202
commands/create-ta-guide.md
Normal file
@@ -0,0 +1,202 @@
|
||||
---
|
||||
description: Create TA guidance notebook with solutions and teaching strategies
|
||||
---
|
||||
|
||||
# Create TA Guidance Notebook
|
||||
|
||||
Generate a comprehensive TA guidance notebook that provides complete solutions, teaching strategies, and facilitation guidance for a student lab notebook.
|
||||
|
||||
## Interactive Workflow
|
||||
|
||||
### Step 1: Locate Student Lab
|
||||
|
||||
Ask for the path to the student lab notebook:
|
||||
|
||||
```
|
||||
Please provide the path to the student lab notebook:
|
||||
(e.g., /path/to/labs/06_wk6_lab.ipynb)
|
||||
```
|
||||
|
||||
Read the student lab notebook to analyze its structure and content.
|
||||
|
||||
### Step 2: Identify Course
|
||||
|
||||
Based on the lab structure or ask the user:
|
||||
|
||||
```
|
||||
Which course is this TA guide for?
|
||||
|
||||
[1] BANA 4080 (Intro to Data Mining - Undergraduate)
|
||||
[2] BANA 6043 (Statistical Computing - Graduate)
|
||||
[3] BANA 7075 (ML in Business - Graduate)
|
||||
|
||||
Please select an option by number:
|
||||
```
|
||||
|
||||
Load the appropriate course profile.
|
||||
|
||||
### Step 3: Extract Week Number
|
||||
|
||||
Extract the week number from the filename (e.g., `06_wk6_lab.ipynb` → week 6) or ask:
|
||||
|
||||
```
|
||||
What week is this lab for?
|
||||
(Used for filename: ta_guidance_wkX.ipynb)
|
||||
```
|
||||
|
||||
### Step 4: Generate TA Guide
|
||||
|
||||
Create a comprehensive TA guidance notebook with:
|
||||
|
||||
**Section 1: Pre-Lab Preparation**
|
||||
- Overview of learning objectives
|
||||
- Key concepts from the lab
|
||||
- Connection to readings/lectures
|
||||
- Required setup and materials
|
||||
- Common technical issues to anticipate
|
||||
- Grouping strategies (for BANA 4080)
|
||||
|
||||
**Section 2: Part A Teaching Guidance** (for BANA 4080)
|
||||
For each section in Part A:
|
||||
- Teaching objectives for the section
|
||||
- Time allocation
|
||||
- Key points to emphasize
|
||||
- Demonstration strategies
|
||||
- Common student questions and suggested answers
|
||||
- Transition techniques to next section
|
||||
|
||||
**Section 3: Part B Solutions and Facilitation** (for BANA 4080)
|
||||
For each of the 6 challenges:
|
||||
- Challenge overview and learning goal
|
||||
- Complete, well-commented solution code
|
||||
- Alternative approaches students might take
|
||||
- Common errors and debugging strategies
|
||||
- Hints to provide (when and how)
|
||||
- Discussion points for concept reinforcement
|
||||
- Extension ideas for advanced students
|
||||
|
||||
**Section 4: Timing and Pacing Strategies**
|
||||
- Detailed timing breakdown
|
||||
- What to do if running ahead/behind
|
||||
- How to manage different group paces
|
||||
- When to call class back together
|
||||
- Transition management
|
||||
|
||||
**Section 5: Assessment and Wrap-up**
|
||||
- Key concepts students should have mastered
|
||||
- Reflection questions to ask
|
||||
- Connections to upcoming content/homework
|
||||
- What to look for when monitoring student work
|
||||
|
||||
**Section 6: Troubleshooting Guide**
|
||||
- Common technical issues and solutions
|
||||
- Conceptual difficulties and how to address
|
||||
- Group dynamics issues
|
||||
- Backup plans for major problems
|
||||
|
||||
### Step 5: Save Location
|
||||
|
||||
Suggest saving in the same directory as the student lab:
|
||||
|
||||
```
|
||||
Where should I save the TA guidance notebook?
|
||||
|
||||
[Suggested: same directory as student lab]
|
||||
|
||||
Please provide the directory path (or press Enter to use suggested path):
|
||||
```
|
||||
|
||||
Save as `ta_guidance_wkX.ipynb`
|
||||
|
||||
### Step 6: Completion Message
|
||||
|
||||
```
|
||||
✅ TA guidance notebook created successfully!
|
||||
|
||||
Location: [full path to created file]
|
||||
|
||||
The TA guidance includes:
|
||||
- Pre-lab preparation guidance
|
||||
- Part A teaching strategies (section-by-section)
|
||||
- Part B complete solutions (all challenges)
|
||||
- Timing and pacing strategies
|
||||
- Troubleshooting guide
|
||||
|
||||
Review the guidance and customize as needed for your teaching style.
|
||||
```
|
||||
|
||||
## What the Agent Does
|
||||
|
||||
The course-architect agent will:
|
||||
|
||||
**Analysis Phase:**
|
||||
- Read and analyze the student lab notebook
|
||||
- Identify all exercises, challenges, and learning objectives
|
||||
- Extract the lab structure (Part A sections, Part B challenges)
|
||||
- Load appropriate course profile
|
||||
|
||||
**Solution Development:**
|
||||
- Create complete, tested solutions for all challenges
|
||||
- Write well-commented code explaining each step
|
||||
- Identify alternative valid approaches
|
||||
- Document common errors and misconceptions
|
||||
|
||||
**Teaching Guidance Creation:**
|
||||
- Develop section-by-section teaching strategies for Part A
|
||||
- Provide timing guidance and pacing strategies
|
||||
- Suggest when and how to provide hints
|
||||
- Create discussion prompts and check-in questions
|
||||
|
||||
**Quality Assurance:**
|
||||
- Ensure all solutions are complete and tested
|
||||
- Verify timing estimates are realistic
|
||||
- Confirm guidance covers common student difficulties
|
||||
- Check that facilitation strategies are practical
|
||||
|
||||
## Course-Specific Requirements
|
||||
|
||||
### BANA 4080 (Undergraduate)
|
||||
|
||||
**Structure:** Must include all sections listed above
|
||||
|
||||
**Part A Guidance Should Include:**
|
||||
- Step-by-step teaching script for each section
|
||||
- What to write/show on screen
|
||||
- Questions to ask students to check understanding
|
||||
- How to explain concepts in accessible language
|
||||
- When to have students try on their own
|
||||
|
||||
**Part B Solutions Should Include:**
|
||||
- Complete working code for all 6 challenges
|
||||
- Multiple approaches where applicable
|
||||
- Common mistakes students make
|
||||
- Strategic hints (not full solutions) to provide
|
||||
- When to intervene vs. let groups struggle productively
|
||||
- Discussion points after each challenge
|
||||
|
||||
**Timing Guidance:**
|
||||
- Detailed breakdown matching the 75-minute structure
|
||||
- Flexibility strategies for different pacing
|
||||
- What to skip if running behind
|
||||
- Extension activities if running ahead
|
||||
|
||||
### BANA 6043 & 7075 (Graduate)
|
||||
|
||||
**Structure:** More flexible, focus on:
|
||||
- Complete solutions to all exercises
|
||||
- Advanced discussion topics
|
||||
- Connections to research or industry applications
|
||||
- Optional: Teaching strategies if lab is TA-led
|
||||
|
||||
## Output
|
||||
|
||||
A comprehensive Jupyter notebook (.ipynb format) including:
|
||||
- Complete solutions to all lab exercises and challenges
|
||||
- Teaching strategies for guided sections
|
||||
- Timing and pacing guidance
|
||||
- Common student difficulties and how to address them
|
||||
- Facilitation strategies for group work
|
||||
- Troubleshooting guide
|
||||
- Discussion prompts and assessment questions
|
||||
|
||||
The TA guide should be a complete resource that allows a TA to effectively facilitate the lab session even if they haven't taught it before.
|
||||
296
commands/review-chapter.md
Normal file
296
commands/review-chapter.md
Normal file
@@ -0,0 +1,296 @@
|
||||
---
|
||||
description: Reviews a textbook chapter for technical accuracy, clarity, tone, style, and grammar based on course standards.
|
||||
---
|
||||
|
||||
# Review Textbook Chapter
|
||||
|
||||
This command leverages the `course-architect` agent to perform a comprehensive review of a textbook chapter, ensuring it aligns with the specific course's pedagogical standards and style.
|
||||
|
||||
The agent will analyze the chapter based on the detected or selected course profile and provide specific, actionable feedback on:
|
||||
* Technical Accuracy (code & concepts)
|
||||
* Clarity for Beginners (using course profile audience)
|
||||
* Tone Alignment (encouraging, practical, conversational)
|
||||
* Pedagogical Elements (use of callouts, examples, checks)
|
||||
* Sentence Case Compliance (for markdown headings)
|
||||
* Grammar and Flow
|
||||
|
||||
## Interactive Workflow
|
||||
|
||||
### Step 1: Course Detection and Selection
|
||||
|
||||
Attempt to automatically detect the course based on the current working directory path.
|
||||
|
||||
**Agent Action:**
|
||||
* Get the current working directory path (e.g., using `pwd` in Bash).
|
||||
* Check if the path contains `bana-4080`, `bana-6043`, or `bana-7075`.
|
||||
|
||||
**If course detected:**
|
||||
```
|
||||
Detected course: BANA [XXXX] based on the current directory.
|
||||
|
||||
[1] Confirm BANA [XXXX]
|
||||
[2] Select a different course
|
||||
|
||||
Please select an option:
|
||||
```
|
||||
If [1], proceed with the detected course. If [2], show the manual selection prompt below.
|
||||
|
||||
**If no course detected OR user selects [2]:**
|
||||
```
|
||||
Which course is this chapter for?
|
||||
|
||||
[1] BANA 4080 (Intro to Data Mining - Undergraduate)
|
||||
[2] BANA 6043 (Statistical Computing - Graduate)
|
||||
[3] BANA 7075 (ML in Business - Graduate)
|
||||
|
||||
Please select an option by number:
|
||||
```
|
||||
|
||||
**Agent Action (Post-Selection):**
|
||||
* Load the appropriate **course profile** (e.g., `intro-to-data-mining/course-profile.md`).
|
||||
* Load the `pedagogy/teaching-principles.md` skill.
|
||||
|
||||
### Step 2: Chapter Input
|
||||
|
||||
Ask the user for the chapter content file:
|
||||
|
||||
```
|
||||
Please provide the path to the chapter file (.qmd or .md) you want me to review:
|
||||
(e.g., /path/to/book/chapter-5.qmd)
|
||||
```
|
||||
|
||||
**Agent Action:**
|
||||
* Read the full content of the specified file.
|
||||
|
||||
### Step 3: Review and Generate Feedback
|
||||
|
||||
The agent analyzes the entire chapter based on the loaded course profile and pedagogical principles.
|
||||
|
||||
**Agent Actions:**
|
||||
* Load relevant course context from the course profile
|
||||
* Parse the chapter structure (headings, sections, code blocks, callouts)
|
||||
* Evaluate against the following criteria:
|
||||
|
||||
**Review Criteria:**
|
||||
|
||||
1. **Technical Accuracy**
|
||||
- Verify code examples run correctly and follow best practices
|
||||
- Check that concepts are explained accurately
|
||||
- Ensure libraries/functions are used appropriately
|
||||
- Validate that examples align with the course's technical stack
|
||||
|
||||
2. **Clarity for Beginners (Audience-Specific)**
|
||||
- Assess whether explanations match the target audience level (from course profile)
|
||||
- Check for assumed knowledge that hasn't been introduced
|
||||
- Verify that jargon is either avoided or clearly defined
|
||||
- Ensure examples build progressively in complexity
|
||||
|
||||
3. **Tone Alignment**
|
||||
- Verify the tone matches course standards (e.g., conversational, encouraging)
|
||||
- Check that the chapter is practical and business-focused (if applicable)
|
||||
- Ensure the writing is engaging and motivating
|
||||
- Assess whether the chapter reduces anxiety and builds confidence
|
||||
|
||||
4. **Pedagogical Elements**
|
||||
- Verify presence of learning objectives
|
||||
- Check for appropriate use of callouts (tips, warnings, notes)
|
||||
- Assess quality and relevance of examples
|
||||
- Verify inclusion of check-your-understanding questions
|
||||
- Ensure proper spacing of practice opportunities
|
||||
|
||||
5. **Sentence Case Compliance (Headings)**
|
||||
- Check all markdown headings (##, ###, ####) use sentence case
|
||||
- Flag any title case headings
|
||||
- Provide specific examples of violations
|
||||
|
||||
6. **Grammar and Flow**
|
||||
- Check for grammatical errors
|
||||
- Assess logical flow between sections
|
||||
- Verify smooth transitions
|
||||
- Check for consistency in terminology
|
||||
|
||||
### Step 4: Present Feedback Report
|
||||
|
||||
Display the comprehensive review to the user, structured by category.
|
||||
|
||||
```
|
||||
Here is the review for [chapter-file.qmd], evaluated against BANA [XXXX] standards:
|
||||
|
||||
## Overall Assessment
|
||||
|
||||
[Summary paragraph providing high-level evaluation]
|
||||
|
||||
-----
|
||||
|
||||
## 1. Technical Accuracy
|
||||
|
||||
* **Status:** [✅ Excellent / ⚠️ Needs Attention / ❌ Issues Found]
|
||||
* **Feedback:** [Specific points with line numbers or section references]
|
||||
|
||||
-----
|
||||
|
||||
## 2. Clarity for Beginners (Audience: BANA [XXXX])
|
||||
|
||||
* **Status:** [✅ Excellent / ⚠️ Needs Attention / ❌ Issues Found]
|
||||
* **Feedback:** [Specific points with examples]
|
||||
|
||||
-----
|
||||
|
||||
## 3. Tone Alignment (Target: [e.g., Conversational, Encouraging])
|
||||
|
||||
* **Status:** [✅ Excellent / ⚠️ Needs Attention / ❌ Issues Found]
|
||||
* **Feedback:** [Specific points with examples]
|
||||
|
||||
-----
|
||||
|
||||
## 4. Pedagogical Elements
|
||||
|
||||
* **Status:** [✅ Excellent / ⚠️ Needs Attention / ❌ Issues Found]
|
||||
* **Feedback:** [Specific points about callouts, examples, exercises]
|
||||
|
||||
-----
|
||||
|
||||
## 5. Sentence Case Compliance (Headings)
|
||||
|
||||
* **Status:** [✅ Compliant / ❌ Violations Found]
|
||||
* **Feedback:** [List specific headings that need correction]
|
||||
|
||||
-----
|
||||
|
||||
## 6. Grammar and Flow
|
||||
|
||||
* **Status:** [✅ Excellent / ⚠️ Needs Attention / ❌ Issues Found]
|
||||
* **Feedback:** [Specific points about grammar or flow issues]
|
||||
|
||||
-----
|
||||
|
||||
What would you like to do with this feedback?
|
||||
|
||||
[1] Save report as a GitHub Issue
|
||||
[2] Address these issues now (edit chapter)
|
||||
[3] Discard
|
||||
|
||||
Please select an option:
|
||||
```
|
||||
|
||||
### Step 5: Save as GitHub Issue (If user selects [1])
|
||||
|
||||
**Agent Action:**
|
||||
1. Ask for confirmation on the repository (try to infer from the current directory's git remote).
|
||||
```
|
||||
I can create a GitHub issue in the repository associated with this directory: [repo name].
|
||||
|
||||
Issue Title Suggestion: "Chapter Review Feedback: [chapter-file.qmd]"
|
||||
|
||||
[1] Create issue with this title in [repo name]
|
||||
[2] Edit title before creating
|
||||
[3] Cancel
|
||||
```
|
||||
2. If confirmed, format the feedback report from Step 4 into markdown suitable for a GitHub issue body.
|
||||
3. **Create the GitHub issue** using the `gh` CLI tool via Bash:
|
||||
```bash
|
||||
gh issue create --title "Chapter Review Feedback: [chapter-file.qmd]" --body "$(cat <<'EOF'
|
||||
[Formatted feedback report]
|
||||
EOF
|
||||
)"
|
||||
```
|
||||
4. Display confirmation: `✅ GitHub issue created successfully at [link to issue]` or provide fallback instructions if `gh` is not available.
|
||||
|
||||
### Step 6: Address Issues Now (If user selects [2])
|
||||
|
||||
**Agent Action:**
|
||||
1. Ask how the user wants to proceed:
|
||||
```
|
||||
How would you like to address the feedback?
|
||||
|
||||
[1] Address all issues sequentially (guided edits)
|
||||
[2] Focus on specific issues (you tell me where to start)
|
||||
[3] Try to address all issues at once (agent makes edits, you review)
|
||||
[4] Cancel
|
||||
|
||||
Please select an option:
|
||||
```
|
||||
2. **Based on selection:**
|
||||
* **[1] Sequential:**
|
||||
* Go through each feedback point category by category (e.g., starting with Technical Accuracy).
|
||||
* For each issue within a category:
|
||||
- State the specific issue
|
||||
- Propose a fix
|
||||
- Use the Edit tool to make the change to the chapter file
|
||||
- Show the change to the user for approval
|
||||
* Repeat for the next feedback category.
|
||||
* **[2] Specific:**
|
||||
* Ask the user: "Which feedback point (e.g., 'Clarity issue in Section 3.2' or 'Sentence case violation in heading') would you like to address first?"
|
||||
* Follow the same process as Sequential, but only for the user-selected issues.
|
||||
* **[3] All at Once:**
|
||||
* Propose revising the entire chapter based on all feedback points
|
||||
* Use the Edit tool or Write tool to make comprehensive changes
|
||||
* Present a summary of changes made
|
||||
* Ask user to review the updated chapter
|
||||
* **[4] Cancel:** End the workflow.
|
||||
3. After edits (if any) are completed:
|
||||
```
|
||||
✅ Chapter edits based on feedback are complete.
|
||||
|
||||
Would you like to:
|
||||
[1] Review the chapter again to verify improvements
|
||||
[2] Exit
|
||||
```
|
||||
|
||||
### Step 7: Discard (If user selects [3])
|
||||
|
||||
**Agent Action:**
|
||||
* Display confirmation: `Feedback discarded. No changes made.`
|
||||
* End the workflow.
|
||||
|
||||
## What the Agent Does
|
||||
|
||||
The course-architect agent will:
|
||||
|
||||
**Analysis Phase:**
|
||||
- Load appropriate course profile based on selection
|
||||
- Read the entire chapter file
|
||||
- Parse structure and identify all components (headings, code, callouts, etc.)
|
||||
- Gather context about course standards and expectations
|
||||
|
||||
**Review Phase:**
|
||||
- Systematically evaluate each review criterion
|
||||
- Document specific issues with location references (section names, line numbers)
|
||||
- Assess severity of each issue
|
||||
- Compile comprehensive feedback organized by category
|
||||
|
||||
**Reporting Phase:**
|
||||
- Present structured feedback report
|
||||
- Provide status indicators for each category
|
||||
- Include specific, actionable recommendations
|
||||
- Guide user through post-review options
|
||||
|
||||
**Action Phase (if user chooses to address feedback):**
|
||||
- Make precise edits to the chapter file
|
||||
- Maintain original formatting and structure
|
||||
- Apply fixes based on the documented feedback
|
||||
- Verify changes align with course standards
|
||||
|
||||
## Skills Available to Agent
|
||||
|
||||
The agent has access to:
|
||||
- **pedagogy**: Teaching principles and pedagogical best practices
|
||||
- **content-templates**: Chapter and content structure patterns
|
||||
- **courses/bana-4080**: BANA 4080 course profile and standards
|
||||
- **courses/bana-6043**: BANA 6043 course profile and standards
|
||||
- **courses/bana-7075**: BANA 7075 course profile and standards
|
||||
|
||||
## Output
|
||||
|
||||
A comprehensive review report including:
|
||||
- Overall assessment summary
|
||||
- Detailed feedback across six key dimensions
|
||||
- Specific examples and location references
|
||||
- Status indicators (✅/⚠️/❌) for each category
|
||||
- Actionable recommendations
|
||||
- Interactive options for handling feedback (GitHub issue, immediate edits, or discard)
|
||||
|
||||
**Post-Review Actions:**
|
||||
- Optional GitHub issue creation with formatted feedback
|
||||
- Optional guided editing workflow to address feedback
|
||||
- Re-review capability to verify improvements
|
||||
45
commands/write-chapter.md
Normal file
45
commands/write-chapter.md
Normal file
@@ -0,0 +1,45 @@
|
||||
---
|
||||
description: Write a textbook chapter for a data science course
|
||||
---
|
||||
|
||||
# Write Chapter
|
||||
|
||||
Create a textbook chapter tailored to a specific course's audience and learning objectives.
|
||||
|
||||
## Process
|
||||
|
||||
1. **Invoke the course-architect agent** to handle the chapter creation
|
||||
2. The agent will:
|
||||
- Ask which course this chapter is for
|
||||
- Load the appropriate course profile
|
||||
- Ask for the chapter topic
|
||||
- Generate a chapter outline based on course standards
|
||||
- Write the complete chapter with appropriate:
|
||||
- Explanations at the right level
|
||||
- Examples using course-appropriate tools
|
||||
- Exercises and checkpoints
|
||||
- Visual aids and code snippets (if applicable)
|
||||
|
||||
## What the Agent Does
|
||||
|
||||
The course-architect will:
|
||||
- Adapt writing style to the student level (undergrad vs grad)
|
||||
- Use the technical stack specified in the course profile
|
||||
- Follow the course's pedagogical philosophy
|
||||
- Structure content according to learning objectives
|
||||
- Include hands-on examples appropriate for the course
|
||||
|
||||
The agent has access to skills for:
|
||||
- **pedagogy**: Data science teaching principles
|
||||
- **content-templates**: Chapter structure templates
|
||||
- **courses/{course-name}**: Course-specific context and standards
|
||||
|
||||
## Output
|
||||
|
||||
A complete markdown chapter ready to use in your textbook, including:
|
||||
- Learning objectives
|
||||
- Conceptual explanations
|
||||
- Code examples (if applicable)
|
||||
- Visualizations and diagrams
|
||||
- Practice problems
|
||||
- Summary and key takeaways
|
||||
113
plugin.lock.json
Normal file
113
plugin.lock.json
Normal file
@@ -0,0 +1,113 @@
|
||||
{
|
||||
"$schema": "internal://schemas/plugin.lock.v1.json",
|
||||
"pluginId": "gh:bradleyboehmke/brads-marketplace:course-builder",
|
||||
"normalized": {
|
||||
"repo": null,
|
||||
"ref": "refs/tags/v20251128.0",
|
||||
"commit": "4262d580a48c512ae9d3d2f54dda64364b846ffb",
|
||||
"treeHash": "eab0156557f6b5c5f98c1cf02990b0107c51f21954c5e1476e09d1c95ba4b621",
|
||||
"generatedAt": "2025-11-28T10:14:21.697613Z",
|
||||
"toolVersion": "publish_plugins.py@0.2.0"
|
||||
},
|
||||
"origin": {
|
||||
"remote": "git@github.com:zhongweili/42plugin-data.git",
|
||||
"branch": "master",
|
||||
"commit": "aa1497ed0949fd50e99e70d6324a29c5b34f9390",
|
||||
"repoRoot": "/Users/zhongweili/projects/openmind/42plugin-data"
|
||||
},
|
||||
"manifest": {
|
||||
"name": "course-builder",
|
||||
"description": "Tools for creating educational content for data science, ML, AI, and MLOps courses",
|
||||
"version": "1.0.0"
|
||||
},
|
||||
"content": {
|
||||
"files": [
|
||||
{
|
||||
"path": "README.md",
|
||||
"sha256": "a90d645e37c0eb32e9308ad9c943409b1b441775d07e04b47871ed82cb008949"
|
||||
},
|
||||
{
|
||||
"path": "agents/course-architect.md",
|
||||
"sha256": "30b18a92f320eeae4711f8ab359e8eb09bdb98499bbec144cc63dd002213792a"
|
||||
},
|
||||
{
|
||||
"path": ".claude-plugin/plugin.json",
|
||||
"sha256": "ce80f00c42eeba6e3069ce96bed7fd86a09d4cd750b3789723212fbf5f972568"
|
||||
},
|
||||
{
|
||||
"path": "commands/create-module-overview.md",
|
||||
"sha256": "6b8a69b7e3ae95e6b8e1baf5f93fa379cad6a455890396d5646001f060cb2861"
|
||||
},
|
||||
{
|
||||
"path": "commands/write-chapter.md",
|
||||
"sha256": "d599fbd35d5c56a3ec4ef94dc8ed3b5f80054eb98cd1cd1cc17ae08121692411"
|
||||
},
|
||||
{
|
||||
"path": "commands/create-companion-nb.md",
|
||||
"sha256": "c1481ef459867cff37dd245e2a24ee7c0f645dba8e66cc8234673f94007b09df"
|
||||
},
|
||||
{
|
||||
"path": "commands/review-chapter.md",
|
||||
"sha256": "389627a189348652a99d99a3be0a082187367c8b95e5d39f6569434607dd89c9"
|
||||
},
|
||||
{
|
||||
"path": "commands/create-ta-guide.md",
|
||||
"sha256": "ed1094a6daab72acf975cf22da8297f1cc9a70ebdd00b65a7b8980ca83599ffb"
|
||||
},
|
||||
{
|
||||
"path": "commands/create-lab-nb.md",
|
||||
"sha256": "6bf2fe2ed64b1e3704fe3b8e7daa494557516d8a31d520a8891453f2efd3cabf"
|
||||
},
|
||||
{
|
||||
"path": "commands/create-quiz.md",
|
||||
"sha256": "b784723bacfd2ea3fd7d1781976e1ee864be43e3f20cba271811cf705ffa3263"
|
||||
},
|
||||
{
|
||||
"path": "commands/create-slides.md",
|
||||
"sha256": "d5238d5e43f1565e6304af0be33872c4a4bdfbc746a73d27b2ad4d333b228d5a"
|
||||
},
|
||||
{
|
||||
"path": "skills/pedagogy/teaching-principles.md",
|
||||
"sha256": "1a1bed7797f45fc3ffdc18f6dd28feccce2e65b8819c4602c442dc2d1c23a8cd"
|
||||
},
|
||||
{
|
||||
"path": "skills/content-templates/templates.md",
|
||||
"sha256": "677c1e3973b15909728c7f60a7b8cc6dc047b2ab03d2b9d77568653a575fc9ce"
|
||||
},
|
||||
{
|
||||
"path": "skills/courses/ml-in-business/course-profile.md",
|
||||
"sha256": "7d45c2d95c9f44464f9044ec6eb1a34942d9dbd2b00c20f0f6ffe77bde05aaa0"
|
||||
},
|
||||
{
|
||||
"path": "skills/courses/bana-7075/course-profile.md",
|
||||
"sha256": "819b4bc972fad118943d2230d7b21cbdde516522c5d8cffe6251a1acf7f02f4d"
|
||||
},
|
||||
{
|
||||
"path": "skills/courses/bana-6043/course-profile.md",
|
||||
"sha256": "d9ed1c8ca4e21dadc1b1824e8f0aa44bc9d7664eddcb692ac37714d70e1c560a"
|
||||
},
|
||||
{
|
||||
"path": "skills/courses/intro-to-data-mining/course-profile.md",
|
||||
"sha256": "2823a5a7fb0c407c4d5bb1e7554eb6fb90dd1fad8b97793ffd1f4d16ebafccea"
|
||||
},
|
||||
{
|
||||
"path": "skills/courses/bana-4080/lab-template-guide.md",
|
||||
"sha256": "fa8f638edb3603fd1fb22546571eb4d4eba6f3f5335ea86a3587ffc9b8d884af"
|
||||
},
|
||||
{
|
||||
"path": "skills/courses/bana-4080/course-profile.md",
|
||||
"sha256": "199ec56b513a384a66e215e4c78f6a00ec54e59cd653e0113b8847cdab8e9826"
|
||||
},
|
||||
{
|
||||
"path": "skills/courses/statistical-computing/course-profile.md",
|
||||
"sha256": "fb6c6bc999b30f343a75e2b58098af845169b0f51f69aef5e238599d9027880b"
|
||||
}
|
||||
],
|
||||
"dirSha256": "eab0156557f6b5c5f98c1cf02990b0107c51f21954c5e1476e09d1c95ba4b621"
|
||||
},
|
||||
"security": {
|
||||
"scannedAt": null,
|
||||
"scannerVersion": null,
|
||||
"flags": []
|
||||
}
|
||||
}
|
||||
348
skills/content-templates/templates.md
Normal file
348
skills/content-templates/templates.md
Normal file
@@ -0,0 +1,348 @@
|
||||
# Content Templates
|
||||
|
||||
Structural templates for different types of educational content.
|
||||
|
||||
## Chapter Template
|
||||
|
||||
```markdown
|
||||
# Chapter [X]: [Topic Name]
|
||||
|
||||
## Learning Objectives
|
||||
By the end of this chapter, you will be able to:
|
||||
- [Objective 1 - action verb + specific skill]
|
||||
- [Objective 2]
|
||||
- [Objective 3]
|
||||
|
||||
## Introduction
|
||||
[1-2 paragraphs motivating the topic]
|
||||
- Why is this important?
|
||||
- What real-world problems does it solve?
|
||||
- How does it connect to previous chapters?
|
||||
|
||||
## [Section 1: Core Concept]
|
||||
|
||||
### Intuition
|
||||
[Explain the concept using analogies or simple examples]
|
||||
|
||||
### Formal Definition
|
||||
[Mathematical or technical definition]
|
||||
|
||||
### Example
|
||||
[Concrete example with code if applicable]
|
||||
|
||||
```python
|
||||
# Code example
|
||||
```
|
||||
|
||||
### Visualization
|
||||
[Description of diagram or plot to include]
|
||||
|
||||
## [Section 2: Application]
|
||||
[Show how to use the concept]
|
||||
|
||||
## [Section 3: Advanced Topics]
|
||||
[Optional: deeper dive for interested students]
|
||||
|
||||
## Practice Problems
|
||||
1. [Problem testing basic understanding]
|
||||
2. [Problem requiring application]
|
||||
3. [Challenge problem]
|
||||
|
||||
## Summary
|
||||
- Key takeaway 1
|
||||
- Key takeaway 2
|
||||
- Key takeaway 3
|
||||
|
||||
## Further Reading
|
||||
- [Resource 1]
|
||||
- [Resource 2]
|
||||
```
|
||||
|
||||
## Quiz Template
|
||||
|
||||
```markdown
|
||||
# Quiz: [Topic Name]
|
||||
|
||||
**Instructions:** [Time limit, allowed resources, submission format]
|
||||
|
||||
## Part 1: Conceptual Understanding
|
||||
|
||||
### Question 1 (X points)
|
||||
[Multiple choice, short answer, or true/false]
|
||||
|
||||
**Answer:** [For instructor use]
|
||||
|
||||
### Question 2 (X points)
|
||||
[Conceptual question]
|
||||
|
||||
## Part 2: Application
|
||||
|
||||
### Question 3 (X points)
|
||||
[Code-based or problem-solving question]
|
||||
|
||||
```python
|
||||
# Starter code if applicable
|
||||
```
|
||||
|
||||
**Expected output:** [Description]
|
||||
|
||||
## Part 3: Analysis
|
||||
|
||||
### Question 4 (X points)
|
||||
[Interpretation or explanation question]
|
||||
|
||||
---
|
||||
|
||||
## Answer Key
|
||||
|
||||
[Detailed answers and grading rubric]
|
||||
|
||||
**Total Points:** XX
|
||||
```
|
||||
|
||||
## Jupyter Notebook Template (Companion)
|
||||
|
||||
```markdown
|
||||
# [Topic Name] - Companion Notebook
|
||||
|
||||
**Learning Objectives:**
|
||||
- [Objective 1]
|
||||
- [Objective 2]
|
||||
|
||||
---
|
||||
|
||||
## Setup
|
||||
```python
|
||||
import numpy as np
|
||||
import pandas as pd
|
||||
import matplotlib.pyplot as plt
|
||||
|
||||
# Configuration
|
||||
%matplotlib inline
|
||||
plt.style.use('seaborn')
|
||||
```
|
||||
|
||||
## Section 1: [Concept Name]
|
||||
|
||||
[Markdown explanation matching chapter]
|
||||
|
||||
```python
|
||||
# Executable example from chapter
|
||||
```
|
||||
|
||||
**Try it yourself:** [Suggested modifications to explore]
|
||||
|
||||
## Section 2: Interactive Exploration
|
||||
|
||||
```python
|
||||
# Code for students to experiment with
|
||||
```
|
||||
|
||||
**Questions to explore:**
|
||||
1. What happens if you change X?
|
||||
2. Try different values for Y
|
||||
3. Visualize the results
|
||||
|
||||
## Section 3: Practice Exercises
|
||||
|
||||
### Exercise 1
|
||||
[Description]
|
||||
|
||||
```python
|
||||
# TODO: Your code here
|
||||
```
|
||||
|
||||
**Validation:**
|
||||
```python
|
||||
# Check your answer
|
||||
assert ..., "Check failed!"
|
||||
print("✓ Correct!")
|
||||
```
|
||||
|
||||
## Summary
|
||||
|
||||
[Key points reinforced in this notebook]
|
||||
```
|
||||
|
||||
## Jupyter Notebook Template (Lab)
|
||||
|
||||
```markdown
|
||||
# Lab [X]: [Topic Name]
|
||||
|
||||
**Estimated Time:** X hours
|
||||
**Difficulty:** [Beginner/Intermediate/Advanced]
|
||||
|
||||
## Learning Objectives
|
||||
- [Objective 1]
|
||||
- [Objective 2]
|
||||
|
||||
---
|
||||
|
||||
## Problem Statement
|
||||
|
||||
[Real-world problem description]
|
||||
|
||||
## Dataset
|
||||
|
||||
[Description and source of data]
|
||||
|
||||
```python
|
||||
# Load or generate dataset
|
||||
```
|
||||
|
||||
**Explore the data:**
|
||||
```python
|
||||
# TODO: Examine the dataset
|
||||
# - Check dimensions
|
||||
# - Look at first few rows
|
||||
# - Check for missing values
|
||||
```
|
||||
|
||||
## Task 1: [Subtask Name]
|
||||
|
||||
[Instructions]
|
||||
|
||||
```python
|
||||
# TODO: Your code here
|
||||
|
||||
|
||||
# Solution will go here
|
||||
```
|
||||
|
||||
**Checkpoint:** [How to verify this step]
|
||||
|
||||
## Task 2: [Next Subtask]
|
||||
|
||||
[Instructions building on Task 1]
|
||||
|
||||
```python
|
||||
# TODO: Your code here
|
||||
```
|
||||
|
||||
## Task 3: [Final Analysis]
|
||||
|
||||
[Open-ended analysis task]
|
||||
|
||||
## Bonus Challenge (Optional)
|
||||
|
||||
[Extension for advanced students]
|
||||
|
||||
## Reflection Questions
|
||||
|
||||
1. What was the most challenging part?
|
||||
2. What did you learn?
|
||||
3. How could you extend this analysis?
|
||||
```
|
||||
|
||||
## Slides Template (Markdown)
|
||||
|
||||
```markdown
|
||||
---
|
||||
title: [Topic Name]
|
||||
author: [Your Name]
|
||||
date: [Date]
|
||||
---
|
||||
|
||||
# [Topic Name]
|
||||
|
||||
## Learning Objectives
|
||||
|
||||
- Objective 1
|
||||
- Objective 2
|
||||
- Objective 3
|
||||
|
||||
---
|
||||
|
||||
## Why This Matters
|
||||
|
||||
[Motivation - 1-2 bullet points with visual]
|
||||
|
||||
**Real-world application:** [Example]
|
||||
|
||||
::: notes
|
||||
[Speaker notes: Hook students with interesting context]
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
## [Concept 1]: Intuition
|
||||
|
||||
[Visual diagram or simple example]
|
||||
|
||||
- Key point 1
|
||||
- Key point 2
|
||||
|
||||
::: notes
|
||||
[Teaching tips, common misconceptions to address]
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
## [Concept 1]: Formal Definition
|
||||
|
||||
[Mathematical notation or technical definition]
|
||||
|
||||
**In plain English:** [Simplified explanation]
|
||||
|
||||
---
|
||||
|
||||
## Example: [Concrete Case]
|
||||
|
||||
```python
|
||||
# Code example
|
||||
```
|
||||
|
||||
**Output:**
|
||||
```
|
||||
[Expected output]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Practice Problem
|
||||
|
||||
[Quick problem for students to try]
|
||||
|
||||
**Think-Pair-Share:** Discuss with your neighbor
|
||||
|
||||
::: notes
|
||||
[Give 2-3 minutes, walk around, call on students]
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
## Key Takeaways
|
||||
|
||||
1. [Main point 1]
|
||||
2. [Main point 2]
|
||||
3. [Main point 3]
|
||||
|
||||
**Next time:** [Preview next topic]
|
||||
|
||||
---
|
||||
|
||||
## Questions?
|
||||
|
||||
[Contact info or office hours]
|
||||
```
|
||||
|
||||
## Usage Guidelines
|
||||
|
||||
### When to Use Each Template
|
||||
|
||||
- **Chapter**: Comprehensive coverage of a topic for reading/study
|
||||
- **Quiz**: Assess understanding of covered material
|
||||
- **Companion Notebook**: Follow along with chapter, explore interactively
|
||||
- **Lab Notebook**: Apply concepts to solve realistic problems
|
||||
- **Slides**: Support lecture or presentation
|
||||
|
||||
### Customization
|
||||
|
||||
These templates should be adapted based on:
|
||||
- Student level (undergrad vs grad)
|
||||
- Course philosophy (theory vs applied)
|
||||
- Time available
|
||||
- Prerequisites
|
||||
- Tools and libraries used
|
||||
|
||||
Always reference the specific course profile for customization guidance.
|
||||
139
skills/courses/bana-4080/course-profile.md
Normal file
139
skills/courses/bana-4080/course-profile.md
Normal file
@@ -0,0 +1,139 @@
|
||||
# BANA 4080 - Course Profile
|
||||
|
||||
**Course:** UC BANA 4080: Introduction to Data Mining with Python
|
||||
**Instructor:** Brad Boehmke
|
||||
**Level:** Undergraduate
|
||||
**Base Profile:** intro-to-data-mining
|
||||
|
||||
## Course Overview
|
||||
|
||||
This is the same course as "Intro to Data Mining" - all content, philosophy, and standards from that profile apply. This profile adds BANA 4080-specific lab structure and requirements.
|
||||
|
||||
## Lab Structure (Thursday Sessions)
|
||||
|
||||
**Duration:** 75 minutes exactly
|
||||
**Format:** Two-part structure with collaborative learning
|
||||
|
||||
### Part A: Guided Reinforcement (30 minutes)
|
||||
**Purpose:** TA walks students through concepts to reinforce Tuesday's lecture and weekly readings
|
||||
|
||||
**Structure:**
|
||||
- Section A1: Concept review and setup (5-7 minutes)
|
||||
- Section A2: Systematic practice of key skills (12-15 minutes)
|
||||
- Section A3: Professional techniques demonstration (8-10 minutes)
|
||||
- Section A4: Integration and advanced concepts (5-8 minutes)
|
||||
|
||||
**Key Principles:**
|
||||
- Students follow along and execute code together
|
||||
- TA explains rationale and connects to business applications
|
||||
- Multiple opportunities for questions and clarification
|
||||
- Gradual release of responsibility toward independence
|
||||
|
||||
### Class Q&A: Transition (5-10 minutes)
|
||||
- Address questions from Part A
|
||||
- Clarify confusing concepts
|
||||
- Preview independent challenges
|
||||
|
||||
### Part B: Independent Group Challenges (35-40 minutes)
|
||||
**Purpose:** Students apply learned concepts independently in groups of 2-4
|
||||
|
||||
**Structure:**
|
||||
- Challenge 1: Basic application (6-8 minutes)
|
||||
- Challenge 2: Intermediate skills (6-8 minutes)
|
||||
- Challenge 3: Complex integration (6-8 minutes)
|
||||
- Challenge 4: Advanced application (6-8 minutes)
|
||||
- Challenge 5: Creative problem-solving (6-8 minutes)
|
||||
- Challenge 6: Extension/synthesis (5-7 minutes)
|
||||
|
||||
**Key Principles:**
|
||||
- Groups work collaboratively with minimal TA intervention
|
||||
- Challenges require integration of multiple concepts
|
||||
- Business context makes problems meaningful and engaging
|
||||
- Different groups can progress at different paces
|
||||
- **NO AI tools allowed** - students write code themselves
|
||||
|
||||
### Wrap-up: Reflection (3-5 minutes)
|
||||
- Accomplishments summary
|
||||
- Reflection questions
|
||||
- Connection to homework and next steps
|
||||
|
||||
## Lab Requirements
|
||||
|
||||
**Template:** `/Users/b294776/Desktop/UC/uc-bana-4080/planning/templates/lab_notebook_template.ipynb`
|
||||
**Usage Guide:** `/Users/b294776/Desktop/UC/uc-bana-4080/planning/templates/lab_template_usage_guide.md`
|
||||
|
||||
**Naming Convention:**
|
||||
- Student lab: `XX_wkX_lab.ipynb` (e.g., `03_wk3_lab.ipynb`)
|
||||
- TA guidance: `ta_guidance_wkX.ipynb` (e.g., `ta_guidance_wk3.ipynb`)
|
||||
|
||||
**Content Alignment:**
|
||||
- Every lab must directly reinforce concepts from Tuesday's slides
|
||||
- Labs based on weekly assigned chapter readings
|
||||
- Part A systematically reviews Tuesday lecture material
|
||||
- Part B challenges integrate multiple chapter concepts
|
||||
|
||||
**Pedagogical Standards:**
|
||||
- Business context for every concept and exercise
|
||||
- Progressive complexity from guided to independent work
|
||||
- Real-world datasets (prefer chapter data and exercise data)
|
||||
- Clear learning objectives (3-4 specific, measurable outcomes)
|
||||
- Built-in reflection and metacognitive elements
|
||||
|
||||
## TA Guidance Requirements
|
||||
|
||||
Every lab must include a comprehensive TA guidance notebook with:
|
||||
|
||||
**Pre-Lab Preparation Section:**
|
||||
- Overview of learning objectives and key concepts
|
||||
- Connection to Tuesday slides and weekly readings
|
||||
- Setup instructions and common technical issues
|
||||
- Grouping strategies and classroom management tips
|
||||
|
||||
**Part A Detailed Instructions:**
|
||||
- Section-by-section teaching guidance with timing
|
||||
- Key concepts to emphasize at each step
|
||||
- Common student questions and suggested responses
|
||||
- Code demonstrations and explanation strategies
|
||||
- Transition techniques between concepts
|
||||
|
||||
**Part B Facilitation Guide:**
|
||||
- Challenge-by-challenge overview with learning goals
|
||||
- Common student difficulties and targeted hints
|
||||
- Complete solutions for all challenges
|
||||
- When and how to provide assistance
|
||||
- Strategies for different pacing among groups
|
||||
|
||||
**Assessment and Wrap-up:**
|
||||
- Key concepts students should have mastered
|
||||
- Reflection questions to check understanding
|
||||
- Connections to upcoming content and homework
|
||||
- Troubleshooting guide for common issues
|
||||
|
||||
## Dataset Strategy
|
||||
|
||||
**Default Approach:**
|
||||
- **Part A (guided section):** Use primary dataset from chapter readings
|
||||
- **Part B (challenges):** Use dataset from end-of-chapter exercises
|
||||
- Always confirm dataset choices with instructor
|
||||
- Allow for alternative datasets based on specific lab needs
|
||||
|
||||
## Quality Standards
|
||||
|
||||
**Before finalizing any lab:**
|
||||
- [ ] All code tested and functional in Google Colab
|
||||
- [ ] Tuesday slide alignment verified
|
||||
- [ ] Chapter reading integration confirmed
|
||||
- [ ] 75-minute timing validated
|
||||
- [ ] Part A/B balance appropriate (30 min / 35-40 min)
|
||||
- [ ] Business context realistic and motivating
|
||||
- [ ] TA guidance comprehensive with complete solutions
|
||||
- [ ] All `[PLACEHOLDERS]` filled with specific content
|
||||
- [ ] Colab badge updated with correct filename
|
||||
- [ ] Learning objectives align with activities
|
||||
|
||||
## Reference Materials
|
||||
|
||||
For full pedagogical approach and lab development process, refer to:
|
||||
- Base course profile: `intro-to-data-mining/course-profile.md`
|
||||
- Lab template: Path specified above
|
||||
- Usage guide: Path specified above
|
||||
264
skills/courses/bana-4080/lab-template-guide.md
Normal file
264
skills/courses/bana-4080/lab-template-guide.md
Normal file
@@ -0,0 +1,264 @@
|
||||
# BANA 4080 Lab Template Guide
|
||||
|
||||
This guide provides the structure and requirements for creating Thursday lab notebooks for BANA 4080.
|
||||
|
||||
## Template Location
|
||||
|
||||
**File:** `/Users/b294776/Desktop/UC/uc-bana-4080/planning/templates/lab_notebook_template.ipynb`
|
||||
**Usage Guide:** `/Users/b294776/Desktop/UC/uc-bana-4080/planning/templates/lab_template_usage_guide.md`
|
||||
|
||||
## Lab Structure (75 minutes)
|
||||
|
||||
### Header Section
|
||||
- Week number and descriptive lab title
|
||||
- Colab badge with correct filename
|
||||
- Lab description and context (2-3 sentences)
|
||||
- **Learning Objectives:** 3-4 specific, measurable outcomes starting with action verbs
|
||||
- **This Lab Reinforces:** List of chapter/reading references
|
||||
- **Estimated Time & Structure:** Clear breakdown with realistic time estimates
|
||||
- **Why This Matters:** Business context and real-world relevance
|
||||
|
||||
### Setup Section
|
||||
- Required imports (only necessary libraries)
|
||||
- Data loading code
|
||||
- Quick preview/verification of loaded data
|
||||
|
||||
### Part A: Guided Reinforcement (~30 minutes)
|
||||
|
||||
**Part 1** — [Section 1 Title] (Time estimate)
|
||||
- Section description and context
|
||||
- Subsection with explanation/instructions
|
||||
- Step-by-step instructions (numbered)
|
||||
- Code examples or starter code
|
||||
- "🧠 Your Turn" exercise with tasks
|
||||
- Empty code cell for practice
|
||||
- "✅ Check Your Understanding" with questions and expected results
|
||||
|
||||
**Part 2** — [Section 2 Title] (Time estimate)
|
||||
- Similar structure to Part 1
|
||||
- Guided example with explanation
|
||||
- Demonstration code
|
||||
- "🧪 Practice Exercise" with business scenario
|
||||
- Step-by-step approach
|
||||
- Code cell for solution
|
||||
|
||||
**Class Discussion/Q&A** (5-10 minutes)
|
||||
- Discussion prompts
|
||||
- Common blockers and clarifications
|
||||
|
||||
### Part B: Independent Group Challenges (~35-40 minutes)
|
||||
|
||||
**Intro markdown:**
|
||||
```markdown
|
||||
For the next several challenges:
|
||||
* You will not be given starter code
|
||||
* **DO NOT USE AI** to generate code
|
||||
* Work in groups of 2-4 students
|
||||
* Feel free to ask questions or seek help from instructor
|
||||
* We'll stop and walk through each challenge together after each time block
|
||||
```
|
||||
|
||||
**Challenge 1** — [Title] (6-8 minutes)
|
||||
- Business question
|
||||
- Additional context if needed
|
||||
- Empty code cell with comment: `# Your turn: write code here to [description]`
|
||||
|
||||
**Challenge 2** — [Title] (6-8 minutes)
|
||||
- Business question
|
||||
- Strategic hint (not code)
|
||||
- Empty code cell
|
||||
|
||||
**Challenge 3-6** — Similar structure with progressive difficulty
|
||||
|
||||
### Optional Extension Activities
|
||||
|
||||
**Extension 1-2:** Advanced challenges for early finishers
|
||||
**Extension 3:** "Brainstorm - What else is interesting?" with example questions
|
||||
|
||||
### Lab Wrap-Up & Reflection (3-5 minutes)
|
||||
|
||||
- **What You Accomplished:** List of accomplishments
|
||||
- **Reflection Questions:** 2-3 metacognitive prompts
|
||||
- **Connection to Course Goals:** How this lab connects to broader learning
|
||||
- **Next Steps:** Homework reference, next week preview, optional resources
|
||||
- Save your work instruction
|
||||
|
||||
### Troubleshooting & Common Issues
|
||||
|
||||
- Issue 1-3 with solutions
|
||||
- General debugging tips
|
||||
|
||||
## Required Placeholders to Fill
|
||||
|
||||
All items in `[BRACKETS]` must be replaced:
|
||||
|
||||
| Placeholder | Example |
|
||||
|-------------|---------|
|
||||
| `[X]` | Week number (e.g., `6`) |
|
||||
| `[LAB_TITLE]` | `Control Flow and Functions in Practice` |
|
||||
| `[FILENAME]` | `06_wk6_lab` |
|
||||
| `[LAB_DESCRIPTION_AND_CONTEXT]` | Description of what students will do |
|
||||
| `[OBJECTIVE_1]` | `Write conditional statements for business logic` |
|
||||
| `[Reading/Chapter Reference 1]` | `Chapter 7: Control Flow` |
|
||||
| `[TIME_ESTIMATE]` | `15-20` |
|
||||
| `[BUSINESS_CONTEXT_AND_REAL_WORLD_RELEVANCE]` | Why this matters in real work |
|
||||
| `[SECTION_X_TITLE]` | Name of major section |
|
||||
| `[SUBSECTION_X_TITLE]` | Name of subsection |
|
||||
| `[EXPLANATION_OR_INSTRUCTIONS]` | Teaching content |
|
||||
| `[STEP_X]` | Individual step in process |
|
||||
| `[DESCRIPTIVE_COMMENT]` | What the code does |
|
||||
| `[CODE_EXAMPLE_OR_STARTER]` | Actual code |
|
||||
| `[EXERCISE_TITLE]` | Name of practice exercise |
|
||||
| `[EXERCISE_DESCRIPTION]` | What students should do |
|
||||
| `[TASK_X]` | Individual task |
|
||||
| `[HELPFUL_HINT_IF_NEEDED]` | Strategic guidance |
|
||||
| `[MINI_ASSESSMENT_OR_DISCUSSION_QUESTIONS]` | Comprehension check |
|
||||
| `[QUESTION_X]` | Specific question |
|
||||
| `[WHAT_STUDENTS_SHOULD_SEE]` | Expected output/result |
|
||||
| `[CONCRETE_BUSINESS_EXAMPLE]` | Real scenario |
|
||||
| `[DEMONSTRATION_CODE]` | Working example |
|
||||
| `[REALISTIC_BUSINESS_CONTEXT]` | Business scenario for exercise |
|
||||
| `[CLEAR_TASK_DESCRIPTION]` | What to accomplish |
|
||||
| `[CHALLENGE_TITLE]` | Name of challenge |
|
||||
| `[BUSINESS_QUESTION]` | Question to answer |
|
||||
| `[ADDITIONAL_CONTEXT_IF_NEEDED]` | Extra info |
|
||||
| `[CHALLENGE_DESCRIPTION]` | What the code should do |
|
||||
| `[STRATEGIC_HINT_NOT_CODE]` | Approach guidance |
|
||||
| `[EXTENSION_TITLE]` | Name of extension |
|
||||
| `[ADVANCED_CHALLENGE_DESCRIPTION]` | Extension task |
|
||||
| `[EXAMPLE_QUESTION_X]` | Sample brainstorm question |
|
||||
| `[ACCOMPLISHMENT_X]` | What was learned |
|
||||
| `[HOW_THIS_LAB_CONNECTS_TO_BROADER_LEARNING]` | Big picture |
|
||||
| `[HOMEWORK_REFERENCE]` | Link to assignment |
|
||||
| `[NEXT_WEEK_PREVIEW]` | What's coming |
|
||||
| `[OPTIONAL_RESOURCES]` | Additional materials |
|
||||
| `[SPECIFIC_SHARING_INSTRUCTIONS]` | How to share work |
|
||||
| `[COMMON_PROBLEM]` | Issue students face |
|
||||
| `[SOLUTION_APPROACH]` | How to fix |
|
||||
| `[TIP_X]` | Debugging tip |
|
||||
|
||||
## Content Development Process
|
||||
|
||||
### Phase 1: Content Analysis
|
||||
1. Review assigned chapter(s) for the week
|
||||
2. Identify key concepts that need hands-on practice
|
||||
3. Map concepts to Part A (guided) and Part B (challenges)
|
||||
4. Define 3-4 specific learning objectives
|
||||
|
||||
### Phase 2: Part A Design (Guided Reinforcement)
|
||||
- Systematically review key concepts from readings
|
||||
- Provide hands-on practice with instructor guidance
|
||||
- Include "Your Turn" exercises for immediate application
|
||||
- Build confidence before independent work
|
||||
|
||||
**Principles:**
|
||||
- Students follow along and execute code together
|
||||
- Explain rationale and connect to business applications
|
||||
- Multiple opportunities for questions
|
||||
- Gradual release of responsibility
|
||||
|
||||
### Phase 3: Part B Design (Independent Challenges)
|
||||
- Create 6 challenges with progressive difficulty
|
||||
- Each challenge: clear business question, minimal code scaffolding
|
||||
- Strategic hints rather than direct solutions
|
||||
- Require integration of multiple concepts
|
||||
|
||||
**Principles:**
|
||||
- Groups work collaboratively with minimal intervention
|
||||
- Business context makes problems meaningful
|
||||
- Different groups can progress at different paces
|
||||
- No AI tools allowed - students write code themselves
|
||||
|
||||
### Phase 4: Dataset Selection
|
||||
**Default Strategy:**
|
||||
- Part A (guided): Primary dataset from chapter readings
|
||||
- Part B (challenges): Dataset from end-of-chapter exercises
|
||||
- Always confirm with instructor and allow alternatives
|
||||
|
||||
### Phase 5: Quality Validation
|
||||
- [ ] All code tested in Google Colab
|
||||
- [ ] Chapter alignment verified
|
||||
- [ ] 75-minute timing realistic
|
||||
- [ ] Part A/B balance appropriate (~30 min / ~35-40 min)
|
||||
- [ ] Business context realistic
|
||||
- [ ] Learning objectives align with activities
|
||||
- [ ] All placeholders replaced
|
||||
- [ ] Colab badge updated
|
||||
|
||||
## TA Guidance Requirements
|
||||
|
||||
Each lab requires a companion `ta_guidance_wkX.ipynb` with:
|
||||
|
||||
**Pre-Lab Preparation:**
|
||||
- Learning objectives and key concepts overview
|
||||
- Connection to readings
|
||||
- Setup instructions and common issues
|
||||
- Classroom management tips
|
||||
|
||||
**Part A Teaching Guidance:**
|
||||
- Section-by-section instructions with timing
|
||||
- Key concepts to emphasize
|
||||
- Common student questions and responses
|
||||
- Teaching strategies
|
||||
|
||||
**Part B Facilitation Guide:**
|
||||
- Complete solutions for all 6 challenges
|
||||
- Common difficulties and targeted hints
|
||||
- When and how to provide assistance
|
||||
- Pacing strategies
|
||||
|
||||
**Assessment and Wrap-up:**
|
||||
- Key concepts to verify mastery
|
||||
- Reflection questions
|
||||
- Connection to upcoming content
|
||||
- Troubleshooting guide
|
||||
|
||||
## Business Context Standards
|
||||
|
||||
Every concept and exercise must have clear business relevance:
|
||||
- Real-world scenarios students can relate to
|
||||
- Authentic business questions and problems
|
||||
- Professional applications and use cases
|
||||
- Connection to career skills
|
||||
|
||||
**Good examples:**
|
||||
- Customer segmentation analysis
|
||||
- Marketing campaign performance
|
||||
- Retail transaction patterns
|
||||
- Product recommendation systems
|
||||
- Sales forecasting
|
||||
|
||||
**Avoid:**
|
||||
- Abstract mathematical exercises without context
|
||||
- Toy problems with no real-world connection
|
||||
- Examples that don't relate to business analytics
|
||||
|
||||
## Common Lab Types by Week
|
||||
|
||||
**Weeks 1-3 (Fundamentals):**
|
||||
- More guided examples, slower pacing
|
||||
- Simple, clear-cut problems
|
||||
- Accessible business scenarios
|
||||
- Building basic confidence
|
||||
|
||||
**Weeks 4-6 (Skill Application):**
|
||||
- Less guidance, more problem-solving
|
||||
- Multi-step business problems
|
||||
- Realistic data analysis scenarios
|
||||
- Integration of concepts
|
||||
|
||||
**Weeks 7+ (Advanced Integration):**
|
||||
- Open-ended exploration
|
||||
- Complex, multi-faceted problems
|
||||
- Comprehensive case studies
|
||||
- Professional-level analysis
|
||||
|
||||
## Remember
|
||||
|
||||
- Labs directly reinforce Tuesday lecture concepts
|
||||
- Based on weekly assigned chapter readings
|
||||
- 75 minutes exactly with strategic time allocation
|
||||
- Two-part structure: guided (30 min) + independent (35-40 min)
|
||||
- Business context for everything
|
||||
- No AI tools in Part B challenges
|
||||
- Always create companion TA guidance notebook
|
||||
14
skills/courses/bana-6043/course-profile.md
Normal file
14
skills/courses/bana-6043/course-profile.md
Normal file
@@ -0,0 +1,14 @@
|
||||
# BANA 6043 - Course Profile
|
||||
|
||||
**Course:** UC BANA 6043: Statistical Computing
|
||||
**Level:** Graduate
|
||||
**Base Profile:** statistical-computing
|
||||
|
||||
## Course Overview
|
||||
|
||||
This is the same course as "Statistical Computing" - all content, philosophy, and standards from that profile apply.
|
||||
|
||||
This profile serves as a mapping to enable course-builder commands to recognize "BANA 6043" as referring to the statistical-computing course profile.
|
||||
|
||||
For all content creation, refer to:
|
||||
- Base course profile: `statistical-computing/course-profile.md`
|
||||
14
skills/courses/bana-7075/course-profile.md
Normal file
14
skills/courses/bana-7075/course-profile.md
Normal file
@@ -0,0 +1,14 @@
|
||||
# BANA 7075 - Course Profile
|
||||
|
||||
**Course:** UC BANA 7075: ML in Business
|
||||
**Level:** Graduate
|
||||
**Base Profile:** ml-in-business
|
||||
|
||||
## Course Overview
|
||||
|
||||
This is the same course as "ML in Business" - all content, philosophy, and standards from that profile apply.
|
||||
|
||||
This profile serves as a mapping to enable course-builder commands to recognize "BANA 7075" as referring to the ml-in-business course profile.
|
||||
|
||||
For all content creation, refer to:
|
||||
- Base course profile: `ml-in-business/course-profile.md`
|
||||
238
skills/courses/intro-to-data-mining/course-profile.md
Normal file
238
skills/courses/intro-to-data-mining/course-profile.md
Normal file
@@ -0,0 +1,238 @@
|
||||
# Intro to Data Mining - Course Profile
|
||||
|
||||
**Course:** UC BANA 4080: Introduction to Data Mining with Python
|
||||
**Instructor:** Brad Boehmke
|
||||
|
||||
## Audience
|
||||
|
||||
**Student Level:** Undergraduate (juniors/seniors)
|
||||
|
||||
**Background:**
|
||||
- Business students with foundation in calculus, statistics, and possibly regression
|
||||
- May have Excel experience and basic VBA exposure
|
||||
- Variable programming backgrounds - many are complete coding beginners
|
||||
- Understand business operations, customer behavior, and quantitative thinking
|
||||
- Know how to think critically but lack experience turning theory into practice with code
|
||||
|
||||
**Prerequisites:**
|
||||
- Quantitative methods and statistical inference courses
|
||||
- No prior programming experience required or expected
|
||||
- Course explicitly designed for beginners
|
||||
|
||||
**Key Challenge:** Bridging the gap between classroom theory and real-world data analysis
|
||||
|
||||
## Learning Philosophy
|
||||
|
||||
**Core Approach:** Hands-on, immersive learning through doing
|
||||
|
||||
**Key Principles:**
|
||||
1. **Practice over theory** - Students learn by working with real, messy datasets
|
||||
2. **Build confidence through action** - Focus on getting students comfortable with tools before perfection
|
||||
3. **Close the theory-practice gap** - Move from "knowing concepts" to "applying skills"
|
||||
4. **AI as assistant, not autopilot** - Use GenAI tools (ChatGPT, Claude, Copilot) to help learn, but emphasize understanding
|
||||
5. **Collaborative learning** - Build community; encourage students to help each other
|
||||
6. **Growth mindset** - Normalize struggle; coding is a new language that takes time
|
||||
|
||||
**Teaching Style:**
|
||||
- Conversational, relatable tone (see intro chapter example)
|
||||
- Use storytelling and scenarios (e.g., "Taylor the intern")
|
||||
- Address student concerns directly (e.g., "Why learn this when AI exists?")
|
||||
- Set realistic expectations about difficulty
|
||||
- Encourage persistence and resilience
|
||||
|
||||
**Unique Aspects:**
|
||||
- Explicitly addresses role of GenAI in learning process
|
||||
- Balances AI assistance with foundational skill building
|
||||
- Uses real-world business contexts students can relate to
|
||||
|
||||
## Technical Stack
|
||||
|
||||
**Core Environment:**
|
||||
- **Python** (chosen for beginner-friendliness + professional power)
|
||||
- **Jupyter Lab/Notebooks** (primary development environment)
|
||||
- **Google Colab** (cloud-based option for students)
|
||||
- **Quarto** (for textbook and slides)
|
||||
- **Virtual environment** (venv for package management)
|
||||
|
||||
**Primary Libraries (Weeks 1-6):**
|
||||
- **pandas** - data manipulation and DataFrames
|
||||
- **numpy** - numerical computation
|
||||
- **matplotlib** - basic visualization
|
||||
- **seaborn** - statistical visualization
|
||||
|
||||
**Machine Learning Libraries (Weeks 8-13):**
|
||||
- **scikit-learn** - all ML models and evaluation
|
||||
|
||||
**Additional Tools:**
|
||||
- CSV/Excel file handling
|
||||
- Basic SQL concepts (joins in pandas)
|
||||
- Git/GitHub for assignment submission
|
||||
|
||||
**File Formats:**
|
||||
- Quarto markdown (.qmd) for book chapters
|
||||
- Jupyter notebooks (.ipynb) for examples, labs, homework
|
||||
- Real datasets (CSV, Excel) in `/data/` directory
|
||||
|
||||
## Content Style
|
||||
|
||||
**Writing Style:**
|
||||
- **Conversational and approachable** - Not dry or overly academic
|
||||
- **Student-focused** - Addresses "you" directly
|
||||
- **Motivational** - Builds confidence, normalizes struggle
|
||||
- **Practical** - Always tied to real-world application
|
||||
- **Honest** - Acknowledges difficulties, doesn't sugar-coat challenges
|
||||
|
||||
**Explanation Approach:**
|
||||
1. **Start with WHY** - Motivate the topic before diving in
|
||||
2. **Use analogies and stories** - Make abstract concepts concrete
|
||||
3. **Show, don't just tell** - Working code examples over theory
|
||||
4. **Progressive complexity** - Start simple, build gradually
|
||||
5. **Address common questions** - Anticipate student concerns
|
||||
|
||||
**Examples:**
|
||||
- Use **relatable business scenarios** (customer data, marketing analytics, retail transactions)
|
||||
- Work with **messy, real-world datasets** (not clean, perfect examples)
|
||||
- Include **visual aids** heavily (plots, diagrams, screenshots)
|
||||
- Provide **executable code** that students can run and modify
|
||||
|
||||
**Pedagogical Elements:**
|
||||
- **Callout boxes** for tips, warnings, reflections, and examples
|
||||
- **Student reflection prompts** to encourage metacognition
|
||||
- **Exercises** that build on chapter concepts
|
||||
- **Code comments** that explain what's happening
|
||||
- **Error messages and debugging guidance**
|
||||
|
||||
**Depth:**
|
||||
- Prioritize **intuition over mathematical rigor**
|
||||
- Show code implementation before heavy theory
|
||||
- Balance "just enough math" with practical application
|
||||
- Focus on **interpretation and application** over derivations
|
||||
|
||||
## Key Topics
|
||||
|
||||
**Module 1: Python Fundamentals (Week 1)**
|
||||
- Course intro + motivation
|
||||
- Variables, data types, basic operators
|
||||
- Why Python? Why not just use AI?
|
||||
- Setting up environment
|
||||
|
||||
**Module 2: Jupyter & Data Structures (Week 2)**
|
||||
- Jupyter notebooks and reproducible workflows
|
||||
- Lists, dictionaries, tuples
|
||||
- Pandas introduction
|
||||
- Importing CSV data
|
||||
|
||||
**Module 3: Data Wrangling (Week 3)**
|
||||
- DataFrame manipulation
|
||||
- Filtering and subsetting
|
||||
- Aggregating data
|
||||
- GroupBy operations
|
||||
|
||||
**Module 4: Advanced Data Manipulation (Week 4)**
|
||||
- Working with dates and times
|
||||
- String operations
|
||||
- Relational data and joins (SQL-style in pandas)
|
||||
- Merging DataFrames
|
||||
|
||||
**Module 5: Data Visualization (Week 5)**
|
||||
- Matplotlib basics
|
||||
- Seaborn for statistical plots
|
||||
- Exploratory data analysis with visuals
|
||||
- Best practices for effective visualization
|
||||
|
||||
**Module 6: Writing Efficient Code (Week 6)**
|
||||
- Control flow (if/else, loops)
|
||||
- Functions and modularity
|
||||
- List comprehensions
|
||||
- Code efficiency and readability
|
||||
|
||||
**Week 7: Midterm Project**
|
||||
- Application of Modules 1-6
|
||||
- Work with messy, real datasets
|
||||
- Open-ended analysis problem
|
||||
|
||||
**Module 7: Machine Learning Intro (Week 8)**
|
||||
- What is ML and when to use it?
|
||||
- Train/test split
|
||||
- Features and labels
|
||||
- Model building process
|
||||
|
||||
**Module 8: Regression (Week 9)**
|
||||
- Correlation analysis
|
||||
- Linear regression with scikit-learn
|
||||
- Model evaluation (R², RMSE)
|
||||
- Interpretation
|
||||
|
||||
**Module 9: Classification (Week 10)**
|
||||
- Logistic regression
|
||||
- Classification metrics (accuracy, precision, recall, F1)
|
||||
- Confusion matrices
|
||||
- When to use classification vs regression
|
||||
|
||||
**Module 10: Tree-Based Models (Week 11)**
|
||||
- Decision trees
|
||||
- Random forests
|
||||
- Feature importance
|
||||
- Model interpretation
|
||||
|
||||
**Module 11: Model Optimization (Week 12)**
|
||||
- Feature engineering
|
||||
- Cross-validation
|
||||
- Hyperparameter tuning (GridSearchCV)
|
||||
- Model selection
|
||||
|
||||
**Module 12: Advanced Topics (Week 13)**
|
||||
- Unsupervised learning (clustering, PCA)
|
||||
- Deep learning overview
|
||||
- Introduction to LLMs and GenAI concepts
|
||||
|
||||
**Week 14: Final Project**
|
||||
- Comprehensive data science project
|
||||
- Full pipeline from data cleaning to modeling
|
||||
|
||||
## Assessment Approach
|
||||
|
||||
**Grading Components:**
|
||||
- **Labs** - Weekly hands-on activities (Thursdays)
|
||||
- **Homework** - Applied assignments (with answer keys for instructor)
|
||||
- **Midterm Project** - Comprehensive application of Modules 1-6
|
||||
- **Final Project** - End-to-end data science project
|
||||
- **Quizzes** - Knowledge checks (materials in `/planning/quizzes/`)
|
||||
|
||||
**Student Support:**
|
||||
- Canvas discussion boards for peer collaboration
|
||||
- Office hours
|
||||
- Answer keys provided for labs and homework (instructor use)
|
||||
- Multiple formats (notebook, HTML, PDF) for accessibility
|
||||
|
||||
**GenAI Policy:**
|
||||
- **Encouraged** to use ChatGPT, Claude, Copilot as learning aids
|
||||
- **Required** to understand code, not just copy it
|
||||
- Emphasis on using AI to learn, not to avoid learning
|
||||
- Students asked to reflect on AI tool use and limitations
|
||||
|
||||
**Project Structure:**
|
||||
- Templates provided for major assignments
|
||||
- Rubrics included in `/planning/projects/`
|
||||
- Real-world datasets required
|
||||
- Open-ended problems that require creative problem-solving
|
||||
|
||||
## Content Format
|
||||
|
||||
**Textbook:** Quarto book with modules 1-6 + appendices
|
||||
**Slides:** Weekly presentations using Quarto + Reveal.js
|
||||
**Examples:** Numbered sequence of Jupyter notebooks (01-17)
|
||||
**Labs:** Weekly hands-on activities with answer keys
|
||||
**Homework:** Individual assignments with solutions in multiple formats
|
||||
**Datasets:** Real-world data in `/data/` directory (retail, airlines, housing, etc.)
|
||||
|
||||
## Course Materials Repository
|
||||
|
||||
All materials maintained in Git repository with structure:
|
||||
- `/book/` - Textbook chapters
|
||||
- `/slides/` - Weekly presentations
|
||||
- `/example-notebooks/` - Companion code examples
|
||||
- `/labs/` - Hands-on activities
|
||||
- `/homework/` - Assignments
|
||||
- `/data/` - Datasets
|
||||
- `/planning/` - Instructor resources (Canvas docs, rubrics, quizzes)
|
||||
25
skills/courses/ml-in-business/course-profile.md
Normal file
25
skills/courses/ml-in-business/course-profile.md
Normal file
@@ -0,0 +1,25 @@
|
||||
# ML in Business - Course Profile
|
||||
|
||||
**Status:** 🚧 Placeholder - To be filled from syllabus
|
||||
|
||||
## Audience
|
||||
[To be filled: student level, background, prerequisites]
|
||||
|
||||
## Learning Philosophy
|
||||
[To be filled: teaching approach, pedagogical style]
|
||||
|
||||
## Technical Stack
|
||||
[To be filled: libraries, tools, environment]
|
||||
|
||||
## Content Style
|
||||
[To be filled: explanation style, depth, examples]
|
||||
|
||||
## Key Topics
|
||||
[To be filled: weekly or unit breakdown]
|
||||
|
||||
## Assessment Approach
|
||||
[To be filled: how students are evaluated]
|
||||
|
||||
---
|
||||
|
||||
**Next step:** Provide the course syllabus to populate this profile.
|
||||
25
skills/courses/statistical-computing/course-profile.md
Normal file
25
skills/courses/statistical-computing/course-profile.md
Normal file
@@ -0,0 +1,25 @@
|
||||
# Statistical Computing - Course Profile
|
||||
|
||||
**Status:** 🚧 Placeholder - To be filled from syllabus
|
||||
|
||||
## Audience
|
||||
[To be filled: student level, background, prerequisites]
|
||||
|
||||
## Learning Philosophy
|
||||
[To be filled: teaching approach, pedagogical style]
|
||||
|
||||
## Technical Stack
|
||||
[To be filled: libraries, tools, environment]
|
||||
|
||||
## Content Style
|
||||
[To be filled: explanation style, depth, examples]
|
||||
|
||||
## Key Topics
|
||||
[To be filled: weekly or unit breakdown]
|
||||
|
||||
## Assessment Approach
|
||||
[To be filled: how students are evaluated]
|
||||
|
||||
---
|
||||
|
||||
**Next step:** Provide the course syllabus to populate this profile.
|
||||
118
skills/pedagogy/teaching-principles.md
Normal file
118
skills/pedagogy/teaching-principles.md
Normal file
@@ -0,0 +1,118 @@
|
||||
# Data Science Teaching Principles
|
||||
|
||||
General pedagogical principles for teaching data science, machine learning, AI, and MLOps.
|
||||
|
||||
## Core Teaching Philosophy
|
||||
|
||||
### 1. Hands-On Learning
|
||||
Data science is learned by doing, not just reading:
|
||||
- Provide working code examples
|
||||
- Encourage experimentation and iteration
|
||||
- Use real or realistic datasets
|
||||
- Build confidence through successful execution
|
||||
- Learn from errors and debugging
|
||||
|
||||
### 2. Visual Learning
|
||||
Leverage visualizations to build intuition:
|
||||
- Plot data before analyzing
|
||||
- Visualize model behavior
|
||||
- Show distributions and patterns
|
||||
- Use interactive plots when possible
|
||||
- Make abstract concepts concrete through visuals
|
||||
|
||||
### 3. Incremental Complexity
|
||||
Build understanding step by step:
|
||||
- Start with simple, concrete examples
|
||||
- Introduce one concept at a time
|
||||
- Build on previously learned material
|
||||
- Avoid overwhelming with too many details upfront
|
||||
- Progress from intuition to theory
|
||||
|
||||
### 4. Theory Meets Practice
|
||||
Balance conceptual understanding with application:
|
||||
- Explain why, not just how
|
||||
- Connect math to code implementation
|
||||
- Show real-world applications
|
||||
- Validate theoretical concepts through code
|
||||
- Make abstract concepts tangible
|
||||
|
||||
### 5. Active Learning
|
||||
Engage students in the learning process:
|
||||
- Include practice problems
|
||||
- Design checkpoints for self-assessment
|
||||
- Encourage exploration and "what if" questions
|
||||
- Provide opportunities for discovery
|
||||
- Foster experimentation
|
||||
|
||||
## Content Structure Guidelines
|
||||
|
||||
### For Chapters
|
||||
1. **Start with motivation** - Why does this topic matter?
|
||||
2. **Provide intuition** - Concrete examples before formalism
|
||||
3. **Introduce concepts incrementally** - One idea at a time
|
||||
4. **Show, don't just tell** - Working examples with code
|
||||
5. **Practice and validate** - Exercises to reinforce learning
|
||||
6. **Summarize and connect** - Key takeaways and next steps
|
||||
|
||||
### For Assessments
|
||||
1. **Test understanding, not memorization** - Focus on concepts
|
||||
2. **Include application problems** - Not just recall
|
||||
3. **Mix question types** - Theory, code, interpretation
|
||||
4. **Provide partial credit opportunities** - Show reasoning
|
||||
5. **Include real-world scenarios** - Make it relevant
|
||||
|
||||
### For Notebooks
|
||||
1. **Clear learning objectives** - What will students learn?
|
||||
2. **Executable from top to bottom** - No hidden dependencies
|
||||
3. **Mix explanation and code** - Interleave markdown and code cells
|
||||
4. **Include validation** - Help students check their work
|
||||
5. **Encourage exploration** - Provide extension opportunities
|
||||
|
||||
### For Slides
|
||||
1. **One main idea per slide** - Don't overwhelm
|
||||
2. **Visual over text** - Use diagrams and examples
|
||||
3. **Live coding when possible** - Show the process
|
||||
4. **Build complexity gradually** - Layer concepts
|
||||
5. **Include discussion prompts** - Engage the audience
|
||||
|
||||
## Level Differentiation
|
||||
|
||||
### Undergraduate Students
|
||||
- Assume less mathematical background
|
||||
- Start with concrete before abstract
|
||||
- Provide more scaffolding and structure
|
||||
- Focus on intuition and practical application
|
||||
- Use relatable, accessible examples
|
||||
- Emphasize building confidence
|
||||
|
||||
### Graduate Students
|
||||
- Can handle more mathematical rigor
|
||||
- Expect understanding of prerequisites
|
||||
- Include theoretical foundations
|
||||
- Balance theory with implementation
|
||||
- Use research and industry examples
|
||||
- Encourage independence and depth
|
||||
|
||||
## Tool and Library Guidance
|
||||
|
||||
### Choosing the Right Tool
|
||||
- **Beginners**: Start with high-level libraries (pandas, sklearn)
|
||||
- **Intermediate**: Introduce lower-level concepts (numpy operations)
|
||||
- **Advanced**: Implement from scratch to understand internals
|
||||
|
||||
### Code Quality
|
||||
- Write clean, readable code
|
||||
- Include comments explaining non-obvious parts
|
||||
- Follow conventions (PEP 8 for Python)
|
||||
- Show both "quick and dirty" and "production-quality" approaches when relevant
|
||||
- Emphasize reproducibility
|
||||
|
||||
## Common Pitfalls to Avoid
|
||||
|
||||
1. **Math before intuition** - Build understanding first
|
||||
2. **Too much at once** - Break down complex topics
|
||||
3. **Passive learning** - Always include active elements
|
||||
4. **Disconnected theory** - Link concepts to practice
|
||||
5. **Ignoring prerequisites** - Know your audience
|
||||
6. **One-size-fits-all** - Adapt to student level
|
||||
7. **No real-world context** - Show why it matters
|
||||
Reference in New Issue
Block a user