ハマログ

株式会社イーツー・インフォの社員ブログ

Github Copilot Labs

GitHub Copilotスゴイ

控えめに言って神。
最近「神」という言葉が形容詞として多用されてインフレしてしまったお陰で神という言葉では伝わらないかもしれない。
コメントを書いただけでソースコードの候補を次々と提示してくれるスゴイAI。私はタブキーをポチポチ押すだけでプログラムが出来上がる。
プログラミングがタブキーを押すだけの簡単なお仕事になりつつあり、在りし日の自分が必死になってアルゴリズムやデザインパターンを覚えていたのが塵のように感じる。(嘘。プログラミングわかってる人ほど使いこなせる機能だと思う)
でも今やEテレで子供相手にアルゴリズムを教える時代だもんな。しめじソートとか驚愕したもん。
俺の子供の頃はピンポンパン体操踊ってりゃ良かっただけなのに。

Github Copilot Labs

さて本題。
Github Copilot LabsはCopilotの新しい実験的な機能群。
公式サイトでもまだプロトタイプと位置づけられている。
今のところ機能は4つ。
1.コードの説明(EXPLAIN)
2.コードを別言語に変換(LANGUAGE TRANSLATION)
3.コードのブラッシュアップ(BUSHES)
4.テストコードの自動生成(TEST GENERATION)

何に使えるかというと既に出来上がっているシステムを保守するときに使えそう。
コードの説明機能を使って理解の手助けをしてもらい、テストコードを作成し、ブラッシュアップの機能でコードを読みやすくする。
他人の書いたコードというのは仕様も意図もわからない事は往々にしてありこれが省力化できるなら期待したい。
ちなみに公式のBrush機能の一例

使用前
function ascending(a, b) {
    return a == null || b == null ? NaN : a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;
}
使用後
function ascending(a, b) {
    if (a == null || b == null) {
        return NaN;
    } else if (a < b) {
        return -1;
    } else if (a > b) {
        return 1;
    } else if (a >= b) {
        return 0;
    } else {
        return NaN;
    }
}

「こんな三項演算子のカタマリみたいなコード書くやついないだろ!」という突っ込みが入りそうだがこんなの序ノ口、序二段ぐらいなものだ。
現実にはもっと酷いコードが世界中で跳梁跋扈しているのでGitHub Copilot本体にこれらの機能が統合されて欲しい。

  at   2023年4月24日


関連記事

廃棄予定のmacbook air を分解してみた

どうも!最近引っ越した宇都宮です! 宇都宮はWindowsしか経験がなく mac…

AWS内部のEC2サーバからメール送信する際のIPアドレス逆引き設定

はじめに AWSのIP逆引き設定に苦労したのでメモ。苦労した原因は、知識&事前調…

ssh config

最近自宅でMacを使うようになって、お勉強用のサーバーにSSHログインする時に …


← 前の投稿

次の投稿 →