プログラミングは文系には無理?才能や素質がある人にしかできない?

trouble プログラミング
プログラミングを始めたいけど文系の私には無理かなぁ…やっぱり理系で数学を専攻している方が有利ですよね?
こんな疑問にお答えします。

いきなり結論

文系でもOKです、まわりにも文系の方は結構います。

かくいう私はwebエンジニア歴10年以上で、高校こそ確かに理系を選択しましたが数学ができたわけでもないですし、むしろ今数学なんて何もできません。

それでも仕事は十分できているので文系でも大丈夫だし、理系で数学を専攻していなくてもプログラミングはできると断言します。

とはいえ一点だけ注意なのはビッグデータの活用や統計分析など特殊な分野の研究を行いたいのであれば数学というか数字方面に苦手意識があると難しいでしょうね。

ゲーム理論

これは私の持論ですが、文系か理系かなんてのはどうでもいいですが、ゲームが好きかは結構重要な要素だと思います。

ゲームが好きで効率的にゲームを攻略していくことが楽しいと思える人はプログラミングに向いています。

何をどうした時の数字がこうで、その時の結果がこの数字だから一番効率の良いやり方はこれだ!

数学できるかなんかはどうでも良くて、この効率の良い方法を数字という観点で捉えてそれを実行できるかが重要なんじゃないかと思っています。

ロールプレイングの例
モンスターA:経験値0100:倒すのにかかる時間01分
モンスターB:経験値1000:倒すのにかかる時間30分

これだったら一見経験値の多いBを倒す方が良いように思うけども、同じ30分でAを30体倒した方がトータルの経験値は3000で3倍効率がいいな。

プログラマーに向いているのはこのような時間効率も踏まえた考えが好きな人だと思います。

才能や素質が必要か?

正直な話、適正のようなものがあるのは事実だと思います。私がプログラミングの学校に通っていた時にも、クラス30人のうち、半分以上はプログラミングに挫折していたように感じました。

こればっかりはやってみて楽しいと思える場所があるかどうかなんですよね、わかりやすい例でいくとスポーツと同じだと思います。

私はサッカーが好きで小中高とずっとサッカー部でしたが、他のスポーツは部活としてやるほどは好きになれなかったわけです。

挫折していく人の特徴はおそらく何をやっているかわからないから無理、楽しくないといったことが主だと思います。

基本を飛ばさない

もしかするとわかれば楽しいかもしれないのに、何をやっているかわからないから無理という具合に諦めてしまった場合には注意が必要かもしれません。

足し算もやらずに掛け算を始めているようなもので、何をやっているかまったくわからないものというのは楽しくないものになってしまうものです。

  • いきなり壮大な完成品を作ろうとして何をすればいいかわからず立ち止まっている
  • 調べたコードをコピーして動きはしたけど何がどう動いているかはわからない

このように基本を飛ばしていきなり応用編に進んでしまうと、何をやっているかわからずに挫折してしまう可能性が高くなるように思います。

文系の人は何から始めるか

start
さんざん言ってきた通り文系かどうかはあまりプログラミングの勉強に関係はないんですが、あえて文系の人が何から始めればいいかを考えてみます。

やりたいことがあるならそちら優先でやってみればOKです。webサイトが作りたいなら作ればいいし、スマホアプリが作りたければ作ってみればいい、失敗したらそれはそれでわかることがあります。

まずゲームをほとんどやったことがないなら面白そうだなと思うゲームをやってみること!
え?という声が聞こえてきそうですが、上のゲーム理論でも書いた通りここすら楽しめない人は多分ほぼほぼ向いてないです。

次に無料ブログでいいので何か適当なブログを始めてみること。
アメーバブログでもなんでもいいです、誰も見ないようなしょうもない記事でいいのでブログ運営を体験してみてください、どうせ全部無料でできることなので。

簡単なwebサイトを作ってみる

ここまでやったら簡単なwebサイトを作ることをゴールにして行動してみたらいいと思います。プログラミングを学ぶ上でwebサイトを作るのが一番難易度が低いです。

手順としては以下の様な形ですね。

  • HTML・CSSの勉強
  • JavaScript・jQueryの勉強
  • PHPの勉強

HTML・CSSは無料でもある程度使える学習サイトで簡単に勉強できます。以下の記事で実際に試してみたので参考にしてみてください。

web

【全部無料】HTML&CSSの学習方法(入門編)を試してみた【初心者向】

2019年6月24日

JavaScript・jQueryに関しては勉強というよりもやりたいことが出てきたらその都度やり方を調べるでいいかなと思ってます。

例えばトップの画像をスライダーで移動させたいとか、画像をクリックで拡大させるモーダルを利用したいとかですね。なので最初は意識しなくてもいいかも。

PHPあたりからいよいよプログラミングになってくるので挫折率が上がってくるかもですね。とにかく簡単な入門編から始めましょう。

無料で使える学習サイトでも入門編の書籍でも何でもいいです、自分の好きな方法で始めてみましょう。

なんでwebサイトを作るの?

なんでwebサイトなんか作らなきゃいけないんだ…

そう思ったあなたは他に作りたいものがあると思うんで、ぜひそちらに挑戦していただいて大丈夫です。

私がwebサイトをおすすめしたのは一番簡単な部類だからなんですよね。

実例
同僚のアプリエンジニアにPHPでwebサイトを作らせてみたらいとも簡単に作成できてました
一方で同僚のwebエンジニアにアプリを作らせてみたら難しくてまともなものが作れませんでした

これくらい難易度が違うものなんですね、なので最初は一番簡単なものから始めるのがいいかなと思った次第です。

最初に始める言語で失敗を避ける方法は以下の記事でも紹介しています。

programming

絶対に失敗しないプログラミング言語の選び方【3つの失敗を避ける】

2019年6月16日

プログラミングなんてただの手段です

あなたが色々頑張ってみた結果、どうしてもプログラミングは好きになれないな、やっていても楽しくないなと思ったのならさっさと諦めてしまうのも手だと思います。

ハッキリ言ってプログラミングなんてただの手段なんですよね。何か実現したいことがあって、その為の手段の一つがプログラミングというだけです。

例えばゲームを作りたくてプログラミングを始めたけど難しすぎて挫折した→そういうことであればツクールシリーズを使ってゲームを作ってみることだってできるわけです。

プログラミングを覚えて在宅で仕事がしたかったけど無理だった→在宅でできる仕事なんてプログラミング以外にもライティングからイラストから色々あります。

誰にでもできることは書くこと

プログラミングを覚えようとした理由がもし在宅なりでいくらかの副業収入を得たかった、ということであれば誰でも始められる書くこと=ライティングが一番手っ取り早いです。

ランサーズなどで細かなライティング案件で小銭を稼いでもいいんですが、おすすめはブログを始めることです。

ブログと言っても本当にただただあなたの日記を世界に垂れ流すだけではもちろん一円も稼げません。ポイントは自分が困ったこと・つまずいたことを解決した体験を記事にすることです。

プログラミングの挫折率は90%と言われていますが、ブログを書きはじめることは多分誰にでもできるレベルです。