## The "Copilot pause"
Two weeks ago, I was working from a coffee shop using their unsteady WiFi (Please always use a VPN like [Proton VPN](https://pr.tn/ref/JJVN0C3TVQBG)). From my editor, I realized that [GitHub Copilot](https://github.com/features/copilot/), one of the top code-generation assistants, was disabled due to connectivity issues.
I continued working, but finally realized that I was pretty much waiting for Copilot's suggestions after every few keystrokes, aka the "Pause effect".
> It struck a chord within me; I had been turned into an AI-generated code reviewer.
Without Copilot enabled, I was feeling slow and rusty, as if I had lost some of my knowledge and skills.
## Copilot pitfalls
Do not get me wrong. Using Copilot is extremely valuable if used properly, and I will continue to use it. It shines for generating boilerplate code from replicable patterns, especially when using typed languages that provide accurate context.
But I would argue that it requires real skills to avoid what are, to me, the two major pitfalls.
### "Looks Good To Me", aka LGTM
The major improvement in the quality of AI-generated code paradoxically leads to novel issues.
> Spotting issues in generated code when it is bad is easy, but when it looks good, it gets tricky.
I have recently found myself detecting problems later than I would have if I had written the code myself, making them harder and longer to fix. And I do not even mention the risk of introducing security flaws...
### Laziness
More importantly, Copilot made me lazy.
Before Copilot, when I didn't know how to do something, I would most of the time do the right thing. Not just look up an existing answer and copy-paste from Stack Overflow, but do my homework, shut up and [RTFM](https://en.wikipedia.org/wiki/RTFM), and learn by doing it myself, evaluating my results against what others have already done.
> Now I do not even have to copy-paste, and I have started to accept suggestions with less vigilance.
## Copilot fasting
Later, I realized that this "Pause" effect was experienced by other users. Looks like experienced professionals converge to similar conclusions and recommendations:
- Own it, do not let it drive your flow
- Deeply understand your tools
- Consider it a good practice to regularly disable it
I am currently experimenting with this intermittent "Copilot fasting", disabling it for a day now and then.
> I was one of the earliest users of GitHub Copilot, and the hard truth from this experiment is that I am incredibly addicted.
But fasting seems to have a positive impact on me, so I will try to make it a weekly habit.
IMHO, with brand new "Copilots" landing in almost every application we are using daily, being able to identify the positive and negative impact they have on our behavior is going to become a real skill that should be practiced and probably taught, as it will ultimately affect how fast and how much somebody can learn and grow.