Перейти к основному содержимому
  1. Calkpedia/

Почему Calk так устроен

Короткие объяснения принципов, ограничений и компромиссов Calk.

Как Calk считает еду
#

Почему блюдо надо собирать, а не сфотографировать
#

Calk просит собрать блюдо из частей, хотя некоторые приложения предлагают распознавание по фотографии. Разница в том, откуда берутся итоговые числа.

По изображению нельзя точно узнать, сколько в салате масла или есть ли в соусе сахар. Модель может только предположить состав, а возможная ошибка не видна в готовом числе.

В конструкторе вы выбираете основу, белок, соус и другие части, а приложение считает по указанному составу. Первый ввод занимает больше времени, зато готовый вариант можно сохранить и быстро повторять.

Сохранённое блюдо повторяется с тем же составом. Такая последовательность важна для сравнения недель и уточнения расчётов по истории.

Отсюда же и то, что удивляет дальше: почему кнопки задают пропорцию, почему не надо взвешивать каждый грамм, почему норма меняется сама. Всё это следствия одного решения — считать по составу, а не по картинке.

Подробнее

Почему в Calk нет сканера штрихкодов
#

Большие каталоги часто пополняются самими пользователями. Один товар оказывается в нескольких вариантах, данные этикеток устаревают, а домашние блюда описывают чужой рецепт. Поиск находит запись, но не подтверждает её точность.

Calk идёт от состава блюда. Каталог ингредиентов меньше, зато результат можно разобрать и увидеть, откуда взялись калории и нутриенты.

Штрихкод ведёт к записи об упаковке, а её состав может различаться по рынкам и версиям продукта. Кроме того, значительная часть еды — домашние блюда, столовая или кафе — вообще не имеет штрихкода.

У этого решения есть цена: конкретный магазинный товар иногда приходится подбирать по составу. Зато сохранённое блюдо повторяется одинаково и подходит для сравнения периодов.

Если продукта нет — берите ближайший по составу, это честнее пропуска.

Подробнее

Почему не надо взвешивать каждый грамм
#

Оценка порции без весов не бывает абсолютно точной. Но точность самих справочных данных тоже ограничена сортом продукта, рецептом и способом приготовления.

Весы уменьшают ошибку в размере порции, но не устраняют остальные источники расхождения. Для повседневного учёта важна точность, которую вы готовы поддерживать каждый день.

Поэтому детализация различается. Для масла, сахара и орехов небольшая разница заметно влияет на итог, и Calk предлагает больше вариантов количества — например, отдельную кнопку для чайной ложки сахара с горкой. Для листового салата или огурца такая точность обычно влияет меньше.

Кроме размера важен состав. Два продукта с похожей калорийностью могут заметно различаться по белку, жирам, сахару и другим показателям.

Если оценивать порции на глаз пока непривычно, несколько раз сравните их с весами. Затем сохраните обычные блюда в избранное и используйте одинаковые настройки для повторяющихся порций.

Подробнее

Почему в счёт идёт только съедобная часть
#

Все продукты в Calk описаны по съедобной части. Косточки черешни, сливы и персика, кости в курином крыле и стейке на кости, банановая кожура — не еда, и в числах их нет.

Так же устроены кнопки порций. «Одно яйцо» означает яйцо, которое вы съели, а не то, что взвесили вместе со скорлупой.

Поэтому, если решите свериться с весами, взвешивайте то, что действительно отправится в рот. Вес покупки завышает результат — тем заметнее, чем толще кожура и крупнее кость.

Тонкую кожуру, которую едят, снимать не надо: яблоко с кожурой — это яблоко. Правило касается только того, что вы откладываете в сторону: косточку, кость, скорлупу, толстую кожуру.

Почему кнопка количества иногда не меняет результат
#

Иногда после нажатия «много» итоговые значения не меняются. Это происходит, когда в группе выбран только один продукт.

