Posts for: #2023/10

アイマスク効果

1ヶ月と2週間ぶりの出張。

0時に寝て2時半に起きた。なにも準備していないのが悪いけれど、出張前夜は寝坊したらどうしようというのが気になってあまり眠れない。起きてから出張の準備をして5時過ぎに出た。電車に乗るまで少し時間があったので朝からなか卯で まぐろのたたき丼 を初めて食べた。値段を考えると親子丼を食べた方がお得なように思えた。出張の日は夕方眠くて集中できないことが多い。新幹線の中で眠れるよう、ダイソーでアイマスクを買ってみた。その成果もあって、わりとよく眠れた。アイマスクの効果は確かにあったと思うが、なぜか寝違えて首を痛めた。新幹線でよく眠れたように考えていたが、15-16時は眠気に襲われた。やはり3-5時ぐらいから起きているとそのぐらいの時間に眠くなってしまうんやろか?

マイルストーン定例

いつもの定例会議をやって、開発状況の共有や設計レビューなどを行う。私は権限管理の仕組み作りをちょっとずつ作っているのであまり全体を見渡せていないが、メンバーが主体となって段取りを進めてくれた。あと新規メンバーが先週から開発に参加する予定が、別プロジェクトの段取りがうまく行っていないようでまた仕切り直しになった。もう2週間ほど様子をみるという。3回目のスケジュール調整になる。こういう五月雨式に直前に遅れていくパターンを私は信用しない。スケジュールを自分で制御できる状態にない、または制御できたとしてもやる気がないようにみえる。いずれにしても、私が制御できないプロジェクトの影響で、うちのプロジェクトの成果物に影響が出ないようにしたい。機能開発を3ヶ月と見積もっているうちの、1ヶ月がすでに過ぎた。もう新規メンバーの受け入れは諦めて、既存メンバーだけで成果物ができるような体制へ移行することに決めた。幸いにも既存メンバーは十分にタスクをこなせるようになってきているし、私も10月後半ぐらいからバーンアウトを消化して開発の集中力も戻ってきた。11月にちょっと本気出してサーバーサイドの開発をしてもよいかもしれない。

go のオンライン勉強会

Go 1.21 リリースパーティ & GopherCon 2023 報告会 をオンラインで参加した。ホテルについて少し寝てからアラームで起きて視聴してた。始まる前に30分ほど仮眠しても、移動日はしんどくて、みながら半分ぐらいは寝てた。最初と後半2つぐらいのセッションしか覚えていない。メルカリの社員さんたちは GopherCon 2023 に参加して、その内容などを紹介していた。もう私は海外カンファレンスへわざわざ行こうというモチベーションはない。たぶんもう行くことはないのだろうけど、そういった場に行って学んでいる開発者にはもう追いつけないのだろうなとも思えた。

sns の百害

1時過ぎに寝て4時に起きて7時に起きて8時に起きた。夜更ししてネットをみてて寝坊した。先週に引き続き、いくつかリファクタリングしつつ、午後からはコードレビューして、それが終わったからまたコードを書いてた。

正義の追及

もう何年も前から twitter はやめようと考えながら、なんかだらだら続けてきていた。イーロンマスクが買収して、課金しないと機能がなくなったり、利用者も減ったりしていて、私もよいタイミングだと twitter をやめることにした。本当はアカウントをアーカイブモードのように凍結できればよいが、それは故人向けにしか提供していないみたいなのでアカウントを削除するといったことはしていない。というのは、削除すると一定期間を経て他人が同じ id でアカウントを作れるそうなので、なんとなくそれは嫌だなと思ってアカウントだけは残している。

