구텐베르크 때문에 분열되는 워드프레스

§

뮬런버그는 오래전 부터 php 를 버리겠다는 계획을 마음속에 두고 있었습니다.

https://hackya.com/kr/워드프레스가-php-를-버린-이유/

그리고 워드프레스 5.0 은 뮬런버그의 본심을 드러내는 첫 번째 버전입니다. 워드프레스 5.0 이 논란이 되는 가장 큰 이유는 구텐베르크 탑재 때문입니다.

조만간 출시되는 워드프레스 5.0 core 에 포함될 Gutenberg (이하 구텐베르크) 는 뮬런버그가 독.재.적으로 밀어붙여 개발되고 있는 글 편집기 (editor) 입니다.

구텐베르크는 현존하는 여러 상업 page builder (대표적으로 VC, 비주얼 컴포져 가 있죠) 와 동일한 방식으로 post 와 페이지 를 생성해 줍니다. 사용자가 개별적인 블록을 생성한 후, 이걸 마우스로 drag & drop 해서 post 나 페이지를 생성할 수 있게 해주는건데, 어떤 새로운 개념도 아니고, 신기술도 아닙니다.

제 기억으로 무려 7-8년전에 그누보드에서 이걸 시현해 보이신 개발자 분도 계셨고, 워드프레스 캠프내에서는 여러 개발팀들이 10년전 부터 개발해왔습니다.

그런데 왜 논란이 되냐구요? 기존 페이지빌더들은 모두 php 기반의 빌더이지만 이 구텐베르크는 자스 (javascript) 기반 입니다. 그 사실 자체로도 논란이 될 소지는 전혀 없습니다.

논란의 이유는 기존 php 기반의 플러그인들과 호환되지 않기 때문입니다. 가장대표적으로 custom post type 과 충돌을 일으킵니다.

워드프레스 개발자들이 워드프레스에 입문해서 가장 처음에 보편적으로 배우는 기술이 뭡니까? 아마 custom post type 생성하기 일겁니다.

Custom post type 은 글만 보여주는 단순한 워드프레스 post 에 여러가지 기능을 부여할 수 있는 매우 쉽고 보편적인 개발방식 입니다. 그래서 custom post type 을 자동 생성해주는 생성기까지 존재합니다.

https://generatewp.com/post-type/

비개발자 분들에게는 custom post type 이 얼마나 중요한지 피부로 와닿지 않으실 수 도 있는데, 다들 우커머스는 뭔지 아시죠? 워드프레스를 쇼핑몰로 만들어 주는 플러그인 이죠. 이 우커머스에 존재하는 제품들이 바로 이 custom post type 형태로 존재 합니다. 이제 이해가 좀 되셨나요?

물론 우커머스는 현재 워드프레스 (Automattic Inc.) 가 소유하고 있고, 구텐베르크 개발팀은 구텐베르크 가 우커머스와 충돌하지 않고 작동할 수 있도록 여러 충돌방지 코드를 짜고 있습니다.

그런데 위에서 말씀드렸듯, custom post type 은 매우 다양한 기능을 간단하게 구축할 수 있는 개발방식이라 미국내에서만 최소 수백만개의 웹사이트들이 각자 다른 방식으로 작동하는 수십만개의 custom post type 으로 사이트를 돌리고 있습니다.

우커머스야 문제 없이 코드를 보완한다고 해도, 이 수십만개나 되는 custom post type 들은 어떻게 될까요? 각 custom post type 개발자들이 자스 (javascript) 을 배우고, react 을 배워서 자신들의 custom post type 이 구텐베르크 와 충돌하지 않고 작동할 수 있게 고쳐야 하는 겁니다.

개발자 입장에서, 도대체 왜 이런 미친짓을 해야 하는지 의문이 생기지 않을 수 없습니다.

도대체 구텐베르크의 어떤점이 기존 상업 페이지빌더 보다 더 낫다고 볼 수 있을까요? 직접 다운받아서 설치해 보시고 사용해 보세요.