Кнопки количества описывают долю продукта внутри группы, а не вес в граммах. Единственный выбранный продукт уже занимает всю группу, поэтому его относительную долю изменить нельзя.

Добавьте второй вариант — например, овощи к мясу, — и кнопки начнут менять результат. Теперь «много мяса» означает, что его доля в начинке больше доли овощей.

Относительные доли позволяют использовать один шаблон для порций разного размера. Сначала задаётся состав блюда, а общий размер порции учитывается отдельно.

Так работает любая группа, в которой выбран ровно один вариант.

Подробнее

Время и ритм
#

Почему еду удобнее внести заранее
#

Еду можно записать и после приёма: день остаётся открытым до полуночи. Но предварительная запись даёт больше полезной информации в нужный момент.

До еды видно, сколько осталось до нормы и как выбранное блюдо изменит калории и нутриенты за день. При желании можно выбрать другой соус, изменить долю гарнира или добавить овощи.

Запись после всё равно нужна для истории, но уже не помогает принять решение об этом приёме пищи.

До еды состав ещё перед глазами. Позже проще забыть добавку или неточно вспомнить порцию, хотя в момент приёма это не требовало догадок.

Если заранее внести еду неудобно, запишите её вскоре после. Главное — не откладывать до следующего дня, когда прежний день уже будет закрыт.

Почему выводы по неделям, а не по дням
#

Отдельный день легко отличается от обычного: гости, тренировка, дорога, более солёная еда или другое время взвешивания. По такой точке нельзя надёжно судить о привычном рационе и изменении веса.

Дневные значения помогают ориентироваться сегодня. Для выводов о закономерностях Calk использует более длинные периоды и сравнивает недели.

Один необычный день ещё не образует тенденцию. Важнее, повторяется ли изменение в следующих наблюдениях.

Сравнение недели с неделей лучше показывает направление. Оценка расхода при этом строится по последовательности записей еды и веса, а не по одному дневному итогу.

Подробнее

Когда заканчивается день и почему его нельзя исправить позже
#

День закрывается в 00:00 по местному времени. Еда после полуночи попадает в следующую календарную дату. Благодаря общей границе дни и недели можно сравнивать между собой.

После закрытия дня нельзя дописать вчерашний обед сегодняшним числом.

Первая причина — точность: спустя время сложнее вспомнить состав и размер порции.

Вторая — аналитика по времени. От времени записи зависят дневные окна, недельные срезы, кофеин и алкоголь, длина пищевого окна и распределение еды по суткам. Если занести всё позже, приложение получит правдоподобные, но неверные отметки времени.

Пропуск явно показывает отсутствие данных. Приблизительно восстановленный день выглядит точным и может повлиять на выводы, хотя его время и состав неизвестны.

Старайтесь вносить еду до приёма или вскоре после него. Если день пропущен, оставьте его пустым и продолжайте с текущего.

Подробнее

Чем один пропущенный день отличается от долгой паузы
#

Один пропущенный день или несколько коротких пропусков не обнуляют историю. Пробелы не мешают сглаживанию, а недельные показатели опираются на доступные дни.

После долгой паузы условия могли измениться: режим, активность и вес уже не обязательно те же. Продолжать старую линию как непрерывную было бы ненадёжно.

Поэтому после долгого перерыва начинается новый участок наблюдений. Диапазон неопределённости становится шире, а текущий тренд веса строится заново.

Начинать учёт с нуля не нужно: прежняя история сохраняется. Для текущих выводов приложение будет отдавать больший вес новым данным.

Экраны и что на них видно
#

Почему шаблоны не по алфавиту
#

Список шаблонов не отсортирован по алфавиту: сначала идут блюда, которые вносят чаще.

Алфавитный порядок зависит от локали: одно и то же блюдо оказывается в разных частях списка только из-за перевода. Это делает расположение менее предсказуемым между языками.

Порядок по частоте выносит наверх шаблоны, которые с большей вероятностью понадобятся в первый день, пока приложение ещё ничего не знает о ваших привычках.

