satococoa's blog

主にサーバーサイド、Web 系エンジニアのブログです。Go, Ruby, React, GCP, ...etc.

2021年8月の振り返り

なんと、8月は1つもエントリーを書いていなかった。 気がついたら8月は溶けていた感じで、実際に何をやっていたのかほとんど覚えていない。 それだけ家事と育児にしっかりコミットできてる。。ということにして気を取り直して今月も振り返っていきたい。

子どもの成長

生後2ヶ月が経過し、色々と成長が見えてきて面白い。 こちらを見て笑ったり、喃語クーイング(えー、うーなどの発音。妻から喃語というよりはクーイングであるとの指摘を受けて修正)の頻度や種類が増えたりして、コミュニケーションらしきものが取れるようになってきた。 特に喃語クーイングが増えたのが面白く、子が「うぐー」などと発音するごとに僕も妻もそれに対して「うぐー」と返事を返すので知能指数ゼロの会話を延々と親子で楽しんでいる。 まだ首がすわるまではもう少し時間がかかりそうだが、物を掴んで引っ張ったりできるようになったりと順調に発達している様子。

最近ではミルクの間隔が6時間開くこともあるくらい非常によく寝てくれるため、夜に夫婦で久しぶりにスプラトゥーンをしたりする余裕も出てきた。 とはいえそろそろ夜泣きが始まる可能性もある月齢なので覚悟しておく必要がありそう。

今月のインプット

時間の使い方を見直したい

8月は少し子育てに慣れてきて余裕が出てきたので、いよいよ時間の使い方を見直していきたいなと思いながらスタートした。 蓋を開けてみたら結局は何のアウトプットもできないまま1ヶ月が完全に溶け去っていってしまったのだが、時間の使い方について参考になりそうな本を何冊か読んでみたりしていた。

まずはこの「インプット大全」。 普段からニュースやらTwitterやら、処理し切れないほどの雑多なインプットに晒されている自覚があり、その辺を整理して質の高いインプットを増やしていこうかな、という目的からこの本を手に取った。

実際読んでみたところ、新しい発見がたくさんあったわけではなくどこかで聞いたことがある話や「そうだよね」という内容がほとんどであるという感想ではあるが、普段ただ漠然と情報を取り入れるだけの質の低いインプットをしている自分を再認識できたのでよかった。

特に本の読み方については、この本を読むまではとにかく「たくさんの本を読んでみるのが良いのかな」と思い多読とか速読とかに手を出そうと思っていたのだが、それよりはきちんと目的意識を持って本を選び、目的意識に沿った読み方をし、そしてせっかく得た知識を定着させるためにきちんとアウトプットをするべきだ、というのが学べた。めんどくさく感じてしまうこともありそうだが、習慣化していきたい。

先ほどの「インプット大全」の文中で頻繁に言及されていたので「アウトプット大全」の方も読んでみた。 こちらは正直そんなに参考になる情報が多くなかった。 自分が学びになると感じた内容は「インプット大全」の方でも述べられていたし、それ以外の内容はどこかで聞いたことがある話の総集編、コラム集 + 筆者の仕事術紹介のような印象だった。 なので結構飛ばし読みしてしまった。

そしてもう一冊、「時間術大全」を読んだ。何だか大全ばかりになってしまった。

こちらは原題の「Make Time」の方がずっとしっくりくる。 どうやってやりたいことをやるための時間を作り出すかという観点から、筆者たちが試してみてうまくいった方法をひたすら紹介するという内容だ。

筆者がYouTubeGmailの元開発者であるというのがとても面白く、ユーザの時間をいかに消費させるかを世界の最前線で考えてきた方々だからこその説得力がある。

SNSYouTubeやニュースなどに時間を吸い取られてしまうのは自分の意志の低さ故であり、そこを克服しないことには有意義な時間の使い方は身につかないだろう」と本書を読むまでは僕は考えていたのだが、いや、そうではないという認識を持つことができた。

SNSYouTubeは世界トップの技術者たちが激しい競争の末に開発した「無限の泉」であり、それに抗うことは個人の意志の力だけでは非常に難しい。僕がせっかくの家事育児の合間の時間をついついTwitterをだらだら見て過ごしてしまうのは意志の弱さゆえの負けではなく、むしろ技術の勝利なのだ、と同じ技術者の立場として喜ぶことにした。

