Posts for: #2024/04

関係者を増やしていく試み

今日の運動は縄跳び(両足跳),散歩をした。統計を 運動の記録 にまとめる。

ブロックチェーンのお仕事の再面談

約1年半前に lapras 経由でカジュアル面談した 会社から、時間が経ったのでまた面談したいという連絡がきた。律儀な方で前回話したときの印象もよかったので再面談してみることにした。一方で、私はこれから課題管理のビジネスに注力するので現実としてはこの会社に転職することも、開発者として開発の最前線でコミットすることもできないという見通しがあるため、そのことも伝えた上でのカジュアル面談をしてみた。採用のリクルーターとピープルマネジメントのマネージャーの2人がやってきて、途中から私がやりたい課題管理とは何ぞや?みたいな話しを30分ほどしゃべくりした。

ちょうど 新しい税理士さん向けに簡単な課題管理の概要 資料を作ったばかりだったのでそのスライドをみせながら話した。わりと先方に刺さったみたいで「この文脈でお困りならうちの会社と協業できるかもしれない」と言ったら「その文脈で確かに困っているかもしれない」といった発言も出ていたのでいろいろ大変なのだろうと推測する。うちの会社のターゲットとして、若い組織の方が開発方法論が曖昧だったり、経験不足からノウハウの蓄積がなかったりして課題管理の話題は関心をもってくれるのかもしれない。課題管理の話しでカジュアル面談の大半の時間を浪費してしまったので、先方の話しを私がほとんど聞かないまま、私が言いたいことだけしゃべくりして終わるという、不思議なカジュアル面談となった。いつかうちの会社のことを思い出してくれて一緒にお仕事できればいいんじゃないかと思ったりした。

みなとのもりの運動

先週と同様19-20時で運動 すると三宮.devで宣言して縄跳び、デカバドミントン、バスケットボールの練習をしてきた。他に2人参加者がいて3人で運動してきた。こうやって一緒に運動してくれる人がいるから私もさぼることができず、公園へ行ってなにかしら運動するという、よい継続の循環ができる。いままでモノゴトを継続するには自分の意思のチカラだけだと考えていた。しかし、それはちょっと違うなと歳を経て思うようになってきた。もちろん個人の意思のチカラも一定量はいるけれど、自分を取り巻く周りの人たちの助けも確実にあって、それらも含めて継続できるということを実感できるようになってきた。今後も周りの人たちに助けてもらいながら運動を続けていければいいなと思う。

主キーの特性

今日の運動は腹筋ローラー,腕立て,スクワット,縄跳び(両足跳)をした。統計を 運動の記録 にまとめる。

コレクションデータの再定義

ある mongodb のコレクションのデータ定義で _id に ldap の dn の値を使っていた。dn は一意な値なので主キーとして使ってもよさそうに思えたが、ここで運用上 dn の値が変更されるケースがいくつかあることがわかってきた。例えば、dn に姓名が含まれる場合、結婚して姓名が変わると dn の値が変わることはありえる。他にも dn に含まれる ou の値が現実の組織名を表している場合、組織変更によって ou の値が変わったときに dn の値も連動して変わってしまう。一意な値というだけでデータベースの主キーにするのはよくないということがわかってきた。主キーは一意な値、且つ immutable が望ましい。

たとえば mongodb では _id を主キーとして使う。mongodb は主キーの値を変更することはできなくて実装上は delete & insert になる。

delete & insert の運用上の問題は更新時にトランザクションを使わないといけないため、パフォーマンスが悪い。さらに id 連携という業務に特化して言うと、たとえば、姓名の変更は名前が変わったというだけでその人が退職したわけではない。これをシステム上 delete & insert で扱うと、古いユーザーデータを削除して、新規にユーザーデータを作成するといった振る舞いになってしまう。そうすると、古いユーザーがもっていた権限やデータなどを移行しないといけないわけだが、それらをすべて自動化できるか?という難しい課題も積み重なってしまう。本質的に rename を delete & insert で扱うことそのものが誤っているのだ。

