2023/06 3週目
OS
- OSカーネルに興味がある人におすすめの参考資料
Rust
- https://github.com/supabase/edge-runtime
- deno_core で作られた edge runtime
- https://users.rust-lang.org/t/was-there-a-huge-syntax-change/93818
- 1.0前のRustのシンタックスがぜんぜん違う話しrust
fn main() { vec::iter([1, 2, 3]) {|i| io::println(#fmt("hello, %d", i)); } }
- 1.0前のRustのシンタックスがぜんぜん違う話し
- Rustのクロージャtraitについて調べた(FnOnce, FnMut, Fn)
Wasm
- https://captown.capcom.com/ja/retro_games
- ブラウザでNESなどのエミュレーターを使ってゲーム遊べる
- 裏でWasmが使われていた、他にも jquery などが使われている
- https://github.com/rustwasm/wasm-snip
- Wasmのバイナリを小さくするやつ
- name section の情報を元に呼ばれない関数を探して消してくれる
TypeScript
- TypeScript 本体のコードを読んでみよう
これから読む人向けに、登場人物や概念を整理して紹介したい。
コンテナ
- BuildJetを使ってamd64とarm64に対応したコンテナイメージを今までの8倍速く作る
- BuildJet が提供するArmマシンを用いてArmで動くイメージを作成する
- Docker Buildx を用いると複数のイメージに同じタグを貼ることができる
- Actionsのx86_64マシンでamd64で動くイメージを、BuildJetのArmマシンでarm64で動くイメージをそれぞれ作成してくっつけた
- https://github.com/containerd/accelerated-container-image
- コンテナ起動が速くなるやつらしい
- tarじゃなくてランダムアクセスができる形式にすることで、コンテナ起動に必要なブロックだけ先に取得して起動みたいなことができる(ストリーミングみたいなイメージ)
Frontend
- フロントエンドのデザインパターン
- Chrome for Testing: reliable downloads for browser automation
- 特定のバージョンのChromeをダウンロードできるsh
npx @puppeteer/browsers install chrome@116.0.5793.0
- 自動アップデート機能を無効化
- 特定のバージョンのChromeをダウンロードできる
- Reactのkey propに配列のindexを使うことが良くない理由
- RSC From Scratch. Part 1: Server Components
- ゼロからReact Server Componentsをつくるやつらしい
- React の Component 設計と Atomic Design
k8s
- Kubernetesの知識地図
Kubernetesの基礎から本番運用のベストプラクティスまで,押さえておきたい情報源を第一線のエンジニアが厳選。進化を続けるKubernetesと幅広いエコシステムについての知識をこの一冊で身につけられます!
- https://github.com/bitnami-labs/sealed-secrets
- 機密情報を暗号化して、そのままgitで管理できるようにするやつ
- k8sクラスタで復元する流れみたいだ
- Cloudflare Tunnelによるローカルサーバーの公開(Google Domainsのドメイン使用)
- おうちk8sで立てたサーバーを公開するときにCloudflare Tunnelを使いたい
- 公式ドキュメントもあるのでやるときはそちらを見てやる
Vim
- https://github.com/EtiamNullam/deferred-clipboard.nvim
- Neovimはクリップボードは外部コマンドに依存している
- そのためパフォーマンスの問題がある(例えばssh先でNeovimを使う場合、y/pがもっさりするなど)
- それを遅延させて操作をブロックしないようにしているやつ
Linux
- https://lists.debian.or.jp/pipermail/debian-announce/2023-June/000018.html
- https://twitter.com/debian_jp/status/1668608983324827648?s=20
- 「Release ファイルは期限切れです」エラーが起きたら以下の対応をする
/etc/apt/sources.list を http://ftp.jp.debian.org から http://deb.debian.org へ変更して再度更新をお試しください。
セキュリティ
- 機密情報の管理で大切なこと
- データの暗号化
- どこに保存するか
- 認証
- アクセス権限
- ローテーション
- 鍵の共有自体を防ぐ仕組み
- デプロイ時などの鍵配送
- Audit(監査)ログ
- 漏洩の検知
- 漏洩時のインシデントインパクトの最小化
- シークレット管理に焦点を当てたマネージドサービス HCP Vault Secrets が発表されました
- HCP Vault Secrets について紹介している
- HCP Vault Secrets とは
- シークレットの登録
- シークレットの参照
- アクティビティログ
- 外部シークレットマネージャーとの連携
- HCP Vault Secrets について紹介している
その他
- Javaがパブリックスタティックヴォイドメインの呪文から解放される
- こう書けるようになるらしいjava
void main() { System.out.println("Hello"); }
- こう書けるようになるらしい
- Nixでlinuxとmacの環境を管理してみる