はじめに
今回、Progakuのアドベントカレンダー初日の記事を担当しました。
Prgakuというプログラミング学習コミュニティに関しては下記を参照してください。
2023年もそろそろ終わりを迎えようとしていますが、僕が今年一番業務上で大きく変化があったのがChatGPTやGitHubCopilotというツールの使用し始めたことです。
まだまだ自分も使い始めたところで探り探りな状態ですが、自分の普段の使い方を記していきます。
ChatGPTについて
ChatGPTに関してはおそらく既に多くの方が使っているかと思います。
自分は先月課金し始めましたが、僕自身使用率が高いわけでは無いので無料でも良いかなっと思っています。
使い方としては、
1.コードのリファクタリング
「なんかしっくりこないな」とか「もう少し良い書き方出来そう」ってコードが出来た時に、コードを載せてリファクタリングしてもらうように依頼しています。
2.エラーの解決
「ググる」という行為はChatGPTに移行したと思います。
勿論、ドキュメント読んだりもしますが、初手はChatGPTに書くのが定番となりました。
初めにChatGPTに聞いて、レスポンス返ってくる間に自分でも調べてみるって流れです。
3.ド忘れしたことを聞く
このオプションってどんな記述だっけ??
pg_restoreのコマンドってどう書くっけ??
みたいに知らない訳じゃないけどふと使う時に覚えてないみたいなことをよく聞きます。
個人的にはこれが一番割合高いんじゃないかなと思います。
ただ、これもGitHubCopilotを導入してから少し頻度が減った気がします・・・
GitHubCopilotについて
こちらは気にはなってたんですが腰が重くて導入してなかったのですが、コミュニティメンバーのライブコーディングを見て先月導入し始めました。
正直、使用感は個人的にとても良いです!
とはいえ、まだまだ使用歴が浅いので使いこなせてる感はそこまでかもですが、下記に自分が便利だと思ったことを記していきます。
1.コメントを記載するとコードを提案してくれる
コメントをつけるとそれに沿ったコードの提案をしてくれます。(下記gif参照)
2.メソッド名からコードを察してくれる
Userモデルにfirst_nameとlast_nameというカラムをもっていたとして、フルネームを取得するメソッドを作ったデモです。
この例は少しコードのクオリティは微妙ですが(汗)、「def full」と「first_name」を打つだけで保管してくれるのはすごいと思います。
ここら辺はもっと使っていけば精度も上がってくるんじゃないかなっと。
後は、テストやマイグレーションファイルを書くときも結構役に立ってます。
導入してみた感想とまとめ
別に補完して貰わなくても書けるし
課金してまでは良いかなぁ
っと思っていた自分ですが、実際に導入してからは開発スピードがグンと上がりました。
単純なコードであればあるほど書くのが面倒くさいですが、AIを使用することによって自分のタイピング時間というのが減りました。
また、自分で考えるべき箇所に頭を使うリソースを避けるので、作業が楽になりました。
ただ、特に初学者の方に勘違いしてもらいたくないのは、あくまでこれらはサポートツールとして使わないといけないです。
前提として補完されたコードが何書いてるかわからないとか、動いたから良いよねみたいな事は絶対にNGです。
そこさえ気をつければ、エンジニアの皆さんは積極的に導入していくと良いんじゃないかなと思いました!
企業によっては会社アカウントで使わせてくれるみたいですね〜
ここまでAIを褒めちぎってきましたが、AIによってエンジニアが不要になるとか、仕事奪われるみたいな話もSNSで見かけますがそれに関してはまだまだ難しいんじゃないかなって思います。(この話はまた別記事にでもしますかね)
ここまでご購読いただきありがとうございました!