メンバーと相談して _id に uuid を発行して dn はフィールドに unique 制約を課して保持するよう設計を変更することに決めた。コレクションのデータ定義の主キー変更なのであちこち修正してテストコードも修正しないといけない。一意な値、且つ immutable な値のみを主キーとして使うのが今回の学びとなった。私自身、初期の設計に関わったときにこのことに気付かなかったから、これは私のレビューの失敗・見逃しでもある。

会社も個人も関係者が増えていく実感

今日の運動は腹筋ローラー,腕立て,スクワットをした。統計を 運動の記録 にまとめる。

新しい税理士さんとのキックオフ

先日 電撃的に税理士さん変更 を実施した。その後、契約やシステムへのアカウント登録などを行って体制を整えた。満を持してキックオフの打ち合わせを行った。顧問のはらさんにも参加してもらって3人でキックオフをした。はらさんの顔合わせを行い、当社の概要として課題管理のビジネスについて軽く共有して税理士さんからも質疑応答でいろいろコメントをいただいて、当社の雰囲気や人となりを知ってもらうよい機会になったのではないかと思う。私はあちこちで課題管理の話しをしているので説明するのも慣れてきて時間にあわせてコンパクトに組み立てられるようになってきた。

新しい税理士さんと法人決算の予定を調整しようと思っていたら、早かったら連休前、意図しない課題に遭遇して遅れても連休明けにはできそうといったスピード感でやってくれるらしい。申告前にデータを整理したら打ち合わせもしてくれるらしい。契約してから1週間ぐらいしか経っていないのに、前の税理士さんと比べると10倍速いと言っていい。一般論として優秀なプログラマーと普通のプログラマーの差が10倍と言われるけど、税理士さんにも当てはまるなぁと実感した。先週締結した契約後も、この書類をくださいとか、過去のこの手続きが誤っているから訂正が必要とか、slack connect でつないでいてどんどん指摘してくれる。前の税理士さんは半年ほど契約していて、先方から質問や問い合わせが来たことはほぼゼロだったと思う。業務として達成しようとしている基準レベルがまったく違う。税理士さんを変更して本当によかった。

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

月例のカフーツさんのオンラインイベントに参加した。前回の所感はここ 。3月は私の都合があわなくてお休みしたので2ヶ月ぶり。今日はメンバーが外国人のデジタルノマドとイベントを行った成果を発表する予定だったものの、そのメンバーの体調が悪くなってしまって声が出ないということでその発表はキャンセルとなった。主題がなくなってしまったので何を話します?みたいな感じになってぐだぐだになった。

そのメンバーがまとめた、発表予定だったイベント記事が公開されていて写真も多くてよさそうにみえる。奈良の明日香村と大阪の太子町でイベントをされたらしい。日本人でも聖徳太子とか、大化の改新とか、学校で習った程度しか知らないのでおもしろそうにみえる。日本の文化に関心のある外国人には新鮮なイベントになったのではないかと思う。

岡山県と兵庫県の県境に佐用町という町がある。姫路よりもまだ西、赤穂の北。いとうさんが佐用町は兵庫県だけど、ほとんど岡山県だと仰っていたのが後になって地図をみて理解できた。佐用町に コバコWork&Camp というコワーキングスペースがあって宿泊施設を設けたことで訪問者が滞在する日数が増えてよかったといった話題があった。佐用町には集落をまるごと再生した glaminka SAYO集落 という宿泊体験もあるらしい。料金は1名38,600円〜とあって強気な価格設定。

昨日は2.5時間ぐらいしか寝てなかったので前半は眠くなってやや寝落ちしていた。後半に話しを振られて it 業界の開発合宿や当社の開発合宿イベントについて話したら、なにか受けていた気がするけれど、話すネタがなかったからちょうどよかっただけなのかもしれない。

睡眠外来の経過観察

