조던 워크의 발표는 끝났지만, 컨퍼런스장에 남은 것은 깊은 의심과 혼란의 그림자였다. 청중들은 세계 최대 소셜 네트워크 기업이 내놓은 새로운 기술에 대한 기대를 품고 그의 발표를 기다렸다. 하지만 그들이 마주한 것은 자신들의 신념을 정면으로 부정하는, 낯설고 기이한 접근법이었다.
발표장을 나서는 개발자들의 대화 속에는 리액트에 대한 칭찬을 찾기 어려웠다.
“버추얼 DOM은 흥미롭지만, 그걸 쓰자고 우리 팀의 모든 개발자에게 JSX를 가르칠 순 없어. 생산성이 떨어질 거야.”
“결국 또 하나의 ‘페이스북 전용’ 기술이군. 그들만의 세상에서나 통할 법한 방식이야. 범용성은 없어 보여.”
가장 큰 문제는, 리액트가 해결하려는 ‘대규모 애플리케이션의 복잡성’이라는 문제가 대부분의 청중에게는 아직 와닿지 않는다는 점이었다. 당시 많은 개발자들은 비교적 작은 규모의 웹사이트나 애플리케이션을 만들고 있었다. 그들에게는 jQuery만으로도 충분했고, 조금 더 구조가 필요하다면 백본이나 앵귤러가 훌륭한 해답을 제공해주고 있었다.
그들에게 리액트가 제시하는 문제 해결 방식은, 마치 모기 한 마리를 잡기 위해 거대한 대포를 끌고 온 것처럼 과하고 비효율적으로 보였다.
“우리 프로젝트는 그렇게 복잡하지 않아. 굳이 버추얼 DOM까지 써가면서 매번 모든 걸 다시 그릴 필요가 없어. 그냥 jQuery로 필요한 부분만 바꾸는 게 훨씬 직관적이고 빨라.”
이러한 인식의 차이는 리액트 팀에게 큰 숙제로 남았다. 리액트의 진정한 가치는, 코드가 수만, 수십만 줄로 늘어나고 수십 명의 개발자가 동시에 협업하는 극한의 복잡성 속에서 비로소 드러나는 것이었다. 하지만 그 고통을 겪어보지 않은 사람들에게 그 가치를 설명하기란 불가능에 가까웠다.
컨퍼런스가 끝난 후, 리액트 팀은 팰로앨토로 돌아오는 비행기 안에서 무거운 침묵 속에 잠겨 있었다. 성공적인 데뷔를 꿈꿨지만, 현실은 냉혹했다. 그들은 자신들의 창조물이 세상에 의해 철저히 오해받고 있다는 느낌을 지울 수 없었다.
“우리가 너무 앞서간 걸까요?”
맷이 침통한 목소리로 물었다.
“아니, 우리가 틀린 게 아니야.” 조던이 창밖을 바라보며 나지막이 말했다. “다만, 사람들이 우리가 본 것을 아직 보지 못했을 뿐이야.”
그는 알고 있었다. 새로운 패러다임이 받아들여지기 위해서는, 논리적인 설명이나 화려한 데모만으로는 부족하다는 것을. 사람들이 직접 리액트를 사용해보고, 기존 방식으로는 해결할 수 없었던 자신들의 문제를 해결하는 ‘경험’을 해야만 했다. 그리고 그 경험을 통해, JSX의 문법적 기묘함이 사실은 개발의 편의성을 위한 최선의 선택이었음을, 버추얼 DOM의 ‘낭비’가 사실은 예측 불가능한 버그를 막아주는 가장 확실한 보험이었음을 깨닫게 될 터였다.
하지만 그날이 오기까지, 리액트는 ‘괴짜들의 이상한 장난감’이라는 평가를 견뎌내야만 했다. 세상과의 첫 만남은 쓰라린 실패에 가까웠다.
그러나 조던과 그의 팀은 포기하지 않았다. 그들은 자신들이 만든 기술의 잠재력을 누구보다 잘 알고 있었다. 이제 그들에게 남은 과제는, 이 차가운 시선 속에서도 묵묵히 리액트를 개선하고, 그 가치를 알아봐 줄 소수의 ‘얼리 어답터’들을 찾아내는 것이었다.
새로운 시대의 서막은, 이렇듯 요란한 환호가 아닌 차가운 의심 속에서 조용히, 하지만 분명하게 열리고 있었다.


