Prerequisites: 15-112 Fundamentals of Programming and Computer Science
Time Commitment: 6 hours/week (3 hours in class + 3 hours outside work)
Semester: Spring 2026
Instructor: Mike Taylor (mdtaylor at andrew.cmu.edu)
Note: The specific details of the course are still VERY subject to change!
The general description and themes shouldn't change much, but the schedule, policies, and assignments
will continue to take shape until the start of the course.
Description
This application-focused course will teach students how to effectively combine intermediate programming skills with contemporary AI tools to enhance their software development workflow. Students will explore the capabilities and limitations of current AI coding assistants, experiment with prompt engineering, and collectively develop standards for maintaining code quality, transparency, and ethical integrity in AI-augmented workflows. The course will also feature seminars from AI experts in industry and academia. Through weekly coding projects, students will rapidly build complete applications while balancing creative problem-solving with rigorous quality assurance. A collaborative approach emphasizes peer learning, with students sharing discoveries and contributing to evolving best practices for prompting and evaluating AI-generated code, ensuring proper attribution, and establishing transparent development protocols. These projects are also designed to jump-start students' portfolios for future employment. By completion, students gain practical development experience with AI tools and will contribute to evolving best practices for future courses, learning from both instructors and peers' experiences with these rapidly advancing technologies.
Course Goals: By completion, students gain practical development experience with AI tools and will contribute to evolving best practices for future courses, learning from both instructors and peers' experiences with these rapidly advancing technologies.
The Portfolio Approach
For your first major assignment, you'll build a personal portfolio
website using AI (even if you have no prior experience with HTML or web development).
- Make it:Throughout the semester, you'll use your creativity and technical strengths along with AI to build a variety of projects using the strategies and tools we discuss in class.
- Get feedback:You'll submit these projects for review and critique by adding them to your portfolio.
- Take it with you:By the end of the semester, you'll have a complete online showcase of your AI-augmented
development skills.
Add your work from other courses and projects and you'll be able to show off your best work for future internships, jobs, and graduate school applications.
This course jumps into AI-assisted programming from Day 1. We'll alternate between class discussions and regularly building cool stuff, with the goal of finishing the semester with refined strategies for using AI effectively and responsibly.
Guest Lectures
Throughout the semester, we'll host guest lectures from experts in computer science,
software engineering, and machine learning/AI research. These engineers and researchers will share:
- How they use AI tools in their daily work (coding, debugging, communication, and research)
- Real-world applications and case studies from their organizations
- Challenges and limitations they've encountered with AI-assisted development
- Where they see the technology heading and how it will shape our careers
- Advice for students entering the field in the AI era
Tentative Schedule: The schedule of topics presented below is tentative, and may shift to accommodate our guest lectures. Specific dates and
speakers will be announced as confirmed. Ideally these will mostly occur during class time, though occasionally we may have optional presentations outside of our normally-scheduled sessions.
Learning Objectives
AI as Force Multiplier: Modern AI tools can be very powerful, but to use them effectively requires us to combine the speed and generative capabilities of AI with our critical thinking and problem-solving skills. This course teaches you how to strategically leverage AI tools to enhance your productivity and versatility
while maintaining code quality and strong ethical standards.
At the end of the course, students should be able to:
- Build ambitious projects faster by using AI tools strategically while maintaining code quality
- Evaluate AI-generated content critically for correctness, security, performance, and maintainability
- Choose appropriate AI tools based on task requirements, tool capabilities, and project constraints
- Navigate ethical considerations including bias, privacy, authorship and attribution, environmental impact, and responsible use
- Articulate a personal framework for when and how to use AI in software development
Ethics Discussions
Ethics discussions will include the following topics:
- AI training data and representation
- Intellectual property with AI-generated code
- Accessibility and inclusive design
- Security ethics and disclosure
- Privacy and data collection
- Environmental impact of AI systems
- Algorithmic bias
- Job displacement and adaptation
- Professional responsibility
- Personal ethical frameworks
Please email Mike if you have ideas for additional topics that would be of interest!
Topic List and Schedule
The course is organized into three phases:
| Week |
Mon 12:30pm-1:50pm |
Wed 12:30pm-1:50pm |
Assignments |
Cool Stuff |
Week 1 AI Tools Bootcamp |
Welcome & First Build • Course intro • Tool setup • Build challenge: Tetris |
Web Development Crash Course • Website anatomy • Web dev intro with AI • "My First Webpage" |
HW1: More Games (due Fri 8pm) |
Grading
| Component |
Weight |
Notes |
| Homework (about 10) |
20% |
Mostly smaller, weekly projects. Grading based on evidence of effort, due Fridays |
| Participation |
20% |
Includes attendance, contribution to discussions and critiques/code reviews, and good collaboration |
| Big Projects (about 3) |
40% |
Weeks 10-14, ~12-15 hours total |
| Exams/Quizzes |
20% |
Infrequent quizzes + 2 exams. These will mostly ask you to reflect on tools and strategies we have discussed. |
Letter Grades
A: [90-100], B: [80-90), C: [70-80), D: [60-70), R: [0-60)
Grading Philosophy: This course emphasizes effort, growth, and understanding over
perfection. Grades reflect engagement with the material, demonstration of learning, and thoughtful
use of AI tools. Code doesn't need to be production-perfect, but you must understand it and be
able to explain your choices.
Projects
(Note that Projects 2 and 3 are especially tentative and subject to change)
Project 1: Personal Portfolio Website (Weeks 1-3)
Goal: Build a professional portfolio website to showcase your work—using AI to learn web development from scratch
Time: ~3-6 hours
Context: Most students have never built a website before. This project teaches you to use AI as a learning tool to master new domains (HTML, CSS, JavaScript) while creating something immediately useful.
Requirements:
- About Me section with bio, photo, interests, skills
- Projects section with showcases (start with placeholders—you'll add real projects throughout the semester!)
- Contact section with email, GitHub, LinkedIn, or contact form
- Responsive design that works on desktop, tablet, and mobile
- Professional appearance with clean, modern design
- At least one interactive feature using JavaScript (animations, dark mode, etc.)
- Deployed and live via GitHub Pages
Deliverables: Live URL, GitHub repo, informal reflection (don't use AI for this part)
Important: Throughout the semester, you'll add each new project to your portfolio. By Week 14, you'll have a complete showcase of your work!
Project 2: Full-Stack Application (Weeks 6-8)
Goal: Build a complete, deployed web application
Time: ~8-10 hours
Requirements: User auth, database, frontend UI, deployed
Examples:
- Task manager with sharing
- Recipe collection with search
- Fitness tracker with graphs
- Study group organizer
- Book club with reviews
- Personal finance tracker
Deliverables: Live URL, GitHub repo, demo video (3 min), technical writeup, posted your portfolio website with screenshots and description
Project 3: Portfolio Capstone Project (Weeks 11-14)
Goal: Build something impressive that showcases your AI-augmented development skills!
Time: TBD
Requirements: Substantial complexity, professional quality, related to your interests or career path
Examples:
- AI-powered study tool with intelligent features
- Data visualization dashboard using real data
- Multiplayer game with real-time networking
- Mobile app solving a real problem
- Browser extension with useful functionality
- API service with comprehensive documentation
- ML application with user interface
- Community or campus-specific tool
Deliverables: In-class expo-style presentation, GitHub repo, interactive demo, technical writeup, posted your portfolio website with screenshots and description
Course Policies
AI Usage Policy
Philosophy: Transparency and learning over restriction
Required:
- Document all significant AI usage in code comments and writeups
- Explain AI-generated code in your own words
- Modify and test AI suggestions, don't just copy-paste
- Cite AI tools used
Encouraged:
- Experiment with different tools and approaches
- Share successful prompts and strategies with classmates
- Use AI to learn new concepts and debug
- Push AI to its limits to understand boundaries
Not Allowed:
- Submitting AI code you can't explain reasonably well
- Claiming AI-augmented work as wholly original
- Any improper/missing attribution, or misrepresentation of submitted work and your process for creating it
- Using AI on written exams or quizzes (except if explicitly permitted)
Verification: The instructor may ask you to explain any part of your submitted code,
your process for creating it, or possible trade-offs and alternatives. Honesty and transparency always yields the best outcomes.
Collaboration Policy
Highly Encouraged:
- Discuss ideas, strategies, and approaches
- Debug together
- Review each other's code
- Share resources and prompts
- Form study groups
Not Allowed:
- Copying code from classmates, except where explicitly allowed
- Submitting identical work to independent assignments
- Doing someone else's project/assignment/assessment for them
General guidance: If you can teach them how to do it, great! If you're just giving them the answer, or if they can't recreate the work on their own without referencing notes or the original, you aren't collaborating. Ask if you aren't sure if something counts as good collaboration.
Academic Integrity
Core philosophy: You must understand and be able to explain all submitted code at a reasonably high level. More importantly, you must represent your work and your submissions with thorough transparency and proper attributions. When in doubt, ask if something is acceptable!
Violations include:
- Submitting code you don't understand at a reasonable level
- Copying from others (human or AI) without attribution
- Misrepresenting your use of AI tools
- Other violations of the collaboration / AI use policies above
- Receiving or providing any unauthorized assistance or information on quizzes or exams
- Using any prohibited tools or resources on quizzes or exams
- Any other form of deliberate dishonesty or misrepresentation
Consequences: Penalties up to course failure, reported to university
Negligence or uncertainty is not an acceptable excuse. When in doubt: Ask! Better to ask than assume.
Late Policy
Homework / Mini-Projects:
- On time: 100%
- 1-3 days late: 80%
- 4-7 days late: 50%
- >7 days late: 0%
- All late work must be submitted by the last day of class
- In extenuating circumstances such as medical or family emergencies, email Mike to ask about extensions.
Major Projects:
- Due dates are firm to allow for presentations and peer review
- Extensions only for major documented emergencies (email Mike)
- Extensions must be requested BEFORE deadline whenever possible
Exams and quizzes:
- Extensions/excused absences for emergencies/illnesses must be requested in advance whenever possible.
- Quizzes will typically be excused for emergencies. Make-up exams must be scheduled promptly.
Resources and Tools
Required Tools (All Free for Students)
Recommended Tools (Free)
- Claude - Good for complex explanations (free tier)
- Cursor - Advanced IDE integration (free for students)
- Replit - Online collaboration (free tier)
- GitHub Codespaces - Cloud development environment
Course Materials
- Weekly guides and prompt templates (on course website)
- Code examples and starter files (on GitHub)
- Ethics case studies (provided in class)
- Tool comparison matrices (on course website)
- Best practices checklists (on course website)
Office Hours and Support
Getting Help
-
In Class
Ask questions, work with peers, get immediate help.
-
Instructor Office Hours
[Days/Times TBD], [Location TBD]
For conceptual questions, project guidance, career advice
-
TA Office Hours
[Days/Times TBD], [Location TBD]
For debugging help, tool assistance, assignment questions
-
Ed Discussion
[Link TBD]
Quick questions, sharing resources, peer support
-
Email
mdtaylor at andrew.cmu.edu
For private concerns, extension requests, accommodations
Accommodations
Students with documented disabilities should contact the instructor in Week 1 to discuss
accommodations. All tools and activities will be evaluated for accessibility, and alternatives
will be provided as needed.
Additional notes
- Original layout/some preliminary wording created with Claude Sonnet 4.5, Nov 2025. (In fact, we'll talk about this process in week 1!)
- Some course policies adapted from CMU 15-112. F25