이케아 가구 조립, 데이터로 따져보면 어떨까요
이케아 가구를 조립해본 분이라면 다들 한 번쯤 겪어봤을 거예요. 어떤 제품은 10분 만에 뚝딱 끝나는데, 어떤 제품은 부품 봉투를 쏟아놓는 순간부터 한숨이 나오죠. 그런데 이 '조립 난이도'라는 막연한 감각을 실제 데이터로 측정해서 순위를 매긴 사이트가 등장했어요. 이름하여 IKEA Complexity Index, 우리말로 하면 '이케아 복잡도 지수'인데요. 이케아 제품들의 조립 복잡도를 수치화해서 어떤 가구가 가장 조립하기 어려운지 한눈에 볼 수 있게 만든 프로젝트예요.
발상 자체는 장난스럽지만, 개발자 관점에서 보면 꽤 흥미로운 데이터 엔지니어링 프로젝트거든요. 세상에 존재하는 비정형 데이터인 조립 설명서를 긁어모아서, 구조화된 지표로 바꾸고, 누구나 볼 수 있는 서비스로 만들어낸 과정이 그대로 담겨 있으니까요.
어떻게 만들었을까요
이런 프로젝트의 뼈대를 뜯어보면 대략 세 단계예요. 먼저 데이터 수집이에요. 이케아는 제품마다 조립 설명서를 PDF로 제공하는데, 제품 카탈로그를 순회하면서 이 문서들을 모아야 해요. 웹 스크래핑이 뭐냐면, 프로그램이 사람 대신 웹사이트를 돌아다니면서 필요한 정보를 자동으로 수집하는 기법이에요.
다음은 지표 설계예요. '복잡하다'는 걸 숫자로 어떻게 표현할까요? 설명서의 단계 수, 페이지 수, 들어가는 부품과 나사의 종류와 개수 같은 요소들이 후보가 되겠죠. 소프트웨어 개발에도 비슷한 개념이 있어요. 코드가 얼마나 복잡한지를 분기문 개수로 측정하는 '순환 복잡도'라는 지표인데요, 결국 이 프로젝트는 가구에 순환 복잡도 같은 지표를 만들어준 셈이에요. 지표 설계에서 재미있는 지점은 '무엇을 셀 것인가'가 곧 '무엇을 복잡하다고 정의할 것인가'라는 질문과 맞닿아 있다는 거예요. 단계가 많으면 복잡한 걸까요, 아니면 부품이 많으면 복잡한 걸까요? 같은 데이터라도 가중치를 어떻게 주느냐에 따라 순위가 완전히 달라져요.
마지막은 서비스화예요. 계산된 지수를 정렬하고 탐색할 수 있는 웹사이트로 만들어서 공개하는 단계죠. 이 단계까지 가야 '분석'이 '프로덕트'가 돼요. 혼자 노트북에서 돌려본 분석 스크립트와, 남들이 링크 하나로 즐길 수 있는 사이트 사이에는 생각보다 큰 간극이 있거든요.
업계 맥락: 일상을 데이터로 바꾸는 프로젝트들
이런 부류의 프로젝트에는 나름의 계보가 있어요. 레고 세트의 부품 수 변화를 수십 년 치 분석한 프로젝트도 있었고, 전 세계 맥도날드 아이스크림 기계의 고장 상태를 실시간으로 보여주는 사이트가 화면에 오르내린 적도 있었죠. 공통점은 누구나 공감하는 일상의 경험을 데이터로 정량화했다는 거예요. 기술적으로 엄청나게 어려운 건 아니지만, '이걸 측정해볼 생각을 했다'는 관점 자체가 프로젝트의 가치가 되는 경우들이에요.
그리고 이런 프로젝트는 스크래핑과 데이터 파이프라인, 지표 설계, 시각화까지 실무에서 쓰는 기술을 한 바퀴 다 돌게 만들어요. 회사 업무에서는 데이터 수집 따로, 분석 따로, 서비스 따로 분업하는 경우가 많은데, 사이드 프로젝트에서는 이걸 혼자 처음부터 끝까지 경험할 수 있거든요.
한국 개발자에게 주는 시사점
포트폴리오를 고민하는 분들에게 특히 참고가 될 만해요. 채용 담당자 입장에서 토이 프로젝트 수십 개 중에 기억에 남는 건 결국 '아이디어가 재미있는 것'이거든요. 게시판 클론보다 '이케아 조립 난이도 순위'가 훨씬 오래 기억에 남아요. 그리고 이런 프로젝트는 대화의 소재가 되기 때문에 면접에서도 자연스럽게 기술 얘기로 이어져요. 스크래핑을 어떻게 했는지, PDF 파싱에서 뭐가 어려웠는지, 지표는 왜 그렇게 설계했는지 같은 질문 하나하나가 다 실무 역량을 보여줄 기회가 되죠.
한국 데이터로도 비슷한 걸 만들 여지가 많아요. 배달 앱 메뉴 가격의 지역별 편차라든지, 편의점 신상품의 생존 기간이라든지, 공공데이터 포털에 잠들어 있는 데이터도 정말 많고요. 다만 스크래핑을 할 때는 대상 사이트의 이용약관과 robots.txt를 확인하고, 서버에 부담을 주지 않도록 요청 간격을 조절하는 매너는 꼭 지켜야 해요.
마무리
한 줄로 정리하면, '좋은 사이드 프로젝트는 기술이 아니라 관점에서 시작된다'는 걸 보여주는 사례예요. 여러분이 일상에서 지수로 만들어보고 싶은 건 뭔가요? '출근길 지하철 혼잡도 지수' 같은 아이디어가 있다면 댓글로 나눠주세요.
🔗 출처: Hacker News