1. GitHub Copilot in VS2022

I am working on the development of .NET8/C#/ASP.NET8/EF8 application, which is now around 123.000 lines of code (SLOC), out of which 50.000 is EF-database-first model, in Visual Studio 2022.

I have a subscription to GitHub Copilot Pro + license. So far, that AI tool has been good for limited-scope tasks. I wanted to try the new GitHub Copilot Agent mode. Below are notes from my regular work.

2. Anecdotal Experience with Real ASP.NET8 project

Environment is:

The task is:

2.1 Create a new AJAX method in ASP.NET MVC controller based on the existing

2.1.1 GHC (GPT-4o)

2.2 Create a new ASP.NET View-Component based on template (4 files)

2.2.1 GHC (GPT-4o)

3. Conclusion

This was still a task carefully chosen for GHC, in the sense that it is template-based and component-separated from the main code. It only needed to clone the code and adapt it from the Account entity to the Contract entity. But before, GHC would fail even in such “Gen-AI favorable scenarios”. So, the above shows 7 prompts that created ~500 lines of code, with small interventions from a human programmer ~6 lines of code, and some empty file creation. And commands are in practically natural language, no “pseudo-science” prompt engineering needed, I spontaneously stopped using # for marking file names, and it all worked.

I have always stated that prompt engineering is “a defeat for AI” and with the advancement of AI, it will become obsolete as natural language communication will prevail.

Impression**: This version of GitHub Copilot (GHC) Agent is much, much stronger than GHC I saw a few months ago**. There is no mess in the code I saw 2 months ago**. I did not see a single hallucinated method or property, and the code is buildable, meaning syntax is proper.** The automation of Visual Studio 2022 (remote control by GHC) has a kind of psychological effect; you feel like someone else is present and has taken over the control of your tools. VS2022 is alive without me doing anything. It actually builds and repeats builds after errors.

It does not feel like “pair programming” or “peer programming” as in marketing stories. GHC is quite passive, so it feels like an “intelligent code generator”. But it does look effort-efficient. In the above work, I made altogether 7 commands to GHC, and got some 500 lines of usable code. But you still need a human proficient programmer to filter out bad attempts and tweak code in a couple of places.