give IT a try

プログラミング、リモートワーク、田舎暮らし、音楽、etc.

「Kaigi on Rails _2021_ new」のスペシャルコラボ座談会に登壇します!

お知らせです。Kaigi on Rails 2021のプレイベント、「Kaigi on Rails _2021_ new」のスペシャルコラボ座談会に登壇します!

上のツイートにもあるとおり、「Ruby超入門」の著者・五十嵐邦明さんと、Railsチュートリアルの運営でお馴染みの安川要平さんも一緒に登壇されます。

トークテーマは「RubyやRailsの学習・教育」ですが、座談会なので、具体的にどんな話が飛び出るのかは当日まで僕もわかりません!
きっと今現在RubyやRailsの勉強を進めている人の役に立つ情報がたくさん出てくることでしょう😄

スケジュールと参加方法について

座談会は2021年10月10日(日)14:00-15:00に行われます。
そのあとに開催される懇親会にも顔を出す予定です。

日本中(世界中?)どこからでも参加できるオンラインイベントですので、みなさんぜひ参加登録をお願いします!

kaigionrails.doorkeeper.jp

それでは「Kaigi on Rails _2021_ new」でお会いしましょう👋

年内に発売?改訂版「プロを目指す人のためのRuby入門」を制作しています!

お知らせ

現在、「プロを目指す人のためのRuby入門(通称・チェリー本)」の改訂版を制作中です。発売時期はまだ確定していませんが、年内の発売を目標に作業を進めています。順調にいけば12月のはじめぐらいには発売できるかもしれません。

現在発売中の「プロを目指す人のためのRuby入門」の第1版は2017年11月の発売なので、4年ぶりの改訂ということになります。


追記:発売日は2021年12月2日に決定しました

上で「順調にいけば12月のはじめぐらいには発売できるかもしれません」と書きましたが、発売には2021年12月2日に決定しました!Amazonにも販売ページができていて予約できるようになっています。

で、どこがどう新しくなるの?

気になるリニューアルポイントですが、まず、Ruby 3.0にフル対応します!第1版の対応バージョンはRuby 2.4でした。Rubyは後方互換性が重視されているので大半の内容はRuby 3.0でも有効でしたが、それでもところどころで記述が古くなっている部分がありました。今回の改訂版は現時点の最新バージョンであるRuby 3.0にバッチリ対応します!

これに関連して、新しくパターンマッチの章が増えます。具体的には第1版の第10章「yieldとProcを理解する」のうしろに、第11章「パターンマッチを理解する」の章が追加されます。このため、本書の章数が12から13に増えます。

  • 第1章 本書を読み進める前に
  • 第2章 Rubyの基礎を理解する
  • 第3章 テストを自動化する
  • 第4章 配列や繰り返し処理を理解する
  • 第5章 ハッシュやシンボルを理解する
  • 第6章 正規表現を理解する
  • 第7章 クラスの作成を理解する
  • 第8章 モジュールを理解する
  • 第9章 例外処理を理解する
  • 第10章 yieldとProcを理解する
  • 第11章 パターンマッチを理解する ←NEW!!
  • 第12章 Rubyのデバッグ技法を身につける
  • 第13章 Rubyに関するその他のトピック

もちろん、パターンマッチを理解するための例題もちゃんと用意しています!

例題といえば、第8章に用意していたモジュールの例題を完全リニューアルしたのも大きな変更点かもしれません。改訂版ではちょっと遊びごころのある例題に変えてみました😆

Ruby 2.4でも3.0でもRubyの仕様が変わってなければ、本文も変更なし?

いいえいいえいいえ!!

Rubyの仕様が同じでも、改めて読み直してみて「ここはこう説明すべきだったな」と感じた部分は躊躇なく修正しています。第1版を発売してから4年、ネット上ではさまざまな反応を見かけました。また、僕が現在メンターをやっているフィヨルドブートキャンプでも受講生のみなさんから本書の感想をたくさんもらいました。

そういったフィードバックをチェックしていると、初心者のみなさんが共通してつまづきやすかったり、誤解しやすかったりする内容があることに気づきました。そうした内容は改訂版を作成するにあたって、これまでの説明を見直し、よりわかりやすくする工夫を入れたりしています。

ちなみに軽微な修正も含めて、第1版から変更を入れたいと思った部分に付箋を貼っていったら、こんな状態になりました。

