andante

0405

月曜日新システムの本格稼働開始なのでいろいろ落ちつかない気持ちだったがとりあえず大きな問題はなさそうだった改善すべき点はたくさんあるけど頑張っていこう

それはそれとしてHTMLパズルに苦しんでいるテーブルの行を丸ごとリンクにしたいのだが素朴にやるとDOM階層の制約に違反するのでできずかといってセルごとにリンクを置くとクリック領域が狭くなってしまうposition: absoluteを使ったトリックは部分的には動くけれど結局だめそうだし万策尽きた感じ明日はもう少し発想を変えて考えないと

夜はblogのリライトとりあえずDB移行は書けそうだけどついでに検索可能にしたいなと思ったのでElasticSearchと接続するつもり楽しくなってきたこれとさらにtwlgを串刺し検索できるAPIも考えたいバックエンド同士はgRPCで通信するのがよいだろうやってみたいしかし時間がなかなか取れないだいたいさ最近全然趣味プロジェクトに時間を使ってないよね飽きたの


今日は寝ましょう明日は会議とかなさそうだしじっくりHTMLと闘う

0404

コード書きたかったんだけどあまりテンション上がらずdieselでMySQLの既存DBを使おうと思ってたんだけどdieselのMySQLサポートは不完全な感じがするたとえばタイムゾーンつきTIMESTAMPのサポートがないたぶん単に忘れられてるんだろうからプルリクチャンスのような気はするがいまちょっと忙しいので普通にPostgresに移行することにする10年来の設定を見直すチャンスでもあるしエンジンがMyISAMだったりとか

夜はなんとなくファイトクラブをまた観ました僕はたぶんこれが一番好きな映画なんだろうと思うすごくいい僕はべつに殴り合って本物の男を取り戻そうみたいなことは全然思わないが去勢されたみたいな気持ちはすこしわかる気がする資本主義ゲームのスコアにされた丁暮らなんてクソ食らえだよなでも一方で僕のそういう気持ちもべつに全然REALではないしだからマジモンのテロ行為に及ばれると引いちゃうそういうところも含めてとても共感できる映画だいい


さて先週末は4連休だったが今週末は2連休で終わり明日はなんだっけ実はそんなに忙しくないまあブラッシュアップ作業は続けないといけないが

0403'

昼過ぎまで寝たり起きたりして夕方にfとイスラム建築を見に行きましたイスラム建築の幾何学模様に対する情熱はすごいなと思うかっこいい

それからちょっと移動してトルコ料理店へなんかメチャメチャ量が多くてお腹いっぱいになったあと店長の客いじりがしんどかった僕はこういうのノれない時はほんとうにぜんぜんノれないのだ陰キャだから

夜はすこしrust書いてるこのblogのリライト計画を動かし始めたNocturne 11実は4年ほど前にindex.phpだけ作って頓挫したNocturne 11があったけどそれは無視して作ることにしたこれ11番目なのかまあ頓挫したバージョンは他にもあるけれど10はたしかLaravel的なフレームワークを自力で再発明しようとしてルーターの実装で死んだんだっけおかしいよなこのサイトにそんな凝ったルーティングなんかありゃしないのに
とりあえずdiesel cliでデータベーススキーマを読み取るところまでやったけどどうしようかな既存のデータベースを使い回すことは思い切って諦めたほうがいいのかもなぜならすべてが古いからまあでもちょちょいと調整すればどうにかなるのであればそうしたい気もするいちいちマイグレイションスクリプト書きたくないし


寝る明日はコード書きたい


追記このblogの記事番号なんか4000を過ぎてるみたいですね4000も書いたの正気か

0402

珍しく会議が一つもない日でずっとコードと向き合っていたずっとこうならいいのにという気持ちととはいえそれはそれで気が滅入るなという気持ちとがある今日はどちらかといえば気が滅入った日
position:absoluteにした<a>タグとその後ろにいるツールチップの相互作用がうまくいかなくて難儀している最終的には<a>タグのマウスイベントを全部無効化した上で手動で発火させるなどで75点くらいの挙動になったがSafariだとうまく動かないようだしもっとちゃんと改善しないとだめだろうとはいえ今週のうちに達成したい水準には達したし満足のいく成果だったといえる

夜はアニメ観たりお酒飲んだりした前半を休んでいたからか実感がないがそういえばもう土日だ


明日は午後にfと出かける予定それまでは何してようかなこのblogのリライトについて考える時期かな

0401

仕事があるととりあえず仕事の話をしてしまうそれは生活が仕事に呑まれているということでもあるしむしろ生活がすすんで仕事を受け入れている可能性もあるこれといった使命もなくただ暮らすというのもそれなりに精神力を使うことなのだ

そういうわけで仕事スクロール位置の保持はセッションストレージを使えば綺麗にいけるなとかテーブルの行を丸ごとリンクにするのはDOM階層的にダメだからuseContextを使って各セルの中にリンクを置くとかそういう細かいテクをいろいろやったこういう作業をしているのは本当に開発が大詰めなんだなと思うラストスパート

夜はプロジェクトメンバーと打ち上げをしたまあ別にプロジェクトの話はしなくてただの飲み会だけどたまにはこういうのもいいたまにでいいけど

0331

連休明けの出勤いろいろ思い出してたら終わったMaterial-UIのテーマカスタマイズのこととかすこし分かってきたがテーブルのスクロール位置をページ移動後も保持する方法を調べていたら思ったより難しくて困ったこれ僕がWebフロントエンド素人だから知らないだけなのかまあでもあんまり世間で必要とされていない気もする本当はこんな風にしなくても普通にページ全体をスクロールさせればいいはずなのだ


眠い明日は面接があるあと夜はノミカイ

0330