https://wordpress.org/plugins/gutenberg/
기존 상업/유료 페이지빌더들 보다도 더 퇴보된 형태의 편집기 라고 밖에 말할 수 없으실 겁니다.

물론 Automattic 사 와 뮬런버그의 입장을 이해 못하는게 아닙니다. 미디엄Wix 가 wordpress.com 의 지분을 야금야금 먹어들어가고 있는 상태고 뮬런버그 입장에서 미디엄과 같은 UI 를 제공하고, Wix 같은 웹사이트 구축을 가능하게 해서 wordpress.com 의 지분을 지키고자 하는 심정은 백분 이해 합니다.

인터넷의 1/3 을 워드프레스가 돌리고 있지만, 그 시장점유율에 걸맞지 않는 수익성은 오래전부터 지적되어 왔는데, 이제 미디엄 하고 Wix 까지 워드프레스.com 의 수익성을 악화시키고 있으니 뮬런버그 입장에서 어떤 특단의 조치를 취해야 한다고 느낀건 지극히 당연하다 생각합니다. 저는 뮬런버그가 지향하는 큰 그림에는 대체적으로 동의하고 이해합니다. 하지만 기술적인 부분에서 그는 매우 잘못된 결정을 내렸다고 밖에 말할 수 없습니다.

왜 구텐베르크는 자스 (javascrpt) 기반이어야 했는가?

미디엄이 나오며 가장 많이 사용된 수식어는 블로깅의 차세대 UI 였습니다. “인터넷의 미래” 라는 표현까지도 언론사들이 했는데, 그만큼 미디엄의 UI 는 혁신적이었습니다. 한국에 “브런치” 라는 짝퉁 미디엄까지 나왔을 정도니까요.

뮤런버그는 이런 차세대 UI 는 php 기반으로는 구현이 불가능하다는 결론을 내리고 이때부터 php 를 버릴 생각을 갖게 됩니다. 이래서 칼립소 (Calypso) 가 react 기반으로 개발되었고, 이제 구텐베르크 까지 개발하며 미디엄 과 Wix “필”이 나는 워드프레스.com 을 만들어 가고 있는 것 입니다.

하지만 미디엄의 UI 는 php 를 back-end 로 돌리고, front-end 에서만 자스 로 충분히 구축할 수 있습니다. 특히 워드프레스 rest api 가 개발되었기에 더더욱 back-end 를 자스로 돌릴 이유가 없어졌습니다. (이 부분은 아직 그렇게 된것도 아닌데 제 생각이 너무 앞서나갔네요.) 뮬런버그는 이런 기술적인 문제에 대한 핵심을 제대로 이해하지 못한듯 보입니다.

왜 뮬런버그는 vuejs 가 아닌 react 을 선택했는가?

수도없이 많은 워드프레스 개발자들은 압도적으로 워드프레스에는 vuejs 가 어울리는 파트너고 react 은 좋은 선택이 아님을 밝혀왔습니다. 어느 polling 에서나 대략 75:25 정도의 비율로 워드프레스 개발자들은 vuejs 를 선호합니다.

이건 라라벨만 봐도 너무나 당연한 결과 입니다. vuejs 는 하나의 프레임워크가 될수도 있고, UI 가 될수도, 아니면 jQuery 대체 솔루션도 될수 있을 정도로 유연한 제품입니다. 반면 react 은 솔루션 자체가 항상 react 중심으로 개발되어야 합니다. React 은 Angular (앙) 과 같은 부류인거죠.

워드프레스에 react 사용이 부적절한 이유는, react 은 css 고 html 이고 모두 자스내에서 작동해야 합니다. 이래서 태생적으로 워드프레스 같은 php 솔루션과는 너무나 어울리지 않는 제품인겁니다. 불행하게도 뮬런버그는 이런 기술적인 문제를 파악하지 못했습니다.

앞으로 워드프레스의 미래는?

워드프레스의 끝이 보인다. 워드프레스 4.x 에서 선을 긋고 wp 4.x 를 fork 해서 wordpress.com 과 별도로 독립적인 캠프를 차리자 라고 주장하는 개발회사들도 꽤 됩니다.