たまたまあるイベントで、運営側の不手際で参加者のプライバシー侵害になるかもしれないといったトラブルが起きたらしい。起きてしまったものは仕方ないが、その不手際に気付いた人が sns (x) で大げさに拡散して、衆知の知るところになって、実被害や問題の大小とは関係なく、そういった不手際があったことがことさら悪いことかのように、また運営の対応も悪かったかのように、(おそらく) 実被害もないのに大きな問題であるかのように喧伝されてしまった。少なくとも運営が対応して以降は被害が出ないことから、それ以上の言及については本人の承認欲求でやっているようにしかみえなかった。醜かった。

昔からインターネット上でのトラブルというのはあったけれど、sns は数の暴力が強過ぎるように数年間から感じるようになった。とくに正義の力が強過ぎる。一見それはよいことのように思えるが、正義が現実や事実ではない場面もあるかもしれない。今回もなんらかの実被害や迷惑を被ったという話しはいまのところ1つも見聞きしていない。それに対して、自分たちの主張が正しいからと言って、運営を強く非難するような多くの人からの言動というのはやり過ぎにみえた。sns 上での流布の速度が速過ぎるせいで組織の対応は追いつかない。私は組織の人たちをよく知っているので、待っていれば然るべき謝罪や声明が出ることを信頼できる。この信頼がない人たちにとって、いま起こっている炎上に対して組織が即時で対応しないと、組織の怠慢や隠蔽を疑う声がちらほら上がっていた。sns の速さに人間が慣れてしまったのだろう。信頼がない人にとっては悪意のある組織かもしれないと疑って予防的に慎重にコメントするのも仕方ないのかもしれない。しかし、それが問題をより分かりにくく複雑にしてしまう遠因にもなっているように思えた。

読んだり書いたり

0時に寝て何度か起きて8時半に起きた。もう熱もおさまって平時に戻った感じ。今月の請求書を作ったり、ネットの記事を読んだり、のんびりしていた。

頁をめくる音で息をする

いとうさんに教えてもらった本 を読み始めた。「見えない手」というタイトルのエッセイで、妙見幸子さんという、生まれながら脳性マヒの障害をもっていて、四肢が不自由な方が書いた詩集にまつわるエピソードが書いてあった。

いい詩とは何かという話をお客さんと時々する。そのたびに僕は悩みながらこう答える。それは「切実さと誠実さ」なのではないかと。それを語らざるを得なかった詩人の切実さと、言葉に対する、あるいはその詩を手にする人びとへの誠実さ。

見えない手

詩集に限らず、どんな商品でも事業でも「切実さと誠実さ」を併せ持つようなモノに出会うことは滅多にない。読んでいて、そういうモノに出会えることそのものが幸せに思えた。こういう文章をさらっと書ける人の頭のよさとか、語彙の豊富さとかがうらやましい。

はてな匿名ダイアリーの書き方

はてな匿名ダイアリーの書き方 がいくつも投稿されるぐらい、ui がわかりにくい。匿名なのにログインしないといけないというアクションがそもそも相反する概念でわかりにくい。ログインすると、自分のアカウントの日記のように管理される。この時点で本当に匿名なんやろか?と不安にもなる。どうやらログインしたら自分の書いた匿名ダイアリーを管理できるようになっている。

はてな匿名ダイアリー > xxx の日記

はてな匿名ダイアリーのヘルプ もこれだけ。おそらく古いダイアリーのプロダクトだから記法に markdown も使えない。匿名ダイアリーがはてな社にとってどういったプロダクトかは知らないけど、明らかに保守されていないようなことがわかってしまうのは印象が悪いなと思えた。別に匿名ダイアリーを書く気はなかったんだけど、よい機会なので既存の記事に言及したり、自分で新規の記事を書いたりしてみた。記事を書く ui 体験はよくない。

副反応でバテていた

0時に寝て4時に起きて7時に起きて8時に起きた。一晩中、熱を測りながら寝てた。37度前後で推移して朝に37.8度でピークを迎えた。今日は日中37度前後で推移した。それほどしんどくはない。

ストレッチ