今日の運動は腹筋ローラー,腕立て,スクワットをした。今日は強い雨が局所的に降って外に出掛けられなかった。統計を 運動の記録 にまとめる。

今日もひたすらコードを書いていてなかなか進捗が厳しい。

睡眠外来

夜に睡眠外来へ行った。前回の所感はここCPAP 装置 を使って1ヶ月の経過観測だったので10分で終わった。リースで借りている CPAP 装置から送られたデータは通っているクリニックのお医者さんからも確認できるようになっている。いびきの計測や fitbit の睡眠の記録からも効果を確認していた。お医者さんの診察でも着実に成果が出ていてよい感じだと追認してもらえた。一方で最近は装置を付けずに寝てしまう日が何日かあって、さぼっているのもお医者さんにバレてしまい、毎日ちゃんと付けなさいと諭された。

CPAP 装置について このサイト だと機器の価格とレンタル料金が次のようになっている。

販売価格: 450,000円(税別)
レンタル価格: 14,600円(税別)/月

支払いするときに1万5千円ぐらいいるのかなぁと覚悟していたら4,580円だった。健康保険で3割負担ってことなのかな?想定していたよりも安くてよかった。この金額ならこのままリースでいいんじゃないかと思う。

このワークアウトの名前はお風呂ウォーキング

今日の運動はスクワット,散歩をした。統計を 運動の記録 にまとめる。

お仕事がいろいろ忙しくてテンパっていながらも、夜は散歩に行くからまぁいっかみたいな微妙な1日を過ごした。本当は帰ってきてから一仕事すべきだったのだけど、もうだらけてしまってそのまま休んでいた。

お風呂ウォーキング

ながいさんとやまさきさんと散歩してきた。前回の所感はここ 。今日は三宮から歩くにはちょっと遠い あぐろの湯 へ行ってきた。途中まで電車で移動して、1時間以内で歩ける適当なところから散歩してきた。必ずしも三宮から目的地まで歩かなくてもよい。これなら行けるお風呂の候補も増えてあちこち行ける。三宮近辺のお風呂を目的に歩くのがよさそうと話していた。歩いていて、カフーツさんの話題になって、いとうさんがやっているのはコワーキングのホスピタリティというより徹子の部屋じゃないか?とながいさんが指摘して、本当にその通りだなと納得した。ゲストの話しを聞いているようで、気付いたらゲスト放っておいて自分の話しばかりしている的な。ゲストをもてなしているのかどうか、よくわからんところが黒柳徹子さんと重なっておもしろかった。

晩ご飯はとんてき定食を食べた。運動目的で歩いているのにカロリーの高いものを食べるのはよくないのだけど、初めて来た場所だし、食べたいと思ったものを食べた方がストレスが溜まらなくてよい。週に4食は開放食として好きなものを食べたらよいと 格闘家に学ぶ体脂肪コントロール 本にも書いてあったので注文してみた。量もガッツリあって味付けも濃かったので運動して消費したカロリーよりも高かったんじゃないかと思う。普通のレストランでとんてきというメニューをあまりみかけなくなった気がする。とんてきを久しぶりに食べた。大阪で働いていた頃はよく食べてた。おいしかった。

お風呂もジェットバス、露天風呂、壺湯、寝転び湯、足湯といろいろな種類があって楽しめた。スーパー銭湯で寝転び湯をみかけたことはあったけど、実際に浸かってみたことはなかった。空いていたので試してみてこの体験は家ではできないお風呂の入り方だなという感想が最初に出てきて新鮮な気持ちになった。サウナもロウリュサウナと薬草サウナの2種類があった。ロウリュサウナがどういうものか、よく分かってなかったけど、広くて汗がどんどん出てきて爽快だった。暑いから私はすぐに出てきてしまうのだけど。

今日のルートは次の通り。これはマイマップの「ライン」機能を使って描いている。ルート選択すると、変な線引きになったり重ねて表示したりできないので普通にラインで描くのが簡単。

