Archive of posts from yyyy-03-19

ロブ・パイクのプログラミングにおける5つの基本原則
  • ルール1. プログラムの実行時間がどこに集中するかを事前に予測することはできません。ボトルネックは予想外の場所に発生するため、速度改善のためのハックを施す前に、まず実際にボトルネックが発生している箇所を特定することが重要です。
  • ルール2. 計測しましょう。速度のチューニングは、コードの特定部分が他の部分を大幅に遅延させていることが確認できてから実施してください。それまでは一切、行わないでください。
  • ルール3. 複雑なアルゴリズムは入力サイズnが小さい場合には非効率ですが、nが小さいケースがほとんどです。複雑なアルゴリズムには無視できない定数項が存在します。nが大きくなることが確実でない限り、複雑なアルゴリズムを採用するのは避けましょう。(たとえnが大きくなる場合でも、まずルール2を適用してください)
  • ルール4. 複雑なアルゴリズムは単純なものよりもバグが発生しやすく、実装も困難です。単純なアルゴリズムとデータ構造を優先的に使用してください。
  • ルール5. データが最重要です。適切なデータ構造を選択し、適切に設計できていれば、アルゴリズムは自然と明らかになるものです。プログラミングにおいて重要なのはアルゴリズムではなく、データ構造なのです。

ルール1と2は、トニー・ホーアの有名な格言 「早期の最適化はすべての悪の根源である」を言い換えたものです。

ケン・トンプソンはパイクのルール3と4を「判断に迷ったときは、力任せの方法を採用せよ」と言い換えています。

ルール3と4は、設計哲学「KISS(Keep It Simple, Stupid)」の具体例です。

ルール5は、以前フレッド・ブルックスが『人月の神話』で述べたものです。このルールはしばしば「賢いオブジェクトを使用する単純なコードを書け」という簡潔な表現で語られます。

https://www.cs.unc.edu/~stotts/COMP590-059-f24/robsrules.html

[散財] 『ZOJIRUSHI 圧力IH炊飯ジャー 【5.5合炊き】 NP-NC10-TC メタリックブラウン』

炊飯器が壊れてからというもの、しばらくガスと釜で炊いてたんだけど、ガス口が1つ占領されるのが嫌になってきたのと、離乳食のおかゆを作るのが面倒なので、何でもいいからと炊飯器を購入。

炊飯器は本当にいろんな種類があってどれを選んでいいかわかんない。結局、kakaku.comの売れ筋ランキング4位だったので、コレにした(1位は取り寄せで、2位3位は4万円以上するのだ)。

ヨドバシカメラで27,000円くらい。ポイント引いたら24,000円くらいか。

[映画] プリンセスと魔法のキス

部品はすごく良質だけど、作品としては???だ。整合性がとれてないというか。

魔女(?)が

望むものと必要なものは違う

と言う。これが本作品のテーマだと考えられる。

でも、その違いは何なの? それが語られない。
登場人物はみんな「望むもの」を手に入れていくし、
持ってないはずの「必要なもの」は最初から持っている(みんな最初から人間(?)ができている)。

これで現代的な物語を描くという試みは失敗してると思ったよ。

良かったのは、金持ちの娘の性格がいいところ。

[映画] 『奥崎謙三, 原一男 - ゆきゆきて、神軍 [DVD]』

見た人の人生に傷跡を残すような映画がいい映画だ。よって本作はいい映画だ。
っていうかすごすぎるだろ。主人公も嫁も遺族もみんなキチガイ。でも、キチガイならざるを得ない状況も分かるから難しい。これは観るしかない。めちゃくちゃオススメ。

[映画] 『ドリームガールズ [DVD]』

『自分探しが〜』を読んでからというもの、
夢が叶う系の歌詞を見ると失笑して止まない。

それはそれとして、
エンターテイメントな映画としては良かったんじゃないでしょうか。
タモリさんでもギリギリ大丈夫そう。

[本] 『強くなれ!わが肉体改造論 (幻冬舎文庫 お 18-1)』

マス大山の書。とはいっても、超人的な荒行が書いてあるわけじゃなくて、朝ごはんはしっかり食べろとか、酢を飲めとか、梅干を食べろとか、豆を食えとか、木の実を食えとか、生肉を食えとか、健康な汗を流せとか、握力を鍛えろとか、実行可能な範囲で肉体改造論が記されている。

特に「食」へのこだわりはノー根拠で読者を論破する破壊力。いわく、「昔から言われているから間違いないと思うが、どうだろうか」。いわく、「マス大山がやっているのだから間違いないと思うが、どうだろうか」。いわく、「こんなに栄養素が含まれているのだから間違いないと思うが、どうだろうか」。押忍、すべて正しいであります。