ワクチンの発熱がある中、ストレッチぐらいなら大丈夫だろうといつも通り行ってみたが、発熱のせいかどうかはわからないけど、いつもよりストレッチを受けていてもしんどかった。体がきしむような、いつもとは違う張りを感じた。左の太ももの前と後ろ、腰の後ろ辺りがひどくて、右足の股関節周りもかなりきつくて耐え難い感じだった。なぜか上半身の肩周りも堅くて、今週も座っている時間が長かった方ではあるからそんなもんかもしれない。今日の開脚幅は開始前153cmで、ストレッチ後155cmだった。熱が出て体がだるかったのでそのせいかもしれない。

近況報告の資料作り

新しい開発が始まって、初めての東京出張が来週になる。ふりかえりと要件整理のマイルストーンを1つ入れたので1ヶ月以上の期間が空いての出張となる。言っても1ヶ月と10日ぶりぐらいの違いでしかないけど、久しぶりに近況報告の資料を作ったような錯覚に陥った。あとホテルの宿泊予約を、これまでは1ヶ月前に予約するようにしていたのを最近は3ヶ月前に予約するようにした。日程と泊まるホテルが決まっているなら3ヶ月前に予約する方が同じ部屋でも1000-3000円程度は安くなるような気がする。ホテルは直前にキャンセルできるので3-6ヶ月前に予約して、予定が変わったらキャンセルするといった運用がよいことに改めて気付いた。1ヶ月前予約で十分と思っていた、自分の古い考え方をアップデートした。

税理士さんと雑談

23時に寝て1時半に起きて、起きてたのか寝ていたのか覚えてないうちに5時半になってた。あまりない時間の飛び方をしたので驚いた。

隔週の雑談

今日は特別な雑談で、顧問のはらさんに加え、新たに契約した税理士さん の3人で行った。税理士選定のときに何人かと打ち合わせをしていて、面談する回数で毎月の顧問料の金額が変わるという話しを伺った。契約した税理士さんはもっとも毎月のコストが低かった。本当は税理士さんとも、いまはらさんと話しているように月1回ぐらい雑談できれば望ましいが、それはいまのコストに含まれていないサービスだろうからそこは断念することにした。今日の議題はこれら。

  • みんなで自己紹介大会
  • 会社の前期のふりかえりと今期の展望の紹介
  • ワーケーションの経費の共有と確認
  • 未収還付法人税の扱いについての訂正依頼
  • 電子帳簿保存法への対応

うちの会社としてのイベントとして毎年ワーケーションを行うことを考えている。昨年はあくまで個人として企画して仲のよい人たちと一緒に参加した。一般の会社なら開発合宿と呼ばれるものだが、うちには社員がいないので1人で開発合宿しても仕方がない。そこで知人やコミュニティを巻き込んでワーケーションという、コワーキングなイベントにしてしまって、他者からの刺激やフィードバックを受ける機会にしたいという意図がある。コワーキングやコミュニティの価値を検証する poc にもなるかもしれない。以前、いとうさんに教えてもらった 「余白」 という概念を検証するのもワーケーションという非日常の機会が望ましい。たった1人の会社でもこういったイベントができるということ自体も、なんか孤独ではなくて嬉しかったりする。

2021 の赤字決算のときに「欠損金の繰り返し還付」をその年で計上していなかったために、2022年は還付によって得たお金があり、それが2023年の帳簿では「未収還付法人税」として数字がマイナスで残ってしまっている。会計処理も税務処理も数字自体は誤っていないはずだが、この数値がずっと貸借対照表の資産として残り続けるのも気持ち悪いので訂正しないといけない。それを税理士さんへお願いしようと考えていた。税理士さんに伺ったところ、それは次の法人税の申告のときにまとめて直すという。別表4, 5, 5-1 あたりを修正すればよいという。法人税法をちゃんと理解しておかないと修正できないが、税理士さんは得意な作業の1つだという。

