---
# System prepended metadata

title: '*Title*'

---

# *Title*
公開可能なタイトル。キャッチーなもの、面白いもの、講演のエッセンスなどが理想です。文字数は60文字までです。

```
Rails アプリの権限制御管理を助ける Gem を作った話
```

# *Session format*
30 minutes

# *Abstract*
公開プログラムの簡潔で魅力的な説明文です。文字数は600字以内です。

```
権限管理、という問題があります。
たとえば管理者はこのリソースにアクセスできる、一般ユーザはできない、というものです。
みなさんの Rails アプリでは権限管理をどのようにマネジメント・担保しているでしょうか。
担保はリクエスト spec で行うこともできますが、関連リソースが増えた場合に RSpec の実行時間を大幅に長くしてしまいます。

煩雑になりがちな権限管理の網羅性・妥当性のマネジメント、そして担保を助ける Gem を作ったので、作った時のお話と、ものづくりは楽しい、というお話をします。
```

# *For Review Committee*
この内容は、審査委員会のみが見ることができます。

## *Details*
アウトライン、アウトカム、対象者など、関連する詳細情報を含めてください。

```
本セッションは Rails 初〜中級者を対象とします。
本セッションでは、トークを聞いた参加者が、自分も何か作ってみよう、と思うことを目標とします。
話者を含め、仕事でコードを書いている人は「自分がエンドユーザーであるコード」を書く機会が少なくなる傾向があると考えています。
ですが、自分がエンドユーザーであるコードを書くことにはいいことがたくさんあります。
たとえばアプローチを自由に選択できること、自分のユーザー体験を自分で設計できること。
何より、書いたコードで自分自身の日々の生活が便利になること。
この体験自体がよいものですし、エンジニアとしての自信や成長にもつながります。
作る対象は Gem ではなくとも小さなコード片でもワンライナーでも構いません。

前半では Gem の設計や気を配った点、後半ではなぜ「自分がエンドユーザーであるコード」を書くのかについてお話をします。
```


## *Pitch*
この講演を検討すべき理由と、あなたがこのテーマで講演する資格があることを説明してください。

```
趣味で継続的にコードを書き続けるには一定のハードルがある、と感じています。
解決すべき課題が明確である仕事や勉強とは違い、
OSS 活動・個人開発では課題を見つけるところからのスタートになるためです。
課題への敏感さ / 鈍感さもありますし、課題に連続性がない場合、どこかで習慣が途切れることもあります。

ですが、自由なコードを書くことは楽しいので、もっと広まるといいな、と思っています。
今回は「自由なコード」のひとつとして、「自分がエンドユーザーであるコードを書く」についてお話をしたいと考えています。
```

## *Speaker Information*
略歴は、500文字以内にまとめてください。なぜこのトピックについて話すのか、ということに関連しています。

```
Rubyist。
```