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で炎上していたっぽい.何でも柔軟に勉強しておけば問題なし.

Weekly Selection 2021-06-13

Fastlyで大規模障害

Twitterでも話題になっていた.Amazon.co.jpは瞬時にDNSレコードを切り替えていたのが話題になっていた.

fastlyのCDNで発生したシステム障害についてまとめてみた – piyolog

Fastly Status – Global CDN Disruption

CDNの仕組みの復習がてら調べてみた.

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

研究室の踏み台サーバをコンテナ化した.rbash + stns + sshdを組み合わせた.

cdsl-research/container-jumpsv: 踏み台サーバー(コンテナ)

Nginxのauth_requestモジュール

Nginxで外部APIを利用して認証するための方法を探した.目的はNginxで簡易的なAPI Gatewayの実装である.KongやAmbassadorは,大きすぎるので自作するのがベストに見えた.以下は技術検討時に見たリンク.

Auth Request Example | NGINX

Nginx と自前の認証システムを組み合わせてセキュアなリソースを制限する – JX通信社エンジニアブログ

Microk8s

Microk8sでHA構成を構築しているときに謎のパラメータを見つけた.ドキュメントにないのでわからん.

京都府の財政破綻

高橋洋一チャンネルを見つけた.能力が高い人の話は参考になる.

貸借対照表(バランスシート)は就活で企業を見立てるときにも役立ちそう.

IT担当大臣がNECに〇〇

NECが気の毒に見えるが,実際には既得権益の塊という話.

以前にもベンダーの言いなりになっている体制へ,平井大臣が危機感を感じていた話があった.

MSインターン選考会

日本MSの選考会に参加してみた.グループディスカッションと個人面接を行った.グループディスカッションでは,MSの強みを活かした社会課題の解決する提案を求められた.これは,グループワークを通じて,学生自身に自社への理解を深めてもらうことが狙いだと感じた.個人面接では,課題を発見する能力や提案力,自身の強み/弱み,チームでの活動経験を深堀りされた.

「コンテナ技術をおじいちゃんに分かりやすく説明するならどうしますか?」は想定外で面白かった.コンテナをダンボールに例えた.ダンボールに必要な材料を入れると,ダンボールを持ち運ぶだけで,どこでもやりたいことができる.コンテナのメリットであるポータビリティは,「どこでも同じ環境をつくれる」ことだと考えて説明した.

宣伝

余談

  • 1年ぶりに面接をして緊張した.
  • 自らの考えを言語化する能力が向上した気がした.
  • 研究を通じて,分かりやすく伝える能力や表現する能力が向上していることを実感した.
  • CDNなにもわからない.

Weekly Selection 2021-06-06

回路配置利用権

知的財産権まわりを調べている過程で見つけた.特徴は10年だけで延長できないこと.

回路配置利用権とはなんですか? – 発明plus(発明プラス)

ビジネスで独占をするため

テックジャイアントは,自身が市場を独占していないことを強調する.勝てる領域を選ぶことが大切になりそう.

「独占せよ」 “伝説の起業家”ピーター・ティールが成功するビジネスの核心を語る – ログミーBiz

Linuxのプロセス間通信

論文で出てきたので調べてみた.

Linuxのプロセス間通信 – Qiita

QUICのFAQと動画

単一責任の原則の再検討

1クラスあたり1アクターの前提があれば納得できそう.

単一責任の原則(Single responsibility principle)について、もう一度考える | オブジェクトの広場

Pythonのopen()のモード

Pythonのopen()関数で実装されているモードでハマった.モード r+ は,読み取りと書き込みを同時に行えるモードである.ただし,書き込みはファイルの先頭から上書きされていく.

with open(YOUR_FILENAME, mode='r+') as f:
    f.write('foo')

これをSlackでぼやいていたら @hpp さんからファイルポインタが先頭から始まるのが原因だと教えてもらった.

参考)fseek()関数を利用してファイルポインタを移動させる – Qiita

結局,読み取り用と書き込み用のopen()を2回よびだすことにした.

ストレージ本

ストレージ本ほしくなってきた.東大の先生が書いている書籍があったので,そのうち買う.

ストレージ技術: クラウドとビッグデータの時代 | 喜連川 優 |本 | 通販 | Amazon

MIT Media Lab Summer Camp 2021

MITのメディア・ラボといえば石井先生が有名.面白い話が聞けそうなので,少し楽しみ.

Media Lab Summer Camp 2021 — MIT Media Lab

Tangible Media Group | Hiroshi Ishii

面白そうなインターン

ヤフーのインターンがTwitterで話題になっていた.給与は安いが内容は良いのでオススメできそう.

MSの量子コンピューティング

MSはGoogleやIBMに比べて量子コンピューティングで遅れていたので,焦りがあったのだと思う.本文にあった「第一の原則は自分をだましてはならないということだ.自分は最もだましやすい人間なのである.」が刺さった.