電子帳簿保存法についてまったくよく分かっていないけど、2024年1月から運用が変わるらしい。これまでは紙に印刷して保存しておけばよかったのが電子データでの保存が義務化される。それは問題ないのだが、電子データが改ざんされていないことを保証するためにはタイムスタンプ (電子署名のようなもの?) を付けて、さらに暗号化しないといけないといったシステム要件があるみたい。

2021年度の改正により、取引先と電子データでやりとりした書類の書面保存が禁止されました。2024年1月1日からは、決められた保存方法にもとづいて、データのまま保存しなければなりません。

電子帳簿保存法の電子保存義務化はいつから?2024年までに必要な対応を解説

なにかしらうちの会社も対応しないといけないと思われる。厳密に電子帳簿保存法に定められたシステム要件を守らなくても、内規を設けてそれぞれの会社のルールで運用する分には問題ないと税理士さんが仰っていた。なにかしら電子データ保存のための内規を作らないといけないのかもしれない。今後、税理士さんと詰めていきたい。

ワクチン接種

15時から5回目のワクチン接種へ行ってきた。14時59分に受け付けを済ませたものの、タイミングがよくなくて、15分ほど待ってワクチン接種して、待っている間に外は雷雨になって、雷を避けながら帰ってくることになった。その後、普通にお仕事して摂取直後はとくに身体への負担はなかった。21時頃に熱を測ると37.0度になっていた。ほぼ1年ぶりのワクチン接種になる。

こんなことあるんやという失敗談を書く。体温計の使い方を忘れた。電源ボタンが見当たらなくて、電池切れたのかと思って100円ショップに購入へ行ってきて、電池交換のために上部を取り外ししていて電源ボタンに気付いた。ほぼ1年体温計を使わないでいると、電源ボタンの位置すら忘れていた。イメージとしては眼鏡をおでこにかけて、眼鏡がないと探している人みたいな失敗。日々の記憶もほとんど覚えていないような生活ではあるけれど、体温計の使い方を忘れるみたいなこともあるんやと実感した。自分もそういう失敗をするのだから他者にも優しくなろうと思えた。

権限管理ができるようになった

1時に寝て何度か起きて7時半に起きた。なんかしんどい夢をみたが、もう覚えていない。

rbac なミドルウェアの実装

昨日の続き 。rbac (role-based access control) なライブラリが一通り実装できたのでそれを使って echo のミドルウェア を実装した。やりたいことは次のようなこと。たったこれだけだが、これを実装するために、ここ1週間ほど、あれやこれやの実装をしてきた。ようやくそれが動くようになったというところ。私にとってはミドルウェアの仕組みは過去に何度も実装してきたものだが、頭に描いたイメージのまま、実装できたのがよかったと思う。

func rbacWithConfig(cfg rbacConfig) echo.MiddlewareFunc {
	return func(next echo.HandlerFunc) echo.HandlerFunc {
		return func(c echo.Context) error {
			if cfg.Skipper(c) {
				return next(c)
			}

			req := c.Request()
			ctx := req.Context()
			sessionStore := c.Get(keySession).(session.Store)
			userName := c.Get("username").(string)
			s, err := session.Get(ctx, sessionStore, userName)
			if err != nil {
				return fmt.Errorf("failed to get session: %w", err)
			}
			if !s.Role.CanAccess(ctx, req.URL.Path, req.Method) {
				return echo.ErrForbidden
			}

			return next(c)
		}
	}
}

node.js のアップグレード

ちょうど管理画面も少し触ろうと思って環境を構築し始めた。たまたま node.js のバージョンをみると、ちょうど10月18日で 18 (LTS) の active support 期間が終了していた。security support は2025年4月まであるのでそんな急がなくてもよいが、それに気付いたついでなので 20 (LTS) にアップグレードすることにした。幸い、大半のライブラリは 20 (LTS) でもそのまま動いた。しかし、依存ライブラリのアップデートをしていて、一部 conflict してうまく動かないライブラリもあった。細かい原因調査をしていないが、フロントエンドの方がこまめにバージョンを上げていかないと何が原因でアプリケーションが正常に動かなくなるのか、分からなくなる気がする。