뮬런버그에 몹시 옹호적인 제 자신이 생각해도 현재 뮬런버그는 너무나 잘못된 길을 가고 있습니다.

Rest API 까지는 좋았는데, 사실 구텐베르크를 그냥 플러그인으로 남겨두었어도 이렇게 까지 논란이 되지는 않았을텐데, 뮬런버그는 너무나 독재자 같은, 그리고 매우 잘못된 기술적인 판단을 내린 사실을 부인하기 어렵습니다.

구텐베르크를 통해 워드프레스의 블로깅 기능이 강화되고, 사용자들이 간단한 형태의 웹사이트는 더욱더 쉽게 구축할 수 있게 될것임은 분명 합니다. 하지만 뮬런버그가 놓치고 있는 부분은, 워드프레스는 더이상 블로깅 솔루션이 아니라는 점 입니다.

워드프레스는 e-commerce, SaaS, 이외 여러가지 비지니스 어플리케이션에 동원되고 있고, 미국의 중소기업들은 워드프레스를 이런 비지니스 도구로 쓰고 있지 블로깅이나 하려고 쓰고 있지 않습니다.

그래서 워드프레스 5.0 은 정말 많은 중소기업들과, 그 중소기업들을 상대로 기술지원을 하고 있는 워드프레스 개발자들의 등을 돌리게 할 것 입니다.

지금까지 잘만 돌아가는 custom post type 시장에 왜 깽판을 놓나요? 기존 사이트들은 웹사이트 구축이, 그것도 Wix 같은 매우 간단한 모습의 사이트 구축에 편의성이 생긴다고 득보는 것 하나도 없거든요.

hackYa 가 드리는 현실적인 제안

사실 워드프레스가 fork 된다고 해도 새로운 캠프가 얼마나 힘을 얻을지도 아무도 모르는거고, 그렇다고 워프 5.0 으로 올라가면 기존 솔루션이 다 박살날거고. 이런 상황에 놓이신 개발자 분들은 머리가 많이 아프실텐데요. (저도 한참동안 골아팠습니다.)

일단 5.0 으로 올라가시고 이 플러그인을 쓰시는게 현실적인 해결책이라 생각됩니다.

https://wordpress.org/plugins/classic-editor/

이 플러그인을 설치하시면 기존 editor 를 계속 사용하실 수 있고, 구텐베르크 를 비활성화 시키실 수 있습니다. 그리고 상황을 잘 관망하셔야 할 것 같습니다. 현재 워드프레스를 사용하는 대기업들 중 (CNN 이라던지 Bloomberg 같은) 하나라도 워드프레스 4.X 에서 fork 를 한쪽으로 옮겨 준다면 그쪽으로 노선을 갈아타는 것도 고려해 보셔야 할 것 같습니다. 그렇게 되면 결국 비지니스 쪽 과 블로깅 쪽으로 워드프레스가 양분화 되는거긴 한데, 이건 뮬런버그가 자초한 일이라 어쩔 수 없습니다.

hackya 는

Attorney, front-end developer, digital media artist, WordPress enthusiast, & a father of 4 wonderful children.

Tags: , , , , , , , ,

카테고리: , ,

Ω

