見出し画像

これで貴方もエンジニアに!!プログラミング未経験でもAIで爆速コーディング

半年前は開発者に依頼しないといけない"開発者依存"から、現在では自分でコーディングを行い、業務に反映できるようになりました。簡易的なコーディングから複雑な内容まで、AIをフル活用した開発術をご紹介します。
紹介する内容は、"プログラミングの理解度が全くない人"でも応用可能な内容になっています。

AIコーディングの背景

AI導入前

半年前の私は、Progateなどで覚えた簡易的なコーディングは自分でできましたが、業務で開発を行うとなると、最低でも1-2週間は必要でした。自分で開発するか開発に依頼するかだと、開発に任せた方が良い・・・という実力でした。

半年後の私

開発者に依頼することは、権限がない場合などの"どうしても依頼しない時だけ"になりました。開発側とコミュニケーションして要件定義をする時間がもったいないので、自分でコーディングしています。PythonとGASが得意と言えるようになりました。

AIコーディングするようになった背景

社内エンジニアが現場業務の理解度低く、都度コミュニケーションするのがコストと感じたからです。開発との"コミュニケーションコスト"より、自分で学ぶ"学習コスト"の方がコスパが良いと判断をして、AIを活用して自分で開発を行うようになりました。そんな私の開発術を紹介していきます。

step1."サンプルコード"を作成せよ

AIに簡易的なサンプルコードを作成してもらいます。サンプルコードは公式ドキュメントを参照して出力されるため、実行できるコードが出力されます。今回はサンプルとして、Google App Scriptを活用したメールの自動送付を実装していきます。

サンプルコード作成例:GASでメール送付

さっそくAIに指示をしていきます。指示内容は単純です。
「GASでメール送付するサンプルコードを作成して」と指示をすると、サンプルコードを簡単に出力してくれます。


出力されたサンプルコードで実行して動作することを確認します。
まずは、"こんなに簡単にメール送付するコーディングができるのか"と感じてもらうことが重要です。

コードの修正を指示

メールの送付先を修正したい場合もAIに指示をします。

2回の指示でここまでのコードができました。本を読んで学習したら間違いなく数時間かかっていた内容も2回のプロンプトで完了です。

コードの相談もAIに

自分が行いたいことをさらにAIに指示していきます。


エラーの修正もAIに

サンプルコードを実行した際にエラーが出力される場合があります。今回はあえてエラーを発生させるために、サンプルコードスプレッドシートのidを修正せずに実行します。

エラーが出力されましたが、エラー内容をAIにそのまま指示をします。


スプレッドシートのidをサンプルコードのままにしていたという点をAIが適切に指示をしてくれます。エラーの指摘も修正もしてくれるという点を理解します。

AIにひたすら指示

他にもどんどん指示をしていきます
「A2のセルに入力されているメールアドレスを取得して」
「取得したメールアドレス宛にメールを送付したい」
「A2から処理を開始して、データがNULLになるまで処理をして」
・・・・
自分が行いたい業務をどんどん指示していきます。

chat GPT3.5が推奨

chatGPT4やgeminiだと日々新しい情報を取り込むため、昨日と回答している内容が違うといったことがあります。GPT3.5は情報を新しく取り込まないため、動作の安定さがあります。また、コーディング方法がこの数年で大きく変化することは少ないので、基本的にはchatGPT3.5を利用しています。

理解を深めるために解説も依頼する

コードをそのまま利用することも良いのですが、コードの理解を深めるためにコード解説も指示をします。

丁寧に解説してくれています。

各コードが何をしているかを把握することで、修正する箇所も把握しやすくなります。

コードの理解はそこまでしなくて良い

ここまで紹介した指示の仕方の中で専門的なコーディングを必要としていません。ただ、日本語で指示をしているだけです。指示内容は、なるべくわかりやすく、AIが解読しやすいような内容を意識します。

step2.ライブラリを活用せよ

サンプルコードを作成する際に、様々なライブラリが利用されています。ライブラリとは、プログラミングでよく使う機能や部品をまとめたものです。工具箱のようなもので、必要な部品をサッと取り出して、プログラムを作ることができます。ここからは、Pythonを活用して説明していきます。

Pythonでライブラリの便利さを学ぶ

Pythonとは簡潔で読みやすい文法を持つプログラミング言語です。スクレイピングやデータ分析など簡単に作成することができます。GoogleトレンドのAPI接続なども簡単にできます。

Pythonのライブラリ例

Pythonは多数のライブラリがあり、それらを利用することで効率的な開発を行うことができます。

  • Pandas: データ操作、分析

    • Matplotlib: グラフ作成

    • BeautifulSoup: HTML、XMLの解析

    • Scrapy: 高度なWebスクレイピング

これらのライブラリを活用することで、様々な操作が簡単にできるようになります。

Google トレンドでトレンドワードを取得する

Pythonのライブラリを活用して、Google Trendデータを取得したいと思います。まずはライブラリの確認です。


複数のライブラリを提示してくれます。

Pythonでは様々なライブラリがあるため、メリットデメリットを整理して利用するライブラリを決定します。

Visual Studio Codeで実行

Visual Studio Codeは、Microsoftが開発したコードエディタです。Visual Studio Codeは、Microsoftの利用の仕方は、公式サイトからダウンロードして実行してみてください。どんなエディタでも大丈夫です。
早速、AIに出力してもらったコードを実行すると早速Google Trendの結果が出力されました。

