TECH::CAMPに通って、錆びついたプログラミングをリブートしてみた

プログラミングを学習できるTECH::CAMP(テックキャンプ)。

Webアプリーケーションコースで1ヶ月学びました。
その結果をレポートします。

f:id:Jumbokun:20170102151900p:plain

 

1. TECH::CAMPで学べること

 私が学んだTECH::CAMP(テックキャンプ)のWebアプリケーション1ヶ月コースでは、Ruby言語を学び、WebアプリケーションのフレームワークとしてRuby on Railsをインストールして、実際に稼働するアプリケーションを自分でプログラミングして仕組みを学びます。

 1)勉強方法

  入会すると、学習用の専用サイトに入り、基本は独学で学びます。

 このような感じのメニューサイトがあります。

f:id:Jumbokun:20170102154134p:plain

(TECH::CAMPサイトより)

このメニューに沿って自分でプログラムを書いて進めていきます。

私が受講したのは、Webアプリケーション1ヶ月コース。

 

コースと料金は:

 ーキャンプスタイル(教室も利用可)

  1ヶ月:¥138,240  2ヶ月:¥174,960  イナズマ:¥127,440

 ーオンラインスタイル(オンラインのみ)

  1ヶ月:¥127,440  2ヶ月:¥162,000

 

 カリキュラムは同じですが、イナズマコースは1週間缶詰で学びます。

 カリキュラム自体は100時間の学習をベースに作成されているので、各自が勉強に充てられる時間でコースを選びます。

 1か月コースだと、平日3時間、土日6時間

 2か月コースだと、その倍の余裕で学習できます。

 イナズマコースは、1日8時間教室でメンターとマンツーマンで1週間学習します。

社会人だと、1か月コースの時間も確保するのは難しいでしょう。

私は現在フリーなので、毎日5時間、教室に通って学習できました。

2か月だと余裕はできますが、学習は集中してやらないと覚えないので、1か月コースがお勧めです。

 勉強方法は、自宅からオンラインでカリキュラムを進めながら、わからない箇所はメンターにチャットやスカイプで質問できます。

 教室(早稲田、渋谷、大阪・梅田、福岡・天神)を利用できるコースを選べば、そこにこもって勉強したり、直接質問したりすることも可能です。

 わからない箇所をチャットで説明するのはかなり難しいです。やはり、教室に通い、わからない箇所はすぐにメンターにその場で質問して解決するのが、一番効率がいいです。私のPC画面を見ながら隣で解決策を指摘してくれます。教室に通える人は、そちらを選んで勉強するのをお勧めします。

 

 2)学べるプログラミング言語、開発環境

  基本カリキュラムで学習するのは:

 ー 開発環境

  1. Sublime Text3 (テキストエディタ

    2. ターミナル

f:id:Jumbokun:20170112150447p:plain

(左がターミナル画面、右がSublime Text3画面)

 ー Ruby (プログラミング言語)

 ー HTML/CSS

 ー Ruby on Rails (Ruby開発フレームワーク

 基本カリキュラムでは、pictweetというサンプルサイトをコーディングしながら、学習します。サンプルコードが提示されるので、それをエディターにコピペしていけば、サンプルコードが書ける仕組みです。

 応用カリキュラムで学習するのは:

 ー 開発環境

  1. Git/Github (ソースコード管理)

  2. SourceTree (Gitをグラフィカルに表示して管理するアプリ)

  3. Heroku (開発したアプリをHerokuにアップしてWebに公開する)

  4. Bootstrap (多様なWeb siteのサンプルHTML/CSS集)

  5. CarrierWave (画像をサーバにアップロードする)

  6. AWS/S3 (Amazonが提供するストレージ)

これを全てインストールして使用すると、作成したアプリをサーバにアップして、公開できるようになります。

 ー JavaScript/jQuery

Rubyはサーバ側のアプリを開発するための言語ですが、フロントエンド側のWebアプリを開発する言語としてJavaScriptjQueryを学習します。

 応用カリキュラムで学習する開発環境は、インストールが大変なので、うまくいかなかった時にメンターにサポートしてもらえるのは大変心強いです。

 

2. TECH::CAMPを受講する前に知っておいた方がいいこと

 1)学習時間を100時間確保できるかがキモ

  私は今フリーなので、1ヶ月で115時間教室に通って学習できました。(平均1日4.5時間)しかし、働きながら夜間に教室に通ったり、自宅で学習しながらで1ヶ月でカリキュラムをこなすのは、かなり厳しいです。だからといって、2ヶ月コースを選ぶと時間が空きすぎて集中して学習できないと思います。メンターの方に聞いた話だと、お盆休みや年末年始に開催される”イナズマコース”に参加する社会人が多いらしいです。

 2)1ヶ月コースを受講した後に延長が可能

  1ヶ月コースを受講して、全てのカリキュラムを学習できなかったり、自分のWebアプリケーションを作成中にコースが終了した場合に、1ヶ月36,700円で延長が可能です。この延長は、続けて受けなくても例えば3ヶ月後に受講することもできます。

延長料金の36,700円は1ヶ月コースと2ヶ月コースの料金の差額ですので、1ヶ月コースで学習してから、自分のタイミングで1ヶ月延長して、自作アプリ作成のサポートを受けるのがいいかもしれません。

 3)受講が始まる前にスターダッシュができる

  私が受講したのは29期(2016/12/9〜2017/1/16)の1ヶ月コースでしたが、受講が始まる2週間前からカリキュラムを見て学習をスタートすることができます。ただし、質問は受講が始まるまでできません。このスタートダッシュ期間にできるだけカリキュラムを進めることをお勧めします。

  最初は基本学習なので早く進みますが、Railsに入るとグッと難しくなるので、Rubyまでは終わらせておくと楽です。私は、HTML/CSSが初心者だったので、そこから受講期間を始めてメンターに質問しながら進めました。

  受講期間を決める際に、スタートダッシュ期間(2週間)も考慮して決めましょう。

