A Month With GitHub Copilot

A Month With GitHub Copilot

Tutorials ai coding tools github copilot vscode

I finally got off the GitHub Copilot waitlist about a month ago, and I've been meaning to write about it since, mostly because I keep flip-flopping on how I feel about the thing. Some days it feels like actual magic. Other days I want to throw my laptop into the sea.

For anyone who missed it, Copilot is the AI autocomplete tool GitHub shipped as a technical preview back in late June, built on top of OpenAI's Codex model. You install it as a VS Code extension, it reads the file you're working in (and apparently some surrounding context too), and it suggests whole lines or entire function bodies as you type. Not just "here's a variable name," but "here's your whole for loop, done, go ahead and hit Tab."

The first time it actually got a whole function right on the first try I laughed out loud at my desk. I was writing a little Python script to parse a CSV of expense data and Copilot just... wrote the parsing logic, correctly, including the part where it stripped dollar signs out of the amount column before casting to float. I didn't ask it to do that. It just knew, presumably because a thousand other people on GitHub have written that exact same script before.

But then there's the flip side. I asked it to write a regex for validating email addresses and it gave me something that looked plausible, compiled fine, and was subtly wrong in a way I only caught because I happened to test it against an address with a plus sign in it. That's the part that worries me a little. The bad suggestions dont look bad. They look exactly as confident as the good ones. You cant eyeball your way to trusting this thing, you actually have to read what it wrote every single time, which cuts into how much time it actually saves you once you factor in the review overhead.

There's also been a real argument brewing online about where all this training data came from. Copilot was trained on public GitHub repos, which includes a whole lot of GPL and other copyleft-licensed code, and there have been reports of it spitting out chunks of code that are recognizably, almost verbatim, lifted from specific open source projects, license headers and all in a few documented cases. I don't have a tidy opinion on how that shakes out legally (I am not a lawyer, obviously) but it's the kind of thing that makes me want to keep Copilot switched off for anything at my day job until there's more clarity, and only use it for side projects and toy scripts for now.

Random aside: this has been an absolutely chaotic couple of weeks for tech news generally, what with Apple announcing it's going to start scanning photos on-device for CSAM before they upload to iCloud, which set off a huge fight between security researchers and privacy advocates on one side and child safety folks on the other. Not really the same topic as Copilot at all, but it's put me in kind of a heightened headspace about "AI quietly doing things to my files in the background" as a category, which maybe made me more suspicious of Copilot's suggestions than I otherwise would have been. Funny how that works. Two unrelated stories start bleeding into each other in your head.

Anyway, practical notes if you're on the waitlist and waiting for your invite. It's genuinely best for boilerplate: test scaffolding, repetitive data transforms, regex (with the caveat above), config file generation, that kind of thing. It's much less useful once you're doing anything with real business logic specific to your codebase, because it's guessing based on patterns from public repos, not your actual architecture. It also has zero idea about your internal libraries unless you've already written enough calls to them in the same file for it to pattern-match off of.

One small complaint that's purely aesthetic: the ghost-text suggestion styling in VS Code is just a slightly dimmer gray than the syntax highlighting, and on my monitor at 11pm with the lights off it is genuinely hard to read. I've had to bump my terminal brightness up a notch just for this. Tiny thing, but it's the kind of tiny thing that adds up over an eight hour day.

Free during the technical preview for now, no idea what the pricing looks like once (if) this comes out of preview. I'll keep using it on my personal stuff and report back if my opinion swings hard one way or the other.