ライブラリの選定が開発速度を大きく変える

開発速度のスピードアップはもちろん、ライブラリによって実行できることが異なります。特にスプレッドシートは、様々な操作が必要になりますが、認証が必要だったり、機能に差があるため、行いたいことを整理してからライブラリを選定する必要があります。

まとめまでしてもらえると、ライブラリの選定がしやすくなりましたね。
ライブラリ選定後に、実はそのライブラリでは行いことができなかったという場合もあるので、「スプレッドシートの指定た行数から行を追加したいがどのライブラリがよい?」というように、具体的にしてライブラリを選定しましょう。

step3.AIの間違いを指摘せよ

今までのサンプルコードは、確実に実行できるコードが出力されていきます。言い直すと、実行できないコードを出力させないようにしていきました。改修を繰り返したり、難易度の高い実装になってくると、AIの精度が下がっていきます。そんな時の対処方法を解説します。

AIが間違える理由

参考文献などの情報が少ない分野では精度が低くなってしまいます。例えば「GASでメールを送る」といった検索した時に、公式ドキュメントにサンプルコードがある場合は、正確な回答が出力されます。ドキュメントもない、サンプルコードがない、参考記事もないような場合は、AIの精度が下がります。教師データが少ない、もしくは正確ではない教師データをAIが取り込んでいる場合は、間違える可能性が高くなります。

AIにミスを認識させる

コードを出力させた時に利用できないメソッドが出力される場合があります。そのような時はAIに指摘をしていきます。

AIの理解度を把握

どこまで理解しているのかを把握するために、ライブラリで利用できる関数を出力させます。

AIに間違いを指摘する

出力結果で、すでに間違っている場合は、「ezsheetsのライブラリで利用できるメソッドは、”updateRow"です。"update_Row"はスペルが違います」「引数は2つまでにしかできません」というように指摘をしていきます。

正しく理解した後に出力させる

AIに間違いを指摘したあとに、修正内容を指示します。

AIが間違えたあとは、間違いを指摘して、正しいインプットをさせると、精度の高いコードが作成されます。
サンプルコードの作成、ライブラリの選定、コードの修正の仕方をここまで紹介させて頂きました。

step4.正しくできたらブログ記事化

ここからは行っても行わなくてもどちらも良いですが、個人的に行った方が良いと思っている内容です。

同じミスを他の人にさせない

AIが間違っている場合、同一チャット内であれば、修正ができますが、新しいチャットやスレッドの場合、同じようにAIが間違える可能性が高いです。同じミスを他の人にも行わせないために、ブログ記事として公開させることで、AIに正しいインプットをさせようと思っています。

正しくできたチャット or スレッドを活用

AIが間違えたが→修正→正しく実行できたチャットで、そのコードを記事化したいと指示をします。

これでブログ記事を作成してくれます。

作成したブログをAIの教師データに

ブログ記事にして公開することで、教師データの精度に協力するようにしています。AIの教師データになることで他の人が同じミスをしないようになって欲しいと考えています。

AIの参考記事になるメリット

参考記事とは、AIが出力したあとに表示される参考情報です。

今後、SEO記事の重要度が下がることは想像しやすいと思います。
ただし、AIの教師データになる参考記事の重要度は増していくと思います。
SEOの流入は下がるが正確なデータ⇒AIの参考の記事になる⇒リンクから流入する可能性は高いと思っています。
AIの参考記事になるということは、記事の有用性の権威性を主張できると思っています。

まとめ

現在のAIの活用術

今までの紹介した内容をおさらいします。

  1. 業務内容を指示

  2. ライブラリの把握

  3. ライブラリのメリット・デメリットを整理

  4. 利用するライブラリを決定

  5. サンプルコードを作成させる

  6. 実行

  7. エラーが出たらエラーを解読

  8. 修正を繰り返す

    • エラーが多い場合:

      1. AIの理解度を把握

      2. AIの間違っている解釈を修正させる

  9. 正しく実行できたらブログ記事化

これらを繰り返し行っていくうちに、「ここのコードが悪いことをしている」など、すぐに気づけるようになっていきます。

重要なのは全てをAIに依存しない

AIコーディングで必要なのは、人間の正誤判定です。正誤判定するときに、AIがずっと間違える場合は、自分で調べて課題を特定する地力が必要です。ドキュメントを読んで、サンプルコードを読んで・・・ということを繰り返すとコードの理解度が深まっていきます。

気が付いたら自然とコーディングを覚えていた

最初は、日本語の指示でしたが、だんだんやりたいことが高度化していくと、AIに認識を修正させたり、どこのコードがいけないかを明らかにしていく必要があります。その一連のプロセス自体が自分のコーディングのスキルを上げていることに気付いていきます。

最後に

AIの活用術としてコーディングを紹介しましたが、AIを頼ったとしても、全てをAIにさせることは不可能です。AIのコーディングには必ず修正させるための状況が発生するため、それらを修正させる地力は必ず必要になります。
重要なことは、正誤判定力、修正力で、それらを実行するためには、地力を身に着ける"努力"が必要です。
毎日AIを活用しまくり、参考情報を読み漁することで自然と地力が身についていきます。どんな時代も努力は必要になるので、AIを活用しながら、能力を飛躍させることがAIの活用だと考えます。

参考になったらイイネもらえると嬉しいです!

この記事が気に入ったらサポートをしてみませんか?