Weekly Selection 2021-07-18

論文での文章の書き方

主述関係の一致に気をつけて書くことを全人類に共有したくなった.

初心者向け文語体の文章(論文)の書き方Tips

湯村先生の研究室のTwitterアカウントに書いてあった.良さそう.

Azureの仮想マシン ネットワーク

ハードウェアオフロードをプロトコルに応じて行っている.ICMPが高速化対象でないため,スループットの測定に適さないという話.

Azure 仮想マシン 高速ネットワーク 概要 ~ Azure VM 間の RTT 測定に ICMP を使ってはいけない ~ – Qiita

みにくいアヒルの子定理

主観がなければデータの特徴付けが出来ないという話.例は,白鳥とアヒルの子供を知識がなければ区別できないことを説明している.これはヒヨコのオスとメスを区別する場面でも当てはまると思った.

数理の窓 – 醜いアヒルの子の見分け方

巨大なGitリポジトリのクローン

シャロークローンでdepth=1をセットすることは知っていたが,それ以外は初めて知った.

大きなGitリポジトリをクローンするときの工夫を図解します – DeNA Testing Blog

ヒューリスティック手法

厳密解を求められるわけではないが,十分な解(実用に十分)を得られる手法のことをヒューリスティック手法とよぶそう.有名なものには,遺伝的アルゴリズム(GA)がある.のぞみ(N700)の先頭車両がもつ曲線は遺伝的アルゴリズムによるものらしい.

第7回テーマ:ヒューリスティックアプローチ

秘書問題(結婚問題)と安定結婚問題

グラフ理論の話で出てきた.秘書問題は,最初のn/eとは別れるのが良いらしいが…!?

秘書問題 – Wikipedia

安定結婚問題 – Wikipedia

オーバーコミットとTSS

オーバーコミットは,タイムスライスにより実リソースを超えてリソースを利用できる技術のこと.微小時間でタスクを切り替えてリソースを共有する点がTSSに似ていると感じた.

Insider’s Computer Dictionary:タイムシェアリング・システム とは? – @IT

Linuxのネットワークツール解説

いつも使っているツールを改めて理解するときに有用だと思った.

Linux Networking Tools: 101 – Speaker Deck

Envoy入門

Envoyに入門しようとして見つけた.CAの黒崎さんが書かれた資料.やっぱり分かりやすくてよい.

入門Envoy – Speaker Deck

FacebookのRUSH

IETFへFacebookのエンジニアがプロトコル提案をした.ライブストリーミングをエンドユーザのもつクライアントにオフロードするらしい.実データや実験ができるのは,自社サービスの強みだなと思った.

FacebookのQUICを活用したライブ動画用プロトコルRUSHについて – ASnoKaze blog

エラトステネスの篩

素数をもとめるアルゴリズム.実装してみる.

エラトステネスの篩 – Wikipedia

コレスキー分解

経済学のドメインで見つけた.あとで理解してみる.

コレスキー分解 – Wikipedia

新たなDNSレコード

JANOGの資料。自分の管理するサーバにも実験的に入れてみたい。

WebサーバのDNSへの登録方法が変わるよ

NAPT Slipstreaming V2

思い出せなくて困っていたら見つけた。セキュリティの観点でブラウザが特定ポート宛のリクエストをブロックする。10080が弾かれるのもこれが原因。

NAT Slipstreaming v2 攻撃とブラウザ側の対策

SIMD

SIMDを説明するスライドを見つけた。

関連する技術「スーパースカラ、パイプライン、スーパーパイプライン、VLIW」を理解しておきたい。ついでに「パイプラインハザードとWARハザード、WAWハザード」も理解したい。

SIMD化とは何か

余談

Weekly Selection 2021-07-11

EMM

Enterprise Marketing Managementは,マーケティングを管理するための一連の技術を呼ぶらしい.ガートナーが提唱している.IBMはこれに積極的な印象がある.

Enterprise Marketing Management (EMM) Overview

scale outの技術

楽天のROMAを調べていたら見つけた.首藤先生が10年以上前に書かれた資料なのだが,有益な情報だらけだった.

scale out の技術 〜 consistent hashing 編 (cloud 研究会, December 19, 2008)

震災での自治体のバックアップ

TAをしている学部の講義でバックアップの話があったので思い出した.BCPの観点でバックアップの地理的分散配置が重要なことを理解した.

WEB特集 データよ、生きていてくれ | NHKニュース

ルッサーとその法則

以前に書いたルッサーの法則をつくったルッサーの話.

隠れた名設計者、ロベルト・ルッサーの功績〜その2:1/144ヒコーキ工房:So-netブログ

PodSecurityPolicyの廃止

