내 플레이리스트를 공유한다는 것 — ChainPlay 공유 기능을 만든 이유
"너 이런 노래 좋아해?"
누군가한테 음악 취향을 설명하려면 말로는 한계가 있다.
"저는 잔잔한 거 좋아해요", "비트 있는 거 좋아해요" — 이런 말로는 사실 아무것도 전달이 안 된다. 직접 들어봐야 안다. 그래서 우리는 예전부터 늘 뭔가를 공유해왔다. 테이프에 녹음해서 건네주던 시절부터, CD 굽던 시절, 멜론 링크 보내던 시절까지. 형태는 달랐지만 본질은 같았다.
"내가 좋아하는 것들을 네가 들어봤으면 좋겠어."
근데 지금은?
지금도 음악 공유는 활발하다. 스포티파이 플레이리스트 링크를 보내거나, 유튜브 재생목록을 공유하거나.
근데 솔직히 불편한 점이 있다.
- 스포티파이: 프리미엄 없으면 광고가 붙거나 셔플만 된다. 받는 사람이 계정이 없으면 반만 들린다.
- 유튜브 재생목록: 기능은 좋은데, 만들고 관리하는 게 생각보다 번거롭다. 공유받은 사람이 그걸 수정하거나 자기 앱에 가져올 수가 없다.
그리고 무엇보다 — 나는 이미 YouTube Premium 없이 유튜브 영상을 순서대로 틀어주는 앱(ChainPlay)을 쓰고 있었는데, 이걸 다른 사람이랑 공유할 방법이 없었다.
ChainPlay 공유 기능의 출발점
ChainPlay를 쓰면서 자연스럽게 이런 생각이 들었다.
"내 Kids 체인, 같이 육아하는 친구한테 보내주면 좋겠다." "내가 요즘 듣는 노래 체인, 그냥 링크 하나로 보낼 수 없을까?"
단순히 "편하면 좋겠다"는 생각이었는데, 만들다 보니 그게 아니었다.
플레이리스트를 공유한다는 건 단순히 영상 목록을 전달하는 게 아니다. 그 사람이 요즘 어떤 걸 보고 있는지, 어떤 분위기를 좋아하는지, 어떤 감성인지를 건네는 것이다.
인스타그램에 지금 듣는 노래를 올리는 것처럼, 스토리에 "지금 이 노래"를 공유하는 것처럼 — 플레이리스트 자체가 하나의 자기표현이 될 수 있다고 생각했다.
내가 만들고 싶었던 문화
기능을 구현하면서 머릿속에 그린 장면이 있었다.
- 아이가 있는 부모끼리 "애들 유튜브 체인" 교환하기
- 친구한테 "요즘 내가 빠진 노래들" 체인 보내기
- 공부할 때 집중되는 영상 모음 공유하기
- "내 최애 영상 TOP 10" 체인 만들어서 SNS에 올리기
지금은 링크를 보내면 브라우저에서 영상 목록이 보이고, 앱이 있으면 바로 가져올 수 있는 수준이다. 거창한 소셜 기능이 있는 건 아니다.
하지만 그게 시작이라고 생각한다.
플레이리스트가 명함이 되는 날
예전에 누군가 이런 말을 했다.
"음악 취향이 맞으면 대충 어떤 사람인지 알 것 같다."
그 말이 맞다고 생각한다. 취향은 생각보다 많은 걸 말해준다. 유머 감각, 감성, 에너지 레벨, 세계관.
내가 바라는 건 ChainPlay의 체인이 그런 역할을 하는 것이다. "내 체인 봐봐" 한 마디로 내가 어떤 영상을 즐기는지, 어떤 분위기를 좋아하는지가 전달되는 것.
그게 지금 당장 되는 건 아니다. 하지만 공유 기능은 그 문화의 첫 번째 벽돌이다.
기술적으로는 어떻게 만들었냐면
이 포스트는 기능의 이유에 대한 이야기지만, 궁금한 분을 위해 간단히.
서버 없이 만들었다. 체인 데이터를 base64로 인코딩해서 URL에 담고, GitHub Pages 정적 페이지가 통로 역할을 한다. 앱이 있으면 딥링크로 바로 열리고, 없으면 플레이스토어로 연결된다.
구현 과정은 별도 포스트에 정리했다 → [서버 없이 앱 콘텐츠 공유하기 — GitHub Pages + Android 딥링크]
마치며
사이드 프로젝트를 만들다 보면 기능 하나하나에 이유가 생긴다.
공유 버튼 하나 추가하는 게 뭐가 그리 대단한가 싶을 수도 있다. 근데 나한테는 "이걸 왜 만드는가"에 대한 대답이 생긴 순간이었다.
도구를 만드는 것도 좋지만, 그 도구로 어떤 문화를 만들고 싶은지를 생각하는 게 더 재밌다는 걸 이번에 새삼 느꼈다.
일단 만들었다. 써봐야 안다.
backtodev
A 40-something PM returns to code. Learning, failing, and growing.