애플 발표회가 막 끝났을 때, 저는 컴퓨터 앞에 앉아 라이브 방송을 보고 있었습니다. 친구들 중 절반은 "사자 사자"를 외치고 있었고, 나머지 절반—개발자들—은 이미 조용히 JSON 포맷팅 도구를 열어놓고 있었습니다. 이상하게 들릴 수 있지만, 발표회가 JSON 포맷팅과 무슨 관계가 있냐고요? 관계가 엄청납니다.
애플이 새 시스템이나 새 하드웨어를 발표할 때마다 개발자들은 가장 먼저 문서를 파헤쳐야 합니다. 애플의 인터페이스 응답은 전부 JSON 형식 데이터로, 빽빽하게 뭉쳐 있어서, 포맷팅되지 않은 JSON은 사전 한 권을 택배 상자에 넣고 흔들어 놓은 것과 같아서 원하는 필드를 도저히 찾을 수 없습니다. 이때 JSON 포맷팅 도구가 구명줄이 됩니다.
제가 아는 iOS 개발자 한 분은 발표회가 끝나고 3분 만에 애플 개발자 문서에 새로 나온 API 응답 예시를 복사해서 JSON 포맷팅 도구에 넣었습니다. 원래 까맣게 뭉쳐 있던 문자가 순식간에 들여쓰기가 정돈되고 계층이 명확한 구조로 바뀌었습니다. 어떤 필드가 새로 추가되었는지, 어떤 파라미터 이름이 바뀌었는지 한눈에 훑어볼 수 있었습니다. 그는 이걸 "선점"이라고 부릅니다—누가 먼저 새 인터페이스의 성격을 파악하느냐에 따라 다음 날 아침에 적응 버전을 올릴 수 있고, 사용자가 시스템을 업데이트한 뒤 앱을 열었을 때 튕기지 않으면 평점이 안정됩니다.
쉽게 말해, JSON 포맷팅은 기계가 보는 코드를 사람이 보는 모습으로 바꾸는 것입니다. 어떤 괄호가 어떤 괄호에 대응하는지 외울 필요 없이, 도구가 중첩 관계를 트리 구조로 그려줍니다. 인터페이스를 디버깅할 때, 포맷팅 전에는 탐정처럼 쉼표를 세어야 하지만, 포맷팅 후에는 키-값 쌍을 바로 볼 수 있어 효율이 몇 배 차이 납니다.
요즘 많은 온라인 JSON 포맷팅 도구에는 검증 기능도 있습니다. 애플 발표회 후에는 개발자 포럼에 "왜 내 요청이 400을 반환하나요"라고 묻는 글이 자주 올라오는데, 첨부된 JSON에 따옴표가 하나 빠졌거나 마지막에 쉼표가 하나 더 있어서 육안으로는 전혀 보이지 않습니다. 포맷팅 도구에 넣으면 빨간 오류가 줄 번호에 바로 표시되고, 수정한 뒤 다시 복사해서 붙여넣으면 문제가 해결됩니다.
또 다른 상황은 백엔드와의 연동 테스트입니다. 애플 새 시스템이 어떤 새 기능을 지원하는데, 프론트엔드에서 쓰고 싶지만 백엔드에서는 인터페이스가 아직 작성되지 않았다고 합니다. 이때 프론트엔드에서 직접 JSON 데이터를 만들어 포맷팅 도구로 정리한 뒤 백엔드에 보내며 "이 구조대로 반환해 주세요"라고 말합니다. 백엔드가 보면 계층이 명확하고 필드 타입이 분명해서 얼마나 많은 실랑이를 줄여주는지 모릅니다.
그러니 이 도구를 얕보지 마세요. 화려하지도 않고, AI 프로그래밍 도우미처럼 코드를 대신 작성해 주지도 않지만, 마치 드라이버와 같습니다—평소에는 눈에 띄지 않지만 결정적인 순간에 없으면 정말 안 됩니다. 애플 발표회는 1년에 여러 번 있고, 매번 개발자들의 잠 못 이루는 밤입니다. JSON 포맷팅 도구는 브라우저 북마크 바에 조용히 자리 잡고 있다가, 한 번 클릭하면 엉킨 실이 곧은 선이 되어 해야 할 일을 계속할 수 있습니다.
아직 사용해 본 적이 없다면, 다음에 인터페이스에서 반환된 엉망인 데이터를 받았을 때 백엔드를 탓하기 전에 먼저 JSON 포맷팅에 넣어 보세요. 어쩌면 문제가 들여쓰기가 어긋난 어느 괄호 속에 숨어 있을지도 모릅니다.