これは知らなかった.正直なところ,セキュリティポリシーやACLは,そのデバッグが面倒なので不特定多数にさらされるもの以外は最小限にしたいのが本音かも.

PodSecurityPolicyの廃止に備えて、一足先にPodSecurity Admissionを試してみよう! – Qiita

ノーフリーランチ定理

局所最適は全体最適に一致しないという話だと思った.まさにトレードオフだなと.

ノーフリーランチ定理(No Free Lunch theorem)とは?:AI・機械学習の用語辞典 – @IT

分析の基礎

研究室の輪講で後輩にnormalizationの話をしたときに見つけた.正規化(normalization)と標準化(standardization),正則化(regularization)の違いは,きちんと理解しておきたい.正則化は正規化と単語が似ているだけなんだが…

分析の基礎(モデリング)/ Basics of analysis ~modeling~ – Speaker Deck

握手定理

グラフのノード同士が握手するのは,考えてみてら当たり前ではある.

関係を図で表現する道具

関連した話でラムゼーの定理も教えてもらった.

uRPF

uRPFという技術を知った.セキュリティのドメインで役立ちそう.ただし,ルータを複数台で冗長化する場合は,複数台でルーティングテーブルを共有しないと不整合が発生する.結局はconsistencyの問題はどこでも発生するもの.

uRPF( Unicast Reverse Path Forwarding)とは、コンフィグ設定

PR TIMESで公開範囲制御の不備

未公開情報へ公開日時よりも前にアクセスが可能であったよう.これはつらい.

20210709_PRTIMES_incident.pdf

踏み台サーバのコンテナ化

研究室の踏み台VMをコンテナ化した.しばらくはVMもバックアップで運用して,落ち着いたら完全に移行するつもり.「さよなら踏み台VMさん,ようこそ踏み台コンテナさん」

GitHubがパスワード認証を廃止

ついに来たのかという印象.SSOとパスワードレス,FIDOで幸せになりたい.

GitHubがパスワード認証を廃止するらしいので – Qiita

余談

  • 後輩の研究を80%くらいまですすめた.
  • 自分の研究は20%くらいでマズイ
  • JupyterでのMatplotlibの挙動でハマった.セルを分離すると挙動が変わるのね…
  • 雨の日が多くて悲しい.はやく晴れてほしい.
  • 作問したチュートリアル問題が公開された.
  • 未婚女性が交際相手の選択に重視することが学びだった.
  • 授業課題でyieldを使ってみたら便利だった.
  • このツイート↓に共感した.Qiitaを鵜呑みにせず複数ソースでコンセンサスをとってほしい.

Weekly Selection 2021-07-04

木構造

B+ treeやB-tree.二分木以外にも種類があることを知った.奥深い木構造の世界だ.

木構造 (データ構造) – Wikipedia

因果革命

「因果のはしご」という言葉が面白かった.データサイエンス系のトレンドわからないことが多い.

今起きている革命、「因果革命」とは – Qiita

PFNのMN-3がGreen 500で1位

PFNが元気すぎて驚きしかない.

PFNの深層学習用スーパーコンピュータMN-3、 省電力性能ランキングGreen500で再び世界1位を獲得 | 株式会社Preferred Networks

時系列DBの作り方

Time-series DBの作り方を書いている記事.時系列データ(メトリック)の話がよくまとめられている。データ同士の持つ性質を理解することは、Index構築の戦略で特に大事なので同意できる.Single Writeという性質がログと似ているので親近感を持った.時系列データは量的データなのに対して、ログは質的データなので違いはある.

ゼロから作る時系列データベースエンジン

GRPC入門

ymmtさんが書いたGRPC入門.動画もあるので素晴らしい.

ymmt2005/grpc-tutorial: gRPC tutorial for Japanese readers

量子コンピューティングへのツッコミ

専門家がマジレスをしているのが面白い.よく言葉が独り歩きするケースはありそう.ガートナーのハイプ・サイクルだと過度な期待がある山のあたりかも.

「量子」と組合せ最適化に関する怪しい言説 ―とある研究者の小言― – むしゃくしゃしてやった,今は反省している日記

ハーバードのCS50

日本語訳のされたハーバード大学のCS入門サイト.有志による翻訳があるとCSを学ぶハードルは下がるだろうなと思った.

CS50 for Japanese: コンピュータサイエンスの入門 – 当ウェブサイトは、Creative Commons ライセンスに基づいて管理されています。

余談

  • 課題から開放されたと思っていたら,研究が忙しくなっていた.
  • 気がついたら7月で阿鼻叫喚〜
  • 自分の研究と学生の研究,授業の準備と事務処理をこなしている大学の先生はすごいと思った.
  • 美味しいビール 飛騨高山麦酒 を飲んだ.
  • 美味しいとんかつを食べに行った.