f:id:Jumbokun:20170113155855p:plain

 4)受講料の割引がある

 Webアプリケーション1ヶ月コースの受講料が138,240円。やはり10万円を超えるとさすがに身構えます。

 この授業料に対する割引があります。(併用は不可)

 1. TECH::CAMP卒業生からの紹介で5%

 2. 事前説明会・体験学習会に参加して当日に受講を申請すると5%

 3. 友達と一緒に申し込むと10%

 私は説明会の当日に受講申請して5%割引を使いました。

 紹介割引できますので、申込時の紹介者に「田中邦明」と書いていただければ5%割引を受けられます。

  5)受講終了後はカリキュラムは見ることはできない

 受講終了後、自分でカリキュラムを復習することはできません。まあ、カリキュラムがTECH::CAMPのミソなので、それはしょうがないでしょう。

 ただし、受講終了後も環境設定の項目は閲覧できるので、新しいPCに乗り換えたり、OSのアップグレードを行った時に自分で環境を構築できるので、これは大変助かります。

  6)Macが必要

 このコースのカリキュラムはMacで学習することを前提に作成されています。Windowsでも学習可能となっていますが、MacWindowsではキーボードの配列も違うし、開発環境もそっくり同じではありません。

 なぜMacなのかというと、macOSUNIX系のOSで、rubyLinux(UNIX系OS)上で開発されたからです。実はmacOSにはRubyが標準で入っています。WIndowsだとRubyをインストールするところから始めないといけません。

 Macのもう一つのメリットは、仮想ソフトを使えばMac上にWindowsを乗せて1台で両方のOSを使うことができます。Windows PCにmacOSをインストールするのは原則難しいです。(できないことはないですが、OSのライセンスの問題もあるので)

 よって、Rubyのプログラミングを学習したいなら、Macに切り替えるのをお勧めします。

 

3. 受講して気づいたこと

 1)まずはカリキュラムを進めてプログラミングの流れを掴む

 私はプログラミングの実践経験もあり、他の初心者の方より入りやすかったと思いますが、カリキュラムはわからなくても、サンプルコードをコピペすれば次に進めるようになっています。まずは、どんどん進めていって、動くサンプルアプリを作成することです。同じサンプルアプリを2度書いてみるカリキュラムになっていて、2度目は自然にコードの意味については考える余裕が出てきます。同じファイルを何度も修正するので、実際にどのファイルを修正してプログラムを書いていくかがわかるようになります。Ruby言語の文法からではなく、サンプルコードを書きながら、必要なクラスやインスタンスを覚えていくやり方は覚えやすいと思います。

 2) 教室へ行って学んだ方がいい

 教室が住んでいる場所から近くにあり通えるなら、絶対教室へ行くのをお勧めします。理由は:

  1. 同じ環境の生徒と一緒にいるだけで、勉強に集中できる。

  2. メンター(教室にいる先生)にわからないところをすぐに聞ける

  生徒もメンターも若い人が多いです。昼間は学生が多く、かなり混んでいます。先生にも理解度に差があり、難しい質問に答えられない時は、上級メンターに変わって説明してくれます。ただし、学生気分で学習している雰囲気はなく、みんな真剣にPCに向かって学習しています。よって教室内は質問している生徒と先生以外の会話はほとんど聞かれません。静かな中で学習できますから、自宅でやるより集中できます。

 3)Webサイトのデザイン、HTML/CSSの勉強は別途必要

 このキャンプで学習するのは、Rubyを使ったWebサーバのアプリケーション作成であり、Webサイトのデザインはメインではありません。よって、実際のWebアプリケーションサイトを立ち上げるには、フロンエンドのHTML/CSS, JavaScript, jQueryの学習も別途必要です。それらのレッスンもこのカリキュラムに含まれていますが、もっと深く学習する必要があります。

 

4. なぜプログラミングを勉強する必要があるのか?

 私は元々理系で、最初の就職先でもプログラマーをやっていましたので、(30年も昔の話ですが)もう一度プログラミングを始めたいと思って、最新の言語であるRubyを使ったWebアプリケーションを学べるキャンプに参加しました。

 結果は、思ったより昔学んだスキルは錆びついていないなとわかり、嬉しく思ってます。でも今回キャンプに参加して、教室に来ている人に話を聞いてみると、理系だけではなく、文系の学生や、就職先で営業や経理をやっている人も多く参加しているのがわかりました。

 すでにプログラミングは技術者だけが学ぶものではなく、新しいビジネスを起業する人や再就職を考えている人に必要な”言語”になっているといくことです。例えば、”英語”と同じように。プログラミング”言語”と言われているように、そこには文系も理系も関係なく、これからの世の中を渡っていくのに必須なスキルになっています。

 ただし、受講料13万円を取り返すことがすぐにできるかと言えば、難しいかもしれません。しかし、ここで学んだことを土台にして、自分でスキルアップすることができれば必ず役に立つと思います。

 誰でも面白いアイデアが浮かぶことはあると思います。しかし、それを自分で形にするのは誰でもできることではありません。お金があれば、アイデアを形にする人材を雇って形にすることはできますが、それは万人ができることではありません。これからは自分でプロデュースして形にしたものを売っていくしか稼げない時代がやってくると思います。そのためにスキルとしてプログラミングを学ぶことは大事なことだと思います。

もし、ご興味があれば下記のサイトにアクセスしてみてください。

https://tech-camp.in/ (TECH::CAMPサイト)

 

では、では。