On this page, you will find most of the resources and information needed to implement this assignment in a typical CS1 course. The most important document for prospective instructors is the instructor guide, the assessment rubric (with downloadable versions), and all the project ideas.
| Summary | This assignment challenges students to build a complete, personalized project by partnering with an AI assistant. Students learn to use the AI as a pair programmer to brainstorm, write, and debug code. The key requirement is that the final project must be verified using physical hardware, ensuring that students can connect their software to real-world outcomes. The process emphasizes practical skills like prompt engineering and critical thinking, and students document their journey in a reflection journal while producing valid and verifiable engineering systems. |
|---|---|
| Education Modules | This project can be adapted in various modules in CS1 (and some other engineering courses) where the focus is on using AI as a tool, teaching best practices for human-AI interaction, AI-assisted development, prompt engineering for engineering. Specific courses where this assignment fits is: Introductory Python programming, Embedded systems, and Data analysis for engineers. |
| Audience | This assignment is designed for undergraduate students in their first or second year of study. It is suitable for CS1/CS2 courses, introductory programming courses for engineers (e.g., "AI for EE"), or introductory AI courses that want to include a practical, hands-on component. No prior experience with AI or hardware is assumed. |
| Difficulty | Easy to Medium. The difficulty is scalable based on the project chosen. The core concepts are accessible to beginners, while more advanced students can choose projects with greater complexity. The instructor resources include a customizable project ideas list that contains projects categorized into beginner, intermediate, and advanced difficulty levels. |
| Strengths | High engagement, Practical skills (such as prompting and debugging), Authentic assessment with hardware verification, Teaching with AI not despite AI, Flexible and personalizable. |
| Weaknesses | Requires access to low-cost hardware (therefore, requires funds to suppor the project), potential for student over-reliance on AI, requires instructors (and students)to be comfortable with a less deterministic, open-ended process. |
| Dependencies | Software: Python 3.x, access to a web-based LLM (e.g., ChatGPT, Gemini). Hardware: A low-cost microcontroller kit (e.g., Raspberry Pi Pico W or Arduino Uno) with basic components. |
| Variants | Can be adapted for groups, scaled for advanced courses with more complex hardware, or modified for software-only verification (such as by focusing on unit test development or user/human studies). |
Fetching last updated...
You can contribute to this page by creating a pull request on GitHub. The content of this webpage is licensed under the MIT License.