まなめはうす

良いニュースで、良い人生を。

コードレビューはコードの責任をレビュアに転嫁する作業

言いたいことはタイトルの通りです。

c5meru.hatenablog.jp

コードレビューをつらいと思う人がいるなんて自分には考えもしてなかったので、この記事には驚かされました。指摘を人格否定と思いがちな人がいるのか、人格否定かのような指摘をする人がいるのか、その両方かは分かりませんが、つらいですね。

プログラマである自分にとって、結果という変わらないものではなく、創意工夫を見せることができるコードを見てもらえる場所って一番の見せ場じゃないですか。プロのスポーツ選手だって成績という数字も大事だけれど、いかに試合でファンを魅了できるかも大事だと思うんですよ。だったら、プロのグラマーである我々も品質とか効率とかの数字だけでなく、レビューという最高のステージでレビュアを魅了させてこそだと思うんです。特に、難しいプログラムを任されるようになってからは、いかに難しい仕様を分かりやすくコードに落とし込むことができるかに最大限に頭を使ったものです。

動けば良いだけの個人プログラマと、顧客の要求仕様に対してバグのないプログラムを提供する職業プログラマの一番の違いって、コードレビューがあるかないかだと思うんですよ。そのコードレビューについて思っていることを書いてみようと思いました。

コードレビューはコードの責任をレビュアに転嫁する作業

レビュー後にバグが見つかったらそれはもうレビュアの責任だ。納品後のバグはPMの責任。だから、もしレビュー後の試験でバグを見つけることができたら「ありがとう」と凄く感謝されてきたし、レビュアになった自分も「見つけてくれてありがとう」って何度も言ってきた。「上流工程のバグは、下流工程で増幅する」なんて言うように、できるだけ早く見つけた方が最終的に仕事量が減るものである。後工程になればなるほど、手戻りが増え、お客様への報告に時間がとられ、再発防止で今後の作業が増える。そうならないよう受け止めるのがレビュアだ。プログラマは作るもの、レビュアは保証するもの。個人的には、お互いに90点を取ることで二人でクロスで見ることで99点((1-(1-0.9)^2)*100)を取れるのが共同作業だと思っているけれど、責任はレビュアに移行するものだと思う。

コードはコンパイラが解読するものではなく、人が読むもの

バグのないコードを書くためのたった一つの秘訣は可読性の高いコードを書くこと。これは以前も書いたけれど、可読性というのはコンピュータに読ませるためではなく人に読ませるための可読性。人に読んでもらうことを念頭に書くだけで、全然違うものになると思う。バグを出さないためにはどうするかを考えたら、自分でバグを作らないことではなく自分とレビュアでバグを取ることを考えるし、今後維持管理していることを考えたら第三者でも分かるコードでないといけないと思う。そうなると可読性が第一だ。可読性が高くなればバグがあったらすぐに気づくものだし、気づかないってことは可読性が低いってことだと思う。つまり、コードレビューをやるということは人に読まれることを前提に書くものとなる。バグを見つけるのが人間なのだから、人間が読むコードを書かなくてはいけない。自分が書いたコードが自分によって読みやすいものであることは当然なのだから、自分以外の誰が読んでも分かりやすいコードを書くように意識が変わってくるだろう。

まとめ

プログラマってどんな時に成長するのでしょう。勉強会や研修、技術系のブログなどあるが、基本的には能動的にスキルアップの意識がないとなかなかできないことであり、(こんなエントリにたどり着いてしまった人は別として)多くの人がプライベートな時間を潰してまではやっていないと思っている。そのため、自ら動かないメンバーのスキルアップのためには開発サイクルの中に成長する工程が必要となり、コードレビューがそれにあたると思っている。どう考えてそう作ったかを伝え、それについてどう思うかを聞くことができ、レビュアからは自分ならどうするかを教えてもらえ、それに対する自分の考えを伝える。いわゆる感想戦のようなものだろう。それを成立させるには、その意識を事前に共有しておかねばならないと思うが、それさえできていればコードレビュー以上に成長できる場はないのではないでしょうか。

良いコードレビューで、良い人生を。
バグのないプログラムを大量生産していく開発サイクルの中に、成長の場があるのです。