9 Comments

  • bastcode says:

    조금 다른 이야기 입니다만
    최근 백엔드에서 나온 이야기 입니다

    뷰 를 출력 해서 css, js 등을 매번 실행 하고 랜더링 하는 것보다는

    뷰를 한번 출력해서 문자형태로 만들어진 데이터를 memory db 에 넣는 것입니다.

    그리고 데이터를 조회해서 memcached 를 사용해서 동일한 데이터는 cach 데이터로 대체…
    즉 랜더를 하지 않고 뷰를 그대로 꺼내와서 보여준다는 것입니다.

    뷰의 값이 틀려질 경우에는 다시 한번 파싱해서 저장해서 꺼내주는 형태를 연구 및 적용 중입니다

    뷰를 일일이 출력하고 스크립트를 박아서 그려넣는것 보다는 memory db를 사용 하는게 더 빠르다는 결론입니다.

    완벽한 수준은 아니지만 간단한 페이지 정도는 일부 적용해서 쓴 적용 사례가 있습니다

    결과적으로 무슨 플러그를 넣든 일단 한번 내부에서 돌리고 결과값만 db에 넣어서 뺏다 쓰는걸로 퍼포먼스를 대폭 상향 시키자 라는 취지 입니다.

    이렇게 한다면 워드프레스도 플러그간의 간섭도 줄어들지 않을까 싶긴 합니다.
    [어차피 php로 한번 돌려서 파싱해서 데이터 만들기 때문]

    백엔더들이 맨날 하던 일만 하면서 월급 루팡 하는게 마음에 걸렸는지 이런저런 연구 방안을 제시하고 있습니다 ㅋㅋ

    최근에는 vue.js 가 자주 언급 되더군요 ㅋㅋ
    작년까지만 해도 뷰? 그 뷰가 그 뷰? 하면서 개그로 받았던 사람들이 vue 좋은거 같다면서 언급 하고 있습니다 ㅋㅋ

    • Matthew says:

      워드프레스 내에서 vuejs 의 활용도는 원래 vuejs 의 주목적인 UI 담당 정도가 적당하다고 저는 생각합니다. 언급하신 것 처럼 vuejs 의 SSR 은 여러 형태로 존재 할수 있지만 워드프레스 내에서는 중복적인 architect, 혹은 따로 살림을 차리는 꼴이 되어버려서, 그런식의 활용은 react 과 다를게 하나도 없게 되어버리죠.

      현재 vuejs 를 사용하는 업체들은 가성비를 따지는 업체들 입니다. 개발비용 아쉬울 것 없는 대형 스타트업들이 굳이 vuejs 에 관심을 가질까 싶습니다. 또 개발형태를 최대한 간소화 하고 싶은 회사들이 vuejs 를 사용합니다.

      대형 스타트업들 중에서는 페북 (php 랑 vuejs 랑 궁합이 잘 맞습니다.) 이 vuejs 를 Newsfeed 앱에서 쓰고 있고 (엥? 왜 react 을 놔두고?) 넷플릭스, 아도비 등이 부분적으로 사용하지만 vuejs 의 활용도가 가장 높은 회사들은 조그만 스타트업들 입니다. 특히 php 를 사용하는 스타트업들이 적극적으로 사용중 이죠. 며칠전 나온 보고서에 의하면 vuejs 와 가장 많이 함께 사용되는 언어가 php 고 기 빈도수가 54% 정도 라고 합니다. (사실 엄청나게 높은거죠.)

      아, 중국에서는 react 보다 vuejs 가 더 인기가 많습니다. 왜냐하면 vuejs 개발자가 원래 구글에서 일하던 Evan You 인데 대만에서 이민온 이민2세 이고 중국어도 꽤 잘 합니다. 그래서 알리바바, 샤오미 등 중국기업들은 vuejs 일색.

      암튼 워드프레스가 vuejs 를 채택하지 않은건 엄청나게 큰 실수고 이 실수에 대한 댓가는 나중에 꼭 치루게 될거라고 저는 생각합니다.

  • Estoque says:

    생각보다 심각한 문제군요

    미디움 UX는 정말 교과서 적이긴 한데 teehan+lax가 페이스북으로 건너가고 나서 부터는 발전이 별로 없더군요…

    요즘 인터넷을 돌아다니다 보면 wix로 만들어진 웹사이트들이 정말 많더군요. 물론 콘솔을 열어보고 나서야 wix인걸 알게 되는데, 생각 보다 구글 검색에 예전보다 잘 잡히는 것을 보면 wix의 SEO가 점점 나아지고 있는 것 같더군요

    근데 이렇게 내부에서 문제가 일어난다면 워드프레스 커뮤니티로써는 심각한 마이너스 요소가 될 것은 분명하네요. 다른 CMS는 아무리봐도 WP 같은 규모나 사용자 층을 가지는게 아직 존재하지 않는데 과연 무엇이 대안으로 떠오를지 궁금해지는군요.

    • Matthew says:

      미디엄은 계속 적자 상태고 돈도 어디서 더 끌어올때도 없고… 작년에 50명 해고했고… 뭔가 발전을 더 해볼 여력이 없습니다.

      wordpress.com / Automattic 입장에서 지금 가장 위협적인 존재는 wix.com 입니다. 작년말 (12월) 에 Wix Code 라는걸 런칭했는데, 간단하게 얘기해서 wix 사이트에 개발자들이 자스 (javascript) 를 먹일 수 있게 해주고, 나머지 back-end/서버/http 기능은 api 로 끌어다 쓸수 있게 해서 완벽한 headless CMS 모습을 갖췄습니다. 여기에 e-Commerce 기능까지 장착했죠.

      작년말부터 불과 4달동안 28% 이상의 성장을 했다는 얘기도 나오고 있는데 이런 소식은 뮬런버그 입장에서 wordpress.com 도 wix 처럼 가야 겠다는 결심을 더 확고하게 내리는 계기가 되었을 것 같습니다.

      그런데 wix 처럼 가려면 어떻게 해야 하죠? 일단 php 는 버리고, 자스의 능동적 기능 (대표적으로 ajax) 을 확대시키고 rendering 은 back-end 에 서 해줘야 하고.(SSR)….

      이런생각이 뮬런버그 머리속에 가득한 겁니다. ‘그래. 이게 미래야. 워드프레스.com 도 미래지향적인 솔루션이 되어야 해.’

      미래지향적이고 뭐고 다 좋은데, 현실은 php 가 워드프레스의 거의 모든 기능을 현재 책임지고 있다는….

      그래서 완전 react 중심의, react 으로 돌아가는 워드프레스 버전을 하나 만들어서 이걸로 wordpress.com 을 돌리면 좋을텐데, 이렇게 하면 wordpress.com 이 wordpress.org (설치형 커뮤니티) 에 의해 버려질 수 있거든요.

      어떤 명쾌한 해결책이 없는 상태이긴 한데, 뮬런버그는 일단 설치형의 생태계를 존중하기 보다는 wordpress.com 의 수익성 과 wix 와의 경쟁에서 우위를 차지하는게 더 중요하다고 생각한 듯 합니다.

      • Estoque says:

        설치형 보다는 확실히 wordpress.com에서 얻는 수익이 클것 같다는 생각이 듭니다. 티스토리도 마찬가지로 설치형인 텍스트 큐브 기반인데, 구글이 텍스트 큐브 인수해놓고 공중분해 시켜버리고 결국 티스토리만 남아있죠.

        개인사이트를 구축하고자 하는 사람들은 복잡한거 싫어할테니 진입장벽이 낮은 wix같은 서비스가 흥할 것이고, 이는 설치형의 입지가 줄어드는 결과가 될것 같습니다. 물론 기업같은데서는 설치형으로 제대로 하겠지만 소규모 쇼핑몰이나 개인사업자들은 왠만하면 설치형으로 가지 않게 되겠죠

        그런데 ajax기반은 SEO에 나쁘다고 들었는데, 구글이 wix로 만들어지는 웹문서의 양을 무시못해서 일까요? 생각보다 요즘은 검색이 잘 되더군요 ㅋㅋ

        • Matthew says:

          문서가 뜬 후에 불려와져서 rendering 되는 기존 ajax 형태는 SEO 에 매우 나쁜/치명적 입니다. 그래서 ajax 는 문서/컨텐츠를 불러오는 목적으로 사용되는 건 부적절한 사용법이고 보통 앱에서 사용됩니다.

          꼭 그 문제를 해결하려고 해서 자스 SSR 이 개발된 건 아니지만, (아래 bastcode 님의 댓글 참조) SSR 을 하면 문서/data 가 서버에서 미리 조합되고 완성되서 브라우져에 보여지기 때문에 SEO 문제가 해결됩니다.

          Wix 도 이런식으로 SEO 문제를 해결한 상태 입니다.

          “물론 기업같은데서는 설치형으로 제대로 하겠지만 소규모 쇼핑몰이나 개인사업자들은 왠만하면 설치형으로 가지 않게 되겠죠” – 네 맞습니다.

          제 막내가 7살때 학교에서 wix 로 사이트를 구축하는걸 배워갖고 와서 저한테 시연 해준적도 있습니다. 내가 싫다고 하는데도 자기도 웹사이트 만들 줄 안다며 억지로 보여줬었어요. 제 막내가 wix 개발은 저보다 선배. ㅋㅋㅋㅋ

          https://hackya.com/kr/워드프레스-보다-wix-가-더-좋은-이유/

          사실 이래서 (진입장벽이 매우 낮아서) headless CMS 가 무서운거죠. (워드프레스 입장에서 무섭다는 얘기입니다.)

  • Word says:

    안녕하세요?

    저도 해외 블로그에 게시된 글을 보고 조금 심각하다고 생각했는데, 이 글을 보니 매우 심각한 것 같네요.ㅎㅎ

    개인적인으로는 Gutenberg 통합이 블로깅 경험을 강화하여 WordPress.com을 더 활성화하는 데 초점을 둔 조치일 것 같다는 인상을 받았습니다.

    워드프레스 균열이 추후 어떤 파급력을 미칠지 두고 봐야겠지만, 한편으로는 개발자들에게 기회(?)가 되지 않을까 조심스럽게 짐작해봅니다.

    • Matthew says:

      “개발자들에게 기회” – 훔… 미국 SMB (미국에서는 직원수 100명 이하의 회사가 SMB, 중소기업으로 분류됩니다.) 상황만 말씀드리자면….

      일단 미국 중소기업의 79% 정도가 워드프레스를 사용합니다. (업종을 막론하고)
      그리고 워드프레스가 무슨 훌륭한, 기술적으로 끝내주는 CMS 라서 쓰는게 아니라 개발비가 저렴하기 때문에, 또 유지비가 적게 들어가기 때문에 워드프레스를 사용합니다. 나름 덩치가 큰 편인, 직원이 백명 가까이 되는 중소기업도 IT 쪽에 많은 예산을 잡을 수 없습니다. 그렇기 때문에 거의 모든 중소기업들이 워드프레스를 사용하는 것 입니다.

      단순히 회사 제품이나 서비스 정도를 소개하는 단순한 형태의 웹사이트를 운영하는 중소기업도 있고, 서비스 예약, 결제, 제품판매, 재고관리, 온라인 수업 진행 등등 회사 업무와 매우 밀접하게 integrate 된 경우도 있습니다.

      그리고 각 중소기업의 특화된 니즈 (needs) 에 맞춰 워드프레스가 커스토마이징이 되는데, 이 커스토마이징에 핵심이 custom post type 입니다. 왜? custom post type 이 좋은 개발 방식이라서?

      아뇨. 가장 단가가 저렴한 개발방식이기 때문입니다. 기존 워드프레스 개발자들은 순수한 php 개발자들이라고 할수도 없고, 워드프레스 방식의 php 코딩을 잘하는 사람들 입니다. 90% 이상 자스 (javascript) 쪽에 문외한 입니다.

      워드프레스가 이제 php 를 버리고 자스 쪽으로 움직이는게 이 개발자분들에게 절대 기회가 될수 없고, 중소기업들에게도 많은 고민을 하게 만드는 상황이 될 예정 입니다. 왜냐하면 자스 개발단가는 php 개발단가 보다 훨씬 더 높기 때문 입니다.

      wordpress.com vs wordpress.org 어느쪽의 interest 가 더 중요할까요? .org 에 속한 저로서도 정말 답하기 어려운 질문 같습니다.

Leave a Reply to Word Cancel reply

Your email address will not be published. Required fields are marked *