Weekly Selection 2021-06-27

mTCP

ユーザ空間でパケットこねこねするらしい.名前もっと無かったのか…

mTCP Design
6
[mTCP14] Jeong et al., mTCP: A Highly Scalable User-level TCP Stack for
Multicore Systems, USENIX NSDI, Apri...
mTCP使ってみた – Hajime Tazaki

mTCP使ってみた

ルッサーの法則

個別のシステム(サブシステム)が直列で接続され1つのシステムの系をつくるとき,システム全体での信頼性は,サブシステムのもつ信頼性の積で表される.以下で紹介されている動画が面白い.これはCSよりは信頼性工学の領域になる.

システムの信頼性を維持するには冗長設計が不可欠 | 鈴木真二 | テンミニッツTV

信頼度 𝑅(𝑡)=𝑅1(𝑡)・𝑅2(𝑡)・・・𝑅𝑛(𝑡)

Goでの並行処理

ゴールーチンが並行処理なことをはじめて知った.

Goでの並行処理を徹底解剖!

HTML5が廃止

ついに…という印象.標準化がWHATWGのGitHubリポジトリで議論されているので,それが普通に感じていた.W3CとWHATWGの位置付けを理解した.

どうしてHTML5が廃止されたのか | フューチャー技術ブログ

実験経済学

数理的にシミュレーションしている領域が経済学にもあるらしい.面白い.

実験経済学 – Wikipedia

SQL入門

良質な入門資料があった.サイバーエージェントはいい人いるなって…

TypeScript入門とGo入門

Twitterで見つけた.良さそう.

仕事ですぐに使えるTypeScript — 仕事ですぐに使えるTypeScript ドキュメント

プログラミング言語Go完全入門 – Google スライド

WordPressの高速化(kusanagi)

CPUの選び方でコア数よりも周波数を上げたほうがいいのが,目からウロコだった.

Webパフォーマンスガチ勢が本当に使っている技術 PagespeedInsights 100点を獲得する高速化技術

AMPとSXG

Core Web Vitalsのこともよく分かった.リクエストを送信してから早くレンダリングされることは正義だ.

本サイトの AMP 提供の停止とここまでの振り返り | blog.jxck.io

余談

  • 課題に追われていて忙しい.
  • グラフづくりにGnuplotが最高だった.Matplotlibさようなら.
  • Magic Keyboardを追加購入した.ラボに置いて使うつもり.
  • ISUCONの申し込みDone.2時間で埋まったらしい.
  • ドメインの更新をはじめて2年でやってみた.
  • 美味しいとんかつを食べた.

Weekly Selection 2021-06-20

WWDCのAccelerate networking with HTTP/3 and QUIC

WWDC21のAccelerate networking with HTTP/3 and QUICを見ました。 – neko–suki’s blog

ユーザを匿名化しながら属性(例:地域)ごとに識別するために頑張っている印象をうけた.

CNAMEがトップレベルにセットできない理由

Zone apexとCNAME – Qiita

理由は「CNAMEは他のタイプのレコードと共存できない」と「トップレベルにはNSレコードが存在する」の2つを同時に満たせないから.AWSのRoute53をはじめとする一部ではALIASレコードで同様のニーズを解消しているらしい.

コードベースでアーキテクチャ図を作る

awesome-pythonで偶然みつけた.コードベースで管理できるので良さそう.

mingrammer/diagrams: Diagram as Code for prototyping cloud system architectures

lifegameを実装

授業でライフゲームを見て実装してくなったのでやってみた.

tomoyk/lifegame: lifegame by processing

チームビルディング

ツー・ピザ・チームは始まりに過ぎない – パート1: 高パフォーマンスなアジャイル組織はアカウンタビリティとエンパワーメントがカギです | Amazon Web Services ブログ

チームや組織づくりで参考になる話が多かった.今までに経験した良いチームの特徴に一致しているところがあった.チームをつくるときに意識してみたい.

余談

  • 後輩向けにサークルでOBとしてQ&Aセッションをやってみた.
  • オンライン飲み会でいい感じに酔った.
  • 父の日のプレゼントを贈った.
  • タスクがたまりすぎて大変になっていた.
    • 事前にタスクの工数を見積るために,早い段階で少し着手しておくと良い気がした.
    • 実装はトライアンドエラーが多いので,早くから着手すべきだと感じた.
    • 高いパフォーマンスのためには,十分な睡眠と運動とバランスのとれた食事が大切だと痛感した.
  • ツイッターではCSVとDockerで炎上していたっぽい.何でも柔軟に勉強しておけば問題なし.