職業プログラマの休日出勤

職業プログラマによる日曜自宅プログラミングや思考実験の成果たち。リアル休日出勤が発生すると更新が滞りがちになる。記事の内容は個人の意見であり、所属している(いた)組織の意見ではない。

CakePHPのTableRegistryでのテーブル探索

CakePHP 5.x で新しいアプリケーションを開発して、いざ本番環境に初めてdeployしたところ、以下のようなエラーに遭遇しました。

error: [Cake\ORM\Exception\MissingTableClassException] Table class for alias `{テーブル名}` could not be found

この記事は、このエラーの原因のうち、筆者が遭遇したものについてのメモです。

長いので3行まとめ

  • Macのデフォルトのような case-insensitive なボリュームで開発されたコードは、case-sensitive 環境では動作しないことがある(PHPの auto_load が)
  • CakePHPTableRegistry::getTableLocator()->get();が本来想定しているのは、テーブル名ではなく、Tableクラスのクラス名から「Table」を取り除いた文字列(documentから読み取れる情報)
  • そんな文字列はバグの原因になるから渡したくねーよ、という私のような人は FooBarTable::class みたいな形で渡すと幸せになれる🥰
続きを読む

トロンボーン試奏メモ

新年早々、トロンボーンを買いました。

購入するにあたって、色んな楽器(いずれも細管テナー)を試奏させてもらったので、その雑なメモをここに書き記しておきます。
試奏の様子は録画していたのですが、隣の部屋で試奏していたTrumpetの方の音が沢山入り込んでいるので、動画は公開はしません。

それぞれの楽器の感想は私個人の感想であって、科学的・客観的な評価からは遠くかけ離れたものです。知らんけど。

続きを読む

2023年の成果物まとめ

晦日ですね。例によって今年の成果物のまとめを晒しておきたいと思います。

過去記事はこちら。

続きを読む

CloudWatch Agent が起動しないトラブルの対応メモ

先日、お仕事で久しぶりに、AWSのEC2に CloudWatch Agent を入れる作業をしていたところ、ちょっとハマったポイントがあったのでここにメモしておきます。

目指す状態

  • CloudWatch Agent が起動して、メトリクスを CloudWatch に送信している状態
  • CloudWatch Agent が起動して、Webアプリケーションのログを CloudWatch Logs に送信している状態
    • 本当はNginxとかOSの一部機能のログとかも送るけど、本メモの主題とは離れてるので、この観点での情報は割愛
続きを読む

証明写真を「ピクチャン」で印刷した件

今日は秋の情報処理技術者試験の日でした。

www.ipa.go.jp


他にも「横浜ジャズプロムナード」や「PHPカンファレンス」など様々な魅力的なイベントが衝突した一日でしたが、私は試験を受験することを選択しました。
試験の受験記は別の記事にしますが、ここでは証明写真についてログを残しておきたいと思います。具体的には「ピクチャン」というサービスを利用して写真を印刷した話です。

pic-chan.net

続きを読む