自転車とプログラミング

自転車メーカーに勤める会社員がプログラミングを学ぶ中で感じたことを書きます。最近サービス作りました。

Ruby Silverに受かりました。学習と試験のポイントまとめ

2024年2/17 更新

こんにちは。Watanabeです。 先日Ruby Association Certified Ruby Programmer Silver version 3(いわゆるRuby Silver)に合格したので、学習方法や対策、感想を書こうと思います。

なぜ受けようと思ったか

RailsWebサービスを立ち上げているにも関わらず、Rubyまわりの知識不足を大いに感じていたのでポートフォリオ強化も兼ねて受けました。

WEB上の情報を調べたところ大体勉強時間30時間〜50時間くらいで合格した話が多かったので自分でもそのくらいでいけるでしょと2週間で試験を受けることにしました。

試験の内容

基本的なリテラルの文法とString, Array, Hash, File, Dir, IOクラスの組み込みライブラリがよく出題されていました。あとはメソッドが破壊的な処理かどうかは頻出でしたね。このあたりを抑えるだけで70〜80%くらい取れるんじゃないかなって思います。

試験問題そのものは詳細には思い出せないですが教本やGitHubの模擬問題と同レベルの問題がほとんどでした。逆にRExまでいくと難化し過ぎであまり実際の試験対策としては役に立たないように思いました。

勉強時間

30時間〜40時間くらいでした。

勉強方法

教材

[改訂2版]Ruby技術者認定試験合格教本(Silver/Gold対応) Ruby公式資格教科書

[改訂2版]Ruby技術者認定試験合格教本(Silver/Gold対応) Ruby公式資格教科書

Ruby SilverとGoldの試験範囲を網羅的にカバーする公式教本です。何においてもこれを優先して取り組むべきです。 演習問題と模擬が付属していてそれらの問題がだいたい本番の試験と同形式になっています。

使いにくい部分が多少あって、ひとつはSilverとGoldの範囲が一冊の中で混ざり合っている点です。明確に区別できるものではないのでしょうがないところですが、試験範囲かと思ってたらそうでなかったみたいなことがありました。 もうひとつが内容が古いという部分です。現行のRubyと当時とで仕様が異なり、解説が間違っていることがあります。私が気づいただけで2〜3箇所は少なくともありました。学習の後半はRubyリファレンスマニュアルを片手に調べながら学習してました。

公式受験対策資料(模擬問題集)

模擬問題集(Silver試験用)がオフィシャルに公開されています。教本付属の模擬問題集と同形式でver3対応版、丁寧な解説付きです。教本模擬と同じく試験と同形式の問題が多く出されているのでこの問題集もマストで取り組むべきです。

REx

Rexはリバティフィッシュ株式会社が提供する模擬問題集です。模擬問題が合計で300問準備されており、すべて無料で利用できます。

内容はちょっと難しめです。実際の試験が一問につき2〜3個の知識を問うのに対して、RExは3〜5個ほどの知識が問われる感覚です。

勉強の流れ

  1. 初日に模擬を受けてみて自分の現在地を知る
  2. 一週間で教本を読み切る
  3. 残り一週間で模擬を繰り返し「解く→復習」のサイクルを回す

こんな流れで取り組んでました。 模擬試験〜本番の点数推移としては以下の通りでした。

  • 1回目 28点
  • 2回目 36点
  • 3回目 48点
  • 4回目 52点
  • 5回目 74点
  • 6回目 86点
  • 本番 94点

試験前日の6回目まで合格点を超えずめちゃくちゃ焦ってました。 Rubyをしっかり学んだのが数年前だったので教本を一回読むだけでは脳に定着しませんでしたね。前半の教本を読む週は全く無駄では無いにせよ、もうちょっとやりようはあったかなと思います。

後半に入っても模擬の点数が上がらず復習範囲が膨大だったので後半一週間は思ったように回せませんでした。5〜6回目あたりでテストの形式に慣れたのと、知識が定着してきてグッと点数があがりました。

試験対策

学習方法とは別の試験対策としては直前3日はきちんと寝ることを心がけました。平日は通常5〜6時間の睡眠時間なことが多いのですが、それではベストパフォーマンスにならないことは承知していたので、7〜8時間寝てベストパフォーマンスにもっていきました。 模擬の点数が上がらない中で悩みましたが、この期間だけは平日の間は通勤の間だけ勉強して、家ではさっさと寝るようにしました。

あとは、自分でも意識してなかったですが日曜日に試験を設定したのも良かったです。土曜日にやれるだけをやって、日曜日は試験の直前にぱらぱらノートを見るくらいで済ませることができました。前日にやれるだけやっておくと当日が楽ですね。

参考になったブログ

最後に

引き続き学習を続けてRuby Goldもいつかとれるといいなーと思います。 これからRuby Silverを受けられる方、応援しています!