Позже важнее становятся ваши вкладки и избранное. Общий порядок остаётся стартовой точкой, а часто используемые шаблоны можно разместить удобнее самостоятельно.

Почему главный экран такой короткий
#

Во многих дневниках главный экран занят лентой приёмов пищи и фотографиями. В Calk он устроен короче, чтобы частые действия оставались под рукой.

Здесь можно внести еду и быстро проверить текущие показатели. Это делают несколько раз в день, часто на ходу, поэтому подробные графики и разборы не должны мешать главному — быстро записать еду.

Список приёмов пищи остаётся на главной, а подробный разбор дня открывается по заголовку «Сегодняшние приёмы пищи». Графики, неделя и отчёт находятся на отдельных экранах.

Фотографии блюд не используются для расчёта: Calk считает состав, который вы выбрали в конструкторе. Поэтому изображения не занимают место в дневнике.

Чем отличаются «Напитки», «Вода» и норма воды
#

Вода попадает в дневник из напитков и еды, поэтому на экране показаны три связанных значения.

«Напитки». Вода, чай, кофе, сок и другие выбранные напитки. Это объём того, что внесено как питьё.

Вода из еды. Фрукты, овощи, суп и приготовленные с водой блюда тоже вносят вклад в общее количество. В строку «Напитки» эта вода не входит.

Отсюда три числа. Легко перепутать, какое из них с чем сравнивать:

  • норма — ориентир для общего количества воды;
  • «Напитки» — сколько выпито;
  • «Вода» — общее потребление, еда плюс напитки.

С нормой сравнивают общую воду, а не только напитки.

Отдельной строки «чистая вода» нет: вода из чая и кофе тоже входит в общий итог. Кофеин, сахар и калории при этом учитываются как отдельные показатели.

Одна оговорка: видно только то, что попало в дневник. Незаписанная вода не учитывается — приложение показывает, что вы записали, а не оценивает вашу гидратацию.

Подробнее

Почему разнообразие считается клетками, а не числом продуктов
#

Самый частый вопрос к разнообразию: я ел десять разных вещей, почему счётчик почти не двинулся.

Счётчик учитывает не названия, а клетки — группы продуктов, близких по составу и пищевой роли. Говядина в разных блюдах может относиться к одной клетке, поэтому разные рецепты не обязательно увеличивают разнообразие.

Новый непохожий продукт, напротив, может заполнить клетку, которой раньше не было в рационе.

Калории и нутриенты показывают количество. Карта разнообразия отвечает на другой вопрос: насколько разные группы продуктов встречались за неделю.

Практический вывод простой: чтобы двинуть счётчик, добавьте непохожее, а не ещё одно похожее.

Подробнее

Почему отчёту нужен месяц данных
#

Отчёт становится доступен после того, как в последних 30 днях накопится достаточно качественных записей.

Отчёт показывает устойчивые закономерности: оценку расхода, направление веса, повторяющиеся продукты и разнообразие рациона. Несколько отдельных дней для таких выводов недостаточно.

Готовность считается по данным, а не по возрасту аккаунта: в текущем 30-дневном окне нужно не менее 20 качественных дней еды и 10 дней с весом. Поэтому доступность отчёта не наступает просто по календарю.

Когда оба порога выполнены, отчёт можно открыть кнопкой. При каждом открытии он строится заново по последним 30 дням.

Порог защищает выводы от слишком малого набора наблюдений. Он не гарантирует идеальную точность, но не позволяет представить несколько случайных дней как устойчивый месяц.

Подробнее

Ваши данные
#

Почему Calk работает без сети и хранит дневник на устройстве
#

Весь каталог еды хранится на устройстве. Приложение может открыть шаблон и посчитать блюдо в самолёте, в магазине с плохой связью или в роуминге.

Записи делают в самых разных местах, и доступность сети не должна решать, можно ли внести приём пищи. Поэтому основной сценарий не зависит от запроса к серверу.