海岸通沿いのあぐろの湯

初めての骨伝導ワイヤレスイヤホンレビュー

今日の運動は腹筋ローラー,スクワット,散歩をした。統計を 運動の記録 にまとめる。

昨日は気付いたら4時半まで役員報酬の減額の手続きをやっていた。5時から寝て8時半に起きた。今日は軽く流そうと思ってレビューを書いてみた。

骨伝導ワイヤレスイヤホンのレビュー

2ヶ月前に Roddy というブランドの骨伝導イヤホン を購入した。購入直後にサクラチェッカーでレビューを調べたら「サクラ度は99%」と言われて失敗したかなぁとか思ったりもした。いまもその数値は改善していない。一方で実際に2ヶ月間使ってみて、私の用途では十分に満足しているのでそのレビューを書いてみようと思う。お断りとして、私は他の骨伝導ワイヤレスイヤホンを使ったことがないため、相対比較はできない。初めて買ってみた骨伝導ワイヤレスイヤホンが悪くなかったのでこのレビューを書いている。

もともと 【10個以上購入して分かったNo.1】2024年骨伝導イヤホンの最強3選【2024年4月10日更新版】 というインフルエンサー?の記事を読んで Roddy 骨伝導イヤホンを知った。品質がよいと書いてあって値段が 5,980 円だった。よく知らない商品を購入するとき、私はまずエントリーモデルを買う。いきなり高い商品を買って自分にあわなかったり、想定していた状況を違ったりするとがっかりするので失敗してもよいぐらいの価格帯で購入する。だいたい3,000円から6,000円ぐらいの価格帯になる。その視点からちょうどよい価格帯だった。余談だけど、違法なセラーがこれよりも安い値段で販売して商品が発送されないという詐欺被害も出ているそうなので、必ず Roddy Goods という販売元から購入した方がよいらしい。

閑話休題。私の用途としては次になる。

  • iphone で bluetooth 接続して使う
  • イヤホンで聞くのは apple music の音楽だけ
  • 散歩しながら聴く
  • 縄跳びしながら聴く
  • (たまに) オフィスでデスクワークしながら聴く

普通のワイヤレスイヤホンと骨伝導ワイヤレスイヤホンとを比較して当たり前の感想だけれども耳を塞がないということの快適さがある。耳が開いているから外の音が聞こえる・聞こえないというのは私にとってはあまり重要ではない。それよりも、物理的に耳を塞いでいないことの開放感、またはずっと塞いだ状態でいることのストレスから開放されることの快さがある。普通のワイヤレスイヤホンをずっと付けているとストレスだと感じたことはあまりなかったが、骨伝導ワイヤレスイヤホンを使ってみてストレスだったんだなと気付いた。

ながら作業をするときに音楽があった方が集中力が増すので真剣に音楽を聴いているわけではない。聴き流しに近いので高い音質を求めておらず、普通に聴ければそれでよいから私にとっては十分満足している。バッテリーはカタログスペックによると「連続再生約8時間」となっている。散歩や縄跳びのために出掛けると1-2時間ほど連続で使う。ちゃんとバッテリーを使い切ってから充電しているわけではないが、1週間に1-2回の充電でバッテリーが切れることもない。あと購入したときに試しに半日聴いていたら頭がむずむずしたり違和感を感じたりもした。頭痛というほどではないが、最初は慣れがいるのかもしれない。その後、長時間ずっと装着しないようにして、せいぜい1回あたり2-3時間つける程度なら身体的になにも違和感を感じなくなった。骨伝導に慣れたのかもしれない。

私の主な用途は「ながら」で運動するときに聴くというものなので満足できた。あとは耐久性だけかな。

運動の昼夜逆転

今日の運動は腕立て,スクワット,縄跳び(両足跳),散歩をした。統計を 運動の記録 にまとめる。

ストレッチ

