This is the Trace Id: f1b94887d21c65fee4a2620cfa7b7b1c
5/13/2026

UC San Diego prepares students for AI-driven industry with GitHub Copilot

With enrollments surging and curriculum aging rapidly, UC San Diego faced a challenge: programming courses weren't preparing students for careers where AI-assisted development had become standard practice across the industry.

UC San Diego is integrating AI coding assistants, like GitHub Copilot, to assist with programming tasks and advanced development, with strategic implementation distinguishing when students work independently versus with AI assistance to ensure fundamental understanding.

79% of students reported feeling comfortable using generative AI tools for programming by course end, while 59% said GitHub Copilot actively helped their learning of programming concepts.

University of California San Diego

University of California San Diego ranks among the top 10 U.S. public universities. From contributing to the development of the modern internet to advancing genomic research with supercomputers, innovation is in UC San Diego’s DNA.

The rapid rise of artificial intelligence represents a seismic shift in computer science education. Recognizing that industry professionals already leverage AI tools as essential components of their work, UC San Diego integrated these capabilities directly into coursework. The university saw rapid technological advancement as an educational opportunity, equipping students with vital AI collaboration skills alongside foundational knowledge that ensured adaptability. This dual approach—mastering today's tools while building tomorrow's problem-solving capacity—positions UC San Diego graduates to not just participate in the AI-driven industry, but to shape its evolution.

“In a recent survey, seventy-seven percent of CS faculty felt that the skills to program have shifted because of the advent of tools such as AI,” explains Leo Porter, Professor of Computer Science at UC San Diego. “But only 30% had changed their classes. And so, there is a demand from faculty to shift and to change.”

Enhancing programming education with AI integration

To address the changing landscape of software development, UC San Diego's Computer Science Department began integrating AI coding assistants like GitHub Copilot into select courses across the curriculum. Faculty developed a strategic approach that introduced AI-assisted coding at both introductory and advanced levels, allowing students from diverse academic backgrounds to experience these tools in different learning contexts.

For the introductory course, Porter overhauled the traditional curriculum. Rather than treating AI as an add-on, he designed a course that leverages GitHub Copilot while ensuring students still develop a fundamental understanding of programming. This approach not only benefits computer science majors but also non-CS majors who take programming classes, providing them with essential skills for their respective fields.

"If we look at the history of introductory programming courses, I don't think they've served non-CS majors well," Porter explains. "We have data that shows that students who finish an introductory programming course aren't actually that proficient in writing code. Studies show that roughly half of the Introductory Programming students can’t finish a very basic task that faculty think they should be able to do."

Porter's solution balanced AI assistance with skill development. For homework assignments and assessments focused on demonstrating understanding, students worked without AI assistance. For large projects where creativity and problem-solving were the primary goals, students had full access to GitHub Copilot.

According to Porter’s study including 552 students—a diverse cohort where two-thirds were non-computing majors, nearly half were first-generation college students, and 47% were Pell Grant eligible—79% of students reported feeling comfortable using generative AI tools for programming by course end, while 59% said GitHub Copilot actively helped their learning of programming concepts. Perhaps most striking was what students accomplished—instead of traditional syntax exercises, they built sophisticated applications in data science, image processing, and game design that would have been impossible in a traditional CS1 course.

"Students solved large projects that are much bigger than what you can do in a traditional programming class," Porter says. "If you allow students to use their creativity they can build some really amazing things."

Leo Porter, Professor of Computer Science, UC San Diego

“Students solved large projects that are much bigger than what you can do in a traditional programming class. If you allow students to use their creativity they can build some really amazing things.”

Leo Porter, Professor of Computer Science, UC San Diego

Preparing students for industry's massive codebases

Meanwhile, Anshul Shah, PhD candidate and instructor in the Computing Education Research Lab, prepared his students for large-scale software development while teaching them to calibrate their trust in AI tools appropriately. His "Working with Large Code Bases" course became a laboratory for understanding how AI changes professional software development.

After establishing manual competency, students learned to work with GitHub Copilot's advanced features. The transformation was dramatic; tasks that previously took 30-40 minutes could, in classroom exercises, often be completed in under five minutes with well-crafted prompts.

“I teach students skills related to working with large code bases,” Shah explains. “This isn’t focused on so much in a lot of university computing curricula. Some studies indicate that a software developer may spend 50% to 70% of their time navigating code to just make a small change in the code base. An AI coding assistant really helps out in a large code base. With one prompt, you get an immediate answer as well as an explanation of what the code is doing, not only where it is.”

