GitHub Copilot が手放せなくなりました。( in VS Code)


先日フリー版が公開された GitHub Copilot。私のコーディングには欠かせない存在となりました。

https://github.blog/news-insights/product-news/github-copilot-in-vscode-free

これまではChatGPTやVS CodeにGenie(GPT-4o)を組み合わせてコーディングを行ってきました。しかし、これらのツールにはいくつかの課題がありました。例えば、一度に指示できる情報量に限りがあるため、思い通りの結果を得るまでに何度もやり取りを繰り返す必要がありました。また、指定した範囲外のコードについては考慮されず、文脈にそぐわないコードが生成されてしまうこともありました。結果として、できるだけ多くのコード、あるいは関連するコードを全て情報として与える手間が発生していました。

しかし、GitHub Copilotはこれらの課題を一気に解決してくれました。 私の曖昧な指示でも、まるでベテランエンジニアが隣でサポートしてくれているかのように、良い感じのコードを提案してくれて、提案されるコードは単に正しいだけでなく可読性も良い感じです。

ワークスペース内のファイルを参照しながらの回答

ワークスペースのフォルダ、ファイルを参照しながらの回答するためにチャット欄にファイルを追加します。

ワークスペースが大きくなければ**@workspace**でワークスペース全体を考慮した回答・提案が得られます。

<上の続き>コードの機能や用途も説明してくれます。

とにかく**@workspace**キーワード

プロンプトでキーワードを使うことはGitHub Copilotのドキュメントにも記述がありますが、記述はシンプルで私は重要性に気が付いていませんでした。
そもそもGitHub Copilot Workspceのサービスの事と混同していました。
https://github.blog/jp/2024-04-30-github-copilot-workspace/

https://docs.github.com/ja/copilot/using-github-copilot/asking-github-copilot-questions-in-your-ide#using-keywords-in-your-prompt

Visual Studio Codeのマニュアルには注意点含めて記述があります。

https://code.visualstudio.com/docs/copilot/workspace-context

GitHub Copilot最大の恩恵は集中力の維持

どんなにすごいコードが手早く得られたとしても、正直なところコードを得られた嬉しさは大きくありません。趣味で触る以上、結果より過程や得られる知見の方が大きいからです。以前は分からないことを調べているうちについ関係ない記事やSNSのリンクをたどり集中力が切れて、モチベーションも下がる…という悪循環に陥りがちでした。もともと集中力が長続きしないタイプなので、対処が必要でした。

しかしGitHub Copilotでコード・IDEから目を離すことが極端に少なくなり、集中できています。エラーへの対処、OSSやライブラリの読解などがVS CODEだけで解決できるのは本当に助かります。

有料版必須か

現在はエディタ画面内に収まる簡単な修正であれば、Genie(GPT-4o API)も併用しているためCopilotはフリー版で事足りていますが、このペースだとすぐに制限に達してしまいそうです。(近いうちに有料版への切り替えが必要そうですが、モチベーションが維持できるなら価値はあります。まずはブロックされるまで使っていきたいと思います。