Zero-Create第二回、今回のテーマは、プログラミング言語の学び方についてです。
ゼロから始めた初心者による経験談ですので、もっと効率の良い方法、正しい方法はたくさんあるかと思います。
今回は色々やり方がある中で、管理人が辿りついた学習方法について紹介していきます。
さっそくですが、HTML・CSSについてどこまでご存じでしょうか?
あるいは・・・
習熟度は人それぞれかと思いますが、私の場合は”名前だけなら聞いたことがある”程度でした。
Step.1では、全く知らないよ!という方や、名前だけなら聞いたことがある!というような方を対象に実例をご紹介していきます。
それでは本題に移りましょう。
Step.1では、2つのサービスを紹介します。 どちらも、無料ですのでご安心ください。 ※これ以上ハイレベルなことを知りたかったら有料登録してね!というタイプのサービスです。
まず、私はProgateというサービスを利用しました。 とても有名なサービスですので、既にご存じかもしれません。
Progateのよかったところは、本当にマジのガチの初心者でも
HTMLとは何ぞや?これをなんとなく理解できるように作られているというところです。
そもそも、HTMLって何?
調べたらたくさん出てくるけど、タグや要素って何のこと?
わかったようなわからないような・・・
Progateでは、そんな初歩の初歩を、懇切丁寧に教えてくれます。 そのうえ、演習問題ですぐにアウトプットができるのも大きな強みです。 まずは、コース一覧から”Web開発コース(Node.js)”を選択して、無料で受けられる講座だけをとりあえずやってみましょう。
本当に初歩の初歩しか学べないのは弱点ですが、ほんの小一時間程度で無料講座は終わってしまいます。 有料会員になれば深いことは学べますが、管理人個人の感想としてはあまりおススメはしておりません。
ちなみに、月額1,490円(※2023年10月現在)です。 6か月コース、1年コース一括払いで割引はありますが、ダラダラとやっても仕方がないので登録するとしても1か月コースから始めたほうがいいと思います。
管理人は次にPaizaラーニングというサービスを利用したのですが、気の早い方は、ここでStep.2に進んでもよいかもしれません。
このサービスも基本無料で、深い内容は有料会員になってねというスタイルです。 ちなみに月額1078円(※2023年10月現在)で、こちらも6か月コース、1年コース一括払いの割引はあります。
Paizaラーニングも、Progateとおなじく初歩の初歩から学ぶことができます。 まずは”HTML/CSS入門編”から始めてみるのが良いでしょう。
この講座は完全無料です。
続いて、"Javascript入門編","PHP体験編"をクリアすれば、なんとなく何か作れるような気がしてくる頃だと思います。
ProgateとPaizaラーニング、2つのサービスを紹介しましたが、どちらのサービスがわかりやすいかは好みです。
個人的には、より”ゼロからはじめる”時に易しいのはProgateだと思います。
ProgateとPaizaラーニングの大きな違いは、教材です。 Progateがスライド資料を読んだ後に演習を行うのに対し、Paizaラーニングは動画を視聴した後に演習を行います。
Progateの良いところは、有料コンテンツでもスライドだけなら見ることができるという点です。 もちろん有料コンテンツですので何の制限もなく開放しているわけではありませんが、スライドのど真ん中に表示されている南京錠マークに被っている場所は見えません。といったような感じです。
続いてPaizaラーニングの良いところですが、教材動画に声優さんの声があてられていて非常にわかりやすい点です。 さすがは本職、声優さんの声は、はきはきとした聞き取りやすい声で、正直聞いてて飽きないです。
アニメに抵抗がある方には合わないのかもしれませんが、管理人にはぶっ刺さりました。 反面、有料コンテンツに関してはProgate違って全く見ることはできません。
当たり前ですけどね(笑)
以上、おすすめのサービス紹介でした。
さて、Step.1でゼロからイチに成長したあとはどうすればよいのでしょうか? 正直管理人自身も教えてほしいくらいなのですが、自分なりに導いた結論とその足跡をご紹介します。
まずは結論。ズバリ、実際に何か作ってみよう
ということです。まあ、見出しの通りですね。
管理人は、この結論に至ってまずこのWebサイトを立ち上げました。
次に、記事の執筆の傍ら、Webアプリ?三角関数計算を作成しました。
では、なぜこの結論に至ったのか。
それは、どんなサービスをもってしても独学では限界があると感じたためです。
Paizaラーニングを登録してから一週間、有料コンテンツの体験期間が設けられていました。 その期間を活用して、JavascriptやPHP、Pythonの上級コースなど様々な有料コンテンツを体験してみたのです。
それはもう、たくさんのことを学んで、いろんなことができるようになった気がしていました。
しかし、いざ自分のPCで何かを作ってみようとなったとき、何もできないことに気が付きました。
まず、開発環境がない。環境の作り方なんて教えてくれませんでした。
次に、PHPやJavascriptの組み込み方がわからない。 ProgateもPaizaラーニングも、演習問題では既に下ごしらえが終わっていて、中身を完成させるだけでした。 そのため、そもそも下ごしらえのやり方がさっぱりわからないのです。
そして最後に、自分の求める処理をこなす方法がわからない。 プログラミングの書き方なんて、いくらでもあるわけです。 同じ処理をするにも何通りもの書き方やがあり、ProgateやPaizaラーニングでは、その中から少しずつ、かいつまんでお勉強していたにすぎなかったのです。
たくさんの講義を受けて、たくさんのことを学びましたが、一週間の間に詰め込んだ知識なんてもうほとんど薄れてしまっています。
結局のところ
これの繰り返しでは、実際にその知識を使いたいときの引き出しにはなりませんでした。 と言っては語弊がありますが、少なくとも管理人の能力では引き出しに昇華させることができませんでした。
書き方はわかるのに使い方がわからない。もどかしいですね。
そこで管理人、Google先生に質問しまくって何とか三角関数計算アプリを作り上げたわけです。
前回記事で、HTML.CSSの体験をしていただいたかと思うのですが、 ぶちゃけ管理人はこんなに簡単にブラウザでホームページらしいものを表示できるということすら知りませんでした。
そもそも、ソースの書き方はわかるけど、何に記述すればいいのか。 記述したソースをブラウザに反映させるにはどうすればいいのか。 そんな初歩も初歩、いわゆる”知ってて当たり前”の知識って、意外とネット検索でもなかなか出てこないんですよね。
よくプログラミング学習には”いいメンターに巡り合うことが大切”と言われていますが、初心者にはない”知ってて当たり前”の前提知識を、質問したら秒で返してくれる存在。
それもメンターの強みの一つだなと、メンターなしの独学管理人は常々感じております。
結局一番頼りになったのはGoogle先生でしたが、管理人がつまずいたところなんてメンターがいれば秒で答えが返ってくることばかりなんですよね。 ”知ってて当たり前”だからわざわざ掲載する必要もない情報なので、調べるのは骨が折れますが、知ってる人からすれば常識の事なのです。
そういう意味でも、いろんなサービスを長々と続けて勉強する前に、一度自分で何かを試行錯誤して作り上げ、”知ってて当たり前”の知識を身に着けること。 これが一番大事なのだと思います。
さて、ここまででお気づきになったアナタ、鋭いですね! そう、プログラミング学習で最も大切なもの。それはメンターの存在なのですね。
もし、何も抵抗や障害がないのなら、メンターと巡り合うことが一番の近道なのだと思います。 学習の方法なども相談に乗ってもらえることでしょう。
ところが管理人、メンターと巡り合う予定はございません。
今はまだ本業が忙しいこと。
メンターの探し方もよくわかっていないこと。
ぶっちゃけメンターとのやり取りなどが面倒くさそうなこと。
色々と理由はつけておりますが、とりあえずは自分のペースで限界までできるとこまでやってみたい。 そういった理由で、今は独学のまま続けていくつもりです。
今後、ある程度力がついてきたらメンターを考えるかもしれませんので、その際はまた記事にしてご紹介したいと思います。
それではまとめです。
Step.1では知識ゼロからイチに昇華させる方法についてご紹介しました。 Progateにするか、Paizaラーニングにするか、はたまたその他サービスを選ぶかはアナタ次第ですが、ここでは初級編(必要最低限の概要を学ぶ程度)でいったんストップするのがよいでしょう。
Step.2では、実際に何かを作ることで得られるモノについてご紹介しました。 Step.1を長々と上級編まで続けても、演習の環境は実際の環境とは異なります。 せっかく手に入れた知識もうまく扱えません。
まずは、いったん何かを作ってみて、”知ってて当たり前”の事を泥臭く学びましょう! そうすることで、中級編・上級編もすんなりと扱えるような基礎が出来上がってきます。
さて、次回以降では数回に分けて下記のどちらかについてご紹介したいと考えています。
最終的にはどっちもお話ししたいのですが、どっちを先に読んでみたいか、リクエストありましたらお願いします!
公式X(旧Twitter)を立ち上げましたので、アンケートを答えていただけると非常にモチベーションが上がります!!
それでは次回 Create:3 ~Webサイトの立ち上げ方 Part.1~ 乞うご期待!!!