OTT 콘텐츠 많이들 보시나요? 지금 당장 생각나는 것만 해도 넷플릭스, 유튜브, 웨이브, 티빙, 왓챠 같은 많은 OTT 서비스들이 떠오르네요. 그런데 프론트엔드 개발을 조금이라도 해봤다면 웹 브라우저에서 저작권에 민감한 콘텐츠를 재생할 수 있다는 것이 매우 이상하게 느껴질 것입니다. 왜일까요? 개발자 도구를 쓸 줄 안다면 비디오 파일의 원본 URL을 쉽게 확인할 수 있고, 심지어 다운로드까지 할 수 있기 때문입니다. 그렇다면 여러 OTT 서비스들은 콘텐츠의 저작권을 보호하기 위해 어떤 기술을 사용하고 있을까요? 웹 브라우저에서 OTT 콘텐츠를 안전하게 재생하기 위해서 어떤 절차를 거쳐야 할까요?
프로젝트를 진행하다 보면 특정 코드를 재사용하는 것에 대해 논의할 때가 많다. 그런데 항상 명확한 결론을 내지 못하고 끝낸 적이 많다. 왜 그럴까? 코드 재사용에 대한 의사결정은 간단해 보이지만 사실 많은 고민이 필요한 일이기 때문이다. 재사용에 대한 논의가 제대로 진행되려면 어떻게 재사용할 것인가를 결정하기에 앞서, ‘재사용이 정말 필요한 것인가?’, ‘재사용이 시도될 가치가 있는가?’를 고민해야 한다. 이번 글을 통해 그동안 필자가 경험을 통해 얻은 코드 재사용성에 대한 생각을 공유하고자 한다.
지난 글 <소프트웨어 설계 20년 해보고 깨달은 ‘좋은 설계’의 조건>의 독자 중 한 분이 저에게 기술적인 노하우를 더 공유할 수 있는지 물었습니다. 조금 주저되었습니다. 개발자 입장에서 설계를 다룰 때, 당연히 프로그램을 잘 만드는 것에 집중하기 마련입니다. 이는 당연한 요구입니다. 그러나 ‘모든 상황에서 통하는 기술적인 노하우가 과연 있을까’ 하는 생각을 지울 수 없었습니다. 이러한 가치관을 갖고 있는 제 입장에서 선뜻 자신있게 기술적인 노하우를 꺼내는 일은 어색한 일이 아닐 수 없었습니다. 그래서 스스로에게 질문을 던져 보았습니다. ‘그럼에도 불구하고 하나만 언급해야 한다면 어떤 게 있을까?’라고요.