そしてその誘惑に対してきちんとバリアを張っていこうと思った。(そしてとりあえずはスマホの中の不要なアプリをざっくり消した)

この本にはたくさんの時間を作る(Make Time)ための戦術が書かれているが、骨子としては「メイクタイムのしくみ」という章に書かれているシンプルなルールだけだ。これをきちんと意識して自分に合う戦術を選んだり考えたりしていけば確かに満足度の高い毎日を過ごすことができそうな気がする。 紹介されている戦術も決して「意識が高い」ものではなく、背伸びせずに十分実現可能なものばかりだったので少しずつ取り組んでいってみようと思う。

今月読んだ本ではないが、「なぜ、あなたの仕事は終わらないのか」に書かれていたロケットスタート仕事術も自分としてはかなりしっくりくるし、やってみたいなと思うやり方でありこの「時間術大全」にあるハイライトやレーザーと共通する考え方だなと思った。(「なぜ、あなたの仕事は終わらないのか」では界王拳と表現されており、僕にとってはとても直感的でわかりやすい表現だった)

ちょっとじっくり読もうとしすぎた

3月ぐらいから読んでいた「Web配信の技術」をようやく読み終わった。 HTTPのCache-Controlなどのキャッシュに関わるヘッダとそれに対するブラウザやCDNの挙動が難しいことは以前から認識はしていたので、その辺をしっかり押さえようと思って読み始めた。

実際この本にはその辺りの知識も詳細に書かれているのだが、到底一度読んだだけで覚えられるようなものではないので早々に諦めて脳内にインデックスだけ作っておいて少し飛ばし読みをすればよかった。必要になったときに再度読み直す方が良さそう。

後半のCDNの導入についての話や自前コンテンツサーバとCDNの併用などの話は前職で実際に自分も悩んだところであったので興味深く、サクサク読み進めることができた。(トラフィックの規模は全然違うが)

CDNをなんとなく入れた方が良いだろうから、という理由で導入しているような人(すみません、僕です)はぜひ読んでおいた方が良いと思った。

ちょっとRustが気になる

Software Designの9月号の「Rustでわかるメモリ管理」の特集を読んだ。

Rustは去年くらいからかなり頻繁に名前を聞くようになり、隙あらば業務でも使ってみたいなーと思いながらなかなか機会がなくて触ることなく今に至っている。 (こういうプログラミング言語などの技術は必要になったときに業務にスッと差し込んで業務時間に現実の問題を解きながら学ぶのが一番効率が良いと思っている。)

しかしこの記事を読んでみていかに自分がメモリに対して意識や知識が乏しいままプログラマをやっているか痛感した。 恥を承知で正直に曝け出すと、例えばスタックとヒープは知識として知ってはいるが普段意識してないなーとか、メモリのページングについて全然わかってなかった、とかそういう発見があった。

メモリについて多少なりとも意識できるようになったきっかけはiOSエンジニアとして働き始めた頃にRubyMotionやObjective-CでARC (Automatic Reference Counting)に初めて触れたときだった。 メモリを意識しなければいけない言語を使うことで、メモリを意識したプログラミングができるようになった。(前述のようにまだまだ足りないと思っているが、それでも以前よりは確実に意識できるようになった。)

であればメモリや変数のライフサイクルに厳格なRustを学ぶことで、さらに効率の良いプログラミングができるようになるのでは。。?という考えである。 単純にRust製のOSSが増えているから、書けるようになっておきたいという理由もある。

業務で触ったり何か作りたいものがあったりするわけではないのでモチベーションがもつかどうか少し自信はないが、まずはRBE (Rust By Example)を少しずつ進めていってみようかなと思っている。

ブログを新しく作ろうかな。。

技術メモ以外のエントリも書きたいし、だったらいっそはてなのサービスを使い続ける必要もないのかなーと。 情報収集もはてなブックマークからRSSとTechFeed中心に乗り換えてみようかなと思っている。 (はてなブックマークの文化があまり居心地が良くなく、正直離れたい気持ちがある)

文章、もっと上手になりたいので人に読んでもらうことを意識したエントリをもう少し頻繁に書いていきたい気持ちはある。 願わくは9月のまとめエントリは新しいブログ上で書けてますように。

以上、8月まとめでした。