2020-12-31: 2020年買って良かったもの、良くなかったもの3選

2020年も終わりなので、今年買ってよかったもの、良くなかったものを3つずつ上げて終わろうと思う。それではどうぞ。

良かったもの第3位「バックパックタイプのペットキャリー」

第3位はこちらの商品。

今年は猫が糖尿病になったこともあり、動物病院に行くことが多かったのでとても役にたった。特に、私のように歩きで移動する人は肩掛けや手持ちのタイプだとつらいのでおすすめ。ただ、構造上若干重心が後ろになってしまうので最初は気になるかも。

良かったもの第2位「AfterShokz Aeropex」

在宅で仕事することが圧倒的に多くなった2020年、ミーティングなどのときは開放型ヘッドセットゼンハイザー PC 360 SEを使っていたのだけど、いくら開放型とはいえ半日つけているとしんどくなるので購入した初めての骨伝導イヤホン。装着感も悪くないし、軽いし、耳を覆わないというのは思ったよりも楽でよかった。ただ、Linuxではまだヘッドセットとして認識されないので、単なるヘッドホンとして利用している。マイクは別途購入したものを使っている。これが沼の入り口…

なお、人の声を聞くにはいいけど、音楽を聞くという用途だとしんどいと思う。最近は音楽聞く機会が減ってPodcastやYouTubeを流し聞きすることのほうが多くなったので、そういった生活の変化にもマッチしてよかった。特にリングフィットしながらPodcast聞けるようになったのは大きい。

良かったもの第1位「エアリオン・スリム デオドライザー」

2018年に家を買ったときには、在宅で仕事をするつもりはなかったので作業スペースを考えていなかった。流石にリビングでやるのはしんどいので、仕事中は猫のための部屋(キャットタワーやケージ、トイレがある部屋)に居候をさせてもらっている。そうなると、当然のことだがトイレの匂いはなかなか辛くて、消臭ビーズや置型ファブリーズをたくさん設置してしのいでいた。

匂いを何とかする製品は大別すると「消臭する」と「別の匂いで上書きする」という2つのタイプがある。できれば別の匂いで上書きするのではなく、無香でもっと強力なものがないかと探してたどり着いたのがこの商品。調べてみるとかなり歴史のある商品だとわかったし、ダメでもこれくらの金額ならと買ってみたのだけど、めちゃくちゃ効いて正直驚いている。

これを設置する前はトイレを洗浄してから3週間目くらいが一番しんどく、うっすらとアンモニア的な匂いが気になって集中できないときもあったのだけど、そういうことがほとんどなくなったと思う。今年最も生産性に寄与した商品かもしれない。

良くなかったもの第3位「Apple EarPods」

良くなかったものはアサマシリンクは置かないようにしよう。第3位はAirPodsじゃなくてEarPods。Aeropexを買う前に3.5ミリジャックのEarPodsを買ってみたが、まったく耳に合わなくてだめだった。昔から、耳の形の問題で普通の(カナル型ではない)イヤホンで耳にあうものがなかったのだけど、EarPodsも同様にだめだった。残念。

良くなかったもの第2位「ポータブル ブックスタンド「スマートミー(SmartMe)」

ポータブルな書見台。場所を取らないのがいいと思って買ったけど、300pくらいある本はそもそも置けなかったり、置けても安定しない。学校の教科書のようなものにはちょうどよさそうだが、技術書には向いてなさそう。

良くなかったもの第1位「Google Nest Wifi」

Google Nest WifiをやめてASUS RT-AX3000 にした にも書いたとおりだが、期待していただけにがっかり感が強かった。アンテナが伸びてるルーターは本当に嫌いなので、落ち着いたデザインの良いルーターが発売されることを祈っています。

おわりに

今年は新型コロナの影響で生活が大きく変わったので、その変化にうまく対応できるようにいろいろな買い物をしたように思う。一方で、変化に対応する、在宅勤務に合わせるといった守りの買い物が多かったようにも思うので、来年は生活を意識的に変えるような攻めの買い物(?)もできるといいなと思った。

