見出し画像

あなたは大丈夫?プログラミング初学者が陥りがちなミスはこれだ!


このnoteの結論は

独学を続けるためには目的意識を強くはっきり持つ

ということです。


理由は

ゴールが決まっていないと努力の方向性を間違える
努力の方向性を間違えると絶対うまくいかない

からです。



このnoteは基本無料ですが、投稿後の反応次第で有料化も考えています



先日にこういったツイートをしました


プログラミングの需要は年々高まっているかと思いますが
その理由として

どこでも稼げるようになる
高収入が狙えるかも

というのが理由に挙げられるかと思います。



一方で、独学の挫折率は9割とも言われるみたいです



現在、プログラミング学習サイトとしてよく挙げられるものに

Progate

ドットインストール

この2つがありますが、
Progateとドットインストールを進めることが
稼ぐことの道筋に繋がっているのか、というのを
素人+αのレベル感なぼくなりに考え直してみたいと思います


ぼくはまだプログラミングで稼いだことはなく
自分自身が初心者なのかもわかっていない状態です


独学してる人にはあるあるかと思いますが
ひとりで続けていると現状の立ち位置がわからない
というのが一つの問題点ですよね


そして

先が見えないことへの不安


が常につきまとっていると思います。


今と未来に不安を強く感じているので
成功体験あるいは成長の実感が得られないと
すぐに挫折してしまうんだと思います。


かくいうぼくも去年の同時期に

マナブ(@manabubannai)さんのブログをみて
プログラミングの学習をしはじめましたが少し取り組んで挫折しました



甘い考えなのかもしれないですが
Step by stepと感じられない部分が突然発生するんですよね

それでも続けられれば後には飛躍が待っているのですが。



少し本題から離れそうなので話を戻します




改めてプログラミングで稼ぐための初歩ってなんだろう?


冒頭にも書きましたが結論は

結論【何の対価で稼ぎたいのか明確に目的意識を持つ】

ことです


プログラミング言語ってほんとたくさんあるんですよ。
自然語・人語と呼ばれる、普段ぼくらが話している言語より多いです


それを一つずつ網羅していくのって超大変ですよね


普段話している言葉でも、バイリンガルってだけで
「おぉ〜!!」ってなるじゃないですか


だから『学習言語を絞る』ってのが大切になります


じゃぁなにを学習したら良いのかっていうと



プログラミングで稼げるよと言われた時に

何をイメージしたか、第一印象が意外とだいじです


ぼくの場合だとwebページを作って、ひとついくら
みたいなイメージが強かったです

だからまずHTML・CSSの学習をはじめました



でもやって気づいたんですが、HTML・CSSって
いわゆる『マークアップ言語』と呼ばれるもので
普段使われるプログラミング言語とはちょっと違うんですね



もちろん、Webサイトを世界中でみてもらうためには
ページの表示が必須なわけなので
その表示のさせ方を学ぶのがHTML・CSSの学習ってことです



だからHTML・CSSができたところで
Webサイトを作れるわけではないわけです



WebページとWebサイト、
ややこしいですけど誤字ではないですよ


ここがぼくの中の落とし穴だった部分だったのですが
WebページとWebサイトを混同して考えていたように思います


HTML・CSSを使って、Webページをたくさん集めたものが
Webサイトになるんだと思っていました

だから、HTML・CSSを頑張って勉強することで
HPなんかも作れるようになる!

そう思っていたんですね(事前学習不足です、ハイ)


サイト模写なんかをすることでHTML・CSSのスキルは上がるし
ツールの使い方も上手になる(らしい)ので


もちろん基礎学習として必須なものですが
こういった『微妙なズレ』が成長の実感につながらなかったりします

成長の実感が得られないと継続は難しいですよね…


でも今は回り道しまくって少しずつわかってきました

HTML・CSSを学ぶことで、Webページの表示方法に工夫ができる
JavaScriptをまなぶことでWebページに動きがつけられる
PHPをまなぶことでWebページに便利な機能をつけられる
Wordpressを学ぶことで自作テーマの作成やHP作成ができる
Rubyを学ぶことでWebアプリを作ることがしやすくなる





