本文へスキップ
AZASLAB
← Journal
6 min read AI協働開発健康

連載「carb-icr 開発日誌」· 第3編/全14編

公開しないで、自分のために持つ

自作自用という、もうひとつの道(開発日誌 3)

自分の体のために作った道具を、あえて誰にも渡さない。公開して鍵をかける案がなぜ成り立たないのか、そして「ネットワークごと閉じる」という解き方を——便利さを手放さずに提供はしない設計を、一緒に。

安宅春樹 (Ataka Haruki)

— AZASLAB代表 ・ AIエージェント開発ディレクター

— Shimizu Fumio Architects Co., Ltd. 取締役

自分のために作ったものを、あえて誰にも渡さない

自分のために作った便利な道具を、それでも人には渡さないほうがいい——そんな選択を考えたこと、ありますか。

前回は、公開しているアプリから投与量の計算を外し、記録と集計の道具として作り直した話でした。でも、外した機能が私自身に不要になったわけではありません。自分の治療では、目安の計算もやっぱり手元にあると助かる。そこで残ったのが、この問いでした。公開版には載せられない機能を、自分のためだけにどう持っておくか。今回は、その解き方を一緒に見ていきます。

自分で作って自分で使うのは、規制の外にある

調べていて、ひとつ救いになった事実があります。薬機法が規制しているのは、医療機器プログラムを「業として」世に出す行為——つまり不特定の誰かへ提供することです。自分の体のために自分で作って、自分だけで使う。この自作自用には、そもそも提供という行為がありません。だから、たとえ機能としては線の向こう側にあっても、自分一人で使うぶんには規制の枠の外にいられる。自分の身体のために自分で道具を作る自由は、ちゃんと残されているんですね。

考えてみれば、これは前々回の話とも地続きです。患者が自分の投与量を自分で手計算するのは、誰の規制対象でもありませんでした。自分で作ったプログラムに、その手計算を自分のためだけに代行させるのも、同じ自己管理の延長です。線が引かれるのは、それを他人に配った瞬間。だから問題は「どんな機能を持つか」ではなく、「誰に渡すか」のほうにありました。機能を削るのではなく、渡し先をゼロにする。そう考え方を切り替えると、やるべきことがすっと見えてきました。

問題は、その「自分だけ」を、どう技術的に担保するかでした。スマホからも使いたい。となると、どこかからアクセスできる必要がある。でも、アクセスできる入り口を作った瞬間、「自分だけ」が崩れかねない。ここで、危うい近道に誘われました。

「公開して鍵をかければいい」が、成り立たない理由

最初に浮かんだのは、いつもの無料ホスティングに置いて、簡単なパスワードをかける案でした。でも、これは二重に間違っていました。

ひとつは技術的に。静的なホスティングにはサーバー側の認証がありません。だから付けられるのは、画面の前に立ちふさがるだけのパスワード。アプリ本体のコードは、取得しようと思えば外から丸ごと取れてしまう。鍵をかけた“ふり”で、中身は公開配布されたままなんです。もうひとつは、もっと根本的に。前回までで見たとおり、規制が問うのは「提供したか」です。公開の場にファイルを置いた時点で、パスワードの有無に関わらず提供は成立する。飾りの認証は、免責文と同じで、該当性を何も動かさない。便利だからと飛びつかなくてよかった、と思います。

「デモ版」も「ソースだけ公開」も、見送った

ほかの逃げ道も検討しました。「デモ版」と名づけて公開を続ける案。でも、実在する患者が実際のデータで使えるなら、名前が何であれそれは提供です。看板を掛け替えても、中身は変わらない。次に、実行環境は置かず、ソースコードだけを公開して、必要な人が各自でビルドして使う案。これは海外のDIYコミュニティが似た形で長く運用してきた実績もあって、正直かなり迷いました。でも、現時点では規制当局が公認した形ではありません。グレーのまま大勢に向けて踏み出すには、根拠が足りない。推測で賭けるより、ここは正面から相談窓口で確かめる。そう決めて、「公開して何とかする」という方向そのものを、いったん全部たたみました。残ったのは、公開しないという一本道でした。

入り口ごと、自分のネットワークに閉じる

正しい解き方は、画面に鍵をかけることではなく、ネットワークごと閉じることでした。自分の端末だけが入れる閉じたネットワーク(VPN)を作り、その内側だけに道具を置く。すると、外の世界からは入り口そのものが存在しません。公開URLではないので、提供にもあたらない。パスワードという飾りではなく、ネットワークの境界という本物の壁で、「自分だけ」が成り立ちます。

仕組みはこうです。手元の小さなサーバーでアプリを配信し、それを自分のVPN網の中だけに、ちゃんとした暗号化通信(HTTPS)で公開する。アクセスできるのは、同じ網に入った自分のスマホやPCだけ。家の外にいても、自分の端末なら届くけれど、それ以外の誰にも見えない。再起動しても勝手に立ち上がるようにしておけば、あとは普段どおり使うだけです。

自分専用でも、ちゃんとアプリとして使える

うれしいのは、閉じても不便にならないことでした。暗号化通信の上で動くので、スマホのホーム画面に追加すれば、ふつうのアプリのように全画面で起動します。1度開けばオフラインでも動き、データはこれまでどおり端末の中だけに残る。公開版で積み上げた作りが、そのまま自分専用版でも活きる。閉じた環境に置くことと、使い勝手をあきらめることは、別なんですね。便利さは手放さない。でも、誰にも提供はしない。その両立が、ちゃんと形になりました。閉じることは、機能をあきらめることでも、不便を受け入れることでもなかった。ただ、扉の開く向きを、外から内側へ変えただけだったんですね。

公開する道と、自分のために持つ道

今回で、ひとつの道具がふたつに分かれました。記録と集計に徹して広く届ける公開版と、目安の計算まで備えて自分だけで使う自分用版。同じ出発点から、提供するものと、提供しないものへ。線の手前と向こうを、配る場所を分けることで両立させた格好です。

あなたにも、もし「人に配るのは難しいけれど、自分には必要」という道具があるなら——公開して鍵をかけるより、はじめから自分の内側に閉じて持つ、という選び方があります。すべてを世に出す必要はないし、出さないからといって作る自由まで手放すこともない。広く届けるものと、自分のために静かに持つもの。その2つを分けて考えられると、作れるものの幅は、思ったより広がります。

そしてこの分け方は、気持ちの上でも効きました。すべてを公開して誰かの役に立てなければ意味がない、と気負うと、規制の壁の前で手が止まってしまう。でも「広く届けるものは安全な範囲で、踏み込んだものは自分のために」と割り切れたら、どちらも止まらずに進められる。公開は目的ではなく、数ある手段のひとつにすぎない——そう思えたことで、かえって身軽になりました。届けたい気持ちと、自分に必要なもの。両方を、別々の器に分けて持てばいいんですね。

ここまで、小さなアプリひとつをめぐって、引き算の設計から規制との向き合い、そして公開と自作自用の分岐までを書いてきました。道具はこれからも、私の治療が変わるたびに形を変えていきます。その続きも、折にふれて正直に記録していきます。


アプリは carb-icr(無料・通信なし・ブラウザで動くPWA)。プロジェクトの概要は carb-icr のプロジェクトページ に。

本アプリは記録と集計の補助で、表示される値はすべて参考です。診断・治療、インスリン投与量の計算、治療パラメータの決定は行いません。投与量・治療方針は必ず主治医の指示に従ってください。