Posts for: #2023/08

疲労で開発はお休み

2時に寝て何度か起きて7時に起きた。9時ぐらいまでだらだらしてた。

事例紹介のたたき台更新

8月の上旬には たたき台を作成 していたものの、レビュー待ちしてたり、他の開発業務に意識を取られてそのまま放置していた。go-ldap のテックブログ を書いた後にその成果も事例紹介に含めて公開できる。結果的にはこの順番でよかったとも思える。また2週間も文章を寝かせておくと、記憶がリセットされて自分の文章の拙さにも気付けて全体を推敲できた。自分の成果物を自分で信頼しないというのが大事。明日に草稿を先方に提出して来週中には事例紹介を公開できるようなスケジュールで進める。

椅子の受け取り

また ジモティー 検索でみつけたバランスチェアを購入した。3,500円。なかなか無料や安価でよい椅子はみつからないのでこのぐらいの値段は出すのが相場のように思える。同じようなバランスチェアの新品の価格を調べると2万円程度だっだ。中古でこのぐらいの価格なら妥当にみえる。以前に購入したバランスチェア をオフィスで使っていて、それも快適なので実家の離れ用にあってもよいと思えた。

引き取りは車で20分程度のところにある駐車場に行ってきた。愛想のよい方ですんなりと取り引きを終えることができた。感謝。

開発もしながら雑多な土曜日

1時に寝て何度か起きて7時に起きた。晩ご飯食べてオフィスに戻ったものの、知人と0時過ぎまでチャットしていて開発できなかった。たまにはそういうこともあるか。

ストレッチ

左右両方のふくらはぎの筋の張りがやばくてめっちゃ効いた。トレーナーさん曰く、この筋が効くのはふくらはぎを酷使しているか、まったく使っていないかのどちらかだと言う。私の場合は後者だろう。椅子に座っている時間が長いとふくらはぎの筋が張る。今日の開脚幅は開始前156cmで、ストレッチ後160cmだった。数値の良さは維持できている。腰もひどくはないけど、やや張りを感じるようにはなってきた。トレーナーさんも全体的に硬い傾向があるとコメントしていたので疲労が溜まっているのはそうだと思う。

散髪

ストレッチを終えてから散髪へ行ってきた。短くきると頭が軽いし、お風呂で頭を洗うのも楽になっていい。もう今後はずっと短髪でいこうと思う。散髪していたらなぜかすごく眠気があって、終えてからお昼ご飯を食べて一旦帰って2時間ほど寝てた。なんか睡魔にとりつかれた。

cli コマンドの開発

金曜日の夜にやるつもりのお仕事ができなかったので夕方から着手した。夕方の方がオフィスも涼しくて捗る。3時間ほどかけて cli コマンドを一通りつくって README に使い方を書いて issue をクローズした。難しい開発ではないけれど、やり切って満足。

立ち呑み屋

たまたま食べログをみていて見つけた立ち呑み屋さんがよさそうだった。コミュニティのメンバーを誘って来週末に行くことにしているが、誘った手前、下見をしておこうと思って21時過ぎから1人で行ってみた。カウンターしかない小さいバーで詰めても10人入れないようなスペース。5人先客がいてマスターが1人でやりくりしている。その後も3グループぐらい入れ替わりにお客さんがやってきて常連さんの多いお店みたい。私はぼっちで行ったんだけど、徐々に話しかけてもらって、お酒を飲んでいるから2時間したら周りの人たちと話していた。そういう雰囲気のお店。立ち呑みなのに24時ぐらいまでいた。楽しかった。ふらっと1人で行って適当に雑談できるお店をみつけた。また行こうと思う。

3つめのテックブログ

2時に寝て何度か起きて7時に起きた。朝から弁護士さんにメールの返信をしたりしていた。午前/午後と普通に運用ツールの開発をして夕方に勉強会をして、夜に軽く呑みに行ってきた。

go-ldap テックブログとその勉強会

水曜日から テックブログの執筆 に着手して、木曜日のお昼には下書きを書き上げて社内レビューをお願いしていた。ldap プロトコルの振る舞いについて調べたことを書いた。あまり自信はなかったけど、社内のシニアエンジニアにレビューしてもらって、よく書けているとコメントをもらってシンプルに嬉しかった。いま開発の佳境のしんどい時期に、非開発以外のことに時間をとって記事を書いて報われた気持ちになった。