非日常を提供するという価値

1時半に寝て3時に起きてもう1回起きて6時半に起きた。

interface はデシリアライズできない

昨日の続き 。rbac なライブラリを使ってアプリケーションを実装していく。ログイン時にユーザーにロールを割り当ててセッションにロールを保持するのが都合よさそうに思えた。ロールの実装で一部の型は interface にして後から拡張できるような設計にしていた。例えば encoding/json ライブラリだと、Marshaler/Unmarshaler の interface を満たすことで任意の json のシリアライズ/デシリアライズをフックできる。調べたり、実際に動かしていていて気付いたのだけど、interface の場合はシリアライズは任意にできるけど、デシリアライズはできない。当たり前と言えば当たり前だが、interface を満たす複数の型がある中で json ライブラリがどの型でデシリアライズしていいか判別できないからだ。当初の interface を用いた設計が誤りだったことに気付いて、一部の型を汎用の構造体で設計し直すようなことをしていた。

またデシリアライズするときに一部の値を初期化したいといった要件がある。例えば mutex を初期化したい。このときに処理の内部で派生型を宣言して、それにキャストした上でデシリアライズの処理を実行した上で差分の処理を実装するというテクニックを学んだ。スコープが限定されて、コードがシンプルになって保守性も高い、久しぶりに頭のよいスマートなコードをみた。

func (r *Role) UnmarshalJSON(b []byte) error {
	type Alias Role
	if err := json.Unmarshal(b, (*Alias)(r)); err != nil {
		return err
	}
	r.mu = &sync.Mutex{}
	return nil
}

コワーキングのオンラインイベント

月例のカフーツさんのオンラインイベントに参加した。前回の所感はここ 。今日は参加者が2人だけだった。コワーキングスペースを運営するコワーキングスペースマネージャーの連携を強化することで、コワーキングスペースの付加価値が上がったりしないか?といった内容を話したりしていた。コワーキングスペースマネージャーは、普通はお仕事で自分のコワーキングスペースにいないといけないから、なかなか他所のコワーキングスペースへ訪問すること自体が難しい。コワーキングスペース同士の連携により、お仕事でコワーキングスペースマネージャーが自分ところのコワーキングスペースの利用者を連れて、他所のコワーキングスペースへ訪問して、そこでイベントをしたりすればいいんじゃないかという案が出た。

いとうさんがよく コワーキングツアー と称して、全国各地のコワーキングスペースへ訪問して、そこでイベント開催をしたり、その地域の取り組みなどを紹介したりしている。それと全く同じことを、コワーキングスペースの利用者に対してもその付加価値というのはあるかもしれないと私もよいアイディアだと思った。例えば、大阪のコワーキングスペースの利用者を広島へ連れていって、そこでイベントやって交流する。その逆も然り。通常のコワーキングスペースの利用者は自ら広島のコワーキングスペースへ行ってコラボレーションを行ったりしない。いや、いとうさんみたいに自らやる人もいるんだけど、そんな人は対象の利用者ではない。自分からは行かないが、誘われたら行ってもいいかなと考える人 (私もそんな1人だ) を移動させることで、新しい価値やアイディアが生まれるかもしれないと思える。私もいまはフルタイムのお仕事があるから自由に移動はできないが、いずれ会社の投資期間に入って、自分でスケジュールを決められる状況になれば、コワーキングツアーにも出掛けてみようと思う。

あと勉強会やイベント以外でコワーキングスペースで出来ることはないか?という話題でも盛り上がった。私は主催者の準備が大変だと出来ないから、主催者のコストが低いものという視点から考えて猫コワーキングがいいんじゃないかと提案してみた。ある週だけコワーキングスペースに猫が10匹ぐらいいますといった取り組み。課題は猫をどこから連れてくるかだけだが、そういう機会があれば確かに私も行ってみたい。そのアイディアの発散で非日常の体験ができるような取り組みがよいんじゃないかとまとめられていた。

  • 猫コワーキング (猫がたくさんいる)
  • 深夜コワーキング (深夜に開いている)

