Trying Out GitHub Copilot: One Week In

My first experience with GitHub Copilot last week was surprisingly positive. It quickly adapted to the coding style of our project, which was a great help. The chat feature powered by GPT-4 engine proved to be incredibly useful for generating boilerplate code, such as file handling, setting up Redis connections, writing database transactions, and making HTTP client calls. You can ask it to explain a function, and it does a pretty good job of summarizing its purpose. Additionally, Copilot is handy for writing basic unit tests.

However, there were some significant issues that caught me off guard. For example, I encountered a problem when I asked Copilot to refactor a section of code that involved acquiring and releasing a lock using a deferred function. Instead of preserving the defer statement, it removed it and released the lock immediately after acquiring it. Despite attempting it multiple times, Copilot insisted that this was the correct approach.

With the rise of AI many jobs do not feel secure not to be replaced. People try to guess what will happen and gamble their career on that. However there are some fundamental questions need to be answered before asking will AI replace codes? When current AI is just a bunch of statisitcal methods who even theirmain inventors can’t explain how it really works under the box people make big claims about the future.  I belive everyone should read hilbert mechanical theorem machine and godel incompleteness before making such statements. After that people should really try to understand what this GPT model is doing, not to work with it. People should really think what is “thinking” before claiming AI can think or not! Another important question is how much of the tasks we humans do everyday in our lives require thinking!

After all, there are many YouTubers who create content about this trendy question. It seems similar to the question, “Do we live for eternity after life?” Some people who claim to have news from the afterlife gain followers based on their answers (or guesses) to this complicated question. This is not the type of question I’m interested in as an algorithmist/mathematician.

Now that you are here, this is a nice article about Go pointers which you cannot get from any generative AI! At least for now.