今日のチーム勉強会は私が担当だったのでこのテックブログの記事を解説した。実際に go-ldap のソースコードを一緒に読みながら進める。書いたり話したりすると、ちゃんと自分が理解できているかどうかを確認ができる。そして、コードを読みながら説明しているときに、記事に書いてある内容が一部間違っていることにも気付けた。こういう体験の繰り返しで私は自分を信頼しないことを学ぶ。私の浅い理解や未熟さを実感する機会があって、また次にがんばろうというモチベーションにもつながる。

自身の理解度の確認やチームへの共有、モチベーションコントロールなど、複数の意味で自分が書いたテックブログの記事を解説する勉強会はいいように思えた。

思い入れのあった内容を書いて公開してしまうと、燃え尽きのような、少しやり切った感を感じていた。しかし、開発はまだ佳境の途中なのでここで立ち止まることはできない。それで呑みに行ってみた。とくに目的なくみつけたお店に初めて入ってみた。普通の居酒屋よりちょっとだけ値が張る感じの、落ち着いたお店で、私よりも少し年配 (にみえる) マスターが1人でやりくりしていた。軽く話しながら晩ご飯を食べれてやや救われた。また行ってみようと思う。

投資詐欺にあっている懸念

0時に寝て何度か起きて7時に起きた。昨日は1週間先に変更されてた定例の予定を間違えていて段取りをミスった。

何度も投資詐欺に騙される人

母からある会社の投資について事業説明をみてほしいと zoom のリンクが送られてきた。先日からお金を貸してほしいとか言い出しておかしいとは思っていた。その元凶はこれかと思って、会社のサイトをみるとクレジットカード + 仮想通貨のビジネスで、一般消費者から投資のお金を集めているらしい。「あっ、はい」って感じの怪しい投資ビジネスで、インターネットで会社名を軽く検索した感じではまだ詐欺とわかっているわけではないらしい。一方で怪しい口コミも散見される。

論理的に考えれば、一般消費者からお金を募るようなビジネスがまともな事業でない可能性が高い。現時点では事業者が投資詐欺であるかどうかの断定はできないが、こんな怪しい会社に投資する、その信頼の源泉がどこから出てくるのかにも理解に苦しむ。うちの親は投資詐欺に何度も騙されている。過去20-30年でおそらく5-6回ぐらい。それでも学習しない。どういう経緯で騙されているのかわからないが、信じてしまうようだ。

母に電話して、こんなよくわからない事業のスタートアップに投資をするのはリスクが高いこと、この手のビジネスの投資詐欺は多いことを伝えた。成年後見人の弁護士さんにも共有して、もし可能なら弁護士さんの視点からも母に投資詐欺のリスクが高いことを説明してほしいとお願いした。こんなやり取りをすることが本当にしんどくて疲れる。

お盆の最終日

1時に寝て何度か起きて8時半に起きた。数ヶ月に1回ぐらいの頻度でしかないことだけど寝坊した。起きたら8時半であれ?と思った。起きてから家でそのぐらいの時間までだらだらするのはちょくちょくあることだけど、気付かず寝てたのは久しぶりだった。

台風が過ぎた後の焼き鳥屋さん

今朝に寝坊した理由はこれだと思うけれど、昨日の22時から晩ご飯を求めて仲のよい焼き鳥屋さんへ行ってきた。台風で9割以上のお店が閉めている中、唯一と言っていいぐらいの珍しさで開いてた。そのお店 (グループ) のオーナーは雨が降ろうが槍が降ろうが営業日は開けるという方針らしい。マスターも夕方から台風は過ぎて雨も弱まっていたので普通に営業していたらしい。しかし、お客さんは数グループと少なかったと仰っていた。私が22時に行って誰もいなくて24時までいたけれど、誰も来なかった。通常なら22時だと他に2-3グループはいて、その後も最低でも1グループは飲みにやってくるぐらいの人気のある焼き鳥屋さんだ。そもそも駅から人が出てこないし、道にも人が歩いていない。物流も止まっていたのでいくつか仕入れが出来なくて提供できないメニューもあった。

