Teaching
Summary
An NYU computer science course for seniors was fully revamped to integrate modern software engineering practices and AI coding assistants. Taught post-ChatGPT, the course aimed to teach fundamental machine learning concepts by having students build complete software packages from scratch for each topic. Initial weeks focused on mathematical and statistical foundations, while teaching assistants ensured students had access to coding assistants like GitHub Copilot and OpenAI Codex with free credits. The core methodology involved weekly "vibe coding" sessions where the instructor demonstrated building a full web application for a new ML concept, emphasizing prompt setup and debugging with AI agents. Students then replicated this process, developing applications for concepts such as vector space retrieval, dimensionality reduction, clustering, and reinforcement learning. Lab sessions provided deeper dives into algorithmic mechanisms using PyTorch and Transformers. Final projects, built without constraints, showcased impressive student creativity and functional applications, highlighting a new era of education where students learn by doing and making mistakes with advanced tools.
Key takeaway
For AI educators designing modern curricula, consider integrating AI coding assistants to foster practical, project-based learning. You should structure courses to allow students to build complete applications from scratch, embracing iterative development and debugging with AI tools. This approach cultivates essential problem-solving skills and prepares students for an industrialized software engineering landscape, moving beyond theoretical exercises to hands-on creation.
Key insights
Integrating AI coding assistants enables a project-based, "learn-by-doing" approach in machine learning education.
Principles
- Embrace uncertainty in machine learning.
- Systematize convex optimization techniques.
- Allow students to learn from mistakes.
Method
Instructors "vibe-code" full-stack applications for ML concepts, demonstrating prompt engineering and debugging with AI, then students build their own from scratch weekly.
In practice
- Provide students with coding assistants.
- Encourage full-stack app building.
- Demonstrate prompt engineering.
Topics
- Machine Learning Education
- AI Coding Assistants
- Project-Based Learning
- Software Engineering Curriculum
- Prompt Engineering
- Full-Stack Development
Code references
- kyunghyuncho/nyu-course-search
- kyunghyuncho/nyc-taxi-trip-visualization
- kyunghyuncho/clustering-countries
- kyunghyuncho/checker-bot
- kyunghyuncho/federal-payroll-prediction-antigravity
Best for: AI Student, AI Scientist, Research Scientist
Related on AIssential
See Counsel's argued verdicts on the open AI decisions leaders are weighing →
Editorial summary, takeaway, and curation by AIssential. Original article published by Kyunghyun Cho.