TL;DR
- 웹 플랫폼은 오래된 기기와 브라우저의 호환성, 전 세계의 모든 사용 사례를 고려해 기능을 설계하며, 한번 출시한 기능을 거의 되돌릴 수 없다는 조건에서 신중함이 핵심임.
- 웹 표준은 한 웹사이트가 아니라 모든 사이트와 언어, 지역, 기기, 브라우저를 동시에 대상으로 함.
- 보안, 접근성, 성능은 플랫폼 기능을 설계할 때 반드시 고려해야 하는 요소이며, 이런 요구가 표준화 과정을 복잡하게 만듦.
- 웹 플랫폼은 완벽하지 않고 프레임워크와 보완 도구도 필요하지만, 안정성과 실험 사이의 균형을 유지해야 함.
- 가능한 한 플랫폼을 먼저 사용하고, 부족한 부분을 보완할 때는 플랫폼이 기본으로 제공하려는 보안·접근성·성능을 직접 책임져야 함.
웹의 영속성과 표준의 신중함
- 어느 날 아침 달리기를 하며 Shop Talk Show의 최신 팟캐스트를 듣던 중 Jen Simmons가 출연해 웹 표준 절차를 비롯한 여러 주제를 이야기함. 기대대로 유익한 대화였으며, Jen Simmons는 오랫동안 중요한 일을 해 온 뛰어난 인물임.
- 새 브라우저 기능은 출시된 뒤 사실상 계속 남으므로 세심한 검토가 필요함. 일반적인 프로젝트 코드는 나중에 삭제하거나 다시 만들 수 있지만, 웹에서는 기능을 출시한 뒤 거의 다시 바꿀 수 없음.
“코드는 나중에 언제든 모두 지울 수 있음. 프로젝트에 서둘러 넣은 기능이 잘못된 생각이었다고 판단하면 없애고 나중에 더 나은 방식으로 다시 만들 수 있음. 하지만 웹에는 두 가지 제약이 있음. 첫째, 거의 언제든 기능을 바꾸고 다시 출시할 수 있는 것은 아님. 서둘러 서브그리드를 출시했는데 형편없다면 고칠 방법이 거의 없고, 결국 그대로 안고 가야 함.”
- 웹의 이러한 영속성은 웹을 놀랍게 만드는 특징 가운데 하나임. 오늘날에도 Newton에서 사이트를 불러와 작동시킬 수 있으며, 이는 기기나 디지털·비디지털 제품, 네이티브 플랫폼의 일반적인 방식과 뚜렷한 대조를 이룸.
- 이미 만들어진 것을 망가뜨리지 않겠다는 웹의 약속이 중요함.
모든 언어와 사용 사례를 고려하는 플랫폼
- Jen Simmons가 강조한 또 다른 점은 웹 표준이 특정 사이트 하나가 아니라 웹 전체를 대상으로 한다는 점임.
“우리는 facebook.com이나 youtube.com, codepen.io 같은 웹사이트 하나를 위한 문제를 푸는 것이 아님. 모든 사용 사례를 동시에, 웹 전체를 위해 해결하고 있음.”
- 밑줄처럼 단순해 보이는 기능도 모든 사용자를 대상으로 하면 고려할 점이 크게 늘어남. 세로쓰기 언어의 조판과 일본어 타이포그래피, 라틴 알파벳과 완전히 다른 문자 체계를 다뤄야 하며, 전 세계 언어와 문자 체계에서 작동하도록 만든 뒤 빠진 부분을 가능한 한 빨리 마무리하겠다는 약속도 필요함.
- 플랫폼에 어떤 기능을 포함할지 결정하는 과정에는 상당한 숙고와 검토가 들어감.
프레임워크와 웹 플랫폼의 책임
- 오랫동안 중요한 일을 해 온 Alex Russell은 자바스크립트에 지나치게 의존하는 관행이 웹의 여러 성능 문제를 초래한다는 점을 경고하는 데 많은 시간과 노력을 들임.
- Alex Russell이 ‘플랫폼을 사용하라(Use the Platform)’는 동화 같은 이야기를 팔고 있다는 주장을 접한 뒤, 그 표현이 잘못됐다는 생각이 들었음. 특정인을 공격하거나 비난을 부추기려는 것은 아니며, 비슷한 의견을 처음 접한 것도 아님.
- 웹 플랫폼은 새 기능을 추가하면서도 오래된 기기나 브라우저를 사용하는 사람들의 웹 이용을 깨뜨리지 않도록 세심하게 설계됨. 어떤 프레임워크에도 같은 수준의 노력이 들어간다고 말할 수 있는지는 별개의 문제임. 웹 플랫폼 구축에는 이런 문제에 더 깊이 책임지는 일이 필수임.
- 일부 프레임워크가 서로 다른 지역의 제약과 언어에 맞춰 어떻게 확장할지를 이제 고민하는 반면, 웹 플랫폼은 수년 동안 그런 조건을 염두에 두고 구축됨.
- 표준 절차가 복잡하게 느껴지는 이유는 사소해 보이는 세부 사항도 결정적인 요소가 되기 때문임. 보안 문제가 발생할 가능성이 조금이라도 있다면, 위험을 감수할 수 있다고 생각할 수는 있지만 전 세계 모든 사람이 사용할 기능을 만들 때는 출시를 보류할 타당한 이유가 됨.
플랫폼의 기본값과 한계
- 웹은 접근성과 성능을 기본으로 제공한다는 평가를 받으며, 완벽하지는 않지만 그 평가에서 크게 벗어나 있지도 않음. 플랫폼을 만든다는 것은 이런 요소를 우선시해야 한다는 의미임.
- 자신이 사는 작은 영역 바깥의 사람들에게도 닿고 싶다면, 플랫폼 사용은 동화 같은 이야기가 아니라 모든 구축 작업의 기반이어야 함.
- 그렇다고 기반만으로 충분하거나 언제나 올바른 것은 아님. 웹에는 분명한 한계가 있으며, HTML이 처음 명세된 지 약 26년이 지난 지금도 표준 기구가 존재하는 이유는 작업이 끝나지 않았고 아마 끝나지도 않을 것이기 때문임.
- Nicole Sullivan처럼 프레임워크가 필요한 기능 가운데 실제로는 브라우저에 포함되어야 할 항목을 찾아내려는 이들의 활동은 고무적임.
- 웹은 안정성과 실험의 혼란 사이에서 건강한 긴장을 유지하며 발전함. 웹의 문제와 한계를 보완하는 도구를 사용하는 일은 괜찮고 때로 필요하지만, 그에 따른 상충 관계를 고려해 신중하게 해야 함.
기능을 보완할 때의 책임
- 플랫폼에 포함되는 표준은 보안 위험을 최소화하도록 모든 기능을 세심하게 검토함. 새 기능은 해를 끼치지 않는지, 보조 기술이 사용 가능한 경험을 제공하는 데 필요한 정보를 모두 얻는지 접근성 관점에서 검토해야 함.
- 새 표준은 출시로 인해 불필요한 비대화나 다른 성능 문제가 생기지 않도록 성능을 최우선으로 고려해야 함.
- 이러한 검토는 하나의 맥락에만 한정되지 않으며 모든 사이트와 지역, 언어, 기기, 브라우저에서 성립해야 함.
- 우리가 사용하거나 만드는 도구와 프레임워크에도 같은 수준의 주의가 기울여진다고 자신 있게 말할 수 있는지 되짚어야 함.
- 플랫폼을 사용할 수 있는 동안은 플랫폼을 사용하고, 부족한 부분만 보완해야 함. 보완할 때는 플랫폼이 기본으로 제공하려는 보안, 접근성, 성능을 이제 보완하는 쪽이 전적으로 책임져야 함.
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요