いつもなら2杯飲んで帰るところを、こんな日だから売上に貢献しようと思って3杯飲んで寝坊した気がする。

mongodb 7.0.0 リリース

ちょうど qa テスト前で mongodb のメジャーバージョンがリリースされそうなので毎週のようにチェックしていた。rc10 までいって ga されたみたい。

まだ docker hub には正式なリリースバージョンのコンテナイメージは公開されていない。しかし、rc10 が ga になったはずなのでひとまずはそれを使って開発環境とテスト環境を 7.0.0 に移行した。うちの用途だと ttl インデックスを作り直す以外には移行作業は必要なかった。自動テストはそのまま成功したし、テスト環境のデータもそのまま移行してパッとみた感じでは正常に動いている。来週から qa テストも始まるのでぎりぎり間に合ったというところ。MongoDB Software Lifecycle Schedules によると、だいたい mongodb は3年サポートされる。メジャーバージョンが年に1回リリースされているようにみえるので、いまメジャーバージョンを上げておくと1年余裕をもって運用できる。

テックブログの執筆開始

お昼からテックブログの執筆に着手した。あまり大きな意味はないのだけど、お手伝い先のテックブログの記事を早く3つ書きたかった。別に三部作というわけでもない。けれど、テックブログ書いてますよと他者へ伝えるときに最低3つぐらい記事を書いていないと、全然書いてないやんと私なら思ってしまう。3つぐらいあれば、この人はこういう技術に関心があるんだ、こんな業務をやっているんだ、内容もしっかり書けているねとか、そういう判断を下すことができる最低限のコンテンツ量と言えるのではないだろうか。私にとってはそれが3つの記事と言える。ちょっと前に公開した podcast でテックブログの記事を読んでくださいと話したのでリスナーが聞く前に増やしておきたい。ちょうどプロダクトのプレスリリースも出たのでその宣伝も兼ねられるし、勉強会のネタにもなるし、私の義務感を軽減してストレス解消にもなるし、ここは踏ん張って今日・明日で下書きを書き終えたい。

台風の暴風雨にびびった

台風が来るということだったので昨日は18時には家に戻ってきてゆっくりしていた。とくに何をしていたわけでもないけれど、なぜか眠れなくて3時ぐらいまでは起きていた気がする。あまりちゃんと眠れない中、7時に起きた。朝から外の暴風雨がすごくて人が飛ばされそうな勢いだった。さすがにオフィス行けないなと諦めて家でリモートワークしていた。お昼過ぎぐらいまで暴風雨が続いていたと思う。夕方になってから外に出たら普通の雨になっていてそれからオフィスに来た。

課題管理とプロジェクトマネージメントの話を熱く語る

理由があって先日 チェックした音声データ とは違う音声データを使って昨日の夜に公開された。週末働いてバテていたせいか、昨日は余裕なくて聞けなかったものの、深夜に聞き始めた。よいこと言っているなーと自画自賛しつついくつか間違ったことも話してしまっているけれど、私の話しにそこまで注意して聞く人はいないでしょう。

課題管理の話題になると、ついつい熱中して話してしまう。「熱く語る」と書かれてしまうのはこの分野に熱意をもっている人が稀だからかな。私はこの1-2年この分野をずっと調べているから、ここで話した10倍ぐらいのコンテンツをもっている。勉強会の資料も数個はあるし、スライドは200枚ぐらいある。そして、調べれば調べるほど私が分かっていないことも分かってきて、もっともっと調べたいことがある。しかし、いまいまはもう体力と気力がない。

エージェントアプリケーション開発

昨日の続き 。昨日レビューをしっかりしてもらってマージした。windows ad サーバーとの dirsync の通信のところを、一切動かさず、既存のコードをインターフェースにあうように作り直したものの、実際に動かしてみると非同期の制御が意図したデータフローでなかったり、windows ad サーバーの知らない仕様があったり、細かいバグもあったりで半日ほどかけてデバッグしながらバグ修正してた。単体レベルのテストでこのバグ数だと、qa レベルだとさらにバグありそうだなという感触だけ確かめた。その後 dirsync の検索も非同期になった方が嬉しいなと思ってちょっとリファクタリングして検証がてら提案してみた。特別なことをしなくても go-ldap の非同期検索を使ってそのまま動くことも確認できたのでこれはこれで役に立つと思う。

