on Railsニキ
ついに俺にもRails案件が回ってきた
— Shalman(シャルマン) (@_shalman_) 2016年9月30日
俺PHPerなんだが。いずれ対峙するとは感じていたが、まさかこんなに早いとは…
ゼロ知識でも勝手にアサインのがインターンの良いところ。社員だったら責任重く感じてフレキシブルにできないと思う。
Railsチュートリアルをやる
何かと有名なこのサイト。1週間くらいで全章やってみた。
全部やれば「Twitterモドキ」がつくれる。
ことはじめ
ローカル環境にApacheは立ってるので、Railsを動かすにはApacheにPassengerモジュール突っ込めばいいっぽい。
でもせっかくだし、Vagrant使ってローカル汚さず仮想環境でやってみた。結果むしろめんどい感じになったがvagrantに慣れるという意味ではよかったと思う(思いたい)。
いい感じに環境設定できてるBOXを探す。あった。
GitHub - rails/rails-dev-box: A virtual machine for Ruby on Rails core development
rbenvがなかったので、apt-getとかでinstallして2.3系に変更。ちなみにrailsの最新は5系らしいが、チュートリアルだと4系の解説だったので、そちらで行なった。
rails server -b 0.0.0.0
でバインドオプションつけて、ブラウザから http://localhost:3000 にて確認しろーってチュートリアルにはあるが、いちいち面倒なので、.bashrcのaliasesあたりに
alias s='rails s -b 0.0.0.0'
でエイリアス登録⇨sourceコマンドで有効。s打っただけで鯖が立ち上がるようズボラ設定にした。
-dでdaemon起動もできるが、vagrantがたまに暴走するとプロセス強制終了したりしないといけなかったので、手動にしといた。
編集するのにいちいちFTPソフトでいじるのは面倒、vagrantfile直下がデフォルトで共有なので、rails本体はそこにインストール。
たまにherokuデプロイやgitの解説があったが、そこは読み飛ばし。git管理はしたがherokuはやってない。
所感
これってTDDチュートリアルじゃね
TDDについて
Ruby/railsについて
- Ruby言語自体は、大学の授業で"Hello World"レベルだったのでほぼ初心者。シンボルとかあったきがする(遠い目)
- すごくオブジェクト指向だった(10.minutes.agoとか)
- MVCのFWはLaravelやCodeigniterを触れているので、ディレクトリ構造に違和感なくできた。
- 変数どこで宣言してるのかわからんね。
- 関数呼び出しに()括弧を省略できるのが違和感ある。
- たまに命名が単数なのか複数なのかわからなくなる。
- ActiveRecordで分からなくなったらConsoleで試す。
- 命名して宣言しているのか、railsの機能で予約語みたいになっているのかがまだ分からない。
- railsが意図を汲み取ってくれるあたり、親切だが気持ち悪さも感じる。
こんな感じ。「railsは慣れれば楽で、他のFWが触れなくなる」ってのもなんとなく理解できた。
何回か会員サイトを作ったことがあるが、今回のチュートリアルのようにお手本がなかったのでかなり参考になったと思う。
チュートリアルの内容は結構膨大で、後半あたりコードはコピペばっかりだったが、RESTFulなサービスを作ることになったらまた見返したい。
アブローラーもらってから1週間
http://shalman.hatenablog.com/entry/2016/09/27/172515
shalman.hatenablog.com
アブローラー(腹筋コロコロ)もらって1週間が経つ。
今週は、木曜日が研究室に泊まりだったので、その日を除いて毎日アブローラーを10回×3~4セットをやった。
初日にかなりの筋肉痛だったものの、今はもう治り、いい感じの負荷となっている。
体重の変化はなし。日進月歩といったところか。
しかし、確実に腹や腕に刺激が伝わっているので、今後が楽しみ。
水曜は7kgジョグ。腕立てなどの自重トレも継続。
応用情報技術者試験にコスパ良く合格するためのコツ
応用情報一発合格
— Shalman(シャルマン) (@_shalman_) 2016年6月17日
午後やっべえええギリギリすぎ pic.twitter.com/ezj5WmgGd7
応用情報技術者試験(以下、AP)に先日合格した。ギリギリだけど。
周りから、「どんな感じに勉強したの?」と聞かれることが多いので、為になりそうなコツを書いとく。
応用情報技術者試験(AP)とは
一般的に基本情報技術者試験(スキルレベル2)に合格した者が次に目指す試験区分として認知されており、高度情報処理技術者試験(スキルレベル4)への登竜門的な試験区分でもある。基本情報技術者試験と同様に出題分野は多岐にわたるが、より深い知識と応用力を試され、午後試験では記述式の設問が大幅に増える。単純に知識をもとにした回答だけではなく、論理的な回答をアウトプットする能力が問われる。(wikipediaより)
IPA 独立行政法人 情報処理推進機構:制度の概要:応用情報技術者試験
IT系の国家資格。年に2回。基本情報の上に位置してて、主に20代後半から30代のSE/PGが取得するイメージ。その上にスペシャリスト系の資格がある。
APを取ろうと思った背景
ち、知的好奇心と承認欲求を満たすためかな…
- インターンやサークルでWebアプリばっかり作ってて、基礎的な知識が欲しくなった
- アプリ作って、明確な「合格」みたいなものがない(=正解がない)ので、「合格」「不合格」みたいなわかりやすい結果を欲していた
- 大学院受験勉強の範囲と被ってた
大学院試験の前哨戦みたいなね。結局全く違う学科選んだけどね。しかたないね。
学生時代にAPをとること
APに限らず、IT系の資格はシステム系の会社に入社してから取る方が得だったりする。受験費とか参考書とか会社が負担してくれる場合があるから。
ただ、学生は社会人と比べて時間を持て余している、この暇な時期にサクッと知識試しするのもあり。
「APを取って就活でアピールしたい!」という人もいるが、お堅いIT企業以外はそこまで評価されないと思うので、就活のためはあまりオススメしない。エンジニア職ならgithubアカウントを作ってOSSに貢献した方が高く評価されるだろう。
また、学生の受験率は高くはないが、合格率は高いらしい。
文系にとって難しいのか
そうでもない。去年くらいの試験改正で、必修だったアルゴリズムがなくなったことから文系SEでも受験者が増えたとか。
ストラテジ系、マネジメント系は覚えることが多いので、そっちに注力する感じ。ただし、情報科学の興味はあったほうがいい。
プログラミングしたことないと難しいのか
そうでもない。論理的思考は必要になることが多いが、コードを書けというような問題はなく、午後の「プログラミング」を選択しなければ問題ない。
今回の受験について
金と時間がない
貧乏暇無しです。参考書新品ですら買えねえ。。
なるべく金と時間をかけずに受験。
今回は、
- 受験費以外はなるべく金をかけない
- 勉強期間は1ヶ月
- 基本情報を受験しない
という縛りを設けた。
基本情報を受けなかった理由
どうせ基本とっても応用とるしさ。
コスパ良く受かるコツ
本題。普通に受かるだけでなく、お金と時間を大切にしながらやりましょう。
教材
金がかかります。
とはいえ、何もないと始まらない。
技術評論社 応用情報技術者 合格教本
APの定番教材は、技評のこれ
た、高い...(2800円くらい)
高いです。安居酒屋2軒くらい行ける。
なので、オススメはブックオフなどの古本屋で、3~5年前くらいの技評参考書買おう。500円くらいで売ってる。
これなら昼飯抜けば買えるね!!
内容が古いのかとおもいきや、最新版の内容とほとんど同じ。(本屋で立ち読みして確認)
物によっては200円で売ってる。最新版とざっくり読み比べて、変わらなければ買おう。
AP全般の対策
APは大きく、午前試験と午後試験の2つに分かれる。午前は4択で、午後は筆記試験。
制限時間はTOEICと違い、かなり緩めに設定されているので、ドハマリしない限り時間切れになることはほとんどない。
合格するためには、午前、午後両方とも60点以上取る必要がある。午後試験は午前の応用範囲と考えてもいい。試験対策の順序は午前問題から、午後問題がいいと思う。
範囲が膨大なので、ざっくり対策すべし。
どのように勉強して受かるか
Phase 1 ざっくり理解
手に入れた「合格教本」をざっくり1週読む。この時そこまで理解しなくてOK。「こういうことをやるんだな」という意識を持つ程度に。まずは敵の強さを知るべし。最初の章は離散数学。ビットとか二進数とか。数学アレルギーの人はここで脱落しないように。気楽に。
続いて2周目を読む。次はざっくり理解しながら読もう。午後意味わかんなかったら飛ばしても良い。
合格読本は参考書なので、かなりの分量がある。全部が出題されるわけではないので、ざっくりでOK
ただし、午後試験の「情報セキュリティ」は必須なので「セキュリティ」の項目は重点的に力を入れよう。
Phase 2 とにかく過去問解く
過去問道場を使って、過去問をガシガシ解く。年度はランダムで。
最初は全く解けないが、100問くらいやるとあることに気づく。
そう、毎年同じような問題が出ていることに。
これがAP対策のキーポイントで、「過去問を多く解けば救われる」ようになっている。なので、かなりの量を解くと、問題文で答えがわかる現象が起きる。(年によって数値入れ替えがあるので、計算系は疑うべし)
「APは過去問暗記で突破できるから、技術者試験ではない」という人も。
とにかく合格できれば良いので、過去問を解こう。わからなかったら、適当にボタン押して解説を理解しよう。
最初は正答率が下がっていくが、上げるように、合格読本と解説を併用していこう。
Phase 3 正答率を上げていく
60点合格なので、理論的には最低でも正答率60%を目指す。
しかし、同じ問題が重複してしまうことや、数値計算系でも覚えてしまうことがあるので、60+α%は欲しいところ。
ちなみに、自分の学習結果は
938問中608問正解(正答率 : 64.8%)
学習時間:6395分
だった。
Phase 4 得意分野を見つける
Phase 3までで午前の知識問題はある程度クリアできる。ある程度やれば、自分の得意・不得意がわかってくるだろう。
午後は、「情報セキュリティ」が必須で、あとの5科目は得意分野にしよう。ただし、過去問を解く場合は、7~8科目を対策すべし。
少し広めに対策する理由は、得意分野でも全く歯が立たなかったときのリスクに備えるため。
自分は、「データベース」選択のつもりだったが、問題が「芋づる式」であり自信がなかったため、急遽「組み込みシステム開発」に変更した。
ラッキーなことに組み込みは簡単だったので、DBのまま頭を抱えていたら落ちていたに違いない。
Phase5 午後対策
あとはガシガシ過去問を解く。過去問道場は午前問題のみなので、午後試験問題はIPAの過去問、合格読本のものを取り組む。
ここまでくれば、知らない単語が出てきたときでも、合格読本のどこらへんにあるのかわかるくらいになってるはず。
午後試験は範囲が広いので対策がしにくいが、数をこなすことが合格の近道だと思う。
当日の注意
0次試験
エンジニアは朝起きが苦手だ。
AP「起床の部」と(ある界隈で)言われている0次試験はしっかり突破して欲しい。
集合が結構早いので、余裕を持って会場入りせよ。
会場は、都内でなければ結構辺鄙な場所に飛ばされる可能性がある。
TOEICなどの場合は受験者が多いので、バスを使う場合は本数が多いが、IPA系はそこまででもないので、時間にはかなり余裕を持っていくことをお勧めする。
ちなみに、自分の時は、バス停で多くの受験者の列ができていたが、実際の会場行きとは異っており、一部の人は受験できなかったらしい。
場所に関しては、受験票に記述されている地図とgoogle mapを活用して間違えないように。
男多すぎ問題
やっぱりな。
技術系の試験なので、受験者は圧倒的に男が多い。
会場のキャパにもよるが、男子トイレが混むので、余裕持っていくこと。
特にお腹弱い人とか。
持ってくもの
受験票持ってくのはもちろんだが、昼飯もあるといい。
午前試験はアホみたいに時間余るので、途中退出する人が多い。昼休みが長いので、参考書あると暇つぶしになる。
対策スケジュール
1ヶ月って意外と短い
1週間目
上記のPhase1のところ。
「合格読本」読みまくる。重たいけども携帯して、少しでも専門用語に触れる。
2~3週間目
上記のPhase2,3,4のところ。
過去問解きまくる。間違えたら「合格読本」で理解。そのサイクルで正答率を上げる。
4週目~本番前日
上記のPhase5のところ。
記述対策をメインに。午前問題の発展問題的な立ち位置なので、基礎がダメなら急いでカバーして穴を塞ぐ。
まとめ
- 古本屋で売ってる500円の古い合格読本で十分
- 午前試験は過去問から出題が多い
- 過去問道場で過去問を解きまくる
- 試験時間は余裕がある
- ざっくり理解を心がける
- 「セキュリティ」は重点的に
自分の場合は、午前対策に大幅に時間を割いて(7割ほど)、午後対策は一週間前にガーッと解いたところ、午後の点数がギリギリとなってしまったので、午後をもっと対策すべきだったと思う。
「対策ノート」を作る人もいるが、自分は途中でやめた。要点のメモはいいかもしれないが、「合格読本」の範囲はカバーしすぎなところがあるので、1ヶ月じゃ到底終わらない。過去問でミスったところの「対策ノート」はいいかも。
対策に関しては、十人十色あると思うが、一例として参考になればと思う。
次はセスペ受験予定。
筋肉で開発したい
アブローラーをもらった。いわゆる、腹筋ローラー。
.@mochida_momoko から合格祝いで腹筋コロコロとプロテインもらった
— Shalman(シャルマン) (@_shalman_) 2016年9月24日
筋肉開発 pic.twitter.com/IbxxCUohDD
大学院受験の勉強はストレスがじわじわと溜まる。
自分はストレスを食で発散するタイプなので、「暴飲暴食は美徳。」をモットーに半年頑張った結果、合格できた。でも体脂肪のオマケ付き。
大抵12kgくらい増。 ジムに通う金もないので、家でできるトレーニング器具としてこいつは最適だ。3ヶ月程度で元にもどしたい。
気づき
けっこう楽しい。
- 腹筋ローラーとはいえ、どっちかというと腕と肩使ってるんじゃね。
- でもしっかり全身筋肉痛。日常生活では痛くないけど、トレーニングすると痛いので、普段使わないインナーマッスル鍛えてるんだろな。
- 慣れてないと、姿勢がエビ反りになるので、腰を痛めやすい。猫背でやる。
- フローリングだと膝を痛めるので、膝にクッションを敷く。
- 胸筋鍛えにくいので、腕立ては必要。(プッシュアッパーがあればなおよし)
- 筋肉痛中のトレーニングは地獄。
立ちコロはできまてん。2ヶ月目くらいでできればいいけど。。
三日坊主は阻止。有酸素運動と組み合わせればいいらしい。
15回×3セット / 1day を目標にしばらく静観。休日は7kmジョグ。
皆伝うかりたい
弐寺を始めて早8年。中二の時に出会ってしまったことを皮切りに高校、大学受験に大きな影響を及ぼした悪魔のような音楽ゲームだ。
そもそも音ゲーの性質上ゲームクリアがあいまいだが、一般的に皆伝合格が弐寺のゲームクリアとして考えている人が多いと思う。
私もその認識で遊んでいる一人だけども、そろそろ合格したい。
Copula SP皆伝
1st perditus†paradisus
2nd 灼熱Beach Side Bunny
3rd 卑弥呼
Final 冥
www.youtube.com
(Youtubeより転載)
結局、卑弥呼→冥ゲー。
現在のスキル感
☆10,11全ハード, 11エクハ中 残り40くらい
☆12は未難40くらい
皆伝(調子いいとき) : 60%→30%→12%→0%(drrrrrr前)
大抵、卑弥呼の低速か、鏡だと7バスで死ぬ。
十段を取得したのが、ResortAnthemなので、5年くらい皆伝に苦しんでいることになる。
なぜ8年して皆伝が取れないのか
エンジョイしてるからじゃね。
- 受験が挟んだり断続的にやってることもあって集中して極めたことがないかも。
- 万年十段の特徴として、☆10粘着とかDPとかに目が行き、☆12の物量を避けてるのもある。
- 皿曲ばっかりやってんじゃね。灼熱が皆伝入りしたが、他の皿曲は別に暗記しなくても良い。
年々上達はしているが、その速度は牛歩の如く。
どうすれば合格するか
苦手な傾向を分析する
苦手分野は手をつけたくないのは勉強でもなんでも同じ。
ざっと思いつく苦手傾向は
- 低速
- 物量
- 縦連
- 連皿
- 皿複合
あれ…皆伝曲の特徴抽出したみたいだ
一番の弱点は「低速」なので、通常緑数字「270」のところを倍の「540」 で☆11,☆12下位を回そう。
物量対策として、「IX, コンフィ, クロペン, エレクリ, エルフェリア」の乱を回す。
プレイモードを再考する
あまりお金をかけず、さらに効率のいいプレイモードを考える
現状
スタンダードのプレミアムスタートで
- 1st : ☆11 or ☆10 フルコン狙い
- 2nd : ☆11エクハ狙い(大抵死ぬがVディスクで回避)
- 3rd : ☆12余裕なものをクリア
- 4th : ☆12チャレンジ(大抵死ぬ)
を1日多い時は8クレほどやる。たまに☆12×3曲でSTEP UP。
何も疑いもせずこれで数年やってたが、遠回りのような気がしてきた。
特に2ndのチャレンジは☆11EXHのためであって、皆伝に直結するかといったらまた別の難しさのような気もする。
なるべく皆伝対策に特化した曲をやっておきたい。4thだけチャレンジだと流石に伸びないね…
改善案
- 1クレ目 : EXPARTで、物量系のコースで指を慣らす
- 2クレ目 スタダ(プレミアムスタート)+プラチナで☆12埋めチャレンジと指慣らし。3rdは保証されないから余裕目の曲。4曲目にレジェンダリア系の物量。
- 3クレ目以降 : STEP UP(プレミアムスタート)で☆12×3
鍵盤も軽めな筐体で、プレミアスタートで99pの店で1日平均5クレ
CSの活用
「卑弥呼の練習は卑弥呼、冥の練習は冥」というくらいだし、やはり卑弥呼冥ノックがショートカットかと思う。実際ここで落ちてる。
ACでやると金が湯水のように消えるのでオウチマニアで。
CSEMPと立ち環境はあるので、卑弥呼冥は自宅で練習する。
コントローラは芝ボタン+三和バネ(20g)と皿上げの改造済み。
ACと比べてディスプレイが若干小さいのと、レイテンシと判定が気になる。あと、よくボタンが死ぬ。
冥の加速地帯と卑弥呼ラスト低速は、トレモのREGUL SPEEDでリズムを身体に覚えさせる。
放置
放置効果ってすげー。