見出し画像

#Ruby超入門 のかわいいキャラクターたちのカーテンコール

Ruby超入門の著者の五十嵐です。これは べこさん の記事へのアンサーソング記事です。Ruby超入門に出てきたオブジェクトさんたちの生い立ちや意図について書きます。

きっかけ

べこさんを知ったのはたしか技術書典3でべこさんが出していたVue.js本を見かけたときでした。


説明にも応用しやすいシンプルな形で、しかもとてもかわいいイラストなので、こんなテイストでRuby超入門もイラストを描きたいと思っていました。絵を描く段階で編集者さんにこんなテイストがいいですとべこさんの本を渡したところ、「では、べこさんに依頼してきますね」と颯爽と電車に3時間乗って話しに行ってくれました。ありがたや〜〜〜。そしてべこさんが引き受けてくれることになってとても嬉しかったことを覚えています。なぜか「これで勝つるわ」と原稿はまだ半分くらいしかできてないのに謎の自信を持てた出来事でした。

オブジェクトさんたち

私が目標にしていたのは「私の頭の中のイメージ、考え方を簡単に正確に楽しく読者さんへ伝える」でした。イラストでイメージ化して伝えることはこれを解決できる1つの良い方法だと思います。

たくさんのオブジェクトさんが並んでいて、それぞれ見た目が違えば「オブジェクトにはたくさんの種類があります」という文章を視覚的に端的に伝えることができます。

ちなみに、動画は手順を伝えるのが上手で、書籍はイメージを伝えるのが上手と違う長所を持つので、補完関係になっています。学習は両方を組み合わせると良いのかもしれません。また今は漫画やイラストの方が作るのが楽ですが、将来、動画も手軽にアニメーションが作れるようになれば状況は変わるかもしれません。

if else

私が好きなのがこのif elseの絵です。(べこさんとまた別のデザイナさんの合作。)

「これらの道は条件により、どちらかを選んで進むことになります。日本語で言うと二者択一です。両方の道を同時に通ることはありません。また、どちらも通らないということもありません。」 という長い文章を絵1枚で見せることができます。

ハッシュ

ハッシュは理解が難しい概念であることが講義の経験として分かっていました。絵からも分かるように、出てくるオブジェクトの数が多くなるので、頭の中へ貯めるのが難しいのかもしれません。

このイラストがよくできているのは、ハッシュさんは入れ物側のオブジェクトであって、中にシンボルさんや整数さんなど別のオブジェクトさんが詰まっていることを分かりやすく伝えています。細かいですが、整数オブジェクトの帽子がハッシュさんの外に出ているので、ハッシュの「入れ物」感が分かりやすくなっています。(べこさんのアイデア)

ちなみに、ハッシュの中にいるシンボルさんは「元々は違う形だったが、長くハッシュの中で生活を続けた結果、この形に進化した」という裏設定があります。

また、配列さんが横長なのに対して、ハッシュさんは縦長になっているのも2つの違いを分かりやすくしています。(べこさんのアイデア)

クラスさん、モジュールさん

難しかったのがクラスさんです。「クラスってなんだ?」としばらく悩んでいました。設計図か工場みたいなものかなぁとRubyConf台湾のときにmatzさんに悩み相談したところ、「設計図はあんまりよくないかなぁ。工場の方がいいね。動いてる感がある。」とヒントをもらい、工場になりました。それをべこさんに伝えたところ、ベルトコンベアでオブジェクトさんを出してくれて、見事にnewを表現してくれていて、控えめに言って神だと思いました。

モジュールさんも難しくて、「クラスが工場だから機械とか何か工場で置いてあるもの?」とみんなであれこれ悩んだ結果、べこさんが弾丸カードリッジのような工場にはめるものを描いてくれて、分かりやすくかっこいいデザインにすることができました。

ちなみにDrinkさんはたぶん一番最後に出てきたオブジェクトさんで、最初はカップの形だったのですが、ホットもアイスもあるよなーと紙コップに蓋型の帽子?をかぶった現在のデザインになりました。それではここで原型となった私の画伯ラフを見てみましょう。べこさんの「再現度高く、かわいみ増し増し」の仕事が分かっていただけると思います。

mapメソッド

配列のmapメソッドはeachメソッドと似ていて、理解が難しいものです。この絵は配列の要素であるオブジェクトが置き換わることを絵1枚で表現しています。

メソッド引数、戻り値

メソッドの章の難関項目として引数、戻り値があります。ここも視覚的に表現したかったのですが、私のラフがほわーんと具体的でなくイマイチで大苦戦していました。しかも〆切も間際で泣きそうな状態。そこで颯爽とmachuさんが「あ、かきますよー。」とさらさらとラフを書き、べこさんがイラスト化してくれあっという間に完成しました。ありがたやー。また、スコープのイラストもとても難しいと思うのですが、いい感じになっています。この章のイラストはmachu&べこペアの無双結果です。

まとめ

と、こんな具合で「かわいいは正義!」を体現する本を作れたのはひとえにべこさんのおかげです。深く感謝しています。「こんな本が作りたい!」と思ったものが形にできました。

べこさんはお仕事募集中とのことで推しのコメントを書いておきます。べこさんは私と同じ高専出身なこともあり、プログラミングの内容まで理解して描いてくれてました。いろいろ提案してくれた後で、「ここはこういう意図にしたい」と伝えると一緒に考えて、とても良い解決案を出してくれました。そしてなによりイラストのかわいさ。おそらくRuby超入門の感想で今一番多いのは「かわいい」だと思います。みんなに好かれるキャラを描いてくれる方です。ということでべこさんを強くお勧めします。(でも仕事の優先権はRuby超入門にあるよ!と囲い込みたい気持ちは大人なので隠しておきます。)

「ゼロからわかる Ruby超入門」は物理書籍版と電子書籍版があります。

技術評論社サイト

Amazon

BOOTH(整数オブジェクトさん缶バッジ付き)


また、共著の machu さんの執筆環境の記事はこちらです。



この記事が気に入ったらサポートをしてみませんか?