週明けから疲労困憊

4時に寝て7時に起きた。遅くまでコードを書いていたわけではないけど、眠れなかったのとお腹空いて夜にもぐもぐ夜食を食べていたせいかもしれない。たいてい月曜日は元気いっぱいなのに今日はバテバテだった。

wifi 復旧

金曜日からコワーキングスペースの wifi が不通 になっていた。午前中に業者がフロアの機器室の扉 (施錠されている) を開けて作業していた。週末に復旧できなかったのはシンプルに業者との保守契約に休日対応オプションが入っていなかったのかもしれない。運悪く連休に発生したために約3日間停止していた wifi が11時過ぎにようやく復旧した。フロアにまったく人影がなくて、みんなお盆休みなのかもしれない。

エージェントアプリケーション開発

昨日の続き 。朝からマージリクエストを作ってメンバーにレビューしてもらう。1000行程度の diff になったのでレビューするのも大変。基本的なロジックは問題なかったけれど、メンバーがしっかりレビューしてくれたおかげで細かいところをみていくと、いくつか修正点があった。感謝。レビューを終えて、マージして、テスト環境にデプロイして、一通り動いていることは確認した。ここからは運用レベルの検証に入っていく。週末も昨日もあまり寝てないのもあって、台風がきているし、今日はここで休むことにした。疲れたー。

神戸の高速道路事情

4時に寝て7時に起きた。蛍光灯をつけっぱなしで寝たのであまり深く寝ていない感じがする。

テーブル受け取り

先日の ジモティー取引 のテーブルを受け取りに行ってきた。テーブルのサイズは次になる。

  • 縦: 120cm
  • 幅: 75cm
  • 高さ: 70cm

ちゃんとメジャーで測って車の荷室に入ることを確認して行った。やや工夫しながら積み込みしないと当たるところもあった。後部座席を倒してこのぐらいのサイズで荷室が埋まる。もうひとまわりぐらいの余裕はあるかな。

あとは椅子を探すだけ。次は9月に実家へ帰ろうと考えているのでそれまでに準備したい。

阪神高速3号神戸線

以前 実家からの帰りで渋滞に遭遇 してから、たいてい実家から帰ってくるときは白川まで出て7号北神戸線で帰るようになった。少しだけ遠回りだけど、まず渋滞しないので時間的には早く着く可能性が高い。今日は京橋から西明石まで高速道路で走ってきた。30-40分といったところ。往路は白川経由で1080円 (渋滞しない) 、復路は須磨経由 (3号神戸線と呼ばれるルート) が1040円で若宮-湊川-柳原あたりで安定の渋滞につかまった。明らかに白河経由なら20分は早く帰れたと思う。下りはまだしも、上りは渋滞に遭遇する確率がかなり高い。次の記事によると、阪神高速3号神戸線は全国ワースト1位の渋滞区間になるらしい。もう休日の上りで3号神戸線を走ることはないかもしれない。

東京圏の首都高速など、全国6都市圏にある都市高速道路のうち、最も渋滞する区間が、阪神高速3号神戸線のおもに神戸市内の区間です。

阪神高速3号神戸線はなぜ混む?

3号神戸線が渋滞する理由を調べるといろいろな意見がある。それっぽいのをまとめておく。

  • 神戸-大阪という都市間の交通量は多いのに土地が狭い
    • 山と海に挟まれていて土地がないから下道の幹線道路 (国道) も貧弱
  • サグ (下り坂から上り坂に変わる箇所) がいくつかある
  • 出口のすぐ先に信号があるから出口付近で混雑する
  • 鋭角カーブがあるので減速する

次の記事も図解があってわかりやすかった。

エージェントアプリケーション開発

昨日の続き 。お昼に2時間ほどやって、夕方に晩ご飯の買いものへ行ったら強い通り雨に降られて一旦家で休んでいるうちに少し寝て、また涼しくなった20時頃から4時間ほどやってた。windows ad サーバーとの dirsync の通信もコードを読みながらインターフェースをあわせるように書き換えていった。実際に動かしてないから動かないかもしれない。このテストは明日に行う。channel を使った非同期/並行処理のところは難しいのでなるべく共通化してアプリケーション側はそれを再利用する形にしたい。マージリクエストを送る一歩手前までは整理できた。あとはテストだけ。疲れたけど、ようやく先週のスケジュールに復帰した。

