‘Vibecoding’ may provide insight into the future of AI — Harvard Gazette

AI News

You no longer need to know how to code to design a website or app. You explain in plain English what the program should do, and the AI ​​agent will do its best to make that vision a reality. This is a process called “vibe coding.” The end result may have many limitations, but it will likely be much more sophisticated than anything anyone without fairly advanced technical skills could create.

Among those exploring new practices are Karen Brennan and Timothy E. Wirth, professor of learning technology practice at the Harvard Graduate School of Education. He taught a six-week course on vibe coding starting late last fall. In this edited interview, Brennan details what she told her students and the insights she gained into what our future with AI will look like.


What is vibe coding? What was your first experience?

Vibe Coding is the creation of software with the help of AI. Specifically, it’s about writing software that doesn’t necessarily understand the code it creates. (“Vibe coding” is a term popularized by computer researcher Andrei Karpathy in February 2025.)

The responsibility of understanding the underlying code distinguishes vibecoding from professional software development, which is also increasingly AI-assisted. As a term, vibecoding can be both positive and pejorative, celebrating not having to understand code or highlighting the risk of setting aside that responsibility.

My first experience with vibe coding was in December 2024. Through a research project funded by the Harvard Learning and Teaching Initiative, I was studying how students use generative AI in their independent projects. That’s when one of my students introduced me to v0, an AI-powered tool for building web applications and sites.

Later, when I needed to build a website for the same research project, I built it using v0. I was amazed at how quickly I was able to create the site and the quality of what was created.

You’ve been teaching Vibe Coding courses without any experience in AI or coding. What were your hopes for this course? And what was the result?

PhD student Jacob Wolf and I designed and taught a six-week course on vibecoding late last fall. This course was supported by a phenomenal teaching team. Our hope for this course was to explore this particular socio-technical moment in which anyone (in theory) could create software in conjunction with AI.

The central question that motivated this course was how to think about AI as a creative partner. We had a different theme each week (build something that tells a story, something that makes life easier, something that invites play, etc.) and tried a different vibe coding tool each week (such as Replit, Figma Make, Claude Code, etc.).

“The central question that motivated this course was: How do we think about AI as a creative partner?”

This course was clearly not about building professional software. We focused on experimenting with new creative possibilities.

An important part of the course design for us was to combine practical creation with a critical perspective. Each week, we read one classic text in computer science (to remind us that people have been thinking about the opportunities and challenges of AI for decades) and another important modern text (to guard against the AI ​​hype).

We asked students to share their real-life experiences and readings with each other in their final position portfolios. After all these experiences, how do they feel about creating with AI? What do they have to say about it?

I loved this experience. Both the students were able to create and critique, and I also had the opportunity to create with them. Ninety-two students participated, and based on course evaluations and meetings with students, students valued both the opportunity to build something themselves and the critical framework we brought to their work.

This was a large-scale experiment, and like any first course, there was a lot to figure out in real time, especially given the changes in technology currently underway. However, I feel that the positive feedback I have received from students confirms that it is not too early to try teaching this in a university education department.

What are the promises and limitations of vibecoding?

The core promise for me is the democratization of creation. Vibe Coding makes the creation of software, or the output of code, accessible to more people. You can have an idea and bring it to life without having a computer science degree or hiring a team of developers. And it’s changing the economics of experimentation. To understand something, you often have to build it, and now you can build that thing very quickly. This quick iteration and adjustment is one way to generate more ideas and unleash your creativity.

I feel that being at a school of education is stimulating in terms of learning. While vibecoding can be a way to circumvent CS content knowledge, many of these tools create opportunities for inspection and consideration of the implementation, or code. You can take a peek under the hood!

You can also have the AI ​​explain what you’ve created together at the level of detail you’re comfortable with, from a more technical explanation to a first-grade explanation.

Of course, there are some limitations. Environmental impact and cost were two of the many concerns we addressed. Also, as creators, our ability to express our ideas in natural language is limited. Students with CS knowledge or design backgrounds can make further progress because they can articulate what they want more clearly.

We’ve seen students get stuck in a frustrating loop where they prompt the AI ​​to do something, the AI ​​generates something that’s completely incorrect or seems common, and then the student can’t fully articulate the problem and what needs to be changed. Vibe Coding favors those who are good at verbal communication. This is important for fairness considerations.

How is vibecoding different from traditional software engineering?

Vibe Coding is perfect for rapid prototyping and personal projects, even done by professional software engineers.

But I think the big difference is about responsibility. Thinking about my own computer science preparation, there were good reasons why I needed to take a course on social impact and ethics of computing. Vibe programmers typically don’t have to worry about the same types of questions that professional software engineering teams consider, such as reliability, safety, security, and maintainability.

“Vibe coding is often How much amazing things can you accomplish in the next hour?Not for the quality of what is made or the people who depend on it. ”

Vibe coding is often optimized to: How much amazing things can you accomplish in the next hour?not for the quality of what was created or for the people who might depend on it.

As someone with a computer science background, how does the experience of coding Vibe differ from someone who has never coded before?

Content knowledge has its benefits. You may have a different sense of what you can create. You’ll be able to more clearly describe what you want to create, and you’ll be able to more easily recognize when something goes wrong and how to fix it. I also think there are habits of mind developed through training (i.e. persistence and a willingness to repeat) that I find particularly helpful when vibecoding.

But what I realized on the course, beyond our differences, was how much we have in common, regardless of our past experience or expertise. There’s a deep joy in coming up with an idea, bringing it out into the world, sharing it with others, and experiencing the wonder and joy together.

How do you think vibe coding will evolve in the future?

We hope that more people will have the opportunity to experience vibecoding, express themselves creatively, and open up new learning opportunities. I would particularly like to see more of it done in schools, but there are also challenges due to cost, resistance due to unfamiliarity, and legitimate concerns about the potential impact on cognition and critical thinking.

Vibe coding does not exist in a vacuum. The adoption of Vibe coding in schools (and elsewhere) will depend not only on the technology itself, but also on politics, policy, and people.

I think the core practices we develop when vibecoding – thinking creatively about what we want to create, creating and iterating on prompts, and critically evaluating what is produced – will become core practices in our lives going forward. Perhaps it’s more of an “everything vibe” than a “coding vibe.”

If the technology that surrounds us can do an almost infinite number of things for us, if only we knew how to ask, then being able to imagine possibilities, articulate what we want to see in the world, review and iterate on what we have created would be very useful abilities for all of us to develop.



Source link