6
3

More than 1 year has passed since last update.

プログラミング初心者にもおすすめ!「Github Copilot」を半年程度使用して感じたメリット・デメリット

Posted at

はじめに

私はGithub Copilot を使用し始めてから、約5ヶ月が経ちました。
使用感をお伝えしていきます。

結論としては、以下になります。
・個人的には新しい分野を勉強する時の強い味方である
・プログラミング初心者や実務経験1~3年未満程度の方には学習効率を上げる効果が期待できる
・熟達したプログラマーには不要
・著作権や脆弱性の問題が示唆されている点を認識したうえで使用する必要がある

Github Copilot とは

GitHub Copilot では、コーディング時にオートコンプリート スタイルの候補を提示する AI ペア プログラマーです。 使用するコードを書き始めるか、そのコードに何をさせたいかを自然言語のコメントで記述することで、GitHub Copilot から候補を取り入れることができます。 GitHub Copilot は、編集中のファイルや関連ファイルのコンテキストを分析し、テキスト エディター内から候補の提示を行います。

メリット

自分の知らなかった記法を教えてくれる

これは初心者に向けた内容ですが、
自分が認知していない記法を提案してくれることがあります。
それが必ずしも適切で効率の良い書き方とは限りませんが、初心者にとっては勉強になるでしょう。

成長率が2倍近くなる?

Github Copilotは必ずしも適切なコードを提示してくれるわけではありません。
ただ、1つのメソッドや機能を作成する時に、 自分の考え以外の書き方を提示してくれることがあります。
下記公式サイトを見ればイメージがつかめるかと思います。

プログラムを書き始めて間もない人にとっては、
他者からのレビューを受ける前にある程度のレビューを受けられるので、経験値が倍増すると考えて良いかと思います。(2倍は言い過ぎかもですが)

新しい分野を勉強する時の強い味方

自分があまり経験していない言語やフレームワークを勉強するときに、大変重宝します。
よくある書き方が提示されることが多いので、ベーシックな書き方について知ることができます。

例えば、Go 言語を学習するときに、A Tour of Goをやっているとします。
下記のセクションをエディタで書いているとすると、、、

下のキャプチャのように Github Copilotが補完してくれます。
スクリーンショット 2022-11-20 9.46.40.png

上記のように、書籍やUdemyなどの教材に出てくる、サンプル的なコードは補完してくれる確率が高いです。
有名な教材であればあるほど、多くのひとが同じコードを書いています。
ですので、高い確率で補完してくれす。
写経したり、サンプルアプリを作っている時に、つまらないタイポを防ぐ効果があります。

さらに、サンプルアプリなどの退屈なコーディング(HTMLタグとかですね)を補完してくれるので、勉強のモチベーションを保つ効果もありました。

一方で、仕事でコーディングをしているときに、Github Copilotが提案してきたコードを採用しないことも多くあります。
しかし、提案されたコードを私たちは知覚しています。
そういった、見たことがある・なんとなく知っていることに関しては、心理的障壁が減るかと思います。
つぎに勉強や仕事の際にそういったコードに触れる機会があれば、スムーズに頭に入ってくるのではないでしょうか。

めんどくさい時にも助けてくれる

勉強や仕事で、何時間もコーディングをするときに、キーボードを叩くことすらめんどくさくなる時はないですか?

towfiqu-barbhuiya-7uHPhxZYQpY-unsplash.jpg

そういった時にもGithub Copilotは重宝します。

人間の集中力が切れてきても、Github Copilotは変わらずコードの提案をしてくれます。

ほかに例を挙げると、
テストコードのようなある程度書き方が決まっているものはGithub Copilotの得意分野です。
めんどくさい、煩雑なパターン化されているコーディングを助けてくれます。

デメリット

著作権や脆弱性の問題が示唆されている

Github Copilotが登場してからずっと指摘されてきた問題です。
詳しくは以下のニュースなどを参照してください。
こういった問題が存在することは認知しておきましょう。

繰り返しになりますが、
Github Copilotが提案してきたコードは以下の可能性があるので、それを認識したうえで使用してください。
・著作権を侵害している可能性
・脆弱性の問題がある可能性

思考の幅が狭まる?

これは私が感じたことでは無いですが同僚がGithub Copilot を使っていて、言っていた感想です。
Github Copilotが提案してくれるので自分で考える力が育たないかもしれません。

Github Copilotが 提案してくれるコードを鵜呑みにせず、自分で考える必要が ありますね。

お金がかかる

最初の2カ月間は無料で使うことができます。(2022年11月20日時点)
それ以降はサブスクリプション制度でお金を払っていく必要があります。

まとめ

Github Copilotを半年ほど使用してみて感じたことをまとめてみました。

冒頭にも述べましたが、以下が大きなメリットです。
・新しい分野を勉強する時の強い味方である
・プログラミング初心者や実務経験1~3年未満程度の方には学習効率を上げる効果が期待できる

コーディングが楽になるというよりかは、サポートをしてくれるというイメージが強いです。

Github Copilotにはデメリットもあるので、使用前に確認してください。

6
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
3