室温と集中力との相関関係

2時に寝て2回ぐらい起きて7時に起きた。朝からやや疲れ気味。

ストレッチ

疲労と暑さと出張でバテバテ。今日の開脚幅は開始前157cmで、ストレッチ後160cmだった。数値はよい感じ。トレーナーさんが言うにはお尻と肩が硬かったらしい。私の感覚ではそれらに加えて、ふくらはぎの後ろの筋がかなり痛かった、とくに左足。さらに体全体がだるくて疲れが溜まっているなーという印象も受けた。実は8月21日の週にまた出張する予定になったので体力がもつか、不安も感じるようになってきた。

空調工事の結果

先日の 暑さ対策委員会 の続き。

出張から帰ってきて、エアコンの冷媒切り替えを終えたはずのオフィスの室温はどう変わったか?その結果が楽しみにで昨日、出張帰りにオフィスに寄ってみたというのもあった。結論から言うと

何の成果も!!得られませんでした!!

温湿度計を買っておいてよかった。ちゃんと数値でどう変わったかを測れるもんね。だって午前中は34℃、お昼から32℃、夜は28℃、なんも変わってない。この部屋が暑い理由は冷媒が原因ではなかったという切り分けはできた。がっかりして、また運営会社に電話して、成果がなかったことと、前に断熱のブラインドに変えてくれると言っていた件はどうなったの?とツッコミまで入れてしまったよ。もう建物の構造的にこの区画は涼しくならないんやろか?

オフィスの wifi 不通

昨日の午前中、運営会社のスタッフとやり取りしていて wifi が不通になっていることに気付いた。デスクトップマシンは有線ネットワークを使っていてそちらは疎通しているものの、wifi のアクセスポイントまでは接続できるが、なぜかその先のインターネット接続が不通になるという現象が発生していた。たまたま部屋の外に出たときにコワーキングスペースの利用者が運営会社のサポートに電話して、やや強い口調でクレームしていた。コワーキングスペースの利用者向けには wifi ネットワークしかないため、コワーキングスペースにわざわざ来てインターネット繋がりませんで怒る気持ちは分からないでもない。

ネットワーク障害が発生することそのものは仕方ないものの、発生してから翌日の20時時点でその wifi ネットワークの障害が解消していない。同じフロア内にある有線ネットワークが疎通していることから、このネットワーク障害は小規模な原因であることが推測される。それこそ通信機器を再起動すれば直るかもしれない。1日以上放置している運営体制を懸念に思ってしまったのだけど、これは職業病?週末に知らずにコワーキングスペースへ来られる方がいるのではないだろうか?

エージェントアプリケーション開発

今週中に完了させておきたい機能開発 が全然進捗しなかったので週末に取り組む。昼間は暑くて (34℃) 集中力が出なかったので15時から19時まで家に帰ってエアコンの効いた部屋で寝てた。ただただ寝てた。私が4時間起きずに眠れることは稀なので自分でも驚いた。その後、オフィスに戻って19時半ぐらいから開発に臨んだ。夜のオフィスの室温は28℃前後なので十分に涼しい (と適応している自分がいる) 。

ldap サーバーでのユーザーとグループのエントリー、それぞれの変更を検知して id 連携しないといけない。既存の実装は1つのクエリにユーザーとグループの検索条件を OR 条件にして両方のエントリーを取得するようにしている。このフィルター自体は問題ないが、その後のユーザーとグループの判別に DN の接尾辞の部分マッチで判定していた。これは微妙な判定方法だ。このやり方だとユーザーとグループの DN の接尾辞が同じときに運用できない。ユーザーとグループは分けて管理した方が要件がシンプルで運用も実装もわかりやすいだろうと考え、それぞれのクエリを非同期/並行に動かすようにした。こういうのは go 言語の得意とするところ。一通り動くようになったら3時半ぐらいになってた。涼しい方が集中できる。

休日だったとは思えない多忙な日

