시간이 어긋난 앱은 몸을 맡길 수 없다
오늘 하루를 한 문장으로 요약하면 이거다.
시간이 틀린 건강 앱은 신뢰를 잃는다.
💡 시간이 틀리면,
기록은 그냥 메모가 된다.
기록은 그냥 메모가 된다.
문제의 시작: 기록했는데, 지금이 아니다
건강 기록을 남겼다.
오한이 와서 타이레놀을 먹었고, 몇 시간 뒤 한 알을 더 먹고 괜찮아졌다.
그날의 몸 상태를 있는 그대로 남겼다.
그런데 기록 화면에 찍힌 시간은 묘했다.
- 내가 방금 남긴 기록인데 어제 시간으로 보였고
- 어떤 화면에서는 영어로 된 날짜가 떴다
December 25, 2025 18:41
순간 이런 생각이 들었다.
이 앱… 나보다 과거에 살고 있네.
단순한 타임존 문제가 아니었다
처음엔 단순한 서버 타임존 문제라고 생각했다.
- UTC ↔ Asia/Seoul
- 9시간 차이
- Rails 설정 한두 줄이면 끝나는 문제
…일 줄 알았다.
하지만 파고들수록 상황은 복잡했다.
- 어떤 화면은 고쳐졌는데, 어떤 화면은 그대로였고
- health_logs, health_records, home, dashboard — 시간을 찍는 방식이 제각각
- 어떤 뷰는
l(time, format: :long) - 어떤 곳은
strftime - 어떤 곳은 그냥
to_s
시간은 여러 군데에서, 서로 다른 언어로 말하고 있었다.
어디서 시간이 나오고 있는지부터 다시 추적
그래서 접근 방식을 바꿨다.
고치기 전에, 흐름을 먼저 이해하자.
- home_controller에서 오늘 기록 요약이 어떻게 만들어지는지
- 실제 사용자가 보고 있는 화면이 어디인지
- 모바일에서 보이는 화면과 웹이 같은 뷰를 쓰는지
- recorded_at이 언제 생성되고, 언제 표시되는지
하나씩 파일을 열어보고,
이 시간은 어디서 왔지?를 계속 물었다.
핵심 전환점: 시간은 한 군데서 말해야 한다
결국 결론은 이거였다.
시간 표현은 단일 진입점이 있어야 한다.
그래서 했다.
TimeHelper를 중심으로 시간 포맷 통합- 한국 시간, 한국 로케일 강제
- 뷰에서 직접
to_s,strftime쓰는 것 제거 - health_records의 index / show 뷰 누락 문제 해결
- AI 채팅 화면에서 시간 파싱도 한국 시간으로 수정
그리고 마지막으로,
배포와 캐시 문제까지 의심하고 정리했다.
결과: 시간이 돌아왔다
그리고 다시 기록을 남겼다.
화면에 이렇게 찍혔다.
2025년 12월 26일 04시 11분 (6분 전)
이 순간 묘하게 안심이 됐다.
- 내가 기록한 시간
- 지금의 나
- 앱이 가리키는 현재
이 셋이 같은 시점에 있었다.
이게 왜 중요하냐면
건강 기록 앱은
예쁘거나, 빠르거나, 똑똑하기 전에
믿을 수 있어야 한다.
- 언제 아팠는지
- 언제 약을 먹었는지
- 얼마나 지나서 괜찮아졌는지
이 모든 건 시간 위에서만 의미를 갖는다.
시간이 틀리면,
기록은 그냥 메모가 된다.
오늘의 교훈
- 버그는 코드에만 있지 않다
- 신뢰는 아주 사소한 디테일에서 무너진다
- 그리고 때로는 지금을 제대로 표시하는 것이 기능 10개보다 중요하다
오늘은 새로운 기능을 만들지 않았다.
대신 앱이 현재에 살도록 만들었다.
💡 기능 10개보다 중요한 것.
지금을 제대로 표시하는 것.
지금을 제대로 표시하는 것.
이걸로 충분한 하루였다.

