2020-09-17: モバイル回線の速度の実測値を調べていた

Webサービスを提供していると、ページの表示速度の改善というのはいつまでもついてまわる仕事だろう。

バックエンドのプログラムのパフォーマンス改善は、サーバーのレスポンス速度を計測することで、本番へのリリース前にある程度の効果を測定することができる。一方で、最近は静的ファイル以外にもCDNを通すことがあり、そういった場合はサーバーのレスポンスタイムを測っても、実際の効果を測定するのが難しくなっていると思う。そうでなくても、レスポンスが大きくなる場合は通信回線の速度がパフォーマンスに与える影響が大きくなるし、事前に効果の目処をつけるのはなかなか難しくなってきているように思う。

今回、サーバーのレスポンスタイムを計測してもうまく効果を測定できない案件があり、通信速度も含めてどの程度効果があるかを予め知りたくなったので、モバイル回線の速度の実測値を調べていた。

調べていくと、数年前は総務省が各キャリアの速度を測定していたようだが、今は総務省の定めた基準にしたがって各キャリアが実測値を公表している。

これをみると、ドコモは200Mbps超えでほんまかいなという感じだ。ただ、公表されてる数値を信じるしかないのでこれを使って計算してみたが、そのまま使うと当然誤差みたいな差しかでないので困ってしまった。

こういうの良い計算の仕方をしってる人いたらぜひ教えて下さい。

2020-09-16: iOS14とWatch OS 7と自転車がパンクした

朝起きて、Appleのイベントのサマリを見てふむふむとなっていた。iOSとWatch OSはベータ版利用者にはGM版がすぐふってくるとのことだったので、午前中にアップデートした。

ポケモンGoも、今朝のアップデートで動くようになったので、これで自分の環境的にはiOS 14で問題ない感じになったと思う。強いてあげれば、写真のパーミッションの取り方の変更は使い勝手にかなり影響があるので、LINEさん対応がんばってください。応援しています。

夕方には、猫のご飯を休憩がてら自転車で買いに行こうと思っていたのだが、なんと自転車の前輪がパンクしていて泣く泣く徒歩で往復することになった。後ろにミーティングがあり、歩きだと間に合わないのが確実だったのだが、その後の予定も詰まっていたのでミーティングに遅れる旨を連絡して強行せざる終えなかった……次回は余裕を持って買っておきましょう。

2020-09-15: GitHub CLIに入門した

満遍なくミーティングが入っていたのだけど、その合間にちょっとしたコード書きなどを。

今回の課題は「あるリポジトリのmainブランチへのマージをトリガーとして別のリポジトリにそれを反映したPull Requestを出したい」というもの。ペパボではGitHub Enterpriseをホストしていて、CIはDrone CIのOSS版を構築して使っている都合上、それらに合わせて仕組みを作る必要がある。

最初はGitHubのAPIをコードを書いて叩こうかと思っていたのだけど、GitHub CLIはどんなもんかとみてみたら、大体これでできるじゃんとなったのでシェルスクリプトで済ませてしまった。

ざっくりとした流れはこんな感じ。

  1. GitHub Enterpriseのpersonal access tokenをDroneの秘匿情報を扱う仕組みで環境変数として読み込ませる
  2. echo $TOKEN | gh auth login --hostname xxxx --with-tokenなどとして、CI上でGitHub CLIを使えるようにする
  3. gh clone yyyyとして適当なディレクトリにPull Requestを出したいリポジトリをcloneしてくる
  4. cloneしてきたディレクトリでごにょごにょする
  5. gh pr create -t 'pr title' -b 'pr bodyとしてpull requestを出す

gh pr createで複数行のbody(GitHub上ではPull Requestのdescriptionになる)をうまく書けなかったので少しハマってしまったが、HTMLのタグも書けるのを思い出して<br>を入れたらうまくいったのでよかった。

今までGitHub CLIは存在は知っていたが使ったことはなかったのだけど、issueやPRに関する機能は現時点でもかなり充実しているから、手元からシュッと操作するには便利だと思う。また、インストールも簡単なのでCIに組み込むのも楽でいいね。

GitHub ActionsがEnterpriseにもきたらまた別のやり方ができる気がするので、またそのときに仕組みを見直そうと思う。

2020-09-14

急に涼しくなってきたので、エアコンなしで窓全開で過ごしてみた。

自宅の環境は津田沼オフィス - scrapboxにあるとおり、キャスター付きのスタンディングデスクを使っている。最近はこの写真の部屋(通称猫部屋)にはエアコンがないこともあり、ずっとリビングで仕事をしているのだが、そろそろ涼しくなってきたのでまた猫部屋に戻ろうかと考えてる。デスクトップどうするかというのが悩みの種だが、仕事中は特に使わないので大丈夫だろう。机移動させるのが若干面倒だが…

お昼は、@tichiseもおすすめしていたセブンのカレー。確かにおいしかった。セブンイレブンのレトルカレーは、パックのままレンチンですぐ食べられるので常に2、3個ストックしているのだが、お弁当のカレーもよくできてるんだなぁ。

2020-09-13: 子のピアノとABC 178

午後から子供のピアノの試験があったので、午前中はその仕上げの様子をみていた。自分は義務教育の範囲外で楽器に触れた経験がほぼ0なので、正直よくわからないのだが、小学生でもここまで弾けるものなのだなぁと関心している。

試験の結果の最終的な結果は後日だが、本人としては手応えがあったらしい。終わってからはショッピングモールでおやつを食べながら、ポケモンGoを満喫していた。

その間に、本を読む本の読書ログを書こうとまとめていたのだけど、残念ながら終わらなかった。「本を読む本」には読書の型のようなものが紹介されているので、その通りにまとめ始めたのはよかったが、思いのほか筆が進まなかった。まだ理解できていないところが結構あることがわかったので、来週までに書くくらいの気持ちでいこうと思う。

夜は久しぶりに AtCoder Beginner Contest 178 - AtCoder に出た。割と好きなタイプの問題だったのでいけるかと思ったのだが、DとEのどちらも解けずに終了。Eは図を描いてるうちに解き方が分かったのだが、残り数分になっていたので実装しきれずに終了だった。時間制限もあるので、15分スプリントとかの練習をしてみるといいのかなぁ。次回はやってみよう。

ABCが終わってから日課のリングフィットアドベンチャー。最近は強度MAXで「1日1回はワイドスクワットをやる」という目標を立ててやっている。が、今日はボス戦でワイドスクワットからのスーパー腹筋ガード(ワイドスクワットで腰を下ろした状態を指定時間キープするやつ)という見事な連携がきて、スーパー腹筋ガード後は立ち上がれずにそのまましりもちをついてしまった。ガードのエクササイズは途中休憩ができないのでほんとにしんどい。