この付箋の数から、改訂版の修正点の多さを察してもらえればと思います。

さらに:豪華レビュアー陣による原稿レビュー!

第1版は弊社ソニックガーデンのメンバーを中心に原稿レビューしてもらったんですが、改訂版では弊社メンバーのみならず、著名なRubyコミッタ、Rubyプログラマのみなさんに声をおかけして、原稿をレビューしていただきました。

こちらがそのレビュアーのみなさんです!

  • 辻本 和樹さん(株式会社野村総合研究所、Rubyコミッタ)
  • 遠藤 侑介さん(クックパッド株式会社、Rubyコミッタ)
  • 松本 宗太郎さん(Square, Inc.、Rubyコミッタ)
  • 近藤 宇智朗さん(GMOペパボ株式会社、フィヨルドブートキャンプ・アドバイザー)
  • 吉次 孝太さん(しくみ製作所株式会社、フィヨルドブートキャンプ・メンター)
  • scivolaさん
  • 栩平 智行さん(株式会社 DIGITALJET)
  • 遠藤 大介さん(株式会社ソニックガーデン)
  • 西見 公宏さん(株式会社ソニックガーデン)
  • 田中 義人さん(株式会社ソニックガーデン)

※「全員が一冊まるごとレビュー」ではなく、担当パートを分けてレビューしていただいています。

レビュアーのみなさんからは鋭い指摘事項を多数いただき、技術上の正確さや、わかりやすさが格段にアップしました。こういった安心感も改訂版の大きなセールスポイントになっていると、個人的には考えています。

改訂版FAQ

ちょうどチェリー本を買おうとしてたんですが、改訂版を待った方がいいですか?

うーん、これは非常に難しい質問ですね・・・!

あと数ヶ月待てるのであれば、改訂版を待ってもらった方がいいかもしれません。
ですが、今すぐRubyの勉強を始めたい、という場合は、その数ヶ月の時間がもったいないので、このタイミングで第1版を買っていただいた方がよい気がします。

第1版でもQiitaに書いたサポート記事を読めば、Ruby 3.0までの変更点はひととおりカバーできるようになっています。

qiita.com

第1版を持っています。改訂版も買った方がいいですか?

これまた難しい質問!!

「買ってください!なぜなら僕に印税が入るから〜」みたいな、おふざけなしで真面目に回答するなら、今でも仕事でRubyを書いている、もしくはRubyを使った会社に就職したいと思っている、という方は、ぜひ買っていただきたいです。

第1版を一通り読んだという人も、改訂版を読んでいただくことで次のようなメリットが得られます。

  • 最新のRubyの言語仕様を一通り把握できる
  • とくに、パターンマッチについて詳しく学習できる
  • 内容によっては第1版の説明を書き直した部分もあるため、より深い理解を得られる
  • 再読することで、すでに忘れてしまっているRubyに関する知識をあらためて覚え直すことができる

筆者としては「第1版を持っている人も絶対に損させないような改訂版にしてやるぞ!✊」という気持ちで改訂版を書きました。もちろん、実際にどう感じるのかはみなさん次第ですが、僕自身は「第1版を持ってるなら改訂版は購入不要」みたいな評価はきっと付かないはず、と自負しております。

まとめ

というわけで、このエントリでは現在制作中の改訂版「プロを目指す人のためのRuby入門」についてお知らせしました。

2021年に入ってブログの更新ペースが落ちていたのは、実はこの改訂版の執筆作業に打ち込んでいたせいなのでした。そのうちまた詳しく書こうと思っていますが、「これ、第1版を書いたときと同じぐらい大変なんじゃないか・・・?(汗)」というぐらいの労力がかかってます。

そんなわけで、改訂版の発売をぜひ楽しみに待っていてください〜😆

Zennで「Rubyの公式リファレンスが読めるようになる本」という無料の本を書きました

お知らせ

Zennの書籍作成機能を使って、「Rubyの公式リファレンスが読めるようになる本」という本を書きました。この本は無料で提供しています。

f:id:JunichiIto:20210903055242p:plain:w400

zenn.dev

どんな本なの?

その名のとおり、Ruby初心者のみなさんにRubyの公式リファレンスが読めるようになってもらうための本です。

以下は本書の内容紹介からの抜粋です。