四連休の最終日昨日はあとスナップショットを読み書きするだけだと思っていたtwlgの実装に思ったより手間取るまずElasticSearchのことを思い出せないのでいろいろ調べる必要があったのとelasticsearch-rsのドキュメントがあんまり親切でないこととというか基本的にはラッパー以上の機能は提供していないように見えるのでパラメータ名とかは本家のドキュメントを見に行かないと意味が分からなかったりする

諸々の苦闘の末にようやく本番デプロイしました開発環境も碌にないのに本番とはiPhoneのSafariでちょっとレスポンシヴ対応が壊れている気がするけどそれ以外はまあ順調夜間バッチとかどうなるかわからないけどたぶん大丈夫でしょう

ようやくRustで実用的な規模のソフトウェアを書くことができてまあ満足しているけれど全体的にエコシステムが洗練されていないところは辛いなと思うそのうち揃ってくるとは思うけどあと前にも言ったけどRustは暗黙の型変換をあまりしない型強制という概念はあるから同等のことをまったくしないわけではないがのでas_refとかas_derefとかいちいち書くのがちょっと煩わしい時もあるたとえばSwiftだったらここはスッと同一視するんじゃないだろうかそれでいいのかは知らないが
ボローチェッカーに怒られるのはfour-foursのときはけっこう頻繁だったんだけど今回はあまり怒られていないロジック自体はシンプルだからだろう怒られてもすぐ理解できるものがほとんどだったしそういう意味では実際の開発においてはそれほど怖くないと思ってよい気はする


さて四連休が終わる残業時間の兼ね合いで明日はそれほど遅くまで仕事できないが今週中に片付けたいことがいろいろある必然的に木曜金曜にがんばることになるが木曜日は打ち上げパーティが予定されているのだった結局打ち上げている場合じゃないからこうなっているのだがやれやれ

0329

人々は平日ですが僕は四連休の三日目なので休日でもまあ結局書斎でコード書いてるのだし普段の仕事と特に違いはないという話もある会社のSlackは見てるし

それでtwlgの実装を進めたフロントエンドはほぼ完成と思うテストは書きたいけど問題はバックエンドで完成していたと思っていたクローラの挙動が不穏だったので調べていたrustでTwitter APIを叩くegg-modeというクレートがあるのだけどこいつはEntityの文字列オフセットを勝手に変換しているようだTwitter APIはコードポイントオフセットで返しているがegg-modeはrustで扱いやすいようにバイトオフセットにしているそれはそれでありがたいけど過去のデータとの互換性が壊れて困るので結局Twitterクライアントを書きなおすことになったtokio 1.xと互換性のあるreqwestのOAuth1拡張がなかなか見つからなくて難儀した
あとserdeはクリーンアーキテクチャと相性がよくない気配があるというのもderive(Deserialize)は構造体定義につけるものだからドメイン層のものだけどよく考えるとJSONデシリアライズは実装詳細インフラ層なのであった真面目にやると結局インフラ層のためのモデルとドメイン層のためのモデルが分離することになるし実際今回はそうしたのだけど……まあそこは変換不要であれば同一視するくらいの感覚がよいのだろう今回はでもTwitter APIがRFC 5322の形式で日付を返すのでモデルが必要だっただるい
tokio 1.xと互換性のあるクレートが地味に足りていない問題はたびたび躓く活発なプロジェクトであればβ版くらいは提供されているがそうでもないとそうでもないrust自体はそれなりに勢いのある界隈だし時間が解決するのだとは思うけれども
今日デプロイまでこぎ着けたかったけどバックアップのことを忘れていたので一回休み明日やろう


こういうことをわざわざ言うと嘘くさくなるのは承知なんだけど僕はもしかすると競争というものからけっこう自由なのかもしれないと思う中学受験を経験しておいて競争してないってのも変な話なのだけどその先ではけっこう競争の価値観から外れて生きられているのではないだろうかまあドラマとかで表現されている競争社会がどの程度リアルなものなのかはわからないしけっこう割り引いてみないといけないだろうけれど……少なくとも僕はこの五年くらいは好き勝手やっていると思っているしそれで満足できているのは幸運なことだろう
そういう状況のために有効だったのはやっぱり中学受験だったりなんだろうかそれとも結局僕のような人間はどこでもそういう風に生きていけるということなのだろうかでも結局僕のような人間が僕のように育つためには僕が生きてきたような環境が必要だったと考えることもできるだろう僕は単に幸運だったのだろうかそれとも僕に教育を施そうとした両親の努力の結果なのだろうかまあ両親は僕にもうちょっと立派になってほしかったようだけど……

0328

昼前に起きてReactをやっていた仕事でやっている時はなかなか後回しになってしまって深掘りできないデザイン系の作業などMaterial-UIのテーマのカスタマイズとかCSSのことは相変わらずよくわからないが昔は欲しかった装飾やレイアウトが増えてるのは嬉しい僕が勉強してた頃はまだCSS2.1の対応状況も不安定だったものだけど


4連休の折り返し明日は好き勝手するぜするぜって言っても特に予定はないけど連休って直前の夜が一番楽しいよね始まってしまうと特になにもしない

0327

どようび

昼過ぎに近くの川まで歩いて行って簡単な花見をしたこんなご時世なのでとても簡単しかし公園に行くと普通にレジャーシート敷いたり簡易テント立ててる人とか大勢いたまあ外だしな花見くらいしても罰は当たるまい

夕方はtwlgの書き直しを進めた一応フロントエンドもそれらしく動いたのでDockerコンテナにするところまで進めたマルチステージビルドを駆使したら50MBくらいにできたので満足後は細かい不具合がないか確認しつつフロントエンドのレイアウトを改善したらデプロイしたいテストも書こう


明日は何をしようかなティラミスを作るミッションが課せられているが