give IT a try

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

あなたのコードも公開レビュー?銀座Rails#41に登壇します!(2022年1月25日開催) #ginzarails

お知らせ

2022年1月25日(火)に開催される銀座Rails#41に登壇します。

ginza-rails.connpass.com

ここ1〜2年はコロナ影響もあって登壇の機会がめっきり減ってしまったので、久々の単独登壇になります。
オンライン開催なので、日本全国(もしくは世界中)どこからでも参加可能です。みなさん、ぜひご参加ください〜!

で、何を話すの?

講演内容はちょっと変わっていて、参加者のみなさんが書いたコードをその場でレビューしたり、僕の書いたコードを説明したりする講演になります。

何のコードをレビューしたり解説したりするのかというと、現在Qiitaで開催している「Rubyプログラミング問題にチャレンジ! -改訂版・チェリー本発売記念-」アドベントカレンダーと同じ、「点字メーカープログラム」です。

f:id:JunichiIto:20211104084925p:plain

ただし、Qiita版とは一部条件を変えています。たとえば、Qiita版では「自分が書いたコードをアドベントカレンダーの記事として投稿する」という条件を付けていましたが、銀座Rails版では記事の投稿は必須ではありません。

詳しくは以下のGitHubリポジトリに載せたREADMEを参照してください。

github.com

というわけで、この登壇を成功させるためにはみなさんが書いたコードが必要になります。
ぜひこの「点字メーカープログラム」にチャレンジしてみてください!

FAQ「コードを書かないと参加できないんですか?」

いいえ、コードは必須ではありません。単に参加して話を聞くだけ、でも大丈夫です!

とはいえ、自分でコードを書くか書かないかで当日の内容の理解度はかなり違ってくるんじゃないかと思います。
なので、「自分のコードをみんなでレビューされたりしたら恥ずかしい」という人も、提出はしなくてもいいので一度手元でコードを書いておくことをお勧めします〜。

僕の解答例も初公開します

「点字メーカープログラム」は僕が事前に作っておいた模範解答もあります。
Qiitaに投稿されたコードを見る限り、今のところ僕とまったく同じアプローチをしている人はいないようです。
ちょっと面白い実装になっているので、これはこれでRubyの勉強になると思います!

辛口バージョンもあります🌶

「こんな問題、余裕で解けるわ!」という上級者には、辛口バージョンも用意しています。
辛口バージョンは何かというと、「がぎぐげご」や「きゃきゅきょ」といった濁音や拗音の点字にもフル対応するバージョンです。

f:id:JunichiIto:20211220075715p:plain

テストパターンはこちらのgistに載せています。

点字メーカープログラムのテスト・辛口バージョン · GitHub

設計がしっかりしていないと甘口バージョンを辛口バージョンにぱっと対応させるのは難しいんじゃないかなー、と思います。
すぐに解けちゃった、という人はこちらの辛口バージョンにもチャレンジしてみてください!

まとめ

というわけで、今回のエントリでは2022年1月25日(火)に開催される銀座Rails#41に登壇しますよ、というお話を書いてみました。

すごい人のすごい話を聞いて「へ〜、すごいなあ、ためになったなあ」と思うのもいいですが、たまにはこうやってみんなでワイワイガヤガヤいいながら、自分や他人の書いたコードを突っつき合うのも楽しいんじゃないでしょうか?

みなさんの参加&コードの投稿をお待ちしています!

ginza-rails.connpass.com

PR:改訂版 チェリー本を読めば、あなたも解けるはず!?

僕の作った模範解答は、甘口バージョンも辛口バージョンも「プロを目指す人のためのRuby入門 改訂2版(通称チェリー本)」に載っている知識で説明可能なコードになっています。

ということは、チェリー本を読めば「点字メーカープログラム」も余裕で解けるということかも!?
まだ読んでいない方はぜひ手に取ってみてください😄