連載「糖質/インスリン比 目安アプリをつくる」· 第2編/全7編
「正確な数字」より「いまの数字」
生活の揺らぎを、設計でどう受け止めるか(その2)
理屈どおりに組んだ仕組みが、暮らしに「そうじゃない」と突き返される。基礎インスリンは毎日同じじゃない——その揺らぎを、賢い計算ではなく素直な受け取り方で解いた話を一緒に。
連載「糖質/インスリン比 目安アプリをつくる」· 第2編/全7編
生活の揺らぎを、設計でどう受け止めるか(その2)
理屈どおりに組んだ仕組みが、暮らしに「そうじゃない」と突き返される。基礎インスリンは毎日同じじゃない——その揺らぎを、賢い計算ではなく素直な受け取り方で解いた話を一緒に。
理屈どおりに、きれいに組んだはずの仕組みが、自分の暮らしに「いや、そうじゃない」と突き返された——そんな経験、ありませんか。
前回は、なぜこのアプリを作りはじめたかという土台の話でした。今回からは中身です。じつは私はこの回の機能で、1度きれいに設計を裏切られています。そして、負けたことで、かえって良くなった。その逆説を、一緒に見ていきましょう。
インスリンポンプを使い始めて便利だと感じたのが、1日に打ったインスリンの総量(TDD: Total Daily Dose)がひと目で分かることでした。基礎(少しずつ入る分)と食前のボーラス(食事に合わせて打つ分)を、ポンプが勝手に合計してくれます。
このTDDという数字、実はとても便利な“鍵”なんですね。糖尿病の世界には経験則の計算式がいくつかあって、たとえば——
1800 ÷ TDD500 ÷ TDDといった具合に、TDDが分かれば自分の体質のおおよその出発点が見当づきます(これらはあくまで初期の目安で、実際の調整は主治医の指示に従う前提です)。まったくの白紙から手探りで始めるのと、たたき台の数字があるのとでは、最初の一歩のハードルがまるで違う。あなたが何かを見積もるときも、粗くてもいいから出発点の数字が1つあると、ぐっと動きやすくなりますよね。
ポンプを使っていると、このTDDが毎日いやでも目に入ります。だったら活かさない手はない、と最初はこう設計しました。基礎の1日量を設定に入れ、ボーラスは食事記録から自動合計し、足してTDDを出す。理屈は通っています。
組んでみて、すぐに気づきました。私の基礎インスリンは、毎日同じではないのです。
運動する日は、血糖が下がりやすくなるので数時間だけ基礎を下げます。お風呂のときは、ポンプを外すので、そのあいだ基礎は入りません。つまり「基礎の1日量=固定値」という前提が、最初から崩れている。固定値で出したTDDは現実とずれ、そこから出すISFやICRの目安は、もっとずれる。土台が揺れていたら、その上の計算はぜんぶ怪しいわけです。
しかも厄介なのは、そのずれが一定ではないことでした。固定値より多い日もあれば、少ない日もある。ならして平均すれば合っているように見えても、日ごとに見れば上にも下にも振れている。こういう「均せば合うが、その日その日では合わない」数字は、平均で代用すると、いちばん肝心な日を取りこぼします。基礎を下げた日のことを、下げていない前提で見積もってしまうわけですから。揺らぎを平らに均してなかったことにするのではなく、揺らいだまま受け止められる器のほうが要る——そう気づくのに、時間はかかりませんでした。
理屈の上では正しい設計が、生活の前ではあっさり崩れる。あなたにも、「想定がきれいすぎて現実に合わなかった」場面に、心当たりはないでしょうか。
最初の対応は素直なものでした。普段は設定の固定値を使う。でも、基礎を変えた日だけ、その日の値を上書きできるようにする。日付ごとに保存されるので、普段の日は何もしなくていい。運動や入浴で変わった日だけ、実際の量を入れる。
固定値の手軽さと、現実への追従。その両取りです。いつもは楽をして、ずれた日だけ手を入れる。毎日使う生活の道具は、これくらいの“ゆるさ”がちょうどいいんですね。完璧な精度を毎日求めると、たいてい続きません。
……と、ここまでで満足しかけて、もっと根本的なことに気づきました。
私は毎朝、ポンプの画面で前日の実際の総インスリン量を確認しているのです。運動しようが入浴しようが、結果として1日に入った総量は、ポンプが正確に記録して数字で見せてくれている。だったら、基礎とボーラスを足して“推定”する必要なんて、ないのでは。すでに答えが、毎朝そこに表示されているのだから。
そこで設計を変えました。アプリに総インスリン量を記録する欄を作り、毎朝ポンプの数字をひとつ書き写すだけ。日付は前日が初期値なので、迷う余地もない。実測があればそれを最優先で使い、基礎+ボーラスの自動計算は、入れ忘れた日のための“控え”として残す。主役が、計算から実測へ入れ替わったわけです。面倒なときは楽ができて、丁寧にやりたいときは正確になる。この逃げ道のある作りが、続ける道具には効きます。
この一件で、大事なことを学びました。
作っている最中は、つい賢く見えるほうへ引っ張られます。要素を積み上げて全体を導出するほうが、なんとなく上等に見える。でも私が本当に求めていたのは、賢い導出ではなく、いま手元にある確かな数字を、面倒なく取り込むことでした。ポンプがすでに正確に数えているのに、それを無視して自前で推定し直すのは、丁寧なようでいて遠回りで、しかも誤差を増やしている。
似たことは、ソフトを作っていると何度も起きます。外部のサービスがすでに正確な値を返しているのに、それを信じきれずに自前で計算し直し、かえってずれを持ち込む。あるいは、利用者がいちばんよく知っている事実を、こちらが推測で埋めようとする。賢く埋めにいくより、正確な出どころに素直に口を開けておくほうが、たいてい強い。自分の手で組み上げた仕組みへの誇りは、ときどき、いちばん近くに出ている答えから目を逸らさせるんですね。
いちばん正確な数字は、たいてい、いちばん近くにある。あなたの仕事や道具にも、わざわざ組み立て直さなくても、すでに正確な答えがすぐ隣に出ている場面はないでしょうか。それを素直に受け取る入り口を用意するほうが、たいていは価値が高いはずです。
今回は、固定の前提が生活の揺らぎに負けて、負けたことで設計がシンプルになった話でした。基礎は日によって変わる。だから上書きできるようにし、最後は「毎朝ポンプの実測を書き写すだけ」に落ち着いた。
機能を足すというと複雑にすることだと思われがちですが、実際は、現実をよく見て、いちばん素直な受け取り方を見つける作業のほうが多い。引き算的に設計が整っていく感覚です。あなたがいま「理屈はきれいなのに、なぜか使いにくい」ものを抱えているなら、1度それを生活にそのままぶつけてみてください。突き返されたところにこそ、素直な答えが隠れているかもしれません。
次回は、もうひとつの「変わっていくもの」——治療方式そのものの切り替えを、データの構造にどう織り込んだか、を一緒に見ていきます。
アプリは carb-icr(無料・通信なし・ブラウザで動くPWA)。プロジェクトの概要は carb-icr のプロジェクトページ に。
本記事と本アプリは、記録と目安計算の補助です。算出・表示される値はすべて参考であり、診断・治療や実際のインスリン投与量の決定を行うものではありません。投与量・治療方針は必ず主治医の指示に従ってください。