WebマーケターがRubyを習得します!

WebマーケターがRubyを習得します!

マーケターがRubyを習得しようとしてます。

これから定期的に習得までの記録をつけていきたいと思います。
やっぱり外部に発信することがないと、記憶にも残らないし、やる癖がつかないので。

と、その前に僕のプログラミングに対してのレベル感がどれぐらいなのかお伝えしますね。
記事が残って、同じレベル感の方が参考になれば良いなと思っています。

マーケターといえども、HTML・CSSを読めるのはウェブに関わる上での礼儀と思っているので、HTML・CSSは問題ないです。(もちろんフロントエンジニアとしてバリバリできるわけではないです。)

これは独学でやって、サイトも制作しているので実戦経験で定着って感じですね。

そしてその後PHPを習得しようと勉強してます。2ヶ月程度。
ざっくりと基礎の基礎はわかった気がしていましたが、いざlaravelで作ってみると、あまりにもややこしすぎて挫折。そして今に至る。

という流れです。

今回は、学習する上で大切なことが体感できたので、過去に挫折したことがあるからこそわかる勉強スタイルで進めていきたいと思います。

まずは今回はこれからプログラミング初めてさわってみようかな?という方に向けて、学習をする上で大切なことについて紹介したいと思います。

体感してわかったプログラミング学習に必要な2つのこと

かつて学習してたからこそわかるプログラミング学習に必要なことですが、これは2つあります。

  • 「最終的なゴールを持つこと」
  • 「プログラミング自体の面白みを理解すること」

です。

よく言われていることなので、自分なりの注意点を交えながら説明させていただきます。

最終的なゴールを持つのがなぜ重要か?

まず大切なのは、「最終的なゴールを持つこと」です。
よく言われることなんですが、最終的に自分で作りたいアプリがないと絶対心が折れます。これは間違いないです。

というのは、ゴールがなければ全然面白くないし、どう使ったら良いのかわからないから身につかない。からです。

色々と構文を覚えたりするんですが、「あーほうなん」ぐらいの感覚です。これがまじで面白くないです。

英語の勉強でいうと、アルファベットの書き方とひたすら英単語の意味を調べているぐらいの状態です。

最初は新鮮さでできるんですけど、1週間もすれば新鮮さも忘れて飽きます。

飽きないためには、最終的なゴールが必要です。

英語の勉強で面白いのって、やっぱり自分の伝えたいことを日本語で考えててそれを外国語にどう変換しようか悩んだり、アウトプットして伝わったら嬉しい!

とか、字幕なしで映画を見てわかるようにヒアリングを鍛えていこう!ちょっとずつわかるようになってきて嬉しい!

って感じじゃないですか?

プログラミング初心者ですが、そんなことを痛感しました。

でもプログラミング学習の最初は志低く

とはいえ、最初のゴールは思ったより低く構えてください。

僕たちが今過ごしている時代って、ものすごくウェブサービスが充実してるんですごい機能が当たり前のようにあるんですよね。

昔の買い物の内容に合わせてリコメンドしてきたり・・・
写真や動画を簡単にいろんな人に共有して拡散できたり・・・
欲しい情報を2単語ぐらいで検索したら、必要な情報に触れられたり・・・

そんな最強の情報に触れている状態で出てくる発想って、めちゃめちゃ高度なんですよ。

だから普通に発想したものでも実際に作るのってめちゃくちゃ難易度が高いので「作りたいものを目標にして」だけだと、最初からあまりにも高い山に挑戦することになります。

プログラミングの最初ってめちゃくちゃしょうもないことを実装するだけで、結構大変なのです。

丸一日勉強してできるものが、「ボタンを押したらランダムで大吉とか小吉とかでてくるクソみたいな機能」

だったり

一ヶ月頑張って作ったのが、「ログインしたら、自分で書いたメモ書きが出てきて、それを修正できます!すごいでしょ!!」

だったりします。

そんなレベル感なので「よーし、食べログの●●版を作ろう!いろんな情報が入ってて、いろんな検索機能がついてて、自動的にリコメンドもしてくれるのがあったらいいな!!」

とか思ってやると気が遠くなって離脱してしまいます。

プログラミングすること自体を楽しむ

次に大切なのは、プログラミング自体に楽しみを見出すことです。

これもさっきいったこととつながるのですが、プログラミングで最初の方に勉強するのって本当に機能としてはクソみたいなものなんです。

一番最初にするのは大体「hello, world!」と表示させましょうです。

その次に勉強をけっこう進めていってやったりするのが

「僕が好きなのは『バナナ』です」
を表示させて、『バナナ』という部分をあらかじめいろんなフルーツを設定してランダムで表示されるようにしましょう。

とか、そんなの。

アウトプットだけみたらクソじゃないですか。

だからプログラミングすること自体を楽しめるようにならないと、続かないです。

hello, worldを書いてみて、それがhogehogeに変えられた!!
とか、自分で一から作ってそれがブラウザで表示されて、自分の思った通りに動く!!

っていうコツコツとした成功体験を楽しめないと無理です。

まとめ

と、まあそんな気づきを元に勉強していこうと思います。
特に新しいことに挑むときは一時的にパフォーマンスが下がるので、モチベーションが保ちにくいです。

ぶっちゃけ勉強してる時間にアフィリサイト作ってるほうが収益でちゃいますからね。
でも、今後可能性を広げていくためには、別にプログラミングに限りませんが何かしらに挑む必要はあるわけです。

頑張ります!