マイクロソフトの量子コンピューター計画、その中核をなす論文の正式撤回がもたらしたこと | WIRED.jp

カラムレベルでのセキュリティ

RDBのカラムレベルのセキュリティを実装しているデータストア(データベース)もありそう.

  • BigQuery
  • Azure Synapse Analytics

自作Webフレームワーク

自作Webフレームワークをつくる資料として最適な内容.

Create your own PHP Framework (Symfony Docs)

データ構造とアルゴリズム

Googleの採用サイトによい資料があった.

Data Structures & Algorithms – Google Tech Dev Guide

STNSクライアントをAlpine Linuxで動かす

結論は,動かすことを断念した.

  • 組み込み用途の軽量なLinuxディストリビューション(例:alpine linux)は,cライブラリとしてglibcを使わずにuclibcやmuslを使う.
  • glibcがnsswitchの機能をサポートしていることで,標準のように使われている.
  • nsswitchをサポートしないcライブラリの場合,nsswitchを読みに行かない(もちろんnssモジュールも)→straceで確認済み
  • ubuntuの場合,  strace id xxxread(3, "# /etc/nsswitch.conf\n#\n# Example"..., 4096) = 527が得られる.
  • 参考) https://skarnet.org/software/nsss/nsswitch.html

メモ

IIRC Alpine Linux uses uclibc, which doesn’t support NSS modules at all, does it?

Re: ldap authentication on alpine https://lists.arthurdejong.org/nss-pam-ldapd-users/2017/msg00033.html

uclibcからmuslに移行しているみたい
https://alpinelinux.org/posts/Alpine-Linux-has-switched-to-musl-libc.html

近況

  • インターンのプレイベントに参加した.
  • Arubaの例のアクセスポイントをポチってリプレイスした.

Weekly Selection 2021-05-30

AWSの10年の軌跡

前に貼った記事にもAWSのことが書かれていたので復習によさそう.

A Decade of Innovation ~ イノベーション10年の軌跡 | Amazon Web Services ブログ

技術の学び方

過去に書いたスライドを発掘したので再掲

HFT

市場取引を高速で行うための技術がHFT(High Frequency Trading)である.データセンタを市場システムの近傍に配置するらしく驚きがある.

金融取引システム・高頻度取引(HFT)に必要なネットワーク [現場で必要なネットワーク技術入門]

アドテクの裏側(広告が表示されるまで)

デジタル広告が表示されるまでに内部で行われることの解説.

今さら聞けないオークション理論とDSP入札ロジック – VOYAGE GROUP techlog

(余談)アドネットワークのうち1つが問題を引き起こすと,他に連鎖するので困る.アドネットワーク汚染も関連した話としてある.

パブリッククラウドの無料枠

コストを抑える方法を探したときに見たサイトをメモした.AWSのLightsailにManaged Databaseがあったことを初めて知った.

ずっと無料で使えるクラウドの「Free Tier」主要サービスまとめ。2020年版 - Publickey

VPSが提供しているマネージドデータベース比較 – VPS比較2021年版

Oracle CloudがARMプロセッサ搭載のVM(RAM 24GB)!?をAlways Freeで払い出すらしい.

Always Free Resources

All tenancies get two Always Free compute virtual machine (VM) instances using the VM.Standard.E2.1.Micro shape, which has an AMD processor. All tenancies also get 4 OCPUs and 24 GB of memory Always Free for VM instances using the VM.Standard.A1.Flex shape, which has an Arm-based processor.

Always Free Resources – Oracle Cloud

QUICが標準化

ついにRFC9000としてリリースされた!

前にみたこの資料いいかも.

QUICトランスポート機能に関して tcpm/mptcp wg chair の西田先生にいろいろ聞いてみる会

SCTPを発見

実例を探していないので後で見る.

SCTPとは – Qiita

algorithmicでLaTeX上に擬似コード

論文を書く時にハマったのでQiitaに書いた.

algorithmicxを使いLaTeXに擬似コードを追加 – Qiita

大学院に進学した理由

自分が進学を選んだ理由を言語化した.前からブログに書こうと思っていたことが表現できた気がする.

サイボウズの新卒研修 MySQL

MySQLエキスパートのyoku0825さんがサイボウズで新卒研修を行ったそう.資料があったので貼っておく.

参考)インタビュー:MySQLエキスパートのyoku0825さんに聞いてみた – Cybozu Inside Out | サイボウズエンジニアのブログ

MySQLとインデックスと私 – Speaker Deck

全盛期のJeff Dean

伝説がひとり歩きしていて面白かったのでシェア.特に以下がすき.

Emacsが、いちばん好きなエディターはJeff Dean。

全盛期のJeff Dean伝説 – Qiita

書籍を購入

