0720
昼過ぎまで寝て、のそのそと起きて、昼寝をしたり、実装をしたりした。とりあえず年月指定で検索するAPIは作れたし、データもインポートした(手こずったが)ので、フロントエンドを作り始めてみようと思う。なので夜は手探りでRemixを触っていた。まあ、今回はやることはとてもシンプルで、要するにloaderで読んでReactで描画すればいいのよね。それをどんな風にコンポーネントにしていくのかは、多少非自明ではあるけれど。あとキャッシュと。
寝ます。明日は前職の人たちとビアガーデン行く。
昼過ぎまで寝て、のそのそと起きて、昼寝をしたり、実装をしたりした。とりあえず年月指定で検索するAPIは作れたし、データもインポートした(手こずったが)ので、フロントエンドを作り始めてみようと思う。なので夜は手探りでRemixを触っていた。まあ、今回はやることはとてもシンプルで、要するにloaderで読んでReactで描画すればいいのよね。それをどんな風にコンポーネントにしていくのかは、多少非自明ではあるけれど。あとキャッシュと。
寝ます。明日は前職の人たちとビアガーデン行く。
前職の人たちとビアガーデンに行った。クソ暑くて死ぬかと思った。なんか10年くらい前にもこういうクソ暑いバーベキュー的なやつやったな。あの時は具合悪くて途中で帰ったような気がする。今日はそこまででもなかった。前職の近況とか、たらればの話などをした。
Remixを触っているが、なかなか道は険しい。ルーティングが今のこのblogの形式(YYYY-MM[-DD])に対応してなくて、パス区切りしかできないらしい。Remixやめるかともすこし思ったけどまあリダイレクトさせたらいいやということにした。本当にそれでうまくいくのかは確認が必要だけど。
MasterCSSも使ってみたかったんだけど、Remixにはちゃんと対応できてない?らしく断念。Tailwindってやつを覚えます。ふーむ。
あとはまあ、結局どうやってレイアウトしていくかだけども……。今の実装が何気に結構複雑なのよな。うーん。
寝ます。
なんか異常に眠い日だった。疲れもあるのかもしれないが、眠りが浅かったような印象もある。なんだろね。
Remixのことはいまいちわからないまま、少しだけ実装は進んだ。ナビゲイションだけ見るとだいぶそれっぽくなってきたが、結局デザイン適用が難しいのよな。はぁ……どこから手をつけたものか。
寝る
今日も眠かった。なんやろね。
CSSようわからん〜、Tailwindもようわからん〜、と思って困ったのでClaudeにこんなん作りたいんだけどと相談したら一瞬でそれっぽいのが出てきて助かった。まあこのままは使えないんだけど、やはり具体例があるとぐぐっと理解がしやすくなるからね。レスポンシブ対応も訊いたらスッと出してくれたし。いい時代だ。
ただそれはそれとしてデザインどうする問題は依然としてある。大きくは変えるつもりないけど、マイナーチェンジはしたいんだよね。まあ現状結構気に入ってるからいいんだけど。
寝ます。
CSSいじってた。背景にエフェクトかけたいなと思っているけどこれはなかなか難しい。難しいわりに有り難みが小さいし、パフォーマンスの劣化も気掛かり。そしてこんなのは普通に画像を用意すればいいのでは?という気もする。まあせっかくだからもう少し試行錯誤してみたい。イマドキのCSS事情に触れておきたい。
寝ます。明日朝から病院なのに夜更かししてしまってすごい後悔。でももうそういうものだからな。ハー。
諸事情により日記なし。
諸事情ってのは、だいたいの場合は、すごい喧嘩とかで疲弊したということです。
Remixぽちぽち。Webフロントエンドに触れるのが数年おきなので、基本的なところから毎回ググらないとベストプラクティスがわからない。日付時刻操作は今でもdayjsが現役のようだけど、せっかくなのでtempoというやつを試してみる。でもなんかこいつは関数ベースなので書き味がイマイチかもしれんな。
すこしずつそれらしいコードが集まってきたが、まだいろいろ迷いもある。ディレクトリ構成とか。たぶんこれはみんな悩むやつなんだけど。そういう意味ではRailsとか楽だよなと思うが、あれがあるべき姿かというとそうではなかろう。
オリンピックシーズン(?)ということで、なんとはなしにロンドンオリンピックの開会式を(また)観た。これ3回くらい観てる気がする。やはりね、これと比べると、TOKYO2020は(コロナ禍とはいえ)なぜこうなれなかったのか……という気持ちになり、国民的自傷行為という気がする。
パリオリンピックも楽しみだ。録画したのでそのうち観よう。どうせYouTubeに上がるだろうけど。
寝ます。
花火大会を観た。まあまあの距離で観られたのでけっこうよかった。埼玉の方では雷が鳴っていたようで、花火より稲妻のほうがみんなのリアクションが大きくておかしかった。
花火大会を観るたびに思うが、この野蛮な娯楽はいつまで生き残るだろうか。ドローンでやればいいのでは?という風潮にいつまで抗い続けられるだろうか。(そしてまあ、僕もドローンショーのほうが格好いいし安全だしでいいのでは?と多少は思っている)。
録画していたパリオリンピック開会式を観た。なんか、個性的というか、これはオリンピックとかいうよくわからん平和の祭典である前にパリの文化の祭りなんじゃいという意志が強く感じられた。パリコレパートとか、どういう意味があって開会式でやってるのか僕にはわからなくて、こんなの東京オリンピックでボカロMV延々流すくらいの尖りかたじゃない?という気持ちがあるのだが、それをやるぞという自信と、それでいける文化的ポジションは羨ましいよね。ただ、選手入場までの前半パートはなんか散漫な感じだった。街中でいろいろパフォーマンスをやるのも、どうもしっくりこないというか、フラッシュモブに出くわした時の気恥ずかしさみたいなのがあって、うーむと思った。後半はけっこうビシッとしててよかったけど。
Reactを手探りで書いている。カレンダー関連の機能を適当に書いたらなんかパフォーマンスが悪くなったのでとりあえずメモ化で対応したが、本当にこれでいいのだろうか。Dateがオブジェクトだから同値判定がポインタでされる?のが地味に面倒で、これのせいでuseEffectもuseMemoも一回文字列を挟むとかで対策が必要になる(よね?)。ふーむ。
寝ます。
主にCSSをいじっていた。blogのスタイルを多少変えようとも思っているけれど、とりあえず完コピを目指している。記事周辺のレイアウトはだいぶ再現できてきた。flexとかgridとか、現バージョンを書くときも多少使ったけど、その時よりすこしうまく使えるようになっていると思う。あとtailwindにも慣れてきた。
20年近く前にCSSを学んだから、文書の内容と装飾は綺麗に分離して、CSSのクラス名には意味を表す名前をつけて、……みたいな考えかたが頭にあるのだけれど、ReactでWebアプリケイションを作る上ではすこし違う風に考えるほうがいいのかなと思うようになった。まず、もはやこれは文書ではない(その境界は曖昧だが)というのと、意味的な区切りはコンポーネントとして作れるのだから、CSSのクラス名で表現する必要はないというのと。tailwindのクラス名はそれがどんな装飾であるのかを端的に表していて、それがどんな意図で使われているのかはコンポーネント名に現れている。もはやCSSを見てこれは何に使われているのだろうかと考えることはない(インラインで書くのと同じ)のだから、そのための命名規則も必要ないということか。
見た目が幾分それらしくなってきたし、そろそろバックエンドの実装に戻るべきか。投稿とかできるようにしたい。
寝ます。
記事投稿APIをとりあえず作って、Remixのactionで呼べるようにした。いいね。あとは認証をやらないといけないのだが、これはどうするのがベストプラクティスなのか。ううむ。
スタイルもすこし整えた。Chromeでは約物の余白調整にtext-spacing-trimが使えるけどFirefoxでは秘伝のCSSでやらなくてはいけない。このロジックをフロント側に持ってくることも考えられなくはないけど、悩ましい。基本的にはバックエンドでやる方が速いし確実だろうと思うのだけども。
寝ます。