今週は月・火と雨降りで外へ出て運動できなかったのと、たまたまお仕事の事務手続きがいろいろ重なって忙しかったのもあり、運動をお休みしていた。お休みしたおかげで筋肉痛の疲労が回復した。トレーナーさんからも先週より筋肉が柔らかいと話されていた。運動し過ぎというほどやっているわけではないけれど、たまに休んで筋肉を回復させると痛みがなくなるという点においてよいのかもしれない。今日は筋肉痛の張りそのものは感じるものの、足全般のどこかしこの部位も痛いといった状況ではなかった。適度な負荷でストレッチができて健康そうに感じた。今日の開脚幅は開始前150cmで、ストレッチ後156cmだった。

連日のバスケットボール

昨日の続き

コートが空いていない可能性もあったので金・土の2日に渡って練習時間を伝えていた。残念ながら今日は3つともコートが使われていて、少し待ってから利用人数が減ってから混ざるといった練習をした、と言っても30分だけ。私以外に誰も来なかったので30分ほどドリブルやシュートの練習をして、その後、15分間の縄跳びをやって、クールダウンをして帰ってきた。いつもは夜に縄跳びや散歩に出掛けるのを、今日は昼間にやってきた。いまの時期なら暑くないから昼間に運動するのも気分転換になってよいように思えた。みなとのもり公園 は広いからバスケットボールだけをやりに行くのではなく、他のエクササイズやワークアウトもできるような準備をしていって、たまたま来た人が好きな種目を選んで運動できるような体制にしていきたい。

住居の社宅化と役員報酬の減額

先日 社宅の内覧 へ行ってきて、一番よかった候補に対しての部屋止めを水曜日に完了した。オーナーが厳しい方らしくて、うちの会社の信用では拒否されるかもしれない。どうやらその部屋は保証会社ではなく保証人で契約しないといけない。過去に何度もお願いしているが、姉の旦那に保証人を依頼して肩身の狭い思いをした。保証人という制度は滅んでほしい。いま審査している部屋に決まるかどうかはともかく、よい仲介業者さんもみつけたので今季中に住居を社宅にすることは確定路線で進める。それに伴い、役員報酬も10万円/月を減額する。これで3等級下がる。変更作業をやり始めたら2-3時間でやってしまった。

ホットクックのレシピ作り

基本的に肉じゃがは砂糖とみりんを入れて甘くすると思うけれど、ダイエットに糖分は微妙かなと思って砂糖とみりんを除いたレシピに挑戦している。代わりにかぼちゃを入れて野菜の甘みを足してみた。水曜日に1度作ったものの、なにかひと味足りなくて肉じゃがっぽくない気はした。オイスターソースもまだ残っているから次はそれを入れてみようと思う。もう少し試行錯誤する必要がある。

今期の予算づくり

今日の運動は腹筋ローラー,散歩,バスケットボールをした。統計を 運動の記録 にまとめる。

隔週の雑談

顧問のはらさんと隔週の打ち合わせ。今日の議題はこれら。

  • 税理士さんの変更に伴ういろいろな共有
  • 第6期の予算共有
  • 課題管理の働き方についての認定証を個人に与えるなにか
  • (時間があれば) 社宅の契約のいろいろ

まだ本格的にスタートするのは半年ほど先になる予定だが、先月から顧問を1人増やしている。はらさんは ui/ux の専門家であり、1人で20年以上会社を経営してきた個人経営の専門家としても私は評価していて、うちのようなマイクロ法人の経営についてアドバイスしてもらうのは最適だと考えている。先月に追加した顧問はさらに技術寄りの、一般的に言えば技術顧問に相当する。その方はある sier の cto を何年も務めているので実績も十分にある。本格的に始動するのがもう少し先なのはよいとして、技術顧問から課題管理ビジネスについて、いまから準備してやっていけることもあるのではないか?という意見が出た。

それは正しくはあるのだけど、私の時間がないというのが現状になる。

