独学でプログラマーになれる人はどんな人?自分にもできる?

program プログラミング

プログラミングを独学で学び始めたいけど無理そう、あるいははじめてみたけどやっぱり無理だった。

独学でプログラマーになれるのはどんな人なのか?という疑問に答えていこうと思います。

ずばり作るのが楽しいと感じる人

実際にプログラミングの学習をはじめてみて何かを作った時に楽しいと感じることができるかどうかだと思います。

正直、実務でも何かを作る時はもちろん一人で組んで動かすのでうまく動いた時の楽しさみたいなものがないとやってられないと思います。

大規模なプロジェクトになると自分はよくわからない小さな部品の担当になってしまうかもしれませんが、それでもこうしたらこういう結果が返ってくるというものを正しく作れる楽しさはあると思います。

この楽しさが無いと一時的にやる分にはいいですが、続けていくのがしんどくなっていくのは事実です。

できるから楽しいだけなんじゃ?

やっぱり楽しいと感じるにはある程度うまくできるということが前提だと思います。やっていて全く何も成功しない事って楽しくないですよね。

なのでプログラミングを学習するのであれば最も難易度の低い、ものすごく小さなことから成功体験を積むのが大事です。

いきなり超メジャーなロールプレイングゲームのようなゲームを作ろうとすれば200%挫折します。

何かを表示する、音を鳴らす、そんなようなところからコツコツと積み上げていけばOKです。

適性が無いので無理です

私には適性がないから無理なんだと諦めてしまうこともあるかと思います。では適性が無いとは具体的にどのような状態でしょうか?

さきほど書いた通り、何かを作ることを楽しいと感じない場合には確かに適性が無いと判断されるのかもしれません。

しかしうまくいかない、よくわからないくらいであればしっかり順を追って理解することで何とかなる場合が多いです。

初心者で挫折する人を見るとやはりいきなり何か大きなことをやろうとしてあり、順を追わずに部分的なことをやろうとしてよくわからない状態に陥っていることが多いと感じます。

RPGゲームが好きな人は適正があると思います

RPGってプログラミングで基本となるif文の理解が自然と身につくと思うんですよね。

例えばもし王様の話を聞いていなければ白の外には出られない、王様の話を聞いているなら白の外に出られるようになるみたいなことです。

ドラクエみたいにコマンド式の戦闘もプログラミングっぽい感じです。たたかうが選択されたら攻撃を行うとか、魔法が選択されたら習得済みの魔法リストを表示するとかですね。

このようにゲーム好きの方であればプログラミングの基本的なことって実は体感済みのはずです。なのでゲーム感覚でやってみるのも良いと思います。

逆に適性が無い人

プログラマーというのはほぼ一日中パソコンに張り付いているなんて日も多いです。

休みの日も新しく始まるプロジェクトに利用する技術の検証で一日パソコンに向き合うことになるなんてこともあるでしょう。

なので家に引きこもるのが耐えられない、パソコンの前にずっと座っているのが耐えられないなんて場合には厳しいかもしれません。

逆にインドア派・引きこもり派な方は向いてます。私もどちらかといえばそっち派です。

できなくても問題はない

仮にプログラミングの勉強ができなかったとしても、それで人生どうにかなるなんてことはありません。

やってみて、どうしても駄目なら他の道を探る方がよっぽど有意義だと思います。

それくらいの軽い気持ちでとりあえず勉強だけ始めてみて、いけそうなら続けてみればOKです。

たかがプログラミング、軽い気持ちでサクッとはじめてみましょう。

挫折を避けるには

プログラミングは習得したい!でも勉強の方は手詰まりでどうにもならない!という状態になってしまう方もいらっしゃるかと思います。

解決方法ですが、実はプログラミング中に起きた問題はほとんど検索で何とかなります。あとは何を調べればいいかに気付けるかどうかです。

例えばプログラミングで構文をミスると「syntax error」といった感じのエラーが発生します。

これは構文を間違えているということなので、例えば行末の;(セミコロン)を付け忘れているとか、if文の括弧を閉じていないとか構文自体が間違えているということです。

発生したエラーログのようなものを冷静に見れば、あるいはそのエラー文をそのまま検索するだけでも結構な確率で問題を解決できます。

例えばエラーも出ずに真っ白になるといった場合には「真っ白になる」とキーワードを追加して検索すればOKです。

まとめ

プログラマーになれるのは作るのが楽しい人と書きましたが、実のところ何かできるとほとんどの人は楽しいと感じるんじゃないかと思います。

後半に書いた通り失敗したってただプログラミングは合わなかったというだけのことですから、気楽に頑張ってみてほしいと思います。