2020-12-28: 仕事納め

今日で仕事納め。ペパボは、午後から年末総会でその後社員旅行というのが毎年恒例のイベントだったが、今年はもちろん社員旅行はないし、年末総会はZoomでの開催となった。

今年は四半期報告会などもZoomでやっていたので、新しいやり方ならではの楽しみ方ができて気に入っていたのだけど、年末総会はさらにレベルアップしていてすごかった。

年に1度みんなが集まるペパボの年末総会も今年はオンラインでの開催となりました。
でも、自宅に届けられたおいしいごはんを食べながらオフラインと同じくらい楽しい時間を過ごしました😊
2020年も本当におつかれさまでした!!!!! pic.twitter.com/DnTYQT2iPQ

— GMOペパボ (@pepabo) December 28, 2020

これだけ見るとふざけた感じだけど、業績発表もとてもよく作られていたし、「もっと面白くできる」を体現したイベントでとてもよかった。新しい形での開催に向けて動いていたバックオフィスの皆さん本当にお疲れさまでした&ありがとうございました。

さて、12月のお仕事はちょっと溢れてしまって、終わらせようと思ったものはいくつか終わらなかったのが無念。一方で、チームメンバーに助けられたところは今まで以上に多く、みなさん本当にありがとうございました。来年は、チームという枠でも新しいチャレンジもしてみたいので、引き続きよろしくおねがいします。

Kinesis Advantageのキースイッチを交換して静音化した話

今年は、2020-05-23にはじめての自作キーボードとしてChoco60を作ったのだけど、腰を据えて作業するときは今まで通りKinesis Advantageを使うことが多かった。ただ、自作キーボードを作る過程でスイッチの軸の違いを知り、特に静音スイッチがとても良かったので、茶軸のKinesisの音が気になるようになってしまっていた。また、音声やビデオチャットでは、なるべくタイプ音が入らないようにとヘッドセットを使っていたけど、それでもかなりタイプ音が入ってしまっていることもわかり、いい加減なにか対策をしなければと思っていた。

インターネットを調べてみると、Kinesisをカスタマイズしている事例は結構あって、一番最近衝撃だったのはoobaさんによる分割&ワイヤレス化だった。また、別の記事ではパーツ部分だけ買うこともできるという話があり、いわゆるお椀部分だったら壊れてもなんとかなるだろうという謎の安心感を得てしまったので、思い切ってキースイッチの入れ替えにチャレンジした。

参考情報

今回の作業で参考にした記事を紹介しておく。自分がオリジナルでやったことはほとんどなく、これらのサイトの情報を理解して進めただけである。先人たちに感謝するしかない。

oobaさんのKinesis AdvantageのBLE Micro Proによる完全無線化まとめ - Togetter BLE化はもちろん、配線図があったので基盤が剥げてもなんとかなりそうと思わせてくれた。(そして実際に役に立つことになってしまった…) Kinesisのキースイッチを交換した話 - Qiita 今回の自分と同じくキースイッチを交換した方のログ。とても勉強になった。 Kinesis Advantage with Cherry MX Green Switches - Imgur 上のQiitaの記事からも参照がある、スイッチにダイオードを仕込む場合の向きが乗っている記事。 Kinesis Advantage: Cherry MX RedとBlue switch (赤軸化、青軸化) - すりこぎDIARY Kinsisのパーツを取り寄せて交換した方の記事。 作業ログ

予め購入しておいたGateron Silent Black Inkをルブして、ダイオードをスイッチの中に仕込む。他の方の記事では、スイッチの中にダイオードを仕込んでいないが、どうせスイッチを開けるのでやってみようと思ってやった。結果としてはやってよかったと思う。Kinesisは、ご存知の通り基盤を湾曲させて半田付けしなければならないので、どうしても端っこのスイッチをつけるのに苦労する。ダイオードの足をおることで、スイッチと基盤を固定することができるので、はんだ付けの作業が少し楽になったと思う。

この投稿をInstagramで見る

Kenichi TAKAHASHI(@_kenchan)がシェアした投稿