課題管理に関する情報収集も、現実の開発における poc も、この3-4年ずっとやってきたことの累積があるから十分にインプットを蓄積できている。これからやらないといけないのは、そういった溜め込んだ1次情報を見直し、整理し、体系化し、会社の戦略として練り直せないといけない。資料を読み、考え、フィードバックを得て洗練させる。地道で時間のかかる作業が必要になる。この時間が私にはいまない。体重を減らすために運動に時間を費やしているのもある。もう一つ、いまのお手伝い先の受託開発で私が開発の実務もやってしまっているというのがある。開発の実務をやると途端に時間がなくなる。なぜならば、プログラミングというのは製造業における設計に相当する業務なので、開発に終わりはないし、無限に品質を上げるための取り組みに注力してしまえるから。お手伝い先の受託開発で実務から離れない限りは課題管理のビジネス作りに時間を割く余裕がないというのが現状になる。

スクラムという開発方法論について調査した issue はいくつもある。そして、たとえば「スクラムのよくないところ」といった話題ではらさんと軽く話し始めたら20分は議論が尽きない。この話題で私はいくらでも話せるが、やらないといけないことは、そこからさらに洗練させて言語化しないといけない。そういったノウハウや概念の体系化や整理には得てして時間がかかる。

今期の予算を策定して現時点ではざっと500万円弱の赤字を見込む。今期から投資フェーズへ移行したいと考えている。役員報酬はすべて役員借入金にして会社のキャッシュアウトをなくせば、ほぼとんとんで会社は維持できる見込みで想定している。他社の実務は受けないけど、付加価値の高いコンサル案件なら多少は受けて赤字を減らすための施策はできないか?と思ったりもするけれど、なかなか難しいかなとも考えている。

バスケットボール

近所にある みなとのもり公園 でバスケットボールをしてきた。先日購入したバスケットボール をもって行った。幸いコートが1つ空いていて自由にドリブルやシュートの練習をしてみた。個別に自由練習できるからボールを2個買っておいてよかった。2人で練習していたら、途中から3人グループがやってきて、混ざって練習していた。私は別に独占する意図はないから人数少なかったらこうやって一緒に混ざって練習するのもいいかもなと思えた。それなら3つのコートが空いていなくても、人数の少ないコートに行って入れてもらってもよいかもしれない。もしくはミニゲームを申し込んでやってもよいのかもしれない。

1時間ほど練習したり1on1したりした。相手がわざわざ西明石から出てきてくれたので晩ご飯も食べにいった。夜に行ったことのない ISOGAMI餃子バル TOMAKO へ行ってみた。お客さんよく入っているし、お店の雰囲気もおしゃれだし、女性客も多い。よいところなのだろう?と勝手に思っていたけれど、実際に行ってみるとそれほど特別とも感じなかった。もちろん個々の単品はおいしかったし、十分に平均以上のお店ではあるのだけど、なにか小さくまとまった感があって、前を通る度に外からみて人気店なのだろうと上がっていた私の期待値に応えるほどではなかった。でも、軽く晩ご飯を食べて1-2時間ですぐ帰るといった用途にはよさそうに思えた。

リーダーの教え方

今日の運動は腕立て,スクワット,縄跳び(両足跳),散歩をした。統計を 運動の記録 にまとめる。

まとめ運動

先週末から体調を崩していたり、週明けが雨降りだったり、お仕事が積み重なって余裕なかったりであまり運動できていなかった。運動できていないぐらいだからご飯も作る余裕もなくてあまり食べてもいなかった。食べてないから結果的に体重は減ったんだけど。今日は天気もよかったし、お仕事や雑多な事務手続きも一段落したので、早めにお仕事を終えて公園へ行って縄跳びしたり散歩したり日課分はこなしてきた。

トヨタイムズ

