직접 만든 자동 식단 플래너 v7.1 — 비효율을 설계로 눌러버린 기록 내가 쓸려고 만든 자동 식단 플래너

현재는 취업을 준비하는 평범한 취준생이지만, 기계 및 기구 설계를 업으로 준비하고 있다. 이 블로그에 올라오는 글들이 패션이든, 독립 일기든, 루틴이든 — 공통적으로 흐르는 맥락이 하나 있다. 비효율을 그냥 두지 못한다는 것. 일상의 사소한 낭비를 발견하면 어떻게든 손을 댄다. 그게 습관이 됐다.

먹는 것도 예외가 아니었다.

문제 정의: 왜 식단은 매번 무너지는가

운동을 하고 몸을 관리하다 보면 필연적으로 식단을 마주하게 된다.
문제는 그 과정이 생각보다 비효율 덩어리라는 거다.
오늘 뭘 먹을지 고민하고, 단백질이 얼마나 들어있는지 찾아보고, 칼로리를 더하고 빼는 과정을 매끼 반복한다. 시간이 아깝다는 생각보다, 이 구조 자체가 잘못 설계됐다는 생각이 먼저 들었다.

공학적으로 설계된 기계는 오차 범위 안에서 작동한다. 변수가 입력되면 그에 맞는 출력값이 나온다.
근데 내 하루 식단은 왜 매번 기분에 따라, 귀찮음에 따라 결과가 달라지는가.
입력값 자체가 없으니 출력값도 없는 거다. 관리가 아니라 그냥 즉흥이었던 셈이다.

‘누가 좀 만들어주지 않나’라고 불평할 시간에 직접 만드는 게 빠르다고 판단했다. 그게 이 플래너의 시작이다.

제작 과정: 클로드 AI를 도구로 쓴 이유

구현은 Claude AI를 활용했다. 설계 방향은 내가 잡고, 그 방향을 코드로 옮기는 작업에 AI를 끌어들였다. 프로그래밍을 전공하지 않아도 내가 원하는 로직을 언어로 정의할 수 있다면, 구현은 도구의 영역이다.
설계자가 직접 선반을 깎지 않아도 되는 것과 같은 맥락이다.

v7.1이라는 버전 넘버가 붙은 이유가 있다. 처음 만든 버전은 조잡했다.
매크로 계산 방식이 단순했고, 활동량 변수가 반영되지 않았고, 사용자 입력값에 따른 경고 시스템도 없었다.
쓰다 보면 문제가 보였고, 문제가 보이면 고쳤다. 그 과정을 반복한 결과가 지금의 v7.1이다. 아직 완성이라고 보지 않는다. 다만 현재 단계에서 내가 실제로 쓸 수 있는 수준은 됐다고 판단한다.

플래너의 구조: 입력값이 출력값을 결정한다

url 바이러스 검사툴 검증자료 0건이 뜬다

※ 참고: “안전하지 않은 파일”이라는 경고가 뜰 수 있습니다. 이는 개인 제작 HTML 파일이라 브라우저가 자동으로 띄우는 것이니, [계속] 또는 **[유지]**를 눌러 안심하고 받으셔도 됩니다. (위의 검증 결과 참고)

⚠️ 사용 전 반드시 읽어라

이 플래너는 신체 데이터를 기반으로 매크로를 산출하는 참고 도구다. 의학적 진단 도구가 아니며, 영양사나 의사의 전문 소견을 대체할 수 없다.

입력값이 정확해도 결과값은 어디까지나 통계 기반의 추정치다. 같은 수치라도 개인의 대사 상태, 건강 이력, 복용 약물에 따라 실제 권장량과 다를 수 있다. 특히 기저질환이 있거나 특수한 식이 관리가 필요한 상황이라면 이 플래너의 수치를 따르기 전에 반드시 전문가와 먼저 상담해라.

숫자를 맹신하지 마라. 이 도구는 방향을 잡는 데 쓰는 거지, 그 숫자가 곧 정답이 아니다.

이 플래너는 사용자의 신체 데이터를 기반으로 하루 권장 매크로(탄수화물·단백질·지방)를 산출하고, 실제 섭취 기록과 비교해 피드백을 주는 구조다. 단순히 메뉴를 나열하는 도구가 아니다. 입력값의 정밀도가 출력값의 신뢰도를 결정한다.