先ほどプログラミングで稼ぐと言われた時の
第一印象がだいじと書きました



これはざっくり2通りに分けられます

1:見た目の作り込みによる対価を得る

2:システム的な内部の作り込みによる対価を得る


『プログラミング言語』を想像したときに
あなたは1を思い浮かべましたか?
それとも2を思い浮かべましたか?


1のひと:フロントサイドと呼ばれる部分の言語学習が良い

2のひと:バックサイド・サーバーサイドの言語学習が良い

です。


具体的にフロントサイドと呼ばれる言語では

HTML・CSS・JavaScriptを学習すれば間違いないと言われます



一方で、バックサイド・サーバーサイドの言語では
さらに学習の方向性が分かれるようです

ワードプレスでのHP作成などで案件獲得したいならPHP
Webアプリケーションを本格的に作成したいならRuby
AI学習、機械学習のシステム作成をしたいならPython

といった具合に言語の得意・不得意があります


だからこそ、方向性を決めることがだいじになりますよね
とはいえそれぞれの言語には習得の難しさ、書きやすさがあるので
そういった基本構文の書き方を学ぶ場として

Progate

ドットインストール

は非常に良いツールになりえると思っています。


実際にやる内容は書き方が違うだけで

・画面上に文字を出力
・演算方法を学習
・条件分岐のやりかた
・繰り替えし処理のやり方
・関数の作り方と使い方
・配列と連想配列の意味

こういったことは共通して学ぶ部分になります


だから、Progateを進めることで
いま書いた内容のコードを書く頻度は増えますし
「はいはい、関数ね」「配列作って呼び出すんでしょ?」
みたいに扱えるようになってきます


でも、「だからどうした?」感がまだぼくにはあって
実用的なスキルが身につくかと言われれば答えに迷います


いま書いているコードが実務で生きるイメージを強く持てれば
学習サイトでの定着も非常に効率が良いですよね


だからこそ繰り返しになりますが

『目的意識を強くはっきり持つこと』

が大事になります



これは自戒の意味でも書きますが


プログラミング言語を学んで、何かを作った対価としてお金を頂く
わけなのでどんなことに需要があって、
需要を満たすにはどんなことがスキルとして必須なのか
今一度考えましょう


ぼくはHPなどのWebサイト制作をしたくて
ワードプレステーマなんかも作れるようになりたいんだと
気づけてきたのでPHPを学習することにしました


具体的な道筋として考えているのは

ProgateでPHPの学習
ドットインストールでWordpressについて学習
並行してwebページの模写でHTML・CSSスキルアップ
Wordpressの自作テーマ作成
ポートフォリオとして成果物を準備
案件を獲得して実務量を増やす
HP作成の案件を増やしていく
ProgateでPythonの学習を開始
Pythonで作れるサービスを自作
ポートフォリオに追加
案件を獲得して実務量を増やす
ProgateでRubyの学習を開始
自分でWebアプリ開発
単発ではない、収益化持続の仕組みを作る

ざっとこんな形です
これは2020年3月時点の考えなので、大幅な修正があるかもです

なんにしても学習したもの自体は裏切らないので
どんどん知識・スキルが蓄積していって次の言語が学習しやすくなる
ということがプログラミングを学ぶ上でのメリットですね


さきほど人語ならバイリンガルでもすごいと書きましたが
プログラミング言語であれば、一つの言語をマスターしたら
複数マスターできるのもそう難しくないと言われています


「最初は学習するのに時間かかりましたけど
PHP勉強してWordpressの案件受注できるようになってから
収入も増えてきたことで余裕ができてきたんでPython・Rubyと勉強して
できる幅を広げていった感じっすね」
みたいに発信できることを夢見ています



読んでみて気に入った方はスキ・フォローをお願いします😌 ここまで読んでくださりありがとうございました❗️🎉 普段noteで言えないことを不定期で発信しています。 無料で登録できるので、こちらからどうぞ! https://lin.ee/uXMHDPk