Rather than treating this efficiency gain as the end goal, the course used it as an opportunity to embrace more sophisticated projects. Final projects required students to build feature additions to Python's IDLE IDE (Python’s Integrated Development and Learning Environment) as if presenting to the Python development team.

“An AI coding assistant really helps out in a large code base. With one prompt, you get an immediate answer as well as an explanation of what the code is doing, not only where it is.”

Anshul Shah, Instructor, Computing Education Research Lab, UC San Diego

Building calibrated trust in AI-assisted development

Both Porter and Shah recognize that teaching appropriate AI interaction is as important as traditional technical skills. They developed frameworks for helping students calibrate their trust in AI systems—understanding when to rely on AI assistance, when to verify AI output manually, and when to work independently.

“Teaching students when and how to establish calibrated trust with AI tools is extremely important as we send them off into the real world,” says Shah. “Interacting with AI and reflecting on what it does well and what it doesn’t do well is as important to students as simply being aware of what these tools can do.”

Students learned to evaluate AI output across multiple dimensions: functional correctness, code quality, security implications, and maintainability. These meta-cognitive skills proved as valuable as traditional programming competencies.

Instructors revamped assessment strategies to prioritize student understanding. Video presentations became a key tool, requiring students to explain their decisions, while in-person code explanation sessions helped further verify authentic comprehension.

"Using GitHub Copilot, they might have gotten some working code, but this is an additional check that they actually understand the code that they submitted," Shah explains. "Overall, how we understand and talk about code is a really important skill because that's the way that we'll be interfacing with tools like GitHub Copilot, now and in the future."

Instructors collected detailed data on how students used AI tools, including full chat transcripts. Successful students crafted precise prompts and evaluated responses critically, while others got trapped in unproductive cycles. These insights enabled real-time curriculum refinement grounded in actual student behavior.

"We encourage GitHub Copilot and put the onus on our students to not only use it, but really understand it," Shah says. "We talk about how to evaluate the output of GitHub Copilot, as well as good prompting strategies, and how to ask Copilot to do certain tasks."

Bridging classroom learning with professional coding practices

Improvements in student capabilities spanned every level of the curriculum. Non-CS majors in introductory courses were building sophisticated projects—biology students created data analysis tools for lab research, business majors developed interactive dashboards, and psychology students designed experimental interfaces. Upper-division courses witnessed equally dramatic shifts, with software engineering students building deployment-ready features like Python Tutor-style debugging tools for IDLE and creating polished instructional interfaces that enhanced learning for novice programmers.

Most significantly, these curriculum changes produced graduates with industry-aligned skills that extended far beyond basic coding. Students developed proficiency in the full software development lifecycle while gaining fluency in AI collaboration. AI integration didn't replace traditional competencies but expanded them, enabling students to focus less on boilerplate implementation and more on architecture, design, and user experience.

“The industry has changed dramatically in terms of how software engineers write code, and they are fairly ubiquitously using AI coding assistants like GitHub Copilot,” says Porter. “The challenge for us as educators is to ensure that our students are properly prepared for the jobs of the future.”

Charting a new course, from 'if' to 'how'

The question is no longer if these tools should be integrated, but how to do so while improving core learning outcomes. As AI capabilities continue to evolve, the critical thinking, trust calibration, and reflective practices developed through thoughtful AI integration will remain essential.

Looking ahead, UC San Diego plans to integrate generative AI tools, including GitHub Copilot, in multiple computer science courses, while researching how students interact with AI tools and preparing them for emerging agentic AI capabilities that will further reshape software development practices.

"AI coding assistants have absolutely changed how I program," says Porter. "The more tedious elements of programming I can offload so that I can focus more on the algorithmic design and big picture. As far as my students go, as they venture into the next domain of their lives, I have a lot more faith that they're able to actually produce something now and in the future with the aid of AI coding assistants, like GitHub Copilot, than they would have been without. We’ve seen this with students solving these much larger projects."

Discover more details

SERVICES AND SUPPORT
Take the next step

Fuel innovation with Microsoft

Explore more customer stories

Find out how customers are achieving more with Microsoft products and solutions.
A man wearing headphones and smiling.

Talk to an expert about custom solutions

Let us help you create customized solutions and achieve your unique business goals.
Three people in a meeting room.

Transform work with Microsoft AI

Bring intelligence into the flow of work and help your organization achieve its goals with secure, scalable AI solutions.

Follow Microsoft