ソフトウェア・レビュー技術―基礎から実践までのノウハウ
織田 巖
ソフトリサーチセンター
売り上げランキング: 63,496

ちはやふるを読んだ。36冊を一気に読んだ。

とても面白かった。

ちはやふる(36) (BE・LOVEコミックス)
講談社 (2017-11-13)
売り上げランキング: 9

今まで読んだことがなかったんですよ。
ドラマとかになってて名前は聞いていたけれど、かるたの話だってことくらいしか事前知識がなく。嫁があふれる本棚から処分候補に挙げていたので、あるうちに読んでみたいと思って手に取ってみました。いやー、1巻から36巻までを途中カレー作って食べた以外は12時間ぶっ続けで読みました。マイナースポーツジャンルの良さが凄く出てて良いですね。あと1巻出だしが最終話のスタートから始まっているのも構成としては好きなやつです。最初からどこまでストーリー考えていたのでしょうか。

2回ほど涙したのですが、1つは、ヒョロがメンバーを集めて後輩を育てていくことでチームを作ったところ。もう1つは、ずっと一番強い相手と戦い負け続けてきたヒョロが、最後の最後でエースに勝って優勝を決めるところ。ヒョロにずっと泣かされているw ダイの大冒険のポップを思わせるタイプなのかなって思ったりしました。

読み終えたところで「千早はどっちとくっつくと思う?」と聞かれ、私は答えられませんでした。だってほら、由宇がいるし。菫がいるし。三人が一緒でチームであって、どちらかなんて選択できないし。読者のためには決着をつけるのでしょうが、作者の人は大変ですね。この2人以外なんて選択も許されそうにないですし。続きが、そして最後がとても気になります!

良いマンガで、良い人生を。
マンガをじっくり読める時間があるなんて、とても幸せなことです。

ツイッターは芸術だ

更新がんばるぞいと言ったにもかかわらず、月曜火曜と午前様で、水曜はこたつに入ったら即寝オチ。それが良かったのか木金土と3日連続で5時に起きてポケモンGOジム崩ししております。おかげで夜は眠い眠い。今日も眠いと思ったら風邪で熱があったみたいで気づいたら8時間ほど寝ておりました。月曜までにやらなきゃいけない仕事もあるけれど、気休めにお題でも答えておきましょう。

今週のお題「芸術の秋」

プログラミングは芸術だ!
ライブ観戦も芸術だ!
ブログは芸術だ!
歌は芸術だ!

自分が当てはまりそうな芸術を並べてみたらこんな感じになったのですが、芸術って何なのでしょう。対義語とか調べてみましたが人それぞれだし、しっくりする言葉も見つかりません。感覚的には、技術をもって為すことだけれどそこには技術だけでなく感性みたいのも必要になることって感じ。まあものづくり全般的に同じように作っても違いが出てきますからね、そういうのだとしましょう。

そんな芸術がなぜ秋なのか。暑くもなく寒くもなくスギ花粉も飛ばず集中するのに最適なのでしょうか。ググってみたらだいたい正解で、自然が映えるこの時期が一番感性豊かになるとのこと。となると、紅葉を見たり、お月見をしたり、秋の自然を感じたときにした行為が芸術的な行為なんだと思う。

って、それツイッターだよね?

紅葉見たらテンションあがってツイッターに写真をあげるし、十五夜には「お月見なう」というツイートが並ぶ。ライフログとして使っている人もいれば、何かあったときだけ使う人もいる。それでも、感情を動かされたらSNSに発信している人が今は一番多いと思うし、それがFacebookInstagram、そしてブログだったりする人もいれど、自分の観測範囲ではまだまだツイッターが一番だと思う。はー、ツイッターが芸術だったのか。

どうりで今日はツイッターの投稿数が多かったわけだ、秋だから仕方ないね。(原因:シン・ゴジラ地上波初放送)


良い芸術で、良い人生を。
なお、最も芸術的な作品は「今日は月がきれいですね」というツイートに決まりました。

芸術と科学のあいだ
芸術と科学のあいだ
posted with amazlet at 17.11.12
福岡伸一
木楽舎 (2015-11-30)
売り上げランキング: 81,727