つよつよエンジニアからは「ネットの技術記事より公式リファレンスを読め!」って言われるけど、公式リファレンスを見ても変な記号や英語がたくさん出てきて全然意味がわからない・・・という初心者Rubyプログラマのみなさんに向けて、公式リファレンスの読み方を丁寧に解説します。

本書を執筆した背景

僕はフィヨルドブートキャンプでメンターをやっています。受講生のみなさんには「ネットの記事よりもちゃんと公式リファレンスを読もうね」という指摘をよくしてきました。ですが、公式リファレンスを読まない受講生のみなさんにくわしく話を聞いてみると 「公式リファレンスを読めと言われても、そもそも読み方がわからない。リファレンスで使われている記号の意味がわからない。だからネットの記事を読んでいるんです」 というような回答が返ってきました。

なるほど、そういうことか!!

僕ら熟練者からしてみると、「知りたい話は全部公式リファレンスに載ってるやん」と思っても、初心者の方は僕らと同じ感覚でリファレンスを読み解けないわけです。たとえば、length -> Integerという説明がリファレンスに載っていても、初心者の人は「->って何?Integerって何??」ってなってしまうんです。

f:id:JunichiIto:20210902191231j:plain:w450
上級者にとっては当たり前のことも、初心者はちんぷんかんぷん

というわけで、こういう問題点をフィヨルドブートキャンプのメンター内で話し合い、「リファレンスの読み方を丁寧に教える教材が欲しいね」ということになりました。

もちろん、ご存じの方も多いかもしれませんが、Rubyの公式リファレンス内にもヘルプページはあります。

docs.ruby-lang.org

ですが、まだプログラミング知識の浅い人たちには少し淡泊すぎる内容なので、僕が改めて詳しく説明してみることにしました。そして完成したのが本書です。想定している読者はフィヨルドブートキャンプの受講生ですが、内容自体は汎用的なので、無料の本としてZennで一般公開することにしました。

f:id:JunichiIto:20210902192305p:plain:w500
スクショを豊富に交えながら丁寧に解説しています

本書のライセンスはCC BY 3.0です

本書のライセンスはRuby公式リファレンスに合わせて、CC BY 3.0にしてあります。

creativecommons.org

ライセンスに従えば、商用利用も可能です。なので、フィヨルドブートキャンプ以外のプログラミングスクールで使ってもらっても全然OKです!

なんでZennなの?(Qiitaじゃないの?)

実は最初はQiitaで公開しようと思ってたんですが、思いのほか長くなったため「本の体裁を取った方が読みやすいな」と思い、書籍作成機能が提供されているZennを使うことにしました。

ちなみに、Zennで本を書いたのは初めてだったんですが、GitHubと連携して原稿をGitHubで管理できることにビックリしました。

  • 使い慣れたエディタ(僕の場合はVim)でMarkdownの原稿を書く
  • 専用のCLIツールをインストールして、ローカルで原稿をプレビュー
  • GitHubに原稿をpushするとネット上の本も自動的にアップデート

という手順で本が作成されるのはとても新鮮なユーザー体験でした。これはなかなか良い!

f:id:JunichiIto:20210902193042p:plain
ローカルで原稿をプレビューする様子

何か気になる点があればGitHubのissueかプルリクをどうぞ!

そうそう、原稿はGitHub上で公開されているので、誤字脱字を見つけたり、文面の改善案を送りたくなったりしたときはissueやプルリクエストを投げてもらったらOKです👌

github.com

表紙デザインは株式会社フィヨルドの町田さん

せっかく本の体裁にしたので、ちょっとカッコいい表紙が欲しいなと思い、株式会社フィヨルドの町田さん(@machida)にデザインをお願いしてみました。

おかげで素敵な表紙ができあがりました。町田さん、どうもありがとうございます!!

f:id:JunichiIto:20210903055242p:plain:w250

まとめ

というわけで、このエントリではZennで「Rubyの公式リファレンスが読めるようになる本」という無料の本を出したよ、という話を書いてみました。「公式リファレンスが読みたくても読めないんです(だって、難しいから……)」という人はぜひ本書を読んでみてみてください!

zenn.dev

次回予告「実はもうひとつあるんだ」

ところで、実はもうひとつRuby関連のお知らせがあります。次のエントリではそのお知らせを書く予定です。ちょっとしたビッグニュースなので、乞うご期待!(気になる人はぜひ本ブログの読者登録を!)