足が生えたみなさん。前日準備はここまで。

この投稿をInstagramで見る

Kenichi TAKAHASHI(@_kenchan)がシェアした投稿

朝から半田をひたすら吸い取ったが、途方も無い作業だと感じて絶望しているところ。わかっていたことだけど、スイッチはホットボンドでくっついているので、これを剥がすのが本当に大変。半田が取りきれてないのか、ホットボンドが取れてないのかわかりにくくて……

半田を吸い取るときは、温度を高めにしないとだめだった。270度では溶けないことが多かったので、320度で一気に溶かして吸い取っていた。そもそも半田の吸い取り自体初めてだったので、事前にYoutubeの動画をいくつか見てやり方を学んだ。

この投稿をInstagramで見る

Kenichi TAKAHASHI(@_kenchan)がシェアした投稿

とりあえず半分終わったので、差を確かめようと組み立てたところ。

この投稿をInstagramで見る

Kenichi TAKAHASHI(@_kenchan)がシェアした投稿

実際に打ってみるとかなり違ってて満足する様子。

これは勝利では。左が静音黒、右手が茶 pic.twitter.com/gkXhBqYIo4

— 令和最新版 津田沼 (@kenchan) December 19, 2020

端っこはこんな感じではんだ付けする。マステとダイオードの足のおかげでかなり順調。

組み立ててみたら、キーが1つ効かなくなってしまった。スイッチを剥がすときに嫌な予感がするキーが1つあったのだけど、見事にランドを破壊してしまったようだ。が、自キーの知識と配線図のおかげでリカバリーに成功。これが思ったとおりにうまくいったときは成長を感じた。

すべてキーをはめた完成系は、今までと何ら変わらないので省略。

ほぼ丸一日かかってしまったのだけど、無事完成してよかった。

使った機材や道具 Gateron Ink スイッチ v2| 遊舎工房 * 68 【保守部品】ダイオード リードタイプ(100個入り) | 遊舎工房 潤滑剤 | 遊舎工房 Krytox GPL 105 Krytox GPL 205g0 白光 ダイヤル式温度制御はんだこて FX600 エンジニア ハンダ吸取器 SS-02

見積り物語「相対さんと絶対さん」

このエントリは、GMOペパボエンジニア Advent Calendar 2020 - Adventarの2日目の記事です。1日目はVPoEの@hsbtによるGMO ペパボの技術スタック 2020でした。明日はCTOのあんちぽさんです。

はじめに

むかしむかしあるところに、相対見積りが好きな「相対さん」と、絶対見積りが好きな「絶対さん」がいました。二人は、お手伝いにかかる時間を見積もる遊びが大好きです。今日もおじいちゃんの家の庭にある大きな岩を、河原に捨てに行くお手伝いにかかる時間を見積もって遊んでいました。

爺「今日は、庭で邪魔になっている岩を河原に捨ててきてほしいんじゃ。大きさは見ての通り、小、中、大、特大の4つじゃが、運べる大きさまででいいからね。」

相・絶「はーい!」

絶「見積に影響しそうなのは岩の大きさと、河原までの距離かな。ここから河原までの距離は、ここから家までとだいたい一緒だね。」

絶対見積り編

相「じゃあ、早速かかる時間を見積もってみよう。今日は絶対見積りでいいよ。」

絶「よーし。じゃあまずは岩を持たないで歩いたときの時間を考えてみよう。私はだいたい30分くらいかな。」

相「私は頑張っても40分はかかりそう。絶対さんは歩くのが速いから、いつもおいていかれないように大変なんだよ?」

絶「ごめんごめん。じゃあ岩を持って歩いたらそれぞれどれくらいかかるか考えてみよっか」

相「そうだね。私は"中"の石と同じくらいの岩をもったことあるけど、すごく重くて大変だったんだよね。だから、"中"を河原まで持って歩くのは急いでも60分くらいかかるんじゃないかな。大はどうかなぁ、120分くらいかかるんじゃないかな。"特大"は全然想像できないけど、多分240分くらいかな?小は全然重くなさそうだから、持ってないときと一緒でいいよ。」

