pplogの過去のポエムを複数単語で絞込できるようになりました。
pplogは、自身と向き合い想いを言語化するためのサイトだったりします。(色んな使い方があります)
最新のポエムだけが他人に見えますが、 自分の 過去のポエムを見る機能があります。
この過去ポエムは検索機能が付いているのですが、先日まで複数単語で絞り込むことが出来ませんでした。
pull requestが来た
id: shootaさんからpull request
を頂きました。
勝手にやった!まさにこれだ!と思いました。
よし、コードレビューをしよう!
命名に突っ込んだ
これを見て思うところがありました。
search_word_arrays = params[:keyword].gsub(/ /," ").split()
私は言った
for文にナニカを感じた
し、Cぽい!
search_word_arrays = params[:keyword].gsub(/ /," ").split() posts_arel = Post.arel_table[:content] keyword_where = posts_arel.matches("\%#{search_word_arrays[0]}\%") for i in 1...search_word_arrays.length
私は言った
controllerにイロイロ書いてあった
も、モデルがいいんじゃない!?
Railsのコントローラーの責務を意識する ってのを指針にしてます。
そして、彼、ナンカ嬉しそうなので、補足しました。
- Railsぽさの観点でコードレビューしたことを伝える
- Pull Requestは育てるのが良い
というのを意識しました。
大事なのは姿勢を認めること
これだなーと思いました。
許可を求めるな Pull Request せよ
— 🌈KOSHIKAWA (@ppworks) 2014年5月23日
仲間たちの目線
見てるよ
これ、すごいいいなと思ってて、@ken_c_loさんの凄さはこういう、 仲間が見ているよ という安心感を自然にするところですね。こういう姿勢もチームプレイにおいて大事だと思うのです。
さらなるcommit
やる気の高まりにより、連日のcommit
です。
見た目から感じる安心感について
コードを見たときに 不安な気持ちにならない 事は大事だなと思っていて、不安を取り除くためのアドバイスをしました。
@grouped_posts = Post.search(current_user, params)
なんか、こう。current_user
のpostだけが対象になっているんだよね?大丈夫だよね?と思ったのでコメントしたのです。
褒めた
いいところを褒めました。
余談: マジクールとロジクール似ているなって思いました。
意図をわかりやすく
ロジックを読めば分かる ではなく、コードから意図が伝わる ことを重視した視点でのし的です。
def search(current_user, params) search_words = params[:keyword].gsub(/ /," ").split posts_arel = Post.arel_table[:content] keyword_where = posts_arel.matches("\%#{search_words.first}\%") search_words.find_all{|word| word != search_words.first}.each do |word|
なんかパッと見の意図がわかりづらかったのでコメントしました。
例外的な動作が気になった
こんなとき、どうなりますか?という質問です。
def search(current_user, params) search_words = params[:keyword].gsub(/ /," ").split
テスト書こう
例外的な話も出てきましたし、テストあると安心ですね。というご提案。
more commits!
とどまることを知らない、犬のやる気です。
はやめのreturn
method内がif
やunless
で囲まれていた場合に、 早めにreturn することでコードの見通しをよくするという観点でコメントしました。
ナンカそういうこと、リーダブルコードに書いてありました。
リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)
- 作者: Dustin Boswell,Trevor Foucher,須藤功平,角征典
- 出版社/メーカー: オライリージャパン
- 発売日: 2012/06/23
- メディア: 単行本(ソフトカバー)
- 購入: 68人 クリック: 1,802回
- この商品を含むブログ (140件) を見る
こちらの状況を伝える
ごめん、あとで見る!ってのをちゃんと伝えました。
無機質でもいいですが、それはチーム内の雰囲気や自分がどんな雰囲気で一緒にものを作りたいかで選択すれば良い話です。
injectでDRYに
最初から、injection
使えそうな予感がしていたのですが上手く言語化出来ず、コード書いてみないと分からんなーと思っていたので、実際書いてみたら動いたので、それを案として出しました。
この部分は、複数のAND
条件を組み立てる方法として、qiitaにあげてあります。
Postモデルから、search_wordsに含まれる単語をAND検索する
もっと褒める
良い所は褒めあう文化です。
そしてLGTM
最終的なコミットからの、
ヨサソウ (LGTM)
ヨサソウ: 日本語版LGTMのコトです。
良かったこと
- 楽しかった
- 許可を求めるな Pull Request せよ を体現する人とナニカを作るのは楽しい
@satococoa氏も、 @fukayatsu 氏も、@fakestarbaby氏も、みなこうして、高まりにより pull requestをくださった方々でした。
githubの pull request 開発は、 勝手にやった ことをアウトプット出来る素晴らしい仕組みだと思います。
このようなモノづくりの方法は以下の様な本でも学べますので、参考にしてみてください。
Web制作者のためのGitHubの教科書 チームの効率を最大化する共同開発ツール
- 作者: 塩谷啓,紫竹佑騎,原一成,平木聡
- 出版社/メーカー: インプレス
- 発売日: 2014/10/24
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (3件) を見る