Posted on

年の瀬

時間の流れは疾いもので瞬く間に年も瀬になりました.
ライフログ(下図)を基に, 今月も1ヶ月を振り返ります.

private 内輪 Advent Calendar 2021

一時期, 友人らと競プロに入門していて, その時の知識共有サービスとして Kibela を用いています. しかし, 各々が忙しく?なり知識共有も滞っていました. そこで, 12月になったら記事の内容は問わず, 文量もどんなに少なくても良いので毎日誰かしらが交代で記事を投稿する「Advent Calendar」をやりませんかと提案したら快く賛同して頂けました.

記事を書くハードルを限りなく低くするため, 最低数行で良く, テーマを問わないとしたところ, マイブームのような趣味を紹介する記事から, ある概念の説明まで様々な趣向の記事を毎日読むことが出来て毎日興味深かでした. 自分が書いた記事の中からいくつか掻い摘んで紹介すると,

2021ベスト100音楽

毎月, 聞いている音楽のプレイリストを作っているのですが, それらを振り返り100曲選抜してSpotifyのリンクを付けて紹介しました. 大体 アニソン周辺 + VTuberが歌う歌周辺 + (Kawaii) Future Base周辺のようなラインナップとなっていた.

Turing Machineについて

元々は Probabilistic Polynomial-time Turing machine に関連する話をしようと思っていたのですが, 自分が理解をしていなかったので話を戻して, DFA, NFA -> PDA -> Turing Machine という学部の計算理論でやったあたりの流れの概要について書きました. 記事を書くことによって良い復習になり良い. 計算複雑性クラスの話は(出来ていない && 忘れている)のでいずれ追記したいと思った. また, $\lambda$ 計算周りももう一回やりたい.

型クラスとは

競プロにおいて, 解くためのアルゴリズムは Python で書けるがまだ,

  • クラスは殆ど使用したことがない, OOPについて初学
  • 型の良さをあまり体感したことがない というような友人を想定した記事.
    型について, クラス, 継承についての説明を前置きとして, 型による表現の限界について説明した後, 型と値の関係のアナロジーとして型クラスとインスタンス(型)の話をして, 具体例としてモノイドを trait として実装する流れを書いた.

具体例が些か強引である.

友人とVRChatを何回かやった話

去年の6月に前々から買おうと思っていたVRヘッドセット「Oculus Quest」と買ったはいいものの, 院試勉強や卒論などが押し寄せるうちにOculus Questはホコリをかぶってしまっていました. そんな中, 友人も去年の10月にOculus Quest2を買っていたのでそういえばVRヘッドセット持っていたよねという話になり, VRChatというのが面白そうだという流れになりました.

ボタンを押すと手元に開くメニューから色々な操作をする. 友人とフレンドになり, 合流する. 始めたばかりで操作がわからない人のために用意されているのがチュートリアルワールドで日本人専用のチュートリアルワールド [JP] Tutorial World - Public がある. 友人とまずはここに行くことに.
このワールドのpublicインスタンスには数十人がいて, 入るや否や一緒に回りませんかと声をかけられ親切なことに上級者の方に説明してもらえることになった. 上級者の人たちはこのように初心者に対する案内を自主的に行っている人が多いのだそうだ. アバターは常に変更できるので, 自分のアバターになってくれたりもした.

また上級者の方は季節によって衣装を変えたり, 自分でアバター作成等も行うらしい.

丁寧に1時間位かけて一通り説明をして頂いた後, 一緒に回った人達とフレンドになり, 10人位で集合写真を撮った. 残念ながら撮った写真が保存されないというバグによりお見せすることが出来ないが, どの方も非常に親切にして頂いた. 最後はまた遊ぼうねと言って別れた.

