転職や副業を考える中で、エンジニアを目指す方やプログラミングを覚えたいと考える方は多くいらっしゃると思いますが、
ChatGPTといったAIの登場で、プログラマーはこれから生き残れるのかと不安に思う方も多いのではないでしょうか。
逆に、ここまで教えてもらえる環境が整ったのであれば、自分で学んだ方がいいのかなとも…
そうなると、「大金をはたいてスクールに通う意味がないじゃないか…」と考えがちですよね。
というわけで、今回はプログラミングスクールの必要性を考えてみようと思います。
不安の発生源は何か
不安の発生源はズバリ、ChatGPTの出現により”手につく職業”として考えられていたプログラマー、エンジニアの立場が危うくなるのではないかという点にあると見ています。
処理内容をどう書けばいいのか具体的に指定すると、サンプルコードを数十秒でつくってくれる時代となったわけですから、余計にそう思いますよね。
しかも、場合によって注意事項までつけてくれるんですから、これだけありがたいことはないなと思う一方で、プログラマーの仕事って残るのか…と不安にもなるわけです。
※サンプルコードでいうと、カード情報がハードコーディングされているので、セキュリティ面も鑑みてデータの取得を注意するように促されたり、他に必要な処理も教えてもらえます。
ChatGPTにJavaでカード決済のサンプルプログラムを書いてもらった例
お客様にあうカスタマイズをするためには技術力とコミュニケーション力が必要
一見すると、ものの数十秒でコードをつくられてしまったら、「プログラマーのやることないじゃんかー!」と打ちひしがれてしまいがちですが、ちょっと待ってください。
たしかにサンプルはAIがつくりますが、細かい要望を取り入れたモノづくりが出来るのは、直接コミュニケーションを取ることが出来る人間であり、それを落とし込むことが出来るのも人間です。
つまり、お客様に寄り添った画面や処理をつくるという意味において、技術力があるに越したことはないですし、まだまだやることはたくさんある。
逆にAIを活かして仕事のスピード感を上げることにより、質のいいエンジニアリングやコンサルティングを提供できるようになるものと思っています。
すると、次に出てくる悩みは「自分で学ぶかスクールに通うか」になってくるわけですが、実際にはどちらがいいのか、それぞれのメリットとデメリットを上げてみたいと思います。
自己学習のメリット・デメリット
自己学習のメリット
- 自分のペースで学ぶことができる
- 自分で調べながらやれば費用を掛けずに進められる
自分のペースで学べるというのは大きなメリットで、自分でサーバーを組み、GoogleやChatGPTを使ってコーディングを学んでいき、テストを繰り返すことでスキルを上げていくということが出来ます。
ある程度のスキルに到達したなと思った段階で次に考えるのは、仕事の獲得です。
クラウドワークスなどのサービスを使って、細かな仕事から対応していき、徐々に信頼度を上げていく。
そうすることで、ゆくゆくは単価の大きな案件を獲得していくというのがロードマップでしょうか。
「学び⇒仕事の獲得」までを自分の力で進められる人にとっては、わざわざプログラミングスクールに通う必要がないでしょう。
どんどん突き進んでいくことを願うばかりです。
自己学習のデメリット
- 同じように学ぶ仲間と繋がりにくい
- 学んでいる内容が本当に正しいのか迷いやすい
- メンターがいないので、情報を整理しにくい
プログラミングスクールにいくと、同じ時期に入った同期はもちろん、卒業生ともつながることができるコミュニティに入ることが出来るところもあるので、仲間がつくりやすい分、困ったときに助け合える環境をつくりやすいです。
これは、実際に仕事をし始めてからも活きるところなので、とても大切なポイントですが、自己学習でやっていると、そういう環境がない分、仲間をつくりにくいです。
Twitterで仲間をつくるという手もありますが、どんな人なのか分からないフォロワーとつながるよりは、どんな人なのかが分かるコミュニティの方が何でも話しやすいですし、助け合いやすくなります。
このような環境をつくりにくいのが、自己学習のデメリットともいえます。
オンライン学習のメリット・デメリット
オンライン学習のメリット
最近のプログラミングスクールは、オンラインで受講できるケースが多くなっていますが、最大のメリットは好きなところで受講できるという点にあります。
「いつも自分の部屋でやってるけど、今日は気分が違うからリビングにしよう」とか、外に出てシェアオフィスに行こうとか、その時々で気分が乗りそうな場所をチョイスするということも出来たりします。
また、移動に時間が掛からないので、時間を有効活用できるようになるのもポイントです。
オンライン学習のデメリット
最大のデメリットといえば、モチベーションの維持が難しいところでしょうか。
私自身、通信教育で大学生をやっていた時期があるので分かるのですが、誰かが進捗管理をしてくれるわけではないですし、どれだけ進んでなくても咎められないので、つよい目的意識か楽しいという思いがないとつづけられません。
※実際に私が在籍していた大学の通信教育課程では、卒業確立20%程度でした。
プログラミングスクールが必要な人とそうじゃない人
ここまでの話をまとめると、プログラミングスクールが必要な人とそうじゃない人の違いが見えてきます。
それぞれ当てはまるポイントがどれだけあるかを見て、どうしていくと良さそうかを考えてみてください。
プログラミングスクールに入った方がいい人
- 基本的には自分で考えて進めるが、要所でメンターについてほしい
- プログラミングで困ったことがあったときに、助け合えるコミュニティがほしい
- 最短でプログラマーとして活躍できるようになりたい
わざわざ入らなくても大丈夫な人
- メンターがいなくても自分で考えたり調べたりして進められる
- プログラミングで困ったことがあったとき、相談し合える仲間がいる
- 実践で動けるようになるまで、多少時間が掛かっても構わない
プログラミングスクールを選ぶポイント
プログラミングスクールはどこで学ぶかによって、学ぶポイントが変わりますし、より自分が学びたい形を実現できる場を選びたいところです。
また、学び以外にもコミュニティに参加出来ることだったり、支払方法の違い、講師がどのような人なのかなど、判断要素が多くありますので、比較してもらえると幸いです。
スクール比較一覧
RUNTEQ | TechAcademy | CODEGYM Monthly | IT道場 | |
---|---|---|---|---|
費用 | 437,800円 | ◆はじめての副業コース 99,900円~ ◆エンジニア転職保証コース |
◆ライトプラン 24,970円/月 ◆スタンダードプラン ◆ビジネスプラン |
◆前払い(一括 or 分割) ◆ISA(就職後の支払) |
コミュニティへの参加有無 | 有 | 有 | 無 | 無 |
支払方法 | 一括 or 分割 | 一括 | 月払い | 前払(一括 or 分割)or ISA |
講師 | 現役エンジニア | 現役エンジニア | 現役エンジニア(経験歴 平均10.5年) | 現役エンジニア |
学習言語 | Ruby(Ruby on Rails) | ◆はじめての副業コース HTML/CSS3,JavaScript/jQuery,Photoshop ◆エンジニア転職保証コース その他、様々な履修コースあり |
学びたい言語を選べる | Java |
通学 or オンライン | オンライン | オンライン | オンライン | 通学 |
就職支援 | 有 | 有 | 無 | 有 |
RUNTEQ
TechAcademy
CODEGYM Monthly
IT道場
プログラミングスクールを利用しない場合の代替手段
UdemyやCourseraといったオンライン学習
プログラミングスクールにいかなくても自分で出来る!という方にとって学びになる先としては、UdemyやCourseraといったプラットフォームを使うこともオススメです。
Udemy:https://www.udemy.com/ja/
Coursera:https://jp.coursera.org/
また、お金を掛けなくてもYouTubeで動画チュートリアルを探すことはできますので、そういうところから学ぶというのもよいでしょう。
ただし、困ったときに誰かが教えてくれるわけでもなく、我流で解決しなければいけないというデメリットもあるので、TwitterなどのSNSで他のエンジニアとやり取りできるような体制をつくっておくのもいいですし、次に紹介するオープンソースプロフェクトで現場のコードを見るということも大切です。
実践的なプログラミングを身につけるための方法
何か新しいことをやったり、身に着けようとしたときに大切な考え方として守破離というものがあります。
茶道や武道で使われる言葉でそれぞれの言葉にこのような意味があるそうです。
破…他の師や流派の教えについても良いものを取り入れ、発展させる段階
離…一つの流派から離れ、独自の新しいものを生み出す段階
プログラミングを学びはじめるときには、まず師となる人を探す必要があり、それを見つけるためにオープンソースプロジェクトに参加するというのがオススメです。
GitHubやGitLabなどのプラットフォームに参加して、師を真似るというところからスタートすれば、おのずと自分独自の形を身につけることが出来るようになるでしょうし、コーディングの質もこなすスピードも高い水準を追い求められるようになることでしょう。
ここから先の未来はAIと共存できるエンジニアが勝つ
ほとんどのことをAIが出来るようになることで、人間の出来ることが減るのではないかと思いがちですが、AIがお客さんが求める100%をつくれるかというと、そうではありません。
細かいニュアンスや描いてるイメージに多少のズレは必ず出てきますので、ここの調整が出来るエンジニア、つまりコミュニケーションも取れてコーディングも出来るエンジニアが生き残っていくことでしょう。
制作プロセスとしては
1.AIに大方の形をつくってもらって、プロトタイプ作成
2.どうしたいかをヒヤリングしてカスタマイズ
3.納品
これからの時代は、1をかなり速いスピードでつくれるようになるでしょうから、2の段階でどれだけ速く仕上げられるかが勝負どころとなります。
この勝負どころで勝つためにプログラミングを学ぶわけですが、スクールに通うのか動画チュートリアルなどで学ぶのかはあなた次第です。
これからの時代で生き残っていくために、どんどん学んでいきましょう!