
こんばんは、YKです。
TeckAcademyに入会して2週間が経ちました。
いやー2週目がなかなか進まない!?Rubyを学んでいるのですが、テキストが難しくてなかなか理解がおっつかないです(泣)
まあとりあえず、事前学習2週目の進捗について話したいと思います。

Contents
Webアプリケーションコース事前学習2週目の目標と進捗
まず最初に前回立てた計画です。
目標:4週(6/25〜7/22)までにオリジナルサービスまで完了する
<事前学習1週目>
・インターネットの仕組み
・HTML/CSS
・ターミナル
<事前学習2週目>今回はここ!
・Ruby
・MySQL
<事前学習3週目>
・Ruby+MySQL
・Git/GitHub
<受講学習1週目>
・メッセージボート
・Bootstrap
・Heroku
<受講学習2週目>
・Twitterクローン
<受講学習3週目>
・モノリスト
<受講学習4週目>
・オリジナルサービス
この計画を元に学習を進めています。
がしかし!?事前学習の2週目は予定通り進まず。。。Rubyで止まっております。

Webアプリケーションコース事前学習2週目で学んだこと
少し学んだことについて触れたいと思います。
プログラミング言語ーRuby
今週からはプログラミング言語であるRubyを学んでおります。
今回受講予定のWebアプリケーションコースではRubyを使ったWebサービスの開発を行うカリキュラムになっています。
Rubyはサーバーサイドのプログラミング言語で、動的なWebページを作ることができます。例えば、サイトにログインすると自分の情報が載ったページを返してたり、コメントを入力するとコメントが追加されたページを返したりしてくれます。
Webページの表示自体はHTML/CSSの役割ですが、ユーザーの入力によってHTMLを動かし更新してくれるのがRubyなどのサーバーサイドのプログラミング言語に役割です。
Rubyが使われているWebサービス
Rubyは様々なWebサービスに使われているようです。
一例をあげます。
・クックパッド
・Gunosy
・クラウドワークス
・食べログ
・価格.com
・Hulu
このように現在人気の高いWebサービスで使用されており、需要も多いようです。RubyによるWebアプリケーションの開発ができるようになれば、就職や転職でも大きな武器になると思います。
Rubyは初心者に優しいプログラミング言語?
Rubyは比較的初心者にとって優しいプログラミング言語と言われています。
その理由は、
①日本発祥のプログラミング言語のため文献や参考書が多い
②コードが短くてシンプル
①に関してRubyは日本人開発者である、まつもとひろゆき氏が開発したプログラミング言語で、プログラマーが書いて楽しいと感じるように作られたそうです。
日本で生まれた言語なので、確かに基本的には日本語の参考書が多いです。ただし書店などに行ってみると、Rubyの本はあまり多くないです。最近はAIやら機械学習などで使われるPythonの本が指数関数的に増えている気がします。
ですので、初心者にとって意外と実は学びにくいのではないかというのが個人的な感想です。本格的に学びたい方はプログラミングスクールに通った方が良いと思います。
②に関しては、正直わかりません。他の言語をやったことないので(笑)ただし、コードを書いてみると確かに思っていたよりは複雑ではない気がします。プログラミングって黒い画面に謎の文字がひたすら書いてあるイメージでしたが、そうではなかったです。
Rubyで学んだこと
最初はターミナルに文字列等を表示する方法を学びました。
その後、変数や条件分岐、配列やハッシュ、メソッドなどプログラミングの基礎を学びました。このあたりまでは順調に進んでいたんですが、問題はオブジェクト。
Rubyはよくオブジェクト指向のプログラミング言語と言われますが、正直意味わかめです。なんとなくオブジェクトというものに対して命令を下して動かすってイメージしていまが、抽象的でまだ理解ができていません。
またクラスやインスタンス、インスタンスメソッド、インスタンス変数などwebアプリケーションを作る上で必要な知識について学んでいますが、初心者には難しいと感じています。ですので、Progateを使って同時平行で勉強しているところです。

Webアプリケーションコース事前学習2週目に感じたこと
事前学習は、TechAcademyのテキストを見ながら進めていきました。その中で感じたことを書きたいと思います。
プログラミング初心者はテキストだけではきつい!?
Rubyを初めて学習する人は、TechAcademyのテキストでは意味プーだと思います。正直何やっているかさっぱりわかりません。
ですので必ず事前にProgateやドットインストールで学んでおくべきです!!
初心者は4週コースだと間に合わない!?
おそらく僕のような未経験の初心者は4週コースでは相当きついと予想しています。現時点でまだ1週目で完了する学習項目すら終わってないですからね。1日5時間くらい勉強する時間があれば良いですが、仕事をしている社会人にとってはきついと思います。
まとめ
Webアプリケーションコースの事前学習2週目、Rubyで苦戦しております。3週目はRuby,MySQL,Git/GitHubについて学んでいきたいと思います。