深夜コワーキングスペースのモデルとなる 弐拾dB さんというコワーキングスペースが広島の尾道にあるらしい。23-翌5時という営業時間だという。いとうさんが絶賛していたのでおもしろいオーナーが運営されているのだと思う。そのオーナーが執筆したエッセイの 頁をめくる音で息をする を購入してみた。

初めて rbac なライブラリを実装した

22時頃から休んでいて寝たり起きたりで7時に起きた。起きたらネットの記事とかだらだら読んでた。

rbac なライブラリの実装

昨日から認可のための仕組みを調査している。私の中ではもっとも一般的な rbac (role-based access control) でまずは作ってみようと思う。次の2つのライブラリの利用を検討したが、自分たちのやりたいことにあわない気がして今回は見送ることにした。

一通り、ライブラリとして使えるように参照実装した。これから実際のアプリケーション要件にあわせてミドルウェアとして rbac な認可処理を作っていく。

変わりゆく世界秩序

サンフランシスコが陥った負の“スパイラル” の記事にあるような、米国で950ドル以下の窃盗は軽犯罪とするという法律の変更によって、万引きを逮捕しなくなってモラル崩壊が起きて、小売店の商品を普通に盗むという事件が多発しているらしい。fin-py でおがわさんとそんな話しをしていたら次の動画を教えてもらった。私は歴史が好きなので、こういった「歴史は繰り返す」といったものはだいたいみてしまう。厳密な裏付けはわからないが、盛者必衰という言葉もあるように、どんな国でも栄枯盛衰のサイクルはあるだろうというのは大局の視点として同意できる。過去の歴史と国の栄枯盛衰をいくつかの指標とお金の視点から調査したものでおもしろかった。

日本は80年サイクルで戦争の周期がくるといった説もあるが、この動画でもサイクルの切り替わりのタイミングで平和的にしろ暴力的にしろ、かならず戦争は起きると説明している。もうすでに戦争は始まっている感もあるが、戦争は避けようがないという点も同意するところだ。本も読んでみようと思う。

echo のミドルウェア関数のスタイル

1時に寝て何度か起きて6時半に起きた。起きてから軽く部屋の掃除をした。

echo のミドルウェア開発

go の api サーバーの開発に echo という定番のフレームワークを使っている。少し前にメンバーに認証の処理をミドルウェアとして実装してもらった。いま認可の仕組みもミドルウェアで実装しようと、いくつかソースコードを読んでいて、echo のフレームワークが提供しているミドルウェアの関数名や config には共通点があることに気付いた。echo middleware によると、20個ぐらいのミドルウェアが提供されている。例えば、適当にそのうちの3つほどを取り出すが XxxWithConfig という命名規則で config を受けとって echo.MiddlewareFunc を返すというインターフェースになっている。

func HTTPSRedirectWithConfig(config RedirectConfig) echo.MiddlewareFunc
func LoggerWithConfig(config LoggerConfig) echo.MiddlewareFunc
func BodyDumpWithConfig(config BodyDumpConfig) echo.MiddlewareFunc

また config の中身をみていると、ミドルウェアの処理に必要な関数を渡すような設計になっている。複数のミドルウェアにとって共通なのは、ミドルウェアの処理を迂回する条件を実装するため middleware.Skipper という型が次のように型で定義されている。

e.Use(middleware.BasicAuthWithConfig(middleware.BasicAuthConfig{
	Skipper: func (c echo.Context) bool {
		// Skipper defines a function to skip middleware.
    },
	Validator: func(string, string, echo.Context) (bool, error) {
		// Validator is a function to validate BasicAuth credentials.
		// Required.
    },
	Realm: "Restricted",
}))