Дневник, вес, цели и отчёты остаются на устройстве и не загружаются на сервер. Отдельно могут передаваться псевдонимная статистика использования, диагностика сбоев и данные подписки — в соответствии с выбранными настройками и политикой конфиденциальности. Аккаунт нужен для подписки, а не для хранения еды.

По этой же причине поиск работает по локальному каталогу, а не по внешней базе, требующей сети для каждого запроса.

Подробнее

Норма и её расчёт
#

Почему норма — диапазон, а не одно число
#

Норма калорий показана диапазоном, а не единственным числом.

Суточный расход меняется, а его расчёт всегда содержит неопределённость. Чем меньше данных, тем шире она может быть. Единственная цифра скрыла бы этот разброс.

Диапазон также избавляет от требования попасть ровно в одну цифру. Небольшое отклонение от середины может оставаться внутри целевого диапазона.

В приложении различаются цели и пределы. Для одних показателей важен целевой диапазон, а для других — верхняя граница, которую желательно не превышать.

Почему норма меняется сама
#

Первая норма считается по формуле: пол, возраст, рост, вес, привычная активность. Формула описывает среднего человека с такими параметрами — полезная отправная точка, но не портрет конкретного тела.

Дальше Calk смотрит на два ваших ряда сразу: сколько энергии записано и как за тот же период менялся вес. По их соотношению можно оценить расход: если вес держится, съеденное примерно равно потраченному; если он идёт вниз при том же питании, расход выше, чем считала формула.

Одного дня для этого мало. Вес колеблется от воды, соли и времени взвешивания, а один день еды не описывает неделю. Поэтому Calk смотрит на сглаженный тренд и на набор полных дней, а не на вчерашние цифры, и меняет число тем увереннее, чем больше данных накопилось.

Отсюда и поведение, которое удивляет: норма может измениться в день, когда вы ничего не трогали в настройках. Просто пришли новые данные — ещё несколько записанных дней и ещё одно взвешивание.

После долгого перерыва оценка снова становится осторожной: старый расход относится к прежнему телу и прежнему режиму, и Calk предпочитает набрать свежие данные, а не притворяться, что ничего не менялось.

Занижать записи бессмысленно, но не по той причине, о которой обычно думают. День, где записано меньше половины теоретического расхода, в расчёт вообще не берётся — он не занижает оценку, он просто не считается, и доказательств становится меньше. А занижение, которое остаётся выше этого порога, действительно тянет оценку вниз вместе с собой. Вес при этом ведёт себя как вёл: числа станут меньше, реальность — нет.

Подробнее

Что значит жёлтое число
#

Число становится жёлтым, когда показанный процент перевалил за 100 — то есть по тому же округлённому числу, которое вы видите: 100,0 % ещё зелёные, 100,1 % уже жёлтые. Всё, что говорит цвет, — «здесь вышло за рамку»; хорошо это или плохо, приложение не решает, потому что не знает, каким был ваш день.

Цель можно превышать. Это ориентир, а не запрет и не экзамен: в один день больше, в другой меньше, и на неделе картина выравнивается. Смысл цвета в том, чтобы превышение было видно сразу, а не пряталось среди цифр.

Что с ним делать — решаете вы. Иногда ничего: праздник, долгая прогулка, поздний ужин. Иногда это повод открыть состав и посмотреть, какой продукт дал основную часть.

Показатели, у которых цель — это минимум (например, клетчатка), не желтеют никогда: превысить минимум не значит выйти за рамку.

В блоке ограничений тёплый цвет — просто цвет этой группы: там показатели, которые лучше держать ниже, и полоса окрашена так с самого начала, а не по факту превышения.

Почему в первые недели часть данных ещё неточна
#

В первые дни часть показателей ещё не показывается, а рядом с другими виден широкий диапазон. Это нормальный этап настройки расчёта под ваши данные.

