JSの設定

2012年4月22日日曜日

Ruby Programmer Gold の試験を受けて

1ヶ月前に紀伊半島一周しながらRubyの試験勉強してた時からだいぶ時間がたってGoldの受験となった。本当はSilverを受ける前にGoldを受けようと考えていたのだが、ずっと発売延期となっていた『Ruby公式資格教科書 Ruby技術者認定試験Silver/Gold対応』が発売されたことを知りこれを読んでから受験することにした。4/21のtwitterログから引用する。
Ruby技術者認定試験Gold、終了。76点でギリギリ合格。厳しい時間だった…公式資格教科書についてる模擬試験より全然むずいじゃんか。 
50問中、12も間違えたわけだ。どこを間違えたのか、3つくらいの心当たりしかないが…しかし、12間違えても合格なのだから、完璧主義は封印して、自信ない問題には早々に見切りをつけたほうが良かったかもしれない。  
一画面に収まらない長文の問題は後回しにしたが、結局それらを解くだけで90分使ってしまい、全体の確認に時間を残せなかった。4択で、正しいものを全て選べ系の難問に迷うよりは、一つしか正解がない問題をたくさん見直すほうが率が良い。しかし、一問目が一番難しいのには痺れた。 
 ちなみにSilverのほうは50問中47問正解で、簡単だった。公式資格教科書だけで十分いける。Ruby技術者認定試験Goldにチャレンジする人は、まずこちらでPC受験の独特の雰囲気と時間配分に慣れてから受けることをオススメしたい。 
3問間違いと12問間違いの間には9問の差があるが、感覚としてそのうち4問くらいは確認に残せた時間の差という気がする。そしてもう少し言えば、長文に出くわした時にそれが単に長い問題なのか本当の難問なのか見極める即時的判断力があると、後回しにするというオーバーヘッドを減らせたと思う。 
試験場にあるPCの画面解像度が低いので、長文問題だとスクロールしないと回答の選択肢が見えず嫌らしいが、そこは慌てずサッと回答に目を通したほうが良さそうだ。即時的難問判断に必要なスクロール。 
90分の持ち時間は長いようだが、問題全体の見通しの悪さと、ディスプレイにペンで書き込みが出来ない点、残り時間のカウントダウンが刻々と表示されて焦らさせる点などを考えると全く油断できない。シルバーのほうも最後のアンケートを入力し終わったらほとんど時間残らなかった。
 Ruby技術者認定試験は持ち時間90分、CBT(Computer Based Testing)と言われるコンピュータ試験、50問の選択式で合格ライン75%となっている。だから76点はまさにギリギリで、あと1問まちがえればアウトだ。貴重品等を入れるロッカーの鍵番号と同じ番号の席に座り受験番号を入力してスタートボタンを押せばテスト(と持ち時間のカウントダウン)が始まる。持ち時間が切れると容赦無くテストが終了し、同時に点数と合否が表示されるという味わいのないシステムである。「合格」の文字の前に「不」がついてないか2度見した。

やっぱり、紙に比べれば明らかに試験はやりにくい。上記ログでいうところの即時的難問判断も全部の問題がバッと見渡せたほうがラクだし、問題文の近くにメモを書けるのもメリットだ。CBTではメモ用紙は配られるもののペンが太いマジックで書きにくいし問題文が書いてないからメモする量が増える。例えばX行目の変数の内容を書くのに、問題用紙に書けるなら変数の内容だけで済むところを、まっさらなメモ用紙には変数名も書かなければならない。

まぁしかしそのへんの条件は皆同じわけで、要はそういうやりにくさがあるということを事前に知っておき対策を立てられたらベターということだ。で肝心の内容のほうは、あーありがち技術メモbasyura’s blogなどにある通りでRubyという言語の本質を突いた良問が多い印象。読んで役にたったと思う本は『Ruby公式資格教科書 Ruby技術者認定試験Silver/Gold対応』の他は『メタプログラミングRuby』のみ。ITトレメの問題は模擬試験の品質を備えていない。

また出題範囲が1.8.7なので下手に1.9系の本を読まないほうがいい、例えばプログラミング言語 Rubyとか良書だがスコープを超えすぎる(※混乱しない自信があれば有益ではある)。『メタプログラミングRuby』も、メタプログラミングの魅力に取り憑かれるのは後回しにしてメソッド探索のルートやスコープの基礎論を重点的に、irbも使いつつ読み込んだほうがいい。

それと以下も重要。入れ子になったクラスのそれぞれで下記3種変数の宣言をしたり代入をしたり参照したりでどうなるか確認する。
「クラス変数とクラスインスタンス変数とインスタンス変数の違いについて - 遅咲きのエンジニア」
http://d.hatena.ne.jp/kabakiyo/20080525/1211728832

その他、トップレベルとか。
「Rubyのトップレベルのメソッドの不思議 - As Sloth As Possible」
http://blog.livedoor.jp/faulist/archives/1222830.html

enum_forとか。
「Rubyist Magazine - 標準添付ライブラリ紹介 【第 5 回】 enumerator」
http://jp.rubyist.net/magazine/?0011-BundledLibraries
「イテレータを便利にするenum_for - Slow Dance」
http://d.hatena.ne.jp/LukeSilvia/20081113/p1

ところでこの試験、プラチナも策定中みたいです。受かる自信がない。