典型的なミドルウェアは次のように実装する。最初に Skipper を呼び出して処理の有無を確認する。

return func(next echo.HandlerFunc) echo.HandlerFunc {
	return func(c echo.Context) error {
		if config.Skipper(c) {
			return next(c)
		}

        // TODO: ミドルウェア本体の処理

		return next(c)
    }
}

認証のミドルウェアを実装してもらったときに、私がここまでみていなかったなということに気付いて、既存のミドルウェアを echo のそれと同じスタイルにあわせるようにリファクタリングした。自分でソースコードを読んでいるとコードレビューで気付かなかったことに気付くことが多い。自分がコードを書いているときと、コードレビューをしているときでなにかしら視点が違う。

ほぼ休みに近いオフィスワーク

3時に寝て何度か起きて8時半に起きた。午前中はだらだらしていた。午後は事務手続きしたり、本を読んだりしていた。

芦屋能の申込み

昨日 蝉丸の予習 をしてきたが、来月に能の「蝉丸」の上演がある。せっかく物語の背景や詞章の勉強したので見に行くことに決めた。第二十二回芦屋能・狂言鑑賞の会 にローソンチケットで申込みした。金曜日の17時と、ちょっとお仕事を早く終えて出掛けないといけない。芦屋ルナ・ホールという、行ったことない会場になる。前の方に座れるなら指定席を選択するのだけど、いま購入しようとすると、チケットが残りわずからしいのであまりよい席は残っていないと推測する。今回は2階席 (自由席) 3,000円 で観ることにした。昨日の能イベントの会場である芦屋能舞台でもいくつかチケットがあると朝原さんが話されていた。そこで買った方がよい席を取ることができたのかもしれない。また次の機会があれば聞いてみようと思う。

業務スーパーのナポリタンサラダ

ちょくちょく業務スーパーで買いものする。業務スーパーの惣菜などは国内工場で作っているとあるからなんとなく安心して買っている。いつもは マカロニサラダ を買っていて、野菜サラダの付け合わせにしたり、刻みネギを混ぜて食べたりしている。今日は初めてナポリタンサラダというのをみつけた。また業務スーパーのサイトにないのでおそらく新製品なのだろうと思う。私はナポリタンが好きなので買ってみた。よくあるお弁当の付け合わせに入ってそうな風味で300円程度の値段を考えれば十分においしい。単体で食べても小腹を満たせるし、他のものと組み合わせもしやすそうに思う。業務スーパーの買いもの楽しい。

蝉丸の予習

21時頃から休んでいて何度か寝たり起きたりしながら5時に起きた。だらだらして気付いたら8時半だった。

ストレッチ

今週もとくに本業が忙しかったわけではないが、本業以外のお仕事や作業がたくさんあって、わりと座っている時間が長くて疲れていたのかもしれない。腰は大丈夫かな?と思ったものの、左腰の後ろはかなり張りがあってきつかった。トレーナーさんはあまり気付かなかったみたいだが。あと太ももの後ろの筋が張っていて今日は重点的にそこを伸ばしてもらって気持ちよかった。太ももの後ろの筋って物理的に自分では絶対に伸ばせない位置にあるため、トレーナーが伸ばしてくれることに大きな意義がある。これだけでもドクターストレッチさんに通っていてよいところだと思う。今日の開脚幅は開始前156cmで、ストレッチ後159cmだった。数値はまぁまぁ。

能楽の勉強

前に1度行ったことのある「能のことばを読んでみる会」へ行ってきた。前回の所感はここ 。参加者は私が数えたところ17名。前回、いつもは10人に満たないと仰っていたが、朝原さんのマーケティングがうまくいっているのか、今回も10人は軽く超えていた。

このイベントはとてもおもしろい。

今日のテーマは「蝉丸 (せみまる) 」だった。国語の授業などで百人一首として習ったことを覚えている人もいるだろうか。

これやこの 行くも帰るも 別れては 知るも知らぬも 逢坂の関