VRChatは9割が外国人でこのような日本人専用ワールド以外の場所では大抵英語か中国語, またはロシア語あたりで話しかけてくる. 言語の壁がある以上外国人の方とのコミュニケーションは難しいので日本人というだけで一定の安心感みたいなものがあることがわかった. VRChatのワールドは多種多様であり, 観光を目的としたワールドやゲームを目的としたワールドまで何でもある. 面白いワールドを見つけるのも, はたまた自分のなりたいアバターを探求する等色々な楽しみ方が出来る. 離れていても人と会ったような体験が出来るという意味で新鮮だった.

LLVM Compiler開発合宿(2.5日間)

友人と短期集中でコンパイラを作りました.

  • [[20211226_toy_llvm_compiler]]
  • [[20211227_llvm_compiler_2_codegen]]

で詳しく記す予定です.

見知りしたこと

  • Rust製fancyなerror reportingツール
  • Pyroでの変分推論
    • PPL: 確率的プログラミング言語で確率モデルを記述しやすくできるもの
  • 依存関係がある仕事をいろいろな人に割り振ると辛くなることが知られている
  • 【イラスト練習法】1年で神絵師になりました(独学編)|ワカドリ|note
    • 努力の化け物, 尊敬しています.
  • 「急速に古ぼけてゆく事実」
  • 「すぐ役に立つものはすぐ役に立たなくなる」
  • 外山滋比古 - 思考の整理学「見つめる鍋は煮えない」
  • log4j2 のRCE脆弱性(CVE-2021-44228)
  • blitz + supabase よさげ(n回目)
  • CoeFont STUDIO
  • ゲームの全てのコンテンツがprocedualに自動生成される日は来るのだろうか
  • ユビキタス言語でコミュニケーションコストを下げる話
  • Engineering Ladder
  • NLP: 評価指標
  • 量子ドットレーザーの概要
  • [[20211219_ts_discriminated_union]]
  • 博識洽聞:知識があり経験もある様
  • find, xargs 空白入っていても大丈夫な方法
    • find . -type f -print0 | xargs -0 cat | wc -ml
  • Headless component の設計パターン取り入れたい
  • yup + react-hook-form 良さげ
  • SNSグループ(特にLINE, 次点Slack), その真部分集合のトークルームが乱立する問題
    • 集まりに行けない人が出てくるので参加する人だけでephemeralなトークルームが作られる
    • グループ内の期間限定スレッド見たいのが作られたら良さそう
  • Rust Memory Container Cheat-sheet - Qiita

Flutter migration

Flutterで開発しているアプリのFlutter 2 migrationを行い, 1.26.0-17.8.pre から 2.8.0 へ移行した. 公式でmigration guideとtoolを提供してくれているので, 基本は Migrating to null safety | Dart に沿って作業を行えば良さそう.
流れだけ書くと

  1. パッケージがnull-safetyに対応しているかチェック
fvm dart pub outdated --mode=null-safety
  1. null-safety に対応していないパッケージについて個別に見ていき, null-safety 対応forkがあるか, 代替パッケージを探す.
  2. パッケージを更新
fvm dart pub upgrade --null-safety
  1. コードの null-safety migration を行う
fvm dart migrate --skip-import-check --ignore-errors --ignore-exceptions --ignore-errors

web viewが立ち上がるのですべてをapply

  1. 個別のパッケージのマイグレーション
    1. FirebaseFirestore
    2. Sentry
    3. reverpod: Riverpod v1.0.0 (stable)の変更点(v0.14.0との比較)
    4. json_serializable
    5. AdMobFlutter -> GoogleMobileAds: アプリ起動時広告  |  Flutter(ベータ版)  |  Google Developers
  2. AndroidX migration: AndroidX Migration | Flutter

娯楽

  • #game VRChat
    • 色々な世界ぶらり旅
  • #game Cluster
  • 和布 翠 / 和布 翠 v0.2 - VRoid Hub
    • 自アバターの為にVRoid Hubで作成したアバター, [[Blender]] を使わず完結するのは良い

  • #game プロジェクトセカイ
  • #watch/youtube ほりぬきチャンネル
  • #watch/anime 見える子ちゃん
  • #watch/anime 無職転生
    • 無職転生まだ序盤らしく, 非常に原作読みたい