CSCI 455 / 555 · Spring 2026 · William & Mary

Generative AI for
Software Development

The companion platform for CSCI 455/555 at William & Mary. Interactive teaching modules, student-built projects, and open resources — designed for students to learn, experiment, and showcase their work with modern AI tools.

7 Learning Modules
6 Student Projects
244 Interactive Slides
70+ Hands-on Demos
About the Platform

What is CodeLab?

CodeLab is the open, browser-based companion platform for Generative AI for Software Development (CSCI 455/555) at William & Mary.

It provides self-paced interactive learning modules, student project showcases, and hands-on demos — all free, no install required. CodeLab bridges the gap between academic teaching and real-world AI-assisted development by giving students a place to learn, experiment, and publish their work.

Every module features interactive slides with embedded runnable code, live demos, and exercises. Student projects showcase full applications built through “vibe coding” — building software primarily through natural language and AI pair-programming.

🌐

Open Access

Free for anyone — no login, no install. Open your browser and start learning.

💻

Browser-Based

Interactive slides with live code, runnable demos, and exercises — all in-browser.

🎓

Student Showcases

Real projects built by undergraduates using AI pair-programming and vibe coding.

🔬

Research-Backed

Developed by an active researcher in AI for Software Engineering at W&M.

Course Overview

CSCI 455 / 555 — Spring 2026

Students develop foundational skills in deep learning and generative AI applied to software engineering — from mining repositories and training language models to prompting LLMs and detecting hallucinations in generated code.

Course Information

Course CSCI 455 / 555
Schedule MWF 1:00 – 1:50 PM
Location Blow Hall 333
Credits 3
Instructor Prof. Antonio Mastropaolo
Department Computer Science, W&M
Class Size ~36 students

Topics Covered

This course covers the full pipeline of AI-enabled software development: collecting and processing source-code data, building probabilistic and neural language models, evaluating generated outputs, and applying LLMs to real-world coding tasks.

mining repositories language models evaluation metrics deep learning prompting code hallucinations code generation vibe coding
Learning Outcomes

What Students Will Learn

01

Build with AI

Go from zero to shipping real applications using LLMs as a coding partner. Learn what works, what doesn't, and why — through hands-on vibe coding projects.

02

Understand the Science

Explore how language models learn from code: tokenization, probability, attention, and the training pipeline behind tools like GitHub Copilot and ChatGPT.

03

Think Critically

Evaluate AI-generated code rigorously. Measure quality with established metrics, detect hallucinations, and understand when to trust model outputs — and when not to.

Learning Resources

Interactive Learning Modules

Seven self-paced, browser-based modules covering the full pipeline — from mining repositories to detecting hallucinations. Each module includes interactive demos and hands-on exercises. No install required.

View All Modules →
Prof. Antonio Mastropaolo
Prof. Antonio Mastropaolo William & Mary
Department of Computer Science

About This Platform

CodeLab was born from first-hand experience with vibe coding. As a researcher and practitioner, Antonio started building software through natural language prompts and AI pair-programming — and the impact on the development chain of command was striking. That hands-on experimentation sparked a deeper reflection on how far this novel approach to writing code can actually take us.

This website is itself part of those original experiments: an entirely vibe-coded platform, built and iterated through AI-assisted development. It now serves as the open companion to Generative AI for Software Development (CSCI 455/555) at William & Mary, where students explore the same workflow — from prompt engineering and model evaluation to shipping real applications.

All teaching modules are self-paced, browser-based, and free to use. Student projects demonstrate what undergrads can build when armed with modern LLMs and a bit of ambition.