絶「私は、"大"くらいの岩を持ったことあるけど、あれを持って歩くとなると、倍以上かかりそう。だから"大"で80分くらいかな。"小"と"中"は難しいけど、歩くスピードとほとんどかわらないんじゃないかなぁ。"小"は30分で、"中"は40分くらいにしよっかな。"特大"は私もわかんないなぁ。あのまま持っていくより砕く道具をもってきて砕いたほうがいいかもね。」

二人は絶対見積りの結果をまとめて、ノートに書きました。

| | 小 | 中 | 大 |特大| |相| 40 | 60 |120 |240 | |絶| 30 | 40 | 80 |??? |

相「あとは、どっちがどれを運ぶかだけど……」

絶「その前ににおなかすいちゃったからおやつにしようよ~」

相「そうだね!運び方はおじいちゃんにも相談して決めよう!おやつ~」

相対見積り編

相「じゃあ、早速かかる時間を見積もってみよう。今日は相対見積でいいかな?」

絶「いいよ!じゃあまずは岩を持たないで歩いたときの時間を考えてみよう。私はだいたい30分くらいかな。」

相「私は頑張っても40分はかかりそう。絶対さんは歩くのが速いから、いつもおいていかれないように大変なんだよ?歩く時間はおいておいて、石の重さを比べてみようか。かかる時間は、石の重さとか大きさに比例するんじゃないかな。」

絶「おっけー。重さを測れるものも、大きさを測れるものもなさそうだから、基準を決めて比較してみようか。」

相「そうだね。じゃあ真ん中の"中"を"2"として、それぞれ岩が"中"の何倍くらいありそうか、相対見積りしてみよう。」

絶「"小"はだいたい半分か、それよりは大きいくらいかな」

相「私もそう思う。"大"は"中"2倍くらいありそう。特大は……わからないけど、5倍くらいありそう?」

絶「うんうん。私もそれくらいだと思ってた。じゃあ相対見積はこれで終わりかな」

二人は相対見積りの結果をまとめて、ノートに書きました。

| 小 | 中 | 大 |特大| |1.5 | 2 | 4 | 10 |

相「じゃあ、これを時間に換算してみよっか。それぞれ30分と40分を基準にして、掛けてみるとわかるかな。」

絶「その前ににおなかすいちゃったからおやつにしようよ~」

相「そうだね!かかる時間や運び方はおじいちゃんにも相談して決めよう!おやつ~」

感想戦編

さて、2つの見積り方法を物語っぽく紹介してみましたがいかがでしたでしょうか。会社のslackで「相対規模見積りをするときもつい時間から逆算してしまう」という話を聞いたので、その考え方を変えるヒントになればと思い、このエントリを書いています。

前提として、どちらかが絶対的に優れているのではなく、プロダクト(およびプロジェクト)の性質や、チームメンバーのスキルのばらつき具合、不確実性の度合い、結果としてしなければいけないコミットメントの強さ、見積りに掛けられる時間、などなどのトレードオフによって方法を決める必要があるということは述べておきます。

たとえば、以下のような状況を想像してみてください。それによって、どちらの見積りがより役立つかは変わってくるでしょうし、プラスアルファでなにかしたほうがいいケースもあるでしょう。

絶対さんと相対さんの歩くスピードが一緒だったとしたら? 二人は、お母さんから急に呼び出されて、どちらかが別のお手伝いに駆り出される経験を何度もしていたら? 実は、以前にも同じ大きさの石を運んだことがあって、お互いどれくらいかかったか覚えていたとしたら? 最終的に出した見積りの時間を超えてしまったら、晩ごはん抜きだと言われたら? 河原までの距離が実はとても短く、徒歩5分くらいだとしたら?

1番目の例は、メンバー間の能力差を無視できるほど同じスキルを持った人が集まっていたら?ということと同じでしょう。2番目は、不確実性が非常に高いことがわかっている、あるいは割り込みが予想されるプロジェクトが想像できます。4番目は、強いコミットを求められるプロジェクトですが、この場合はバッファのとり方も重要になりますね。