Yoshino Nanjo Live Tour 2017 <・R・i・n・g・> 両国国技館千秋楽に行ってきました

7か所を巡る全国ツアーも両国国技館の2日間でファイナル。まさに秋場所千秋楽を楽しんできました。

まあ自己満足エントリですのでスルー推奨です。



席はなんとアリーナ中央ど真ん中、土俵が建てられるポジションにおりました。B組中央先頭、目の前をカメラが何往復もしておりましたが、前に空間があるというのはとても良く、センター11列目はとても見やすい場所でした。・・・それはつまり見られてしまっている可能性も高いということで認知厨ごころをくすぐられる席でしたね。さすがにフリー素材になるほどではないですが。一度だけ会場をぐるりと見まわしたのですが、この場所を中心に作られた場所だからかもしれませんが、両国国技館は本当に良い会場だなって思いました。

セトリはこちらのツイートをお借りします。って、静岡では君が笑む夕暮れやったのかよすげえ羨ましい(今初めて他会場のセトリ見た)

登場は、「ユアワールド」をうたいながら真っ白の衣装で出てきたときにはその姿に見とれてました。今回はアルバム「サントロワ∴」のツアーでありながらも昔の曲を織り交ぜる感じのセトリ。「逢えなくても」では高音の透き通った声に脳がとろけておりました。からの大好きな「Recording.」の流れ本当に素晴らしくて、またこの曲を聞けたことに感謝であります。そして今回一番大好きな「スキップトラベル」は心の底からノリノリで聞いてやりましたw 「一切は物語」はやなぎなぎさんが登場。なんと最終日だけだったとのことで一曲だけですが、MCも紹介だけで終わってしまうのが名残惜しくて南條さんが「最近ハマってることなんです?」とか無茶ぶりしたら「石ほりしてます」と答えてたのが何をしているのが凄く気になってもっと突っ込んで欲しかったです。まさかソシャゲ?とか思ってましたからね(詫び石てきな石)。日替わり曲は「ほんとはね。」これをツアー初日の地元静岡と千秋楽にだけ歌った意味ですよ。デモテープに込めた思いが、やっと今歌えたってこと、それだけ想いのつまった曲なんだなって私は感じました。「OTO」「pledge」は完全にトランス状態になりぶっ飛んでましたw 落ち着いた南條愛乃ライブにはなかなか見れないタイプの曲だと思いますよ。確か「pledge」ではマイクスタンドも使っていたのですが、これが某μ'sの3周年ライブで「ありふれた悲しみの果て」歌ったときのマイクスタンドを持った時と全く同じ手の動きをしてて、あのときマイクスタンドに憧れた自分を思い出しましたね。

ライブの締めはツアータイトルにもなっている「・R・i・n・g・」。ちなみに今回のアルバムは3rdアルバムであり、発売日が南條さんの33歳誕生日であり、好きな数字が3であったりと、何から何まで「3」にこだわったアルバム。そして作詞はすべて女性に「30代」をテーマに書いてもらった曲ばかり。もうね、アルバム何度も何度も聞いてみんなすげえなって思いつつも、やっぱり畑亜貴のスキップトラブルが本当に良くて良くて超えられず、アルバム買って1か月くらい最終曲「・R・i・n・g・」までたどり着かなかったんですよ。聞いて聞いてって南條さん本人が言っていたにも関わらず。まあファンの方は分かっているでしょうが、彼女、某μ'sで某畑亜貴に影響されたのかどうかはさておき、作詞にめちゃくちゃ想いを乗せてくるんですよ。コアなファンは本人作詞曲が出たらその歌詞はどんな思いで書かれたものかを当てにいくといった水面下の戦いが繰り広げられており、前回ライブでも今回の歌詞は深読み勢も誰も当てることはできませんでしたねなんてMCで言っちゃったりしてますからね。やばいですよ、冬のライブの告知のために作られた曲だなんて誰が想像できるんですか、なんかあのMC聞いてた時はこの子は考え過ぎて自滅しちゃうんじゃないのかイノベーションのジレンマではないけれどなんかそういう方向に行かないといいなとも思いつつもだいたいそういうことをやるのはシングルカップリング曲で、アルバムではいろんな方に(と言ってもあんまりメンバー変わってないけれど)第三者の視点で書いてもらうことで視野が狭くならないようにしていてほんとバランス取れてるなーって思うんです。バラードで伝える曲が多い一方で、KOTOKOさんのKOTOKOさんらしい曲が素晴らしいアクセントになってたり、それでいて私は畑亜貴にやられてたり。そんな感じなのでファンも本人が聞いて聞いてってラジオで言ってたらそれは歌詞の意味を汲み取れるかの一種のバトルみたいなものですよ。お前の感じたRingはどんなRingだったのかと。

