My thoughts on Github Copilot.
I've been using Copilot in my main editor for several months now, and rarely press Tab to accept its suggestions. This usually only happens when I type descriptions, not code. Anyways, I found it helpful, but risky. Let's take a closer look at why.
GitHub Copilot? I'm open, but it is not there yet.As an AI enthusiast, I foresee a future where the majority of "coding jobs" will involve guiding engines to do the heavy lifting, changing programming into prompting! 🚀
However, my experience with Github Copilot as my "pair programmer" left much to be desired. Some of its suggestions were way off the mark, not in terms of language syntax but in terms of adding real value. It sometimes created a tangled mess of code, resembling a bowl of spaghetti! 🍝
Compared to simpler online versions of chat-GPT (and models trained on specific content), Copilot's prompting capabilities fell short. It didn't reduce my need to search for documentation or check Stack Overflow. However, I did find it quite useful for straightforward and repetitive tasks. It excelled at generating switch blocks with predefined options or typing out descriptions in plain English. Those were smooth sailing! ⛵️
But let's be real, Copilot didn't make the cut for me. It lacked the bigger picture thinking that proposes a solution instead of working inline. It was too easy to fall into the trap of WET code (opposite of DRY - Do Not Repeat Yourself). Sure, it's tempting to hit that Tab key, but it often leads to wasting time for code review. I prefer being in control when it comes to deciding when proposed code blocks popups to accept or escape. ⏸️
That being said, I believe GitHub Copilot shows promise as a feature. Perhaps the recently announced Copilot-X will be the breakthrough we've been waiting for. Only time will tell! ✨