
いろいろ情報を探してみた結論は「やってみないと分からない」ということの様です
まぁ、数学が得意などの傾向はあるそうです。あと、優秀なプログラマーの特徴として「論理的思考、好奇心、学習欲、集中力、探究心、協調性」を持ってるというのがありましたが、、、それ、どの業界でも必要だからw
私は、プログラミングに向いている方かな、と思っています。といってもスーパープログラマーとかではなく、1~10点で評価したとして(1は全然向いてない、10は超向いてる、5が普通)、6~7ぐらいですかね。なんとなーく向いてるかなって感じです
大学時代は情報系でしたが、プログラミング授業の内容は全く頭に入らず、友人のプログラムをコピーしてちょっと修正したものを課題で提出していました。もちろん、先生にはバレてましたが、半分ぐらいの生徒は同じことをしてました
パソコン好きな人が集まる所でさえ、半分ぐらいの人は挫折するそうです。まぁ、私が大学だった頃は、「目新しさ」「将来なにかいいことありそう」という感じの人々が多かったですね。まだ、プログラマーは人気職になっておらず、年収も未知数な時代でした(西暦2000年ごろ)
プログラミングに挫折して、その後全くプログラミングを触ることはなかったのですが(卒業後の最初の職は営業職でした)、大学卒業から8年後、Webフリーランスとして独立したぐらいから少しずつ少しずつ理解しはじめ、今は面白くなっているところです
なぜ上達したかと考えてみると、Wordpressを使ってWebサイトを作るようになり、オリジナルテーマやカスタマイズを作る上でプログラミングが必要になり、簡単なところから学んでいったからだと思います
クライアントのいろいろな要望に答え、便利・効率的な機能などを自作し、徐々にレベルを上げて行くことが出来たのだと思います
ポイントは、稼ぎなから勉強できたこと。少しずつレベルアップしていったのが功を奏したのだと思います。でも、出来なければ報酬は増えないという焦りもありました
逆に学校で学ぶ場合は、お金を払って、短期間で実用に足りるレベルまでを目標にしているので、挫折する人が多いのではないでしょうか
最低限必要と思うスキル
最低限必要なスキルとしては
- パソコンを長時間使っていても苦にならない
- ブラインドタッチが出来る
- 英単語はいろいろ知っていた方がいい
そして、ある程度プログラミングが出来てくると、プログラミングとは「if(もし)」の集合であることが分かります
「もし(if)、AがBなら、Cへ行き。AがDならEへ行く。」の繰り返しである
「if(もし)」がめちゃくちゃいっぱい、複雑に絡み合ってシステムができてるっという感じです。
その複雑で、巨大なifツリーを頭の中で構築できる、というのが結構必要なスキルではないかなと思います
ゲームブックはプログラミングに近い?
ふと子供の頃に夢中になっていた「ゲームブック」というのを思い出しました
- にゃんたんのゲームブック (ポプラ社の小さな童話―にゃんたんシリーズ)にゃんたんがゲームに挑戦。テレビゲームにとじこめられたおひめさまを救いだすためです。さあみんな、にゃんたんに力をかして!チェック
ゲームブックとは、本を読み進めるとクイズや選択肢があって、自分が思う方を選んでページ(Aの場合〇〇ページへ進む、など)を進めていくというものです
そして、読者の選択によってゴールが変わっていくというもの
この様なゲームブックもifの集まりですよね
私は子供の頃に自分でゲームブックを作っていたこともあり、ifが結構好きだったのかもしれません
ゲームブックにハマる子供は、もしかしたらプログラミングに向いてるかも・・・?作っていたらなおさら・・・?
PR
プログラマーになりたくてなれるものではない
近年になり、プログラマーがなりたい職業の上位にくるようになってきました。世界的にプログラマーの需要は多く、給料も良い方だと思うので、プログラマーになって欲しい親も多いかと思います
ただ、プログラマーになりたくてなる、というよりも何かを作るのが楽しくて、それでプログラミングでいろいろ作っているとプログラマーになってた、という人が多いのかなと思います
まぁ、比較的新しい職業で、昔はプログラミングを学ぶところが少なかったので、自力で学ぶしか道がなかったということもあるのですけどね
小さなものから作ってみる
まずは、作りたいもの・作れるものから、小さいものから作っていくといいと思います
本当に「Hello World」を表示させるだけでもいい。開発環境を整えるだけで結構大変なプログラミング言語もあるので、そこからでもOK
Web系はサーバーの準備があるけど、それさえ準備していまえばすぐに制作&公開でき、レスポンスが早いので入り口としてはオススメです
Webで使われる、プログラミング言語のPHPというもので、プログラム界では「簡単」で有名ですし、同じくjavascriptはWebの標準フロントエンドプログラミング言語でWeb系のことはなんでき、人気もあります
そしてWeb系プログラミンは、稼げるまでの道のりが短めだと思っています。ほかのプログラミング言語だと、Windowsのアプリを作るとか、ゲームを作るなど、物を作って収益化するまでハードルが高い
最初からゲームを作ろう、AIを活用しよう、会員制システムを作ろうなどという目標を作ってしまうと高い確率で挫折してまいますが、自作サイトを公開しよう、Webサイトにボタンを作ろう、ボタンを押したらコンテンツが表示されるWebページを作ろう・・・など簡単なものから始めると挫折しにくいと思います
他に、「就職するためにプログラミングを学ぼう」というのは大分曖昧です。会社によってい使用しているプログラミング言語は違うし、必要なレベルも違う
Web系の会社に就職を目指しているなら、いろいろなサイトを見て、面白い機能で自分にも作れそうな機能があれば、コードを見ずに真似してみましょう
小さくこつこつ学んで行けば必ず成長します
もし、分からないゾーンに入ってしまったら、理解していたところもまで戻り少しずつ解決していきましょう
もし、挫折しても、私の様に後になって覚えれるようになるかもしれません