健康とフィットネスの記録はたいてい二つのうちどちらかで失敗します。誰も見ない美しい個人用のグラフになって、行きたくない日に引き戻す力が何もないか。あるいは見知らぬ人のソーシャルネットワークになって、励ましを送る側があなたを知らないので言葉が一般論になるか。Korat の健康モジュールは、あなたがすでにチャットにもグループにもフィードにも使っているアプリの中にあります。土曜の朝のライドの読み手は、月曜にそれについて尋ねてくる人たちと同じ集合です。設計の前提はそれだけで、以下の判断はすべてそこから出ています。
12の活動、そのうち GPS が要るのは4つだけ
記録できる活動は12種類。ランニング、ウォーキング、サイクリング、ハイキング、トレッドミル、水泳、ジム、ヨガ、縄跳び、サッカー、バドミントン、ボクシング。このうち4つ——ランニング、ウォーキング、サイクリング、ハイキング——が GPS で追跡されます。地図の上を移動する種目で、ルートが本当に記録の一部だからです。残りの8つはそうではなく、アプリもそのふりをしません。ヨガのセッションには所要時間と負荷があり、線はありません。GPS チップに1時間のバドミントンを描写させても、出てくるのは落書きであってデータではありません。
追跡される4種目では、走行中に距離・時間・ペースが更新され、一時停止・再開・終了ができます。ルートは走り終えてからの集計を待つのではなく、進むそばから OpenStreetMap の地図に描かれます。歩数は GPS の移動から推測するのではなく端末の歩数センサーから読むので、屋内でポケットに入れたままでも数え続けますし、建物のあいだで測位が切れても崩れません。
目標は、自分で思いついた数字ではなくレベルから決まります
健康モジュールを最初に開くとき、アプリは空欄の目標を差し出すのではなく、2つの質問をします。5つの選択肢から目標を、4つの選択肢からレベルを。この2×2の答えから、活動ごとの推奨目標が出ます。あとから上書きできます。この回り道があるのは、初日に良い週間距離の目標を選べる人がほとんどいないからです。人は理想的な数字を選び、2週目に落として、連続日数のカウンターが失敗の記録に変わります。何のために鍛えているのか、いまだいたいどのあたりから始めるのかを尋ねれば、届く最初の目標が出ます。届く最初の目標だけが、現実の一週間との接触を生き延びます。
オンボーディングのあと、目標は活動ごとに存在します。ランニングの目標とサイクリングの目標は別々の数字で、混ぜた一つのフィットネススコアではありません。進捗は歩数・キロカロリー・キロメートルの活動リングと、週の棒グラフで表示されるので、合計だけでなく実際に動いた曜日が見えます。連続日数は連続した日を数えます。連続日数はあらゆるフィットネスアプリでもっとも人を動かし、もっとも人を罰する数字なので、見出しではなくリングの隣に置いています。
センサーに見えないものは、日々の記録で
大事なことがすべて活動であるとは限りません。アプリは水分、体重、睡眠などを手入力の日次記録として保持します。どれだけ飲んだか、どれだけよく眠れたかを教えてくれる端末のセンサーは存在しないからです。これらは同じ健康プロフィールの中でトレーニング履歴の隣に並ぶので、距離が落ちた週に睡眠の記録も落ちていれば、切れた二つのグラフではなく一つの話として読めます。健康プロフィール自体は変わらない事実——毎回入力し直すべきでないもの——を持ちます。
クドスと、このフィードがメインのフィードと分かれている理由
終えた活動はコミュニティの活動フィードに出せて、他の人がクドスを送れます。クドスは意図的に小さな身ぶりです。1タップ、コメント欄は要らず、「誰かが見た」以上の意味を持つ数字もありません。登山口での会釈のフィットネス版です。メインの Korat フィードに流し込まずに別のフィードにしているのは、トレーニングの投稿がソーシャルの投稿と違うリズムを持つからです。週5で練習する人がいれば共有のタイムラインは埋まりますし、メインのフィードは独自のアルゴリズムで並んでいるので、その量とぶつかります。
特定の活動をもっと広い相手に見せたいときのために、共有の作成画面があります。選んだ背景の上にキャプションを載せ、Korat のフィードへ、ストーリーへ、チャットで友だちへ直接、あるいは端末上の任意のアプリへ送ります。最後の経路が重要です。目的は達成を Korat の中に閉じ込めることではなく、実際に記録されたセッションから見栄えのするカードを作って、好きな場所に置けるようにすることだからです。
その数字が実際に何なのか
距離とペースはセッション中にサンプリングされた GPS の位置から出るので、GPS の普通のふるまいをそのまま受け継ぎます。精度は空の見え方で変わり、屋根のある市場の下で記録したルートは、同じ道でも開けた場所とは違って見えます。歩数は端末の専用センサーから来るので、歩数と GPS の距離は別々の出どころを持ちます。キロカロリーは活動から導いた推定であって測定値ではありません。エネルギー消費を測れる携帯電話は存在しないので、アプリはその数字を事実としてではなく、リングの3つの入力のうちの一つとして示します。
健康は Android アプリ限定です。 ウェブ版にこのモジュールはなく、これは未完成ではなく決定です。1回の記録には画面を消したままの継続的な位置追跡が必要で、ブラウザには本当にできません。途中で経路を失う半分だけの版は、正直な「アプリで開いてください」より悪い——正直なほうは、走った分を無駄にしないからです。
心拍のデータはなく、ウェアラブル連携もありません。 Korat が読むのは端末の GPS と歩数センサーだけで、それ以外はありません。胸ベルトや時計で練習しているなら、そのデータはアプリに入りませんし、アプリがあなたのゾーンを知っているふりもしません。
セッションは、端末が手元にあって位置情報の権限が許可されていることにも依存します。権限の事前説明画面は、システムのダイアログが出る前に各 Android 権限がなぜ必要かを説明します。位置情報を断った場合は、モジュールが使えなくなるのではなく、GPS を使う4種目が消えるだけです。
アプリの残りとの関係
健康は、一つのアカウントを持つ一つのアプリの中の一モジュールです。クドスをくれる友だちは、チャットにいるのと同じ友だちです。ランニングの集まりは、投稿も役割も参加リクエストもある普通の Korat のグループにできますし、共有した活動はそのグループの会話に普通の投稿としてそのまま落とせます。別のフィットネス用アカウントも、二つめの友だちリストも、ルートのデータを預かる第三者のサービスもありません。他のすべてと同じ Supabase のバックエンドの上にあります。
- 活動の種類
- 12 — ランニング、ウォーキング、サイクリング、ハイキング、トレッドミル、水泳、ジム、ヨガ、縄跳び、サッカー、バドミントン、ボクシング
- GPS で追跡
- ランニング、ウォーキング、サイクリング、ハイキング——距離・時間・ペースとルート地図をライブ表示
- 地図
- OpenStreetMap、セッション中に描画
- 歩数
- 端末の歩数センサーから読み取り
- リング
- 歩数 · キロカロリー · キロメートル
- 初回設定
- 5つの目標から1つ × 4つのレベルから1つ
- 日々の記録
- 水分、体重、睡眠ほか
- ソーシャル
- コミュニティ活動フィード、クドス、共有の作成画面
誰かと一緒に走って順位表を見たいならスポーツクラブです。ここの個人の記録が、そのまま仲間うちの出来事になります。
一回の練習を公開してもよいと思ったなら、それはフィードのごく普通の投稿になり、コメントも通知もまったく同じように動きます。