蝉丸 (せみまる)

有名だし、私も学生の頃は百人一首を覚えていたのでこの歌は覚えている。百人一首の引用元となる 後撰和歌集 では次のように収録されている。

これやこの 行くも帰るも 別れつつ 知るも知らぬも 逢坂の関

オリジナルは「別れつつ」だったのが百人一首では「別れては」に改変されている。たまたま調べていると次のような質問をみつけた。

後撰和歌集に収録されている蝉丸の「これやこの 行くも帰るも 別れつつ 知るも知らぬも 逢坂の関」の和歌について、歌集によっては第三句が「別れては」となっている。「別れつつ」と「別れては」では解釈が違うのか、解説が載っている資料が見たい。

https://crd.ndl.go.jp/reference/modules/d3ndlcrdentry/index.php?page=ref_view&id=1000328600

この回答でも後世の人たちが「別れては」の方がまとまりが良いとか、読みやすいとか、抑揚が利くとか、そんな理由で勝手に改変してそれが有名になった例の1つだという。能の世界でもこういったオリジナルの単語 (漢字) や言い回しが変わってしまうことはちょくちょくあるらしい。それは文書を複写するときに単純に書き間違えたとか、後世の人がこの方がよいと勝手に表現を変えてしまうことがあって、オリジナルよりもそちらが有名になってしまうことがあるらしい。

日本の歴史を調べるときに最初に調べる辞典として 国史大辞典 がある。そこに蝉丸の記述がある。平安時代の歌人、音楽家。生没年不詳で、伝説的人物で諸説あるとのことで、本当に伝えられている経歴や逸話が正しいのかはよく分かっていないという。最も確実なのが、後撰和歌集の和歌を詠んだのが蝉丸という人物だという伝承だという。蝉丸を祀った神社は3つあり、現代では諸芸道の神様として祀られている。

蝉丸は生まれつき盲目でありながら琵琶の名人として伝わっており「盲琵琶」の祖とされるが、これもよくわかっていない伝承だという。ここまでを能の「蝉丸」を読み始める前の予備知識として、講師の朝原さんがさらっと話すのがこのイベントの醍醐味。私がここに書き残せていない話題もまだいくつかある。一般人はここまででお腹いっぱいになるが、これが能を読み始める前段階である。

能の「蝉丸」 は、皇子なのに盲目であるために捨てられる蝉丸、皇女なのに逆さまに生い立つ髪をもち狂人であるために捨てられる逆髪の2人が、逢坂山という辺地でたまたま?出会うという物語になっている。朝原さんが天に向かって逆さまに生い立つ髪ってどういうものか現実には想像できないが、少年漫画の世界ではないか?と話されていて、私は HUNTER×HUNTER のゴンみたいな髪型を連想したw

蝉丸は盲目なので盲目の人からの視点の表現と、逆髪は目がみえるので (狂人だけど) 健常者からの視点の表現が対比として表されているのもおもしろい。京都から逢坂山の関を超える 道行 の表現がまったく異なる。お互い捨てられた先の辺地の藁屋で、蝉丸が琵琶を弾いたことに逆髪が気付いて、藁屋を尋ねる (出会う) と物語が進んでいって、お互いに涙を流して再会に感動するものの、逆髪は「じゃあ、またね」って感じにすぐ?帰ろうとするのに対して、蝉丸は「もう行っちゃうんですか?!」的な名残惜しくて、ただそれだけのやり取りの能となっている。この能はただ姉弟が出会って別れるだけの、なんの事件も起こらないし、なんの因果もない。これは仏教でいう 会者定離 (えしゃじょうり) を表しているという。出会った者は必ず別れることになるという普遍的な摂理。関西人からみると、オチがないやんとツッコミたくなるところが、哲学的ではまるところなのかもしれない。

11月に 第二十二回「芦屋能・狂言鑑賞の会」 で能の「蝉丸」が演じられるようなので見に行こうと思う。