2時に寝て6時に起きて8時過ぎに起きた。昨日の夜に書いたコードにバグがあると朝からチャットをみかけて慌てて起きてオフィスへ行くことにした。夕方に一度帰って仮眠してまた夜に涼しくなってからオフィスへ行って作業していた。祝日とは思えない忙しさでほぼほぼフルで働いていた。

podcast の内容チェック

一昨日に収録した podcast の音声データが仕上がったと昨日の夜に連絡をもらった。本当は昨日の夜に聞いて内容チェックするところが、昨日はコードを書いていてそれで疲れてしまったので朝から聞いて内容チェックしていた。2時間話したので聞くのも2時間かかる。

今回はスクリプトも付いていた。日本語の音声データからの llm 技術を使ってスクリプトを自動生成している。そのテキストをみながら聞いていた。てらださんが言うには音声データによってスクリプトの精度は大きく変わるらしいが、今回の私の雑談はうまくいった方で7割ぐらいの精度で正しかった。ところどころの単語は間違っているものの、ざっとテキストを見返してもなにを話したのかの雰囲気は類推できる。これがあると、どの時間帯にどういった内容を話しているかを知ることができるため、自分の関心のあるところだけ聞くときに参考になる。その程度の要件であれば7割の精度で構わないという。その後、当日にもともと予定していなかったことを話したことの、ショーノート向けのリンクを探してきて追記したりしていた。

ダイニングテーブルの交渉成立

以前から ジモティー検索 で実家の離れでリモートワークするためのテーブルを探していた。出品されても大抵は1時間以内で取引相手が決まってしまうため、勝負は時の運のような雰囲気になっていた。たまたま今晩も検索してみて、近所でみつけて、どうせ交渉済みかなと諦めモード満開で問い合わせたところ、まだ引き取り先が決まってなくて無事に交渉が成立した。明後日の午前中に明石市まで引き取りに行ってくることになった。なにが嬉しいって中古のダイニングテーブルを無料で譲り受けられる。うまいこといくときはトントン拍子だった。

出張帰りにオフィスに寄って開発する

18時19分の新幹線に乗って21時前に新神戸駅に着く。この時間帯で帰ってくるのが楽な気がする。新神戸駅についたらいつもそこからタクシーで帰りたいと思う。いまうちの会社は全然儲かってないのでそんなことできないけれど、いつか余裕ができたら出張帰りの電車乗り継ぎをやめてタクシーで直帰してよいルールにしたい。

go 1.21 への移行

昨日 Go 1.21 is released! されたことを知った。自分の作業を中断して早めに移行して問題があれば検出できるしておきたかったので 1.20 から 1.21 への移行をしていた。もっとも大きな移行としてログ出力をすべて log/slog へ移行した。もともと cybozu-go/log という標準の log パッケージに近いものを使っていたので移行そのものは大きな課題にはならなかった。一方で変更することによって運用にどういった影響が出るかは実際に動かさないと気付かないこともあるだろうという視点で早く移行したかった。昨日の夕方に 1.21 で一通りは動くようにして、今朝から細かいところの修正は他のライブラリとして slices/maps といった新規に追加された標準ライブラリを使うように変更していった。リポジトリが数個あるので単純に労力だけの問題。ついでに go-ldap の ci 環境の設定も変えておいた。

github-api-tools 再び

帰りの新幹線の中でてらださんとやり取りしていた。issue 検索に llm の技術を使ってサンプルアプリケーションを作るというアイディアが進んでいて、公けの github issues のデータを使えばいいという話しをした。実際に学習データにするには、一定の前処理したテキストとメタデータが必要になる。github issues からあるプロジェクトの情報を一括で取得する方法はないか?という相談を受けて、github の rest api などを使って取得するのがよいのではないか?と提案した。

私も過去に github での作業時間の検証のために github-api-tools というツールを作っていた。21時半頃にオフィスに戻ってきて、せっかくなので試しにやってみるかと翌1時過ぎぐらいまでコードを書いていた。過去にも issues の機能も作った方がよいよねという課題は残してあった。

python のコードを滅多に触る機会がなくなってしまったので勘所を思い出したりするのにやや手間取った。それでも自分が過去に作ったものなのですぐにできた。