そういえば突然 Pro($15/m) のみになった WP.com の pricing その後どうなったのかと調べると、昔の価格設定に戻っていた。よかったね。5月に $5/m の plan を追加してみたたが、 結局昔のに戻したらしい(アナウンス)。やれやれ。
Month: August 2022
Link: The growing image-processor unpleasantness [LWN.net]
The growing image-processor unpleasantness [LWN.net]
Intel 12 gen の CPU に入っている ISP (カメラ用のチップ) IPU6 にドライバがないので webcam サポートができないという話。そもそも ISP が入っているとか考えたことがなかった。これまでのバージョンではサポートされていたということだろうか・・・。
Intel はいちおう GitHub で driver と名の付くものを配布している。ただこれは厳密にはオープンソースではなく prebuilt binary に依存しており、オープンソース部分も upstream する気はなく、V4L2 のような既存の API もサポートしていない、らしい。でも v4l2 というディレクトリがあるな。
そんなものを公開する意義はなにかというと、この記事では Chomebook サポートの必要性を示唆している。この Intel のコードもよく見ると cros-camera というディレクトリのヘッダファイルを参照している。Chromebook を使っている分にはなんとかなるということか。Upstream してほしいけど、そもそも HAL の API を upstream する必要があり、それは難航するだろうと書かれている。そうだろうね・・・。なお Dell の新しい Linux laptop も同様に Dell の中の人が downstream でがんばってなんとかしているが、遅くて大変という記述。こうやってデバイスベンダーに適当なコードを押し付けるモデルは Snapdragon も同じ。オープンソースではないがきちんと upstream で動く GPU driver を提供している NVIDIA はえらい。
自分が少し前まで Linux laptop を使っていた時にこういう問題で困った記憶はないが、そういえば webcam を使っておらず、必要があるときは Chromebook か Android で用を足していた。
Prep
04:45. 起床はしたがだらだらしてしまいこんな時間。精神が低調。
昨日録音したので今日は公開準備です。そして自分のターンの準備もしなければ・・・
低調すぎて論文よむ元気がない・・・が、とりあえずノートを書き始める。
CodeForces: Virus
コード書いてるうちに時間切れ。問題をちゃんと読んでいないせいで手戻り多し。Kotlin はまだ慣れないが、入り組んでくると型があるだけ Python より良いなとは思う。表現力というか簡潔さもそんなに負けてないし。
Codeforces: Build Permutations
- Problem – 1713C – Codeforces
- level 1200 にしてみたが、さっぱりなので答えを見ます・・・。
- 若干 math っぽいせいか答えをみてもさっぱりわからん。
- Copying the Solution for https://codeforces.com/problemset/problem/1713/C
書いてもわからん。 - 他の 1200 もこんなんだと困るな。コードを書く筋トレをしたいのであって math puzzle を解きたいわけではないからねえ。
- Problem – 1704C – Codeforces わからなそー・・・。まあぼちぼち考えますが、時間切れ。なんか考えてばっかりで手を動かすターンがこない Codeforces 1200. もうちょっと 800 をやっとくべきなのかもしれない。
04:28. 昨日は YT でぼんやり時間を溶かさず就寝できた。
- Problem – 1716A – Codeforces
- 問題の名前を <title> にいれるとか、そういう基本的なことが色々できてない competition サイトの皆さま。
- Solving https://codeforces.com/problemset/problem/1716/A
- 何も考えず DP して失敗するという、いかにも Leet の方からきたダメプログラマ的行為をしてしまった・・・
Codeforces
04:55. 耳垢掃除薬の適用に時間がかかってしまった・・・
Kattis に挫けたので今日からは Codeforces. なお Topcoder も見たけどまったく使い方がわからなかった。10 年前くらいにいちど使ったことあるはずなのだが・・・。Codeforces は解答 (Tutorial) もあるし新しい Kotlin もサポートしてるしで、そこそこ期待している。Scala は 2.x はあるけど 3 はなくて、ほんと流行ってねーな Scala 3. まあ自分は Kotlin でいいです。
- Problem – 1716B – Codeforces
- Solving https://codeforces.com/problemset/problem/1716/B
- しょうじき別にパズルは楽しくないが、Kotlin のコレクション API を調べて使うのはまあまあ楽しい。Kotlin fluency の訓練には寄与しそうな気がする。
- この一番簡単なレベル 800 を数問やったらつぎのレベル 1200 をやってみようかな。
Judge Error
- Money Matters – Kattis, Kattis
- Destructuring assignment がほしい…
Support destructuring assignment : KT-11362 - がんばって書いて submit したら “Judge Error” だそうな・・・。マニュアルによるとこれは internal error 相当らしい。しかしログもなんもないのでデバッグ不可能。しらね・・・。
- Solving https://open.kattis.com/problems/moneymatters/statistics
- Kattis やる気が失われたので別の platform を探しますわ・・・。
Hacker News でカルマを稼ぐ
一年少し前くらいから、気晴らしで Hacker News でカルマを稼ごうと思い立ち活動を始め、昨日めでたくカルマが 1000 になった。
これはインターネットで時間を溶かしている証左でしかないが、ではどのくらい溶かしているのかというと、活動は主にコメントで、270 コメントくらいしたらしい。二日に一回よりちょっと多いくらいのペース。例のごとく HN の公開データセットで計算してみると、これはコメントをしたユーザ全体の上位 2.5% のコメント数らしい。つまり、かなりヒマをつぶしている。しかも HN とか 2011 年くらいからあって自分は 2021 参加の新参者なわけだから、それにしてはコメントしすぎである。なお 20k / 800k みたいな規模感です。
コメント一つあたりの平均カルマはだいたい 3-4 くらい。つまり特にウィットの効いたコメントができているわけではない。じっさい単一コメントだと 20-30 くらいが限度。これはコメントが数十個程度のマイナーなスレッドだと一番上にくるようなイメージ。Mediocre ですね。はい。気の利いたコメントができる人なら同コメント数で 10x くらいカルマを稼げそうだが、まあいいです。当初は HN でカルマを稼ぐコツについて書きたいと思っていたが、こんな mediocre じゃ書くこともないね。コメント以外だと Ask HN も一回やったことがある。リンクの投稿は数回。
書いたコメントに返信がついたりするとインターネットしてる感じがして割とうれしい。こういう感じ、久しく味わってなかったなと思う。言語バリアのおかげで emotional burden が若干低めなので、それもよいです。時間のムダであることに変わりはないけれど。
Kattis
LeetCode に金を払い続けるのも癪に思えてきたので他を探したら Kattis というのがあったので冷やかす。
ただテストデータは見えないので、間違えたときに何が間違ってるかはわからないのだね。これだとバグがあるときに詰んでしまう。むかし Topcoder 試したときはそれがフラストレーションで続かったなかったのだよなあ。(スコアを競い合う)競技プログラミングの性質と答えの開示は相反するので仕方ないけど、テストケースが見えないの直しようがなくね?まあ甘えなのだろうけど、こういうスタイルだと無限に時間が解けてしまうか、ギブアップして何もわからないまま終了にするしかなくて、一日 30 分くらいだけパズル脳を訓練したい自分とは相性が悪い。ヒマな人向けで残念。
もう一問くらいやるか。
- A Different Problem – Kattis, Kattis
- BigInteger つかわらない縛りで
Solving https://open.kattis.com/problems/different - やはり解答がないとイマイチだよなあ。このダサい解でなく、もっとスッと解く方法あんでしょ、みたいな気持ち。
The rsync Algorithm
Tridgell: The rsync algorithm – Google Scholar
How Dolt Stores Table Data | DoltHub Blog から noms/intro.md at master · attic-labs/noms を理解するために読んだが、この肝心の Prolly-Tree はまだ理解していない。
Greatest common divisor
04:38. さて Leet をやって、今日は家の用事を片付けなくてはなりません。
- Mirror Reflection – LeetCode
- 日替わり問題くらい解答用意しとけや・・・と、gray out された solution タブを見て思う。まあやります。
- 本質的には GCD を計算しなさいねという問題だったので、Wikipedia をみて Euclidean algorithm を復習したのち解答。そういやそんなアルゴリズムだったねー GCD くらい標準ライブラリでできてもバチは当たらないとおもうけど(パズル脳)・・・。それにしてもこのアルゴリズムが必ず停止するのって直感的には不思議。
- gcd はともかく解との関係を整理するのにやたら時間がかかってしまった。Arithmetic の苦手さよ。でも幾何的な雰囲気ある問題ってパズルぽくていいよね。
- あとはおうちの調べものがあるのでここまで。
Leet, Paper
04:49. ダラダラとインターネットをしてしまいこの時間。帰省以来ダラダラネットの習慣が復活してしまったのを直していかないと。はさておき、雑用して Leet して・・・くらいかな。
- My Calendar I – LeetCode
- Solving https://leetcode.com/problems/my-calendar-i/
- edge cases がある以外は fizz buzz といった風情.
- LeetCode, Python には code completion があるのに Kotlin にはない。でも訓練としてはむしろ無いほうが良い感。
- 思ったよりあっさりおわったのでストレッチしつつ paper でも読むかな。
Leet, Paper
04:04. さて今朝は家賃を振込、Leet して、久しぶりにお手紙活動しますかね。
- Kth Smallest Element in a Sorted Matrix – LeetCode
- わからん。解答をみてなるほど、となる。Heap こういう感じで使うのね。
- Solving https://leetcode.com/problems/kth-smallest-element-in-a-sorted-matrix/submissions/
- 走る時間まで 30 分くらい paper 読むべし
訓練活動 – Leet
04:44. さて Kotlin Leet です。なんか他のことをする時間がないが、まあ慣れるまでは仕方ない。そのうち slowdown したい。
- Min Cost Climbing Stairs – LeetCode
- https://gist.github.com/omo/1dd017d184079bfbada6479718d73a5c
- Memoize をライブラリにせずインラインに書く試み。こっちの方が簡潔だな・・・。
- House Robber – LeetCode
- 飽きたでござる・・・初級編から始めたのがよくなかったか、DP だけなのがよくなかったか・・・。LeetCode には「本日の問題」みたいのがあるので、それだけやるのがいいかもしれない。次回からはそうするべし。
- あとなんとなく curly brackets 必須の coding convention でやっているが、この手のパズルなら簡潔さという意味でなくてよいかもな。
さて Podcast 用の論文を選ぶか … といっても次回はもう Dynamo で決まりなのだが、そのあとを考えたい気もする。Paperpile を整理しようかな。