입력해야 하는 데이터는 크게 세 가지다.

신체 정보. 키, 체중, 나이, 성별이 기본값이다. 여기에 체지방률이나 BMI 수치를 추가로 입력하면 정밀도가 올라간다. 체지방률을 알고 있다면 단순 체중 기반 계산보다 제지방량(Lean Body Mass) 기준으로 단백질 목표치를 산출할 수 있어서 결과값이 더 실용적이다. 체지방률을 모른다면 BMI만으로도 작동하지만, 수치의 신뢰 범위가 줄어든다는 점은 감안해야 한다.

활동량. 좌식 생활, 가벼운 활동, 중간 강도 운동, 고강도 운동, 육체 노동 등 단계로 나뉜다. 이 변수가 하루 총 소비 칼로리(TDEE)를 결정하는 핵심 인자다. 활동량을 낮게 잡으면 칼로리 목표치가 낮게 설정되고, 실제 활동량이 높은 사람은 만성적인 칼로리 부족 상태로 운동하게 된다. 반대도 마찬가지다. 정확하게 입력할수록 플래너의 피드백이 현실에 가까워진다.

식단 목적. 다이어트, 린매스업, 벌크업, 유지 중 하나를 선택한다. 목적에 따라 탄단지 비율이 다르게 설정된다. 다이어트 모드는 칼로리 적자를 기반으로 탄수화물을 줄이고 단백질 비율을 높이는 방향으로 매크로를 잡는다. 벌크업 모드는 반대로 탄수화물 비중을 올려 총 칼로리를 높인다. 린매스는 그 중간 어딘가다. 어떤 목적을 선택하느냐에 따라 같은 신체 데이터에서 전혀 다른 권장값이 나온다.

사용 방법: 입력부터 피드백까지

다운로드 후 HTML 파일을 실행하거나, 링크로 접속해서 사용한다. 브라우저에서 ‘안전하지 않은 파일’ 경고가 뜰 수 있는데, 개인 제작 HTML 파일에 브라우저가 자동으로 띄우는 경고다. [유지] 또는 [계속]을 눌러 진행하면 된다.

신체 정보와 활동량, 목적을 입력하면 하루 권장 매크로가 산출된다. 이후 먹은 음식을 항목에서 클릭하면 된다. 클릭 수에 따라 탄단지 수치가 실시간으로 바뀌고, 현재까지 섭취한 매크로와 남은 목표치를 한눈에 확인할 수 있다. 지방을 기준치보다 적게 먹고 있거나, 단백질이 부족한 상태라면 경고 피드백이 표시된다.

주방 저울이 있다면 활용도가 더 올라간다. 중량 기반으로 음식을 입력하면 클릭 단위보다 훨씬 정밀한 수치가 나온다. 닭가슴살 100g과 150g의 단백질 차이는 작지 않다. 정밀도를 높이고 싶다면 저울은 선택이 아니라 필수에 가깝다.

현재 한계와 앞으로의 방향

초기 단계인 만큼 한계가 명확하다. 실시간 데이터 연동이 완벽하지 않아 일부 수치가 현실과 차이가 날 수 있다. 음식 데이터베이스도 아직 완전하지 않다. 이 플래너의 수치를 100% 신뢰하기보다는 참고 지표로 활용하되, 본인의 상태에 맞게 유연하게 조정하는 방식이 맞다.

보완은 계속한다. 쓰면서 불편한 부분이 생기면 버전을 올린다. v7.1이 마지막이 아니라는 뜻이다.

누굴 보여주려고 만든 게 아니다. 내가 필요해서 만들었고, 내가 실제로 쓰고 있다. 투박한 부분이 있어도 그만큼 실용적인 구조를 담으려 했다는 건 보장한다.

앞으로 문바다(munbada)라는 공간에는 이런 기록들이 하나씩 쌓일 예정이다. 직접 부딪히고 깎아서 나온 결과물들. 완성된 것보다 진행 중인 것들이 더 많겠지만, 그게 이 블로그의 방향이다.

이상. THANK YOU.

Similar Posts

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다