Should you use GitHub Co-pilot in Azure Data Studio

The simple answer is no.

By now you have already tried ChatGPT and have a decent idea about its limitations. The same hold true for GitHub Co-pilot. The suggestions or queries it writes aren’t specific to the design of the database or the volume of data or knowledge of the data. It basically makes a lot of assumptions about the design and data that aren’t necessarily valid. The kind of query optimization that is required for a table with a few 100 rows is different for one with a few 100 million rows. Right now, CoPilot as its names suggests is an assistant to the pilot, in this case the DBA. However, the Copilot by definition should not add to the workload of the DBA and that doesn’t hold true with the current version.

Basically, the amount of time providing context and copy pasting schema in the window so that Copilot understands the database design isn’t worth it. The golden rule of being a developer is never copy paste code from the internet. So why would be do the same with Copilot. It’s going to give a one size fits all solution the majority of the time and when its wrong its going to give a suggestion that doesn’t make any sense whatsoever. It can cause more harm than good.

Not to mention the fact that the copilot limits the developers learning curve. Imagine releasing code that was written by AI and having no clue how to troubleshoot it when it goes wrong. The code you deploy should be rewritten by you even if the framework was provided by AI and then it needs to be reviewed by another team member to catch what you may have missed. So is Copilot ready for SQL Server, short answer is no. It can be a great tool to help document the code and maybe even help really new developers ramps up quickly. It cannot be the default go to solution for anyone who is serious about coding for SQL Server. Most problems in SQL have the answer “It Depends” and right now the AI isn’t smart enough to understand what are the factors that affect good querying.

Should you wait? No! its going to be a while by the time the bugs are worked out , in the meantime there is no reason why you can’t play around with it. For now, treat Copilot as the manager in your company who thinks they understand what’s going on but actually do not. More often than not you will be spending more time trying to explain what to do than actually getting things done.