Стартовая оценка суточного расхода доступна сразу. Она строится по формуле, а при импорте из Health Connect или Apple Health может учитывать шаги и расход энергии. Пока записей мало, неопределённость велика, поэтому диапазон получается широким.

Затем приложение сопоставляет записанную еду с изменением веса. Когда данных становится достаточно, персональная оценка начинает опираться на вашу историю, а не только на усреднённую формулу. Переход зависит от качества данных, а не от календаря.

Формула остаётся отправной точкой. Дневник постепенно добавляет к ней расчёт по вашей собственной истории.

В этот период достаточно регулярно записывать еду и вес. Не все показатели появятся одновременно: каждому нужен свой объём истории.

Подробнее

Почему важно взвешиваться регулярно
#

Вес меняется изо дня в день даже без заметного изменения жировой массы. На показания влияют вода, соль и углеводы в рационе, содержимое кишечника, менструальный цикл и время взвешивания. Поэтому два соседних измерения могут различаться сами по себе.

По одной точке нельзя понять направление. Calk сглаживает последовательность измерений, а при редких взвешиваниях диапазон неопределённости остаётся шире.

Взвешивайтесь несколько раз в неделю в похожих условиях и не делайте вывод по одному числу. Приложение тоже не может определить по отдельному скачку, что именно изменилось — вода, содержимое кишечника или ткань.

Один пропущенный день не ломает расчёт. После долгой паузы старая линия перестаёт надёжно описывать текущее состояние, поэтому оценке снова требуется время на уточнение.

Как Calk разговаривает
#

Почему советов мало и они редко повторяются
#

Calk не пытается выдавать рекомендацию по итогам каждого дня.

Постоянные сообщения быстро становятся фоном. Редкая подсказка лучше заметна и не перекрывает более важное наблюдение.

Подсказка должна опираться на повторяющуюся закономерность, предлагать конкретное действие и не повторяться без новых данных. Единичный день редко даёт достаточно оснований для совета.

Если советов нет, в доступных данных сейчас нет новой устойчивой закономерности, на которую стоит обратить внимание.

Почему Calk отмечает положительные изменения
#

Если дневник сообщает только о превышениях и недостатках, его сообщения легко начинают восприниматься как постоянные замечания.

Calk также отмечает устойчивые положительные изменения. Формулировка при этом описывает факт: например, «овощи были в четырёх из последних семи дней». Оценок вроде «молодец» приложение не даёт.

Факт можно проверить по дневнику и интерпретировать самостоятельно. Оценка приписывала бы приложению право судить вас, поэтому Calk её избегает.

Положительные наблюдения не появляются по расписанию. Они показываются, когда в данных есть новое повторяющееся основание для такого сообщения.

Почему приложение почти не шлёт уведомлений
#

Calk не присылает напоминания «пора поесть», сообщения о сериях дней и регулярные подбадривания.

Уведомления оставлены для двух событий: готов отчёт или заметно изменился тренд веса. Второе приходит только при включённом наблюдении за трендом в настройках.

Calk не зазывает вас обратно сообщениями «вы давно не заходили» и не оценивает поведение поздравлениями. Для работы дневника такие сообщения не нужны.

Поэтому тишина приложения — нормальное состояние. Оба вида уведомлений также зависят от системного разрешения на их отправку.

Чего Calk не делает
#

Почему нет готового меню и плана питания
#

В Calk нет готового недельного меню.

Чтобы составить подходящий план, нужно знать вкусы, ограничения, навыки готовки, продукты дома и распорядок конкретной недели. Приложение всего этого не знает, поэтому готовый план легко окажется неудобным.

Calk анализирует уже знакомую вам еду и показывает закономерности. На основании этих данных проще выбрать изменение, которое подходит вашему распорядку.

Все такие изменения работают с едой, которую вы и так едите:

  • добавить — овощи в знакомое блюдо, бобовые в суп, белок в завтрак;
  • заменить — соус, способ приготовления или пропорцию частей;
  • оставить — блюда, которые уже работают, менять не нужно.