最初の物語の(暗黙の)前提を崩したり、前提を新たに加えることで、どちらの方法がよいかも、見積りの結果をどう使うかも変わってくるでしょう。

ポジショントーク

さて、「要はバランスです」みたいな話になってしまいそうなので、最後に私のポジショントークをいれておきます。

自分が関わっている(関わってきた)多くのチームにおいては「相対規模見積り」のメリットが大きいと考えています。私が頭の中に描いているチームの特徴は以下のようなものです。

メンバーのスキル差が無視できない。つまり、育成込みのチーム編成になっている。 得意な領域はありつつ、チームの仕事は全員が一定のレベルでこなせるようになることを目指している。つまり、仕事の属人化を防ぎたいと考えている。 仕事のやり方を改善し、より早く、プラスアルファの価値を出せる仕事をすることを目指している。つまり、効率化や自動化をすることにやりがいを感じるメンバーによって編成されていて、かつそれを行うことにインセンティブがある。

こういったチームにおいて、相対規模見積りが有効だと思う理由は以下の通りです。

見積りを個人ではなくチームのものにする 規模を見積り期間を導出することで、実績をもとに妥当なコストで計画を更新し続けることができる パーキンソンの第1法則「仕事の量は、完成のために与えられた時間をすべて満たすまで膨張する」にとらわれる可能性を下げる

私が大切だと思う順に並べました。2番目はツールの問題とも言える部分もあります。優れたプランニングツールがあれば解決するでしょう。3番目は絶対時間見積りをしたらそうなるというわけでもないと思います。

一方で、相対規模見積りをすることで、重要だと思うことや向かっている方向を意識するようなフォースをかけることはできると考えています。

このエントリを読んで、相対規模見積りとそれを使ったプランニングをやってみたい社内のチームがあったらお声掛けください。ないとは思いますが、もし社外の方で話を聞いてみたい人がいましたら、私のtwitterアカウントかkenichi.taka@じーめーるどっとこむまでご連絡ください。

「本を読む本」を読んだ

読み終えたのは2020-08-30で感想などもほとんど書いていなかったのだけど、先日行われた社内勉強会のテーマが「読書」だったので改めて眺めて感想などを書くことにする。

本の読み方って習ったことありますか?

自分の記憶では、義務教育の中では一冊の本の読み方を習った記憶はない。小説や詩の読み方(楽しみ方とも言えるだろうか)は習ったが、一冊の本、特に教養書の読み方を体系立てて習う機会はなかったように思う。

自分が本の読み方をわかってきたのは、大学~就職直後くらいに、三色ボールペンで読む日本語を始めとする斎藤 孝さんの本にはまったことと、研究室や会社での技術書の読書会を経験したことがきっかけだった。

さらに、少しはうまく読めるようになってきたと感じるようになったのは、本をきれいなまま読むことをやめてからで、恥ずかしながら実はここ数年のことだ。

「本を読む本」を読むといい人

昔話はこれくらいにして「本を読む本」の話題に入ろう。本書は、本の中でも、特に「教養書」の読み方を体系立てて学ぶことができる本だ。

これは「本を読む人」のための本である。「これから本を読みたい人」のための本でもある。つまり「読む」ことによって知識を得、理解を深め、優れた読書家になりたいと思う人のために書かれた本である。

本書の書き出しはこのようになっているが、あくまでも個人の感触としては、「これから本を読みたい人」が本書を読み切るのはかなり困難だと思う。正直、学生時代の自分が読み切れたとは思えない。(本書の中では、難しくても一冊読み切れ!と言い切っており、それを愚直に実践できたら読み切れただろうが…)

自分なりに言い換えるなら、「もっと本をうまく読みたい人」あるいは「本からもっと効率よく知識を得たい人」のための本だ。こういった課題意識を持つ人なら、この本から学べることはとても多い。

なぜ「本」を読むんだっけ?

