낚시일기는 2026년 3월에 시작했습니다. 이 사이트에 있는 앱 중 가장 먼저 손댄 것이고, 여기서 나온 것들이 뒤의 낚시대회플랫폼과 벙개벙개로 이어졌습니다.
기억은 지워진다
낚시는 자주 다녔습니다. 그런데 다녀온 곳에 대한 정보가 전부 기억 속에만 있었습니다. 그날 어디가 잘 나왔는지, 어느 자리에서 입질이 붙었는지, 물이 어땠는지. 다녀올 때는 분명히 알고 있는데 시간이 지나면 잊어버립니다.
그래서 기록이 필요하다고 판단했습니다. 사진첩에 사진은 남지만 사진은 "언제 어디서 찍었다"까지만 말해 줍니다. 그날 왜 잘됐는지는 말해 주지 않습니다.
조과만 적으면 반쪽이다
기록할 것을 정할 때 조과만 남기면 안 된다고 봤습니다. 몇 마리 잡았다는 숫자만 쌓이면 나중에 볼 수 있는 것이 "그날 잘됐다"뿐입니다. 왜 잘됐는지를 다시 보려면 그날의 조건이 함께 있어야 합니다.
그래서 출조지 정보와 함께 그날의 물때, 기상, 수온 같은 정보를 넣었습니다. 사진과 현장 메모도 같은 자리에 붙습니다. 한 번의 출조가 조과 숫자 하나가 아니라 그날의 상태 전체로 남는 구조입니다.
기록이 쌓이면 통계가 된다
이 방향의 진짜 값은 한 건씩 볼 때가 아니라 쌓였을 때 나옵니다. 같은 자리를 여러 번 다녀오고 그때마다 조건이 함께 남으면, 개별 기억으로는 절대 안 보이던 것이 보이기 시작합니다. 이 포인트는 어떤 물때에 좋았는지, 어떤 계절에 재미를 봤는지.
그래서 낚시일기는 지금 단순한 일지가 아니라 통계로 다음 출조지를 고르는 데 도움이 되는 앱으로 발전했습니다. 처음에 "잊어버린다"는 불편에서 출발했는데, 기록을 제대로 남기니 그다음 판단까지 도와주는 물건이 된 셈입니다.
숫자는 내가 만들 수 없다
물때와 기상, 수온은 제가 지어낼 수 있는 값이 아닙니다. 그래서 국가가 공개하는 데이터베이스를 가져다 씁니다. 공공데이터포털의 기상청 단기예보로 그날의 날씨를, 같은 포털의 조위 예보와 표층 수온 관측으로 물때와 수온을 채웁니다. 국립해양조사원 자료도 함께 봅니다.
여기에 카카오맵을 붙였습니다. 포인트를 검색해 좌표로 바꾸고, 좌표를 주소로 되돌리고, 길찾기로 연결합니다. 거리뷰도 씁니다. 처음 가 보는 자리를 글과 좌표로만 설명하면 막상 도착해서 헤매는데, 거리뷰가 있으면 내리는 곳과 진입로를 미리 볼 수 있습니다.
기록을 담는 지도 자체는 Leaflet으로 그립니다.
처음이라 다 낯설었다
이게 제가 만든 첫 앱입니다. 만들고 싶은 것은 분명했는데 방법을 하나도 몰랐습니다. 화면을 어떻게 짜는지, 앱을 어떻게 스토어에 올리는지, 남의 API를 어떻게 부르는지 전부 처음이었습니다.
AI에게 묻고 구글에서 찾아가며 하나씩 배워 만들었습니다. 오래 걸렸지만 아주 재미있었습니다. 모르는 것이 하나씩 되는 것으로 바뀌는 과정이 그 자체로 재미였고, 그 재미가 다음 앱으로 이어졌습니다.
무엇으로 만들었나
React 19와 TypeScript로 만들고 Vite로 빌드합니다. 화면은 Tailwind CSS로 짭니다. 그대로 웹인 채로 두지 않고 Capacitor로 감싸 Android 앱으로 냅니다. 사진 촬영, 파일 저장, 위치, 공유 같은 기기 기능은 Capacitor 플러그인으로 연결했습니다. 로그인과 사용 통계는 Firebase를 씁니다.
웹 기술로 만들어 앱으로 내보내는 이 조합은 이후 낚시대회플랫폼과 벙개벙개에서도 그대로 이어집니다. 혼자 만들 때는 한 벌의 코드로 여러 곳에 내는 편이 현실적이었습니다.
지금
Google Play에 나와 있습니다. 포인트와 조과, 날씨, 사진, 메모를 한곳에 정리하는 개인 기록 앱이고, 계정 없이 혼자 쓰는 것이 기본입니다.
앞으로는 포인트 회고와 시즌별 기록, 공유할 수 있는 조행기 쪽으로 넓힐 수 있다고 보고 있습니다. 기록이 쌓일수록 값이 커지는 종류의 앱이라, 오래 쓰는 사람에게 더 좋아지는 방향으로 가는 것이 맞다고 생각합니다.