翔泳社のオンラインストアが50%キャッシュバックセールをやっていたので,前から気になっていた「イノベーションのジレンマ」をポチった.ついでに面白そうな「イノベーション・オブ・ライフ」も買ってみた.

イノベーション・オブ・ライフを読んでいる.動機づけ理論の研究者 フレデリック・ハーズバーグは,人が感じる仕事への満足度を論文で発表した.

ハーズバーグによれば,仕事の満足感が連続的に変化していく ーーー つまり一方の極の非常に満足度の高い状態から,その対極のまったく満足していない状態までが,連続的につながっている ーーー という一般的な前提は,人間の心の働きを正確に表していない.満足と不満足は,実は一つの連続体の対極に位置するのではなく,別々の独立した尺度なのだ.たとえば自分の仕事が好きでもあり,嫌いでもあるという人がいてもおかしくない.

イノベーション・オブ・ライフ 櫻井祐子(訳) , クレイトン・M・クリステンセン(著) 翔泳社 P.36

給与は衛生要因(衛生状態の悪さは健康に害がある.一方,良さは健康は促進されない)であり,その低さに不満を持つことはあるが,高さは魅力になりにくいという.つまり,つまらない仕事の給与をあげること(衛生要因の改善)は,仕事を嫌いにならない程度の効果しかない.

ばらつきの法則

働きアリの法則の関連として,パレートの法則(別名:ばらつきの法則)がある.法則はもともと経済的な格差の話をしているが,実際には他分野にも適用されている.ただし,これらは経験則に近い.

パレートの法則 – Wikipedia

余談

久しぶりに家系ラーメンを食べに行った.おいしい.

Weekly Selection 2021-05-21

AWSのWorking Backwards

AWSのCustomer Obsessionにもとづく考え方が具体化されている印象を受けた.お客様の求めること,利益を明確に追求する場合に使いたい.

サービス企画〜リリースまでを AWS Amplify と Working Backwards をフル活用して爆速でやってみた – builders.flash☆ – 変化を求めるデベロッパーを応援するウェブマガジン | AWS

新しいアイデアを出すときに取り組む内容→PRFAQ(PR and FAQ)

パレスチナ問題

イスラエルとガザで紛争が起きているので調べてみた.

パレスチナ問題について|地歴公民|苦手解決Q&A|進研ゼミ高校講座

イスラエルの中に国家として認められていないパレスチナ自治区が存在している.パレスチナ自治区は,ヨルダン川西岸地区(内陸)とガザ地区(地中海沿岸)から構成されている.

イスラエルはイスラム教,キリスト教,ユダヤ教の聖地が存在している.19世紀以降にユダヤ人の中でユダヤ人国家を建国しようとする運動(シオニズム)が起きる.実際にはパレスチナには1000年以上もアラブ人が住んでいた.イギリスの二枚舌外交によって,アラブ人とユダヤ人の対立が激しくなった.

第二次世界大戦で迫害を受けたユダヤ人は世論を味方につけて,1947年国連総会でパレスチナの分割案が可決される.1948年にユダヤ人がイスラエルを建国する.アラブ人が反対したことで,第一次中東戦争が勃発する.
→パレスチナのアラブ人が難民に(パレスチナ難民)
1964年にパレスチナ解放機構(PLO)を設立し,イスラエル占領地で自治を求めて抵抗運動を繰り広げた.

1993年にパレスチナ暫定自治協定が,1995年にパレスチナ自治拡大協定が調印されたが現在もエルサレムの帰属先をはじめとする問題が残る.

Customer Centric

最近のトレンドとして顧客中心主義があるらしい.AWSだとCustomer Obsession, SORACOMだとCustomer Centericにあたる.

顧客中心志向の企業文化の作り方:ハーバード・ビジネス・レビューの記事から学ぶ – 日々学び、感謝し、成長する

Fetch APIでのmultipart/form-data

JavaScriptでファイルをアップロードするためにWeb UIを実装していたらドハマリした.

Fetch APIでファイルをアップロードする時にContent-Typeを指定しないほうが良い – 技術と魚

Textlint + PDFファイル

Webアプリを雑に作ってみた.PDFのパースをなんとかしたい.

Duolingoのすごい面接

reCAPTCHAと同じ創業者がつくった語学学習サービス Duolingoの日本マネージャになった人の話.ユニコーン企業の組織づくりの参考になりそう.

恩人の退職と、Duolingoのすごい面接の話|Sho | Duolingoの冒険|note

コンテナイメージ内のバイナリをupx圧縮

実は圧縮の効果はわずかなので評価したほうが良さそう.

コンテナイメージ内の実行ファイルをupxで圧縮するべきか | フューチャー技術ブログ

Generator

忘れていたので復習した.

ジェネレーター — Pythonオンライン学習サービス PyQ(パイキュー)ドキュメント

余談