さて、ここまで「本を読む」ことに何ら疑問を持たず、必要なことのように話してきたが、「本を読む」ことは必要なのだろうか。本書が書かれたが書かれた1940年(!?)と、私達が生きている2020年ではあらゆる状況が違うが、その疑問にも本書は答えてくれる。ここでも、本書を読んだ2020年の私がどう解釈したかを書いてみる。

「本」などの単方向のメディアから学び、発見するスキルを持っていることが、生涯学び続けることの手助けになる

単方向ではないものの代表は「教師のいる学校」だ。わからないことがあれば、教師に質問したら、答えや答えのある方向を教えてもらえる。一方で、本は質問しても何も答えてくれない。本にかかれていることを自分で読み解き、そこから生まれた疑問に対し、自分で答えをだしていかなければいけない。これは、「本」を「Webページ」や「動画」に置き換えても変わらないだろう。

本というのは今となっては一つのメタファーで、本を読む技術というのは、発信者の一方的なメッセージを読み解き、それを自身の知識とするためのものであるといってもいいのではないか。

(一方で、インターネットによって、今まで単方向だったメディアが、ほぼ双方向になっているとも言えるだろう。SNSである本に言及すれば著者が答えてくれることもあるだろうし、識者がコメントをくれる場合もある。良い世の中になりましたね。)

初級読書・点検読書・分析読書・シントピカル読書

さて、少しだけ本書の内容に触れていこうと思う。本書では読書にはレベルがあると述べている。レベルは4段階あり、それぞれどういうものか一言でまとめてみる。それぞれの詳細に興味が出た人は、ぜひ本書を手にとってほしい。

初級読書 書かれている単語を識別し、文章を理解する 点検読書 限られた時間のなかで拾い読みをし、内容を把握する 分析読書 時間の制約なしに、内容を徹底的に読みこむ(本書のメイントピック) シントピカル読書 1つの主題について複数の本を読む

本書を読み終えて、自分の頭に浮かんだのは効率的に新しいことを学ぶ方法 | 栗林健太郎だった。そう、あんちぽさんの学習は、シントピカル読書に近いもの、あるいはそれそのものなのだ。これに気づいたことで、あんちぽさんの学習効率の良さが腑に落ちた。(もちろん、それだけでないのは言うまでもないが。)

おわりに

社内での「本を読む」ということについての発表を聞き、改めて本を読むことについてまとめたくなったので、少し前に読んだ「本を読む本」についての感想を書いた。前半で述べたように、本をうまく読めるようになりたい人には、非常に学べるところが多い本だと思う。書かれている内容や言葉遣いは平易なものではないが、ぜひ通して読んでみてほしい。

2020-10-24: PG BATTLE 2020と猫の通院

会社の同僚とPG BATTLE 2020 - [第3回]企業・学校対抗プログラミングバトルに出た。チーム対抗とは言っているものの、説明にある通り、3人が別々の問題をそれぞれ解いて、その合計得点で競うということで、実際には個々人のスキル次第という印象。

また、AtCoderのコンテストとの違いとしては、提出は一発勝負で、問題文に書かれている入力例と出力例以外は、自分で検証しないといけない。無策で行くとデグレに気づかずに提出してしまうことが容易に想像がついたので、標準入力と出力を検証ためのコピペできるrspecのコードだけは準備しておいた。

結果はというと、真ん中の難易度「せんべい」で2問正解、3問目を時間内にsubmitできずに終了で惨敗。提出したコードは kenchan/competitive_programming@3d7a4ce にある。

3問目は、とりあえず愚直に解こうと書いていったんだけど、途中で配列の添え字を間違えていることになかなか気づけなくて、時間を無駄にしてしまったのが悔しい。あと3分早く[]のずれに気づいてたsubmitできたのに……

夜は恒例の猫の病院。体重の少し増えて、冬毛に変わってきたのはよい傾向とのことでよかった。自宅でのケアが始まったのが2020-07-04だったので3ヶ月ちょっと。ずっと現状維持かちょい悪くくらいが続いていたので、少しでも良くなっている(悪くなっていない)という話が聞けると嬉しいものだ。猫も人間もなかなか大変だけど、がんばりましょう。