За этим стоит простая идея: меньше калорий на грамм, больше белка и клетчатки. Такое блюдо дольше насыщает при той же калорийности, а повторять его проще, чем выдерживать временное правило. Важно менять состав блюда, а не добавлять поверх прежнего: добавка приносит и калории.

Приложение может отметить повторяющуюся особенность и предложить конкретный шаг. Это подсказка, а не назначение готового рациона.

Подробнее

Почему нет ленты друзей и соревнований
#

В Calk нет ленты друзей, рейтингов и соревнований.

Пищевые цели и расход зависят от многих личных обстоятельств. Даже у людей одного роста и веса значения могут различаться, поэтому чужой результат редко годится как ориентир.

Публичность также может менять сами записи: легче внести то, что хочется показать, и пропустить остальное. Неполный дневник хуже подходит для анализа.

Вместо рейтинга Calk сравнивает ваши периоды: неделю с неделей, месяц с месяцем. Контекст у таких данных общий.

Поделиться отдельной карточкой можно — это ваш выбор в конкретный момент, а не постоянная витрина.

Почему в Calk мало настроек
#

В Calk нельзя поменять начало суток, перестроить главный экран или выбрать другую формулу расчёта. Это намеренное ограничение: такие настройки меняли бы смысл данных, а результат было бы трудно сравнивать со своей же историей.

Параметров при этом немало. Можно выбрать язык и тему, систему единиц, подписи порций, способ показа нутриентов, размер кнопок на экране еды и сворачивание пустых групп. Отдельно управляются вибрация, интеграция с Health Connect и Apple Health, наблюдение за трендом веса и продуктовая аналитика.

Граница простая: настройка может изменить как приложение показывает данные и с какими службами работает. Она не должна незаметно менять что именно считается.

Поэтому настроек меньше, чем могло бы быть, но каждая из оставшихся отвечает за понятное и видимое изменение.

Почему Calk не поручает расчёты ИИ
#

Для расчёта еды Calk использует обычные алгоритмы. Это позволяет получить предсказуемый результат и показать, из чего он сложился.

Повторяемость. Один и тот же состав и размер порции должны давать одно и то же число. Ответ генеративной модели может меняться даже при одинаковом запросе, поэтому на нём нельзя надёжно сравнивать недели.

Проверяемость. У результата есть источники: ингредиенты, их доли и пищевой состав. Если число удивило, блюдо можно разобрать и найти причину. У ответа-догадки такой проверки нет.

Работа без сети. Расчёт выполняется на устройстве и не зависит от доступности внешнего сервиса. Локальные модели тоже существуют, но сами по себе не решают вопрос повторяемости и происхождения числа.

ИИ может быть полезен там, где нужен черновик или несколько вариантов ответа. В дневнике питания важнее другое: одинаковые данные должны обрабатываться одинаково.

Почему Calk не даёт медицинских рекомендаций
#

Calk умеет одно: собрать блюдо из частей и честно сказать, что в нём. Это расчёт по составу, а не заключение о здоровье.

Нормы здесь — ориентир, а не назначение. Они выводятся из общих формул по росту, весу, возрасту и активности и описывают условного здорового взрослого. Ни анализов, ни диагноза, ни лекарств, которые вы принимаете, приложение не видит.

Поэтому Calk старается не говорить лишнего. Он не пишет «у вас дефицит железа» — он пишет, что в записанной еде мало источников железа. Разница существенная: первое — вывод о человеке, и делать его может только тот, у кого есть анализы и осмотр. Второе — факт о списке продуктов, и вот его приложение действительно знает.

Если есть заболевание, беременность, назначенная диета или расстройство пищевого поведения — цифры задаёт специалист, а не приложение. Здесь нет ни знаний о вашем случае, ни права их применять.

Самое полезное, что Calk может сделать для разговора с врачом, — принести на него данные. Тридцать дней записанной еды говорят точнее, чем воспоминание о том, как вы обычно питаетесь.