6:05 に目が覚める。雨合羽をドンキのレジ袋に入れたままベランダに放置していたのをフックハンガーにひっかけて干す。 隅田公園に出てゴミ処理、水浴び、トイレ。部屋に戻る。

7:00 NHK を観ながら朝食。昨日買っておいたカルボナーラ。 食い終わってからハローワークで入手した求職申込書を記入してみる。提出するかどうかはあとで決める。 実際に書いてみると、

  • 連絡先候補が住所しかない。携帯電話、それに付随するメールアドレスが欲しい。
  • 前歴まで年単位で空いているのが目立つ。これで企業が見向かないと思う。

Dropbox フォルダーにあった履歴書を更新する。MS Word のファイルを LibreOffice Writer で編集。コンビニのプリンターで印刷することを想定して PDF に変換して確認する。プレビューまでは問題ない。問題はインターネットのない環境で、このデータをコンビニのプリンターに持ち出す手段だ。

割れ目を決める手順が私の脳裡で明確になった。ビデオゲームの麻雀専門だとこうなりがちだ。 コードを書いて気を紛らす。

10:30 外出。尿意に気を取られてうっかり書類を持参するのを忘れる。隅田公園、駒形橋経由で浅草駅へ。 地下道の床屋が満員。

11:10 西友浅草 ROX 店でおやつを購入。

  • レーズンロール (5)
  • ホットケーキサンド
  • ポテチ塩

また床屋に行くがもちろん満員。昨日得た教訓によりさっさと諦める。向島に戻る。

11:30 さっき済ませるべきだったガス代の契約期間前の料金についての問い合わせを別の階の大家にしに行く。 今日は店は空いているが、担当者がいないとのこと。よくわからない。 というか、これを書いている途中に本人が部屋に来訪して差額を現金で私によこした。 これで額面どおりに納付することができる。

真っ昼間からテレビを観る。ワイドスクランブルのパンチェン・ラマ問題が興味深い。 手慰みの麻雀コード、牌山を実際の麻雀に忠実にモデリングしようとすると難しい。

15:30 外出。錦糸町へ。オリナス錦糸町でトイレとコンビニ。

16:30 セブンイレブンオリナス錦糸町店でガス代の支払いを済ませる。

17:10 ホープ錦糸町店で念願の散髪を果たす。しかも安く付く。さらに 200 円引き券も入手。

17:45 カスミオリナス錦糸町店で食料を調達。

  • 八宝菜丼
  • お揚げのきつねうどん

18:25 向島の部屋に戻る。テレビを点けてニュースか妖怪ウォッチを観る。

19:00 晩飯。八宝菜丼、買い置きの絹豆腐、ホットケーキサンド。 ホットケーキがべらぼうに甘い。豆腐の醤油が塩気が強くて助かる。

食後は麻雀の練習とプログラミング。局回しのループはよく考えないと。

21:00 入浴。気分は全然清まらない。

21:35 隅田公園 Wi-Fi ポイントへ PC を持参。インターネットに接続して情報収集。 接続確保まで 5 分強かかるのは本当に納得がいかない。 ボンバーガールのマンガが見られれば金曜日は満足だ。

22:15 部屋に戻る。テレビでも観るか。PC のファイルを確認。そのまま日付が変わる。

Programming Notes

局が進むときの自風更新処理コード。ダサい。

def _rotate_seat_winds(self):
    """Rotate seat winds, i.e. S, W, N, E = E, S, W, N.
    """
    for player in self.players:
        if player.wind == Winds.EAST:
            new_wind = Winds.NORTH
        else:
            new_wind = Winds(player.wind - 1)
        player.wind = new_wind
    self._update_players()

列挙子を 1 から数えるのが筋悪だと実感する。序数は 0 から始めなければならない。 東南西北は 1, 2, 3, 4 と番号付けられているからそうするのが自然かと思ったが、実はそうではない? サイコロの和から 1 を引けばそれだけで済む。Python では -1 % 4 == 3 なのだ。