기관·모델마다 형식과 좌표·시간 체계가 제각각인 해양·기상 수치예측자료를 한 기준으로 맞춰 주는 DanMap을 혼자 만들며 남기는 개발 일지입니다. 이번 주는 인터넷이 없는 기관 내부망에서도 그대로 도는 "설치판"을 집중해서 다듬었습니다.
👋 오늘의 개발 근황
지난 한 주 동안 작업 목록에 적어 둔 일감 열세 가지를 하나씩 끝냈습니다. 대부분 "폐쇄망 기관에 폴더째 복사해서 쓰는 버전"을 실제로 쓸 수 있게 만드는 일이었습니다. 인터넷이 없는 환경이라 바탕지도도, 자료를 읽는 부품도 전부 안에 넣어야 해서, 그동안 바깥 서비스에 기대 온 자리를 하나씩 메꾸는 한 주였습니다.
🎯 이 프로젝트는 무엇인가
DanMap은 NetCDF, GeoTIFF처럼 서로 형식이 다른 수치예측자료를 같은 기준으로 정합해, 나란히 비교할 수 있는 표준 데이터셋으로 만들어 주는 서비스입니다. 분석한 결과가 아니라 "분석이 가능한 상태의 자료"를 돌려주는 것이 목표입니다. 공개된 danmap.co.kr은 단감이 만드는 여러 서비스를 모아 둔 포털이고, 이번 주에 만든 설치판은 기관 내부망에서만 도는 별도 버전이라 아직 공개 웹에는 올려 두지 않았습니다.
🛠️ 이번 주 뭐가 바뀌었나
이번 주에 메꾼 자리는 전부 "인터넷 없이도 되게" 하는 일로 이어졌습니다.
- 자료를 읽는 부품을 넓혔습니다. 위성 HDF5(GOCI-II), 기상청 파랑 격자(ReWW3), GeoTIFF를 새로 열 수 있게 했습니다. 특히 색으로만 저장된 위성 그림은 수치로 착각하지 않도록 "원본 색상 — 값 아님"이라고 분명히 적어 지도에 그대로 얹었습니다.
- 오프라인 바탕지도를 갖췄습니다. 10m 해안선과 한글 지명, 국경선까지 자료 파일로 묶어 넣어, 바깥 지도 서비스 없이도 바다와 땅의 윤곽이 제대로 그려지게 했습니다.
- 한글 보고서에 그림이 들어가게 했습니다. HWPX 보고서가 한글에서 실제로 열리는지 확인하고, PDF·워드와 같은 자리에 그림이 자리 잡도록 고쳤습니다.
- 오류 문구를 전수 점검했습니다. 일부러 잘못된 자료 일흔일곱 가지를 넣어, 영어로 뜨거나 조용히 틀리던 응답 쉰한 건을 "무엇이 잘못됐고 어디서 고치면 되는지" 한국어 한 문장으로 바꿨습니다.
📸 화면으로 보는 변화
아래는 오늘 공개 화면(danmap.co.kr)을 그대로 캡처한 모습입니다. 이번 주 작업한 설치판은 기관 안에서만 도는 버전이라 이 포털 화면에는 드러나지 않지만, 단감이 지금 어떤 서비스들을 만들고 있는지는 여기서 한눈에 볼 수 있습니다.
💭 만들면서 느낀 점
가장 많이 배운 건 "인터넷이 없다"는 전제 하나가 생각보다 많은 걸 바꾼다는 점이었습니다. 평소엔 바깥 지도나 글꼴을 불러 쓰면 그만이던 것들을 전부 파일로 안에 넣고, 용량과 설치 과정, 업그레이드 때 옛 부품이 남아 생기는 사고까지 챙겨야 했습니다. 또 하나, 자료가 "열리는 것"과 "값으로 믿어도 되는 것"은 다르다는 걸 색상 위성 그림에서 다시 느꼈습니다. 열리게는 하되, 값이 아니라는 사실을 화면이 분명히 말해 주도록 하는 쪽이 더 중요했습니다.
🔗 직접 써보기
DanMap 바로가기에서 단감이 만드는 서비스들을 둘러볼 수 있습니다. 폐쇄망 기관용 설치판에 대한 문의나 바라는 기능이 있으시면, 의견 하나가 다음 한 주의 방향이 됩니다.
'단감의 개발일지' 카테고리의 다른 글
| 해양 예측 데이터 시각화 서비스 DanMap, 웹 화면을 처음부터 다시 만든 2주 — 비회원 체험부터 AI 질의까지 (0) | 2026.10.23 |
|---|---|
| 낚시 앱 DanFish v3.3 — 조류·수온·금지구역 지도부터 어종도감 147종까지 (2026년 10월 개발일지) (0) | 2026.10.13 |
| DanTravel 개발일지 — 앱으로 나가는 길찾기와 캘린더 파일에 계약을 세운 2026년 8월 셋째 주 (0) | 2026.08.21 |
| 1인 개발 여행앱 코드 부채 상환기 2026 — 다섯 번 미룬 취약점 갚고 테스트가 버그를 진짜 잡는지 검증하기 (0) | 2026.08.11 |
| DanFish 개발일지 2026년 7월 - 지도 클릭 UX 재설계와 나흘 뒤의 정보 누락 정정기 (0) | 2026.07.21 |