プログラミングを学び始めた多くの人が、途中で挫折してしまう現実があります。
調査によれば、独学で学び始めた人の90%近くが途中で離脱し、6か月以内に挫折する人は85%、実用的なレベルに到達できる人は3%以下とされています【Techgym】【Stackademic】。
つまり「時間をかければ必ずできる」という単純な話ではなく、長時間努力しても実用レベルに届く人はごく少数であり、そもそもほとんどの人は続かないのです。
もちろん継続が難しいのは何もプログラミングに限ったことではありませんが、中でも継続が難しい分野であるという見方が一般的です。
プログラミングはどうして継続的な学びが難しいのか。
大きな要因の一つに「モチベーションの維持が難しい」があります。
特に実用的なレベルとなると、完全初心者から果てしなく遠い目標です。(画面に「Hello World!」と表示がされても、学びのモチベーション維持にはつながらないでしょう)
学び初めてから当面の間は、目に見える成果は感じにくいのがプログラミングの世界であり、特に忙しい社会人が貴重な時間を割いてまで、勉強し続けるのはやはり至難の業と言わざるを得ないのでしょう。
というのも私自身がまさにこのような状態だったのですが、AIに触れるようになってから状況は一変しました。果てしなく遠くにあったプログラミングの世界が、まるで向こうから近づいてきたようなそんな感覚になったのです。
この記事では、そんな私の経験をもとにプログラミングにおけるAI活用について、少し紹介したいと思います。(あくまで初心者向けのブログ、記事になります)
AIを活用するメリット
すぐに「成果」を感じられる
個人的にはこれが一番重要です。
というのも、先ほど紹介したプログラミング挫折の最大ともいえる要因を真っ向から解決できるメリットだからです。
AIを使えば、自分の感覚的な指示を伝えるだけで適切なコードを返してくれます。だから、初心者でも数時間あれば「実際に使えるプログラム」が作れます。
最初は全然意味が分からなくても、とりあえず「できた!」という体験は、学習の継続に大きな力を与えてくれるはずです。
正解から逆算して学べる
AIが生成した完成コードを参考に「なぜこう書くのか?」を逆算的に学ぶことができます。
従来型の学びが“基礎から積み上げる”のに対し、AI活用は“動く正解例(しかもオリジナルのコード)から遡る”アプローチです。
学習において、正解から学ぶというのは決してズルではなく、本人の学ぶ意欲さえあれば、非常に効率的な学習方法になります。
エラー解決もサポートしてくれる
自分でもよくわからないものを作ってしまってエラーや問題が起こったらどうするの?という不安はあると思います。
そもそもAIは作るだけではありません。メール文章を校正して書き直したりしてくれるように、コードのエラーチェックもやってくれます。
AIにコードを渡して「こんなエラーが出たけどどうすればいい?」と聞くだけで、原因の推定や修正案を提示してくれます。
AIは信用できるの?
「普通の会話ですら時々ヘンテコな答えを返してくるAIに、複雑なプログラミングを任せるのは怖い」──そう思う人もいるのではないでしょうか?
しかし実際にはそれは 逆 です。
AIはそもそも存在自体がプログラミングです。
だからAIにとってプログラミングコードは、最も身近な言語つまり母国語のような存在です。AIは私たち人間が使う自然言語(日本語や英語など)をコードを介して理解し、そして自然言語に再度翻訳して回答します。
つまり、AIからしてみれば人間と普通の会話をする方がよっぽど難しく、逆にコードを生成してそのまま回答する方が、よほど簡単で正確なのです。
AIの活用をおすすめできる人とそうでない人
AI活用がおすすめの人
- 目的がプログラミングそのものではなく、その成果物にある人
- 成果を早く体験してモチベーションを維持したい人
- 独学で挫折した経験がある人
AI活用をおすすめしない人
- 本格的にエンジニア、プログラマーを目指す人(基礎力が必須)
- 「ゼロから自力で理解したい」という学習順序に強いこだわりがある人
とはいえ、よほどのこだわりがない限り、AI活用自体にデメリットはほぼありません。(コストも基本的にはかからない)
リスクと注意点
ここまでは、基本的にAI活用の良い面を中心に紹介しましたが、もちろんデメリット、というかリスクはあります。
AIは便利ですが、出力が常に正しいとは限らず、セキュリティや保守性に課題を含むこともあります。
最初のうちや本当に個人的に使うだけならAIに丸投げでも構いませんが、実務でしかも他人を巻き込んで使うようなプログラムであれば、丸投げはリスク管理を怠る無責任な行為になりかねません。
初心者がまず目指すべきレベル
- 全体の仕組みをざっくり理解できる(構文の中身まで理解する必要はない)
- AIに自分の意図を正しく伝えられる(AIに正しく伝えられるということは最低限の意味は理解できている状態)
あくまでこれは私の考えですが、別にコードは書けなくてもいいと思っています。AIというある意味最強のプログラマーがいるわけですから、我々初心者の当面の目標は「コードを読めるようになること」でいいと思います。
まとめ
項目 | 従来の独学・教材中心 | AI活用型学習 |
---|---|---|
実用的なコードに到達 | 100時間以上 | 数時間〜数日 |
挫折率 | 85〜90%が途中でやめる | 成果体験が早く継続しやすい(個人の感想) |
学び方 | 基礎から積み上げ | 正解例から逆算 |
エラー対応 | 自力で検索・調査 | AIに相談して即解決 |
おすすめ対象 | 本格的にエンジニアを目指す人 | 成果物を優先したい人 |
- 従来型の学びでは、実用に到達する前に9割が挫折
- AIなら、初心者でもすぐに「動く体験」ができ、逆算的な学びが可能
- 本気で勉強したい人にとってもAI活用はデメリットがなく、むしろ効率的
- 丸投げはリスクがあるため、全体をざっくり理解する姿勢が大切
- 個人利用のレベルならAI活用は圧倒的におすすめ
AIは使い方次第で「最高の部下」にもなり「最高の上司」にもなります。
素人こそAIを味方にすべき時代だと思っています。
出典・参考データ
- Techgym「独学プログラミングの挫折率は85%以上、実用レベル到達は3%未満」
https://techgym.jp/column/dokugaku/ - Stackademic「Why 90% of People Quit Learning Programming」
https://blog.stackademic.com/why-90-of-people-quit-learning-programming-ca1170abc241 - STEM Education Journal「MOOC completion rates」
https://stemeducationjournal.springeropen.com/articles/10.1186/s40594-020-00222-7
コメント