Updated: July 18, 2025 (July 18, 2025)

  Blog

CIO Talk: Vibe Coding and What It Means To You

My Atlas / Blog

1,050 wordsTime to read: 6 min
Barry Briggs by
Barry Briggs

Before joining Directions on Microsoft in 2020, Barry worked at Microsoft for 12 years in a variety of roles, including... more

By Barry Briggs

Let me start with a perhaps-controversial statement: It’s my opinion that every Chief Technology Officer and, for that matter, every Enterprise Architect, every Solution Architect, and every Information Architect should code. Coding is the only way that you can stay grounded in the fundamental, ultimately rigidly binary, logic of how computers work; what their limitations are; and what the limitations of humans writing code are. Frankly it’s easy to draw a block diagram of boxes and arrows on the whiteboard; translating that into working, secure software is an entirely different matter altogether.

Most importantly: To effectively manage dev teams, we have to understand what they’re doing, how they’re doing it, and the challenges they face.

These days the buzz is about “vibe coding,” meaning using AI to write code, maybe even whole programs. And as the Wall Street Journal informs us, even professional developers use it now. 

Is vibe a revolution in coding? Can it help a longtime programmer? And how should executives think about it?

I’m a professional developer. And a six-time CTO. I decided to find out.

The Problem

Hopefully you’ve all noticed that we at Directions have upgraded our website . (And if you’re not a subscriber: you’re really missing a lot of great content.) I wanted to do some analytics on the data and, long story short, I needed to extract it – all of it – from our back-end WordPress site.

We’ve all known for a while you can use GitHub Copilot and many other coding assistants to help with coding. Copilots are now available in Visual Studio, Visual Studio Code; and if you’d rather, Gemini, Perplexity, Cursor, and Claude Code can write code for you too. More on that later.

Like all coders, after a time I found myself “in the zone” with headphones on, totally focused, immersed in the logic, adding features, refactoring, discovering and handling exceptions, the world completely shut out. (It’s really kind of wonderful.)

But things have changed – bigly –  and if you’re a coder, or, more importantly, if you manage developers, you need to know.

The New Dynamic

Not that long ago if your code (yours, not mine) had an error, you spent time Googling various sites – Microsoft’s documentation, the developer problem-solving site StackOverflow, Reddit, and blogs – trying to find how to fix it.

Then Copilots arrived and you could ask them – maybe tentatively, as in the early days the results might be questionable.

But now the dynamic has reversed. As a good friend of mine noted, no longer are Copilots assisting us; we humans assist the Copilots! As an experiment, within the Visual Studio IDE, I simply asked Copilot to “create a console app, load all the JSON files in d:\files and parse them into a C# class.” Done. Then I asked it to count the number of entries with specific metadata tags, to get an idea of how our coverage was distributed.

Done. Boom.

It was fun; it was fast; but I began to wonder: was I really coding?

Hold that thought.

It wasn’t perfect. Occasionally Copilot wrote code that either didn’t work or didn’t compile, usually because it had found sample code somewhere that used a deprecated API, or whatever. Usually these were simple fixes, but it meant I had to type more prompts like “please fix line 366” and the like. Would I have gotten it right the first time? Hmmm.

Interestingly, I fed many of the prompts to other LLMs – Gemini, Claude, Perplexity – and in some cases their code was improved, while in others the code was, well, even worse.

And – cautionary note. In a project I was doing with Azure AI Foundry, I got the following error:

There was an error generating a response. Chat history can't be saved at this time. Error code: 401 - {'error': {'code': 'PermissionDenied', 'message': 'The principal XXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX lacks the required data action Microsoft.CognitiveServices/accounts/OpenAI/deployments/chat/completions/action to perform POST /openai/deployments/{deployment-id}/chat/completions operation.'}}

I had no idea what this meant – seemingly something about Managed Identities. I asked every LLM: Claude, Gemini, Azure Copilot, ChatGPT, Perplexity, GitHub Copilot, and received different answers from each one. And all were wrong. Great.

The Meaning of Vibe Coding

The real question for technology executives is – do AI assistants accelerate development? And can you replace developers?

My answer on the first one is: the jury’s out. On the second: categorically no.

Why?

  • Copilots can save an immense amount of time on the minutiae of looking up API calls, parameters, and advising coders on their correct usage. And they can write functions that actually work, as I mentioned above. And fix simple bugs. That’s kind of awesome.

  • But when the routine doesn’t work, you need someone who understands all that minutiae to dissect the code and fix it. For example, I ran into a minor problem with a Unicode string in the data. Copilot’s answer was misleading and its solution wrong. But because I understand Unicode and its use, I could fix it quickly. Point: you need experienced coders.

  • A totally empirical and anecdotal finding – but for me important – was that while I increasingly relied on Copilot to do rote coding, I spent nearly as much time typing prompts as I would have typing code.

Vibe Coding in the Enterprise: Lessons for the CxO

To be clear, these days my apps are what we might call “quick and dirty.” Enterprise-class robust? Hardly.

Having sat through countless architecture and code reviews at Microsoft and elsewhere, I have a pretty good idea of what it takes to pass muster. Copilot-written code needs every bit as much scrutiny and review as human-written code – more, I’d say. Repeating the point: You need experienced programmers!

That said, the ability of the Copilots to connect to enterprise code repos, to leverage organizational coding standards, even to generate and run unit tests, are all remarkable but in no way obviate the need for skilled technical talent. Instead, you should expect more. If these tools amplify productivity, then set more ambitious goals. For your developers – and for your organization.

Have you vibe-coded? What do you think? 

I’m at bbriggs@directionsonmicrosoft.com

Before joining Directions on Microsoft in 2020, Barry worked at Microsoft for 12 years in a variety of roles, including as Chief Technology Officer for Microsoft’s own IT organization for... more