で、その「・R・i・n・g・」に向かい合おうとしたら、最高の演出ですよ。デビューからこれまでの映像がどんどん流れ、ライブ前にファンが南條さんに宛てたメッセージ写真が映し出され。曲だけでなく、最高の演出で・R・i・n・g・をぶつけてきたわけですよ。もうね、ノックアウト。泣いちゃうよね。負けました。一生ついていきますって感じ。私の顔は(・R・)(・i・)(・n・)(・g・)きっとこんな感じに変化していましたよ。この中点は私の目・・・のわけないです。詳細はMyGirlvol.19に書かれていますので読んで欲しいのですが(宣伝)、点が5つで五周年ってことなんですよ。これまでの思い出が歌詞になっているんですよ。その前提があって、この演出最高じゃないですか。で、この演出はライブだけでなく、終わって会場を出るところにもあったんですよ。Ringの歌詞にも「未来にまで繋がれ」ってあるんですけど、これがきっとこの演出に繋がっているんだって思って、こういう細かいところでシナリオ回収してくれるところ、最高ですよ。


良い音楽で、良い人生を。
ライブ後に振り切ったテンションを抑えるために自販機で雑に買ったコーラを片手に冷たい風に吹かれながらタイムラインで他の人の感想をふぁぼるのほんと気持ち良かったです。


頭の良くなるゲーム「Algo」をやってみた

「大学進学先をどうやって決めたか」というのは、人生の大きな決断の一つに入ると思うんですよ。しかし、私はそういう大事なところで何も考えずに、その時にできることをしてきただけでした。数学が得意だから数学科に入ったり、教育ソフトを作るバイトをしていたから教育系のソフトウェアの開発にかかわれる会社に入ったり。そんなだから、大学に入って同級生から「〇〇がしたいから」「〇〇に憧れて」という志望動機を聞いたときは凄いと思ったし、就職してからネットでさまざまな情報を得て、もう一度就職活動をやれるならやってみたいこといっぱいでてきたり、後から気づくことばかりの人生を送っているのですが、なんだかんだで悪くない選択をしてきているので、運は良いのだと思います。

ピーター・フランクル。彼の名前を聞くと、こんなことを考えてしまうんです。大学で最初に仲良くなった友達が、「ピーターさんに憧れて数学科を選んだ」と言っていたので。そんなピーターさんが地元で講演会をやったらしく、うちの母親がそれに参加したというのです。何を聞いてきたのかまでは聞きそびれてしまいましたが、サイン付きのゲームを手に入れたよと渡されたのがコレ。

f:id:maname:20171104185344j:plain

ああ、これ。良く店頭で見るやつだ!

ということでさっそくプレイしてみました。


1~4人でできるゲームで、今回は2人対戦用ルール。
1.手札4枚を相手に見えないように、昇順に並べる。
2.山札から1枚カードを引いて相手の1枚の数字を予想してアタックをする。的中すればオープン、はずれたら山札から引いた一枚を公開して手札に昇順に加える。
3.アタック成功したら、もう一度アタックをするか、山札から引いた一枚を非公開のまま手札に昇順に加える。
4.これを繰り返して、どちらかの手札がすべてオープンになるまで繰り返す。
あとは2戦やってポイントが高い方が勝利(先行不利なので2回やって1ゲーム)

TAGIRONと同じか!というよりは、TAGIRONがこれを活用している感じですね。TAGIRONでもそうでしたが、私が嫁に全然勝てません。

f:id:maname:20171104185435j:plain
f:id:maname:20171104185450j:plain

