しょぼいEdTech

小さなコミュニティーから新しい価値観を

めんどくさいの捉え方

突然ですが、私は学習塾で講師をしております。

高等部の全体管理をやっているのですが、元々ほとんどの業務を紙で行っていて
効率化のためちょっとずつペーパーレスを目指している次第です。

そこで今回書きたいことは、「めんどくさい」の種類についてです

私は高等部の権限しかないので、小中等部やシフトの管理はできないのですが、
小中の授業後、宿題を全部紙に箇条書きにしたり
アルバイトのシフトをペンで直接カレンダーに書き込んだりしていて
情報の共有がおくれがちです(わざわざ教室に見に行ってる)

客観的にみると、gooleカレンダーとtrelloつかえばいいやん
と思うわけですが、導入がめんどくさいみたいです。

今回rails でアプリを作成していて、同じような状況に遭遇しました

コントローラーでレコードを指定する際、

@ladycategory = ProductCategory.find(1)
@ladies = Product.where(product_category_id: @ladycategory.subtree).order('id DESC').limit(4)

@ladycategory でカテゴリーテーブルから一行取ってきて
@ladiesにproductテーブル内のカテゴリーID1のものを取得しています。

で、githubで「scope」を使いましょうとコメントをいただきました。

正直、レコードとれてるんだからよくね?とめんどくさく感じたのですが
変更した後、主観的になって初めて気づきました。
あのめんどくささは短絡的なめんどくささだったんだなと

コントローラ

@ladies = Product.active(@ladycategory.subtree).sorted

モデル

scope :active, -> (category) { where(product_category_id: category) }
scope :sorted, -> { order('id DESC').limit(4) }

このように修正しました。

これ、レンダーと同じ理屈で
今後の作業が効率化できる

一度scopeをかいておけば
.sortedと記述するだけで降順に4件取得できるんですね

修正も、activeとsortedで分けることで、
後からみたときに何を修正すればいいのかわかりやすい

このような効率化が積み重なって、大きな差が生まれるのかもしれないなと感じました。

要はめんどくさいの捉え方が重要なんかなって

長期的にみると、確実によくなることは
その場では準備するのはめんどくさい
今問題ないならそのままでいいや
って言うのが短期的なめんどくささ

将来的な効率を考えると
今の作業がめんどくさく感じるのが
長期的なめんどくささ

f:id:haru6532:20190813195036p:plain

必然的に新しいことに取り組むことにもなるので
プログラミングだけでなくて
あらゆる分野において、長期的に「めんどくさい」
と感じることは成長に欠かせないな、などと