知人に教えてもらった動画をみた。有名人だからちょくちょく豊田章男会長の動画をみる機会がある。章男会長は創業者一族ながら、若いときは不遇の環境を過ごしてきたことで特異なリーダーになったようにみえる。うまくいかなかった実践の経験の中から話すから話しも説得力があっておもしろい。動画をみていていくつか気付いたことをメモに残しておく。

  • 孤独感について
    • みんなモリゾウに憧れや羨ましさがある
      • 次の段階になると僻み・やっかみになる
        • その次は憎しみになる
      • 羨ましいと思っていた人を痛めつけることに自己陶酔になる
        • これが世間の冷たい風の正体ではないか
      • リーダーが説明しない世の中はどうなのか?
    • そうは言っても孤独は辛い
      • 1人になれる場所が大事
      • 会社とは関係ない友人をもつことが大事
  • 日本のものづくりの強みの1つはエンジンである
  • 新規事業でなにをやってよいか分からなければ、いま困っていることを解決する
    • 困っている人たちを助けていると、もっといろいろなアイディアが集まってくる
  • 責任を取るということは実務でしっかり作り直すこと
    • トップが辞めるだけでは改善しない
  • 最後に実際に車を乗ってみてたのがよかった
    • 車を作っているのだから自分たちで車を体験する
    • その楽しさを大事にしていく
    • この延長上にリーダーが生まれていくのかな

go の generics に慣れてきた

今日の運動は腹筋ローラー,スクワット,縄跳び(両足跳)をした。統計を 運動の記録 にまとめる。

go の generics の扱い

今日はほぼまる一日コードを書いていた。あるデータ型のリファクタリングをしていて次のような constraint とメソッドの組み合わせで型チェックできることを理解した。generics 使って1年以上開発しているので感覚的にも慣れてきた。User と Group のどちらかを受け取る constraint とそのデータストアの定義は次のようになる。

type UserOrGroup interface {
	User | Group
	GetPrimaryID() string
}

type UserOrGroupStore[E UserOrGroup] interface {
	generic.Store[E]
	FindByPrimaryID(ctx context.Context, primaryID string) (*E, error)
}

この型定義を使う関数では次のようになる。

func find[
	E entry.UserOrGroup,
](
	ctx context.Context, store entry.UserOrGroupStore[E], primaryID string,
) (*E, error) {
	e, err := store.FindByPrimaryID(ctx, primaryID)
	if err != nil {
        ...
    }
	ee := *e
    // ee.PrimaryID はコンパイルが通らない
	_ = ee.GetPrimaryID() // 現時点ではメソッド呼び出しが必要
}

ここで UserOrGroup に GetPrimaryID() というメソッドを追加している。本来は両方の構造体に保持するメンバー属性ではあるものの、現時点の go のコンパイラはメンバー属性を正しくチェックできない。そのため、メソッドにして generics の型チェックが正しく通るようにしないといけない。go の issue にも上がっているのでいずれはメンバー属性を解決できるようになるのだろうと推測する。

事務手続きに追われまくり

深夜に山本由伸投手のフォームのなにがすごいかを調べたりして遅くなった。

今日は別に体調は悪くなかったのだけど、単純にお仕事が忙しくて運動している余裕がなくてお休みした。たまにはそういうこともあるか。

mongodb の OR 検索

mongodb で OR 検索するには $or operator を使う。mongo-go-driver では次のように実装すればよい。

filters := make(bson.D, 0, len(query))
...
conds := make(bson.A, 0, len(v.Values))
for _, vv := range v.Values {
    conds = append(conds, makeFilters(vv))
}
filters = append(filters, bson.E{Key: "$or", Value: conds})

本業以外の雑多なお仕事

本業の開発も課題が山盛りで忙しいのだけど、それ以外にも雑多な事務手続きが増えてきてなかなか大変。人を相手にするとやり取りが発生して時間がかかる。お昼ご飯を食べる余裕がない。ダイエットにはよいかもしれない。

  • 社宅契約の手続き
  • 新たに顧問弁護士さんとの契約手続き
  • 信託銀行の投資信託運用のための手続き