カナエを作る #6:繰り返しは、未来のカードを先に作る。画像だけは全体で1枚にする

前回(#5)で、バケットリスト1件が持つ内容を決めました。今回は、その続きの繰り返しです。

庭のジューンベリーを収穫してジャムを作る、のように、毎年やりたいことがあります。これをどう持つかで、データの形が大きく変わります。


1件のまま記録するか、カードが増えるか

Claude から、2つのイメージを聞かれました。

  • 1件のカードのまま、毎年、達成を記録していく
  • 毎年、その年の予定のカードが増える

自分のイメージは、カードが増えるほうです。さらに、具体的な形も考えていました。

  • 登録のときに繰り返しを指定すると、月または年の単位を選べる(日・週・年代は不要)
  • 登録すると、未来のバケットリストとして、その時点で同じ内容で、それぞれ登録される
  • 繰り返しで登録したものは、同じキーを内部的に持つ

内部キーを持ちたい理由

同じキーを持ちたいのは、例外を把握するためです。

たとえば、来月だけ日付をちょっとずらすとします。日付を変更しても、その月だけ例外的に予定を変更した、という状態を把握しておきたいと考えました。繰り返しを全て削除するときも、このキーをもとに削除できます。

Claude の評価は、先にカードを作るので、一覧、グラフ、知らせのすべてを、通常のカードと同じ処理で扱えるというものでした。「あと何回」も、同じキーを持つ未完了のカードを数えるだけです。


終了日は、失念していた

先にカードを作る方式だと、終わりなしの繰り返しはできません。Claude に指摘されるまで、失念していました。

繰り返しの終了日は必須にします。未入力なら、エラーで登録できません。


画像は、繰り返し全体で1枚にする

いちばん考えたのは、登録数の上限との関係です。毎月を10年分作ると120件になります。これをカードの数で数えるか、繰り返し全体を1件と数えるか、という問題です。

これは、イメージ画像を共通にするかどうかによると思いました。

上限を画像にだけ設けているのは、ストレージの容量の問題があるからです。バケットリスト1件のテキストのデータは、微々たるものです。

そこで、画像は繰り返し全体で共通の1枚にしました。変更したら、繰り返しのカードが全部変わります。それなら、繰り返し全体を1件と数えて問題ありません。ちょっと処理は面倒だと思っていましたが、カードごとに同じ画像を指すようにすれば、表示は通常のカードと同じ処理で済むようです。


細かいところも、決めた

残りは、Claude の案を確認しながら決めました。

  • 全て削除:未完了のカードだけを削除する。達成済みは実績なので残す
  • 内容の変更:「このカードだけ」と「未完了すべて」を選べる
  • 使える指定:毎年は指定日と指定月、毎月は指定日だけ。31日の毎月指定は、短い月では末日にする
  • 1回の繰り返しの上限:60件。毎月なら5年分あれば、一旦大丈夫だと思う

60件は、あとから自分で決めました。数字を決めるのは、Issue にする段階でもよかったのですが、決められるなら決めておきます。


記事を確認していて、削除の抜けに気づいた

この記事の下書きを確認しているときに、思いつきました。未完了を一括で削除する機能自体は、これでいいです。ただ、今年はスキップするけど、来年以降は毎年やりたい、という意味の削除もあります。

たとえば、大通公園のビアガーデンで飲む、というバケットリストです。今年は予定が合わなくて、開催が終わってしまった。今年の分は削除するけれど、来年以降は残したい、というときです。

そこで、削除でも「このカードだけ」を選べるようにしました。内容の変更と同じ形です。


おわりに

繰り返しは、1つの機能に見えて、登録数の上限、画像、削除の範囲と、いろいろなところにつながっていました。

「上限を画像にだけ設けているのは、なぜか」という元の理由に戻ると、判断が楽になったのが印象的です。

次回は、一覧の見せ方と、最初のリリースの範囲です。

← トップページに戻る