ちなみに、このプレイ写真は5ゲーム目にして2勝目をどうにか挙げた私の図。先行で圧倒的に追い込まれてからのまぐれ勝ちやったー!の回です。5回やってみましたが、アタック成功後にもう一度アタックすべきかSTAYさせるべきか、感覚的には難しいところ。カード的に攻めても痛くないときは手札に収めても効果あるし、手札に入れたくないときはオープンで手札に入れることもしたくない。現状そう感じており、まだまだ試行錯誤が楽しめそうなゲームなので、もう少し楽しもうと思います♪

良いゲームで、良い人生を。
最近、ねじをはずそうとしたら舐めてしまって、そんなときはゴムをドライバーとねじの間に入れて回すと良いといわれて下のコイツを一つ犠牲にしてしまい、ラスト1つになってしまったので記念に写真撮ったのが下のになります(意味なし)

f:id:maname:20171104192322j:plain


アルゴ
アルゴ
posted with amazlet at 17.11.04
学研トイホビー
売り上げランキング: 279

お題「私がブログを書きたくなるとき」

今週のお題「私がブログを書きたくなるとき」

今回もはてなのお題から。
何を隠そう、11月は毎日ブログを更新しようと心に決めていたのですが、まさかの1日から帰宅できない事態に陥り2日もぐったり。前々から決めていたのに記事の準備もしていなかったのかと言われたら耳が痛いところですが、まあ過ぎたことは仕方がないのでできる限り更新していこうと軽い気持ちで発言しておきます。明日更新してなかったらごめんなさい。

そもそも11月はがんばるぞって思ったのは、11月はブログ月間とかそういうのなかったっけ?と頭の片隅にあったからなのですが、思い出すたびにググっても何も出てこなくて記憶違いかなって首をひねっていたのですが、本日やっと見つけることができました。

それは、11月は好きなブログを告白する月であるということ。

言われてみればそんなのあったなーもう10年近くやってる恒例行事だなーと思いつつも、あれぇブログ月間的なのって本当になかったのかと自分の記憶と違って少々悲しい気持ちに。まあきっかけは勘違いからでも、更新するぞという決意をしたことには変わりないので。ストックがないどころか、すでに明日何も書くことなかったらどうしようというレベルですが。

でも、私が20年以上毎日更新しているのは「更新する」という習慣が先にあって、更新する内容なんてPCの前に座ってから考えていましたからね。頭の中で論理的に構築が終わってから書くのではなく、書きながら考えて文章にしていくスタンスです。それがゆえに更新に使う時間は人よりも凄くかかってしまうのですが、慣れの習慣を持つことの方を重視していきたいです。


そんなわけで、お題への回答は
ブログは書くのが当然。書かない時こそ理由が存在するもの。
であると思っています。
実際、読んだけれど読んだことを表に出していない本も案外ありますからね。出すものを制限するのではなく、出さないものを制限する、それがインターネットがインフラとなった時代の常識だと思います。


良い習慣で、良い人生を。
今の自分の最も必要な習慣は運動だったりするのですが。



今月読んだ本(2017年10月)

毎週更新から毎月更新へ頻度を落としてみた。前半は無職転生を延々に読んでいたので書くことも無かったのでw









良い読書で、良い人生を。
10月の一番のお気に入りは冴えない彼女の育てかた13このラノベとの出会いは3巻で、丸戸さんのサイン会のチケット目当てで秋葉原まで出向いて買ったという。結局外れたし、そのまま放置していたけれど、アニメが最高過ぎて原作に戻ってきたら、何で読んでいなかったのだと思うほどに最高 of 最高。と言いつつも最初の出会いのシーンの分かりやすさのためにアニメから入ることをおすすめしております。そしてこれが最終巻ですよ、最終巻。前の巻の最後で絶叫したんですけどね、もうここまできたらゴール分かってるじゃないですか。その上でちゃんと収束させてくれた。アフターストーリーこそ一巻分使って欲しい派としてはこの上なく最終巻でしたよ。この空間にずっとずっと触れていたい!!




冴えない彼女の育てかた13 (ファンタジア文庫)
丸戸 史明
KADOKAWA (2017-10-20)
売り上げランキング: 77