꽤나 커뮤니티에서 질타를 받고 있지만 XE3는 보기보다 괜찮은 아이템입니다.

오늘은 현직 프론트엔드 개발자의 입장에서 바라본 XE3에 대한 이야기를 해보려고 합니다.

 

기업 주도 CMS

해외 CMS 시장을 거진 다 헤쳐먹은(?) 워드프레스는 기업이 운영합니다. 깃랩처럼 이전부터 재택근무를 시행한 회사이기도 합니다. 오픈소스는 수많은 사람들이 기여하지만 결국은 주도자가 있고 에이스 기여자가 있기 마련입니다. 잘만들어진 오픈소스는 기업이 운영하는 케이스가 꽤 많습니다.

 

그누보드가 레거시 코드, 보안 이슈 등으로 역사의 뒤안길로 빠질 뻔했지만 수익모델을 구축하고 그 수익모델의 플랫폼으로써 오픈소스를 운영하면서 신뢰도 높은 오픈소스가 되었죠. 물론 XE같은 모듈형 구조가 아니라서 전 선호하지 않지만요.

XE3도 비슷한 형태입니다. XE3의 문제점으로 지적받았던 호스팅 호환성 문제를 아예 자체 호스팅을 운영하면서 해결하고자 했는데요. 이 부분은 꽤나 영리한 접근이라고 생각합니다. 문제를 개선하고, 따라와주지 않는 기존 호스팅을 대신해 변화를 주도할 수 있으면서도 XE라는 오픈소스를 플랫폼으로써 수익모델을 만들어낸 것이기도 합니다. 자체 스토어를 운영하는 점도 그렇고요. 지속 가능한 미래는 금전적 이익이 상당한 기여를 합니다.

 

REST API

XE3는 컨트롤러에 데이터타입을 json으로 요청하면 json이 반환됩니다. 일단 라라벨 기반이기도 하고, 시대가 시대인 만큼 REST가 안되면 섭섭하죠. 실제로 개발을 해보면 다를 수도 있지만 SPA 개발의 가능성이 존재하고, 마음만 먹으면 이 REST API를 가져다가 XE기반 어플을 개발할 수도 있겠죠. 기존 XE는 만드려면 상당한 공이 들었고 API를 직접 개발해야 했다면 XE3부터는 코어에서부터 지원한다는 점이 큰 메리트입니다.

 

프론트엔드 개발자 입장에서 너무나 반가운 부분인게, SPA로 개발할 수 있다는 여지는 프론트엔드의 독립적인 발전이 가능하다는 것을 의미하기도 합니다. 클라이언트 환경이 독립적인 건 상당히 크거든요. 당장에 버튼을 누르면 새로고침 없이 추천 버튼을 누를지, 새로고침을 시킬지도 프론트엔드가 선택할 수 있습니다. DevOps가 강화되는 건 두말할 것 없는 큰 강점이기도 합니다.

 

Headless CMS를 아시나요?

백엔드만 존재하고 프론트엔드가 없는 CMS입니다. 즉, api와 관리자 페이지만 존재하고 사용자 환경은 모두 직접 구현해야 하는데요. 이 CMS의 장점은 코어에 의존적이지 않습니다. 물론 데이터를 다루는 기능은 코어에서 담당하겠지만 나머지는 모두 독립적이죠. SPA를 구현할 수도, 서버를 따로 파서 서버 사이드 렌더링을 구현할 수도 있습니다. 최근 해외 추세가 이렇습니다. XE3도 파봐야 알겠지만 서버와 클라이언트가 서로 독립적인 환경이라면 그만으로도 큰 메리트라고 생각됩니다.

 

 

XE3 봄 로드맵

https://www.xpressengine.com/forum/%EC%9D%B4%EA%B1%B4-%EC%9D%BD%EC%96%B4%EC%95%BC%ED%95%B4-4%EC%9B%94-%EB%B4%84-XE-%EC%84%9C%EB%B9%84%EC%8A%A4%EC%A0%9C%ED%92%88-%EC%97%85%EB%8D%B0%EC%9D%B4%ED%8A%B8-%EC%98%88%EA%B3%A0-1

 

XE 개발진이 XE3의 봄 시즌 로드맵을 공개했습니다.

공식 커뮤니티를 개선하고 준비 중인 플러그인들을 공개했습니다. 강화된 쇼핑몰, 블로그, 예약 관리 등등... 꽤나 공격적으로 발전하고 있다고 생각합니다. 주도적으로 생태계를 가꿔나가려는 모습이 보입니다.

 

이번 XE3가 많은 질타와 우려 속에서도 기대되는 건, XE 개발진이 생태계의 중요성을 인지하고 있기 때문입니다.

진입장벽 문제만 잘 해결된다면 XE3도 충분히 고려해볼 수 있다고 생각합니다.

XE3를 시작으로 국내 CMS 붐이 다시 찾아왔으면 좋겠네요.

 

이만 글을 마칩니다. 감사합니다.

snax

profile
안녕하세요! Digital Product Designer, Calvin Snax입니다.
제 작업물을 확인해보시거나 작업을 의뢰하고 싶으신 분들은 제 사이트를 방문해주세요.
https://calvinsnax.com

XE & Rhymix 제작 자료
#HASHTAG 레이아웃: https://calvinsnax.com/hashtag
Alice 게시판 스킨: https://calvinsnax.com/alice
Slow 테마 패키지: https://calvinsnax.com/slow
coronach 레이아웃: https://calvinsnax.com/coronach
equeer 레이아웃: https://calvinsnax.com/equeer
eden 게시판 스킨: https://calvinsnax.com/eden
  • ?
    큰규모의 프로젝트를 진행하려는 업체나 개발자에겐 괜찮은 도구일듯 합니다.
    자잘하게 필요한건 직접 개발해서 사용하면 되니.
    일반 유저들에겐 사용할 수 있는 위젯,애온, 모듈이 많아졌을때 고려해 볼 수 있는 대상이 아닐까 싶습니다.
  • ? profile
    사실 업체나 개발자에게는 오히려 적합하지 않습니다. 당장에 글에서 언급한 Headless CMS 마저도 의외로 잘 채택되지 않거든요. CMS가 가진 태생적 한계가 결국은 존재하기 때문에... 현재 XE3의 과제는 진입장벽과 생태계 활성화이고 이 점이 해결된다면 CMS 자체는 꽤나 준수한 것 같습니다.
  • profile
    저도 자료가 모자라서 아직은 사용하기 꺼려지는데 XE3 자체는 괜찮더라구요.
  • profile

    개발자의 입장에서는 충분히 공감합니다. 대부분의 개발자들이 원하는 것은 프레임워크이지 CMS가 아니거든요. CMS라고 해도 사실상 프레임워크에 가까운, 즉 프론트엔드는 직접 구현해야 하는 것이지요. 직접 구현하라고 공간을 남겨둔 만큼 내가 원하는 대로 자유롭게 구현할 수 있으니까요.

     

    사용자의 입장에서는 정반대입니다. 웬만한 파워유저가 아닌 이상 사용자는 프론트엔드든 백엔드든 어떤 소스코드를 직접 편집하고 싶어하지 않습니다. 매뉴얼이나 블로그 글에 나오는 것과 똑같은 화면을 보고 따라할 수 있어야 하거든요. 직접 구현하라고 남겨둔 공간은 그냥 아무 것도 할 수 없는 공간으로 남게 됩니다.

     

    이 긴장 속에서 균형을 찾는 것이 CMS의 숙명인데... 워드프레스, 그누보드, XE1, XE3는 각각 다른 지점에서 균형을 찾으려고 한 것 같습니다. 시대의 요구가 다르기도 했고, 물론 그 시대의 요구에는 개발자들의 요구도 포함되어 있지요. 어느 한 쪽으로 너무 치우치면 다른 쪽이 사용하기가 불편해지거나, 성능이나 보안 등 다른 부분에서 부작용이 나타납니다. 무엇이 더 중요한지는 사이트 운영 목적과 운영자의 취향에 따라 골라쓰면 되지, 어느 쪽이 객관적으로 우수하다고 말하기는 어려운 것 같습니다. 유행은 돌고 도는 것이니까요.

     

    XE3는 컨트롤러에 데이터타입을 json으로 요청하면 json이 반환됩니다.

    XE1도 그렇습니다. 기본값이 XML로 떡칠되어 있어서 눈치채지 못하는 분이 많은데, JSON으로 요청하면 JSON으로 돌아옵니다. 이게 훨씬 깔끔하기 때문에 라이믹스에서는 기본값이 JSON입니다. 저도 RXE 기반으로 SPA를 개발해 보았는데 URL이나 act가 좀 지저분해 보인다는 점을 빼면 이 부분에서 특별히 불편을 느낀 것은 없습니다.

     

    당장에 버튼을 누르면 새로고침 없이 추천 버튼을 누를지, 새로고침을 시킬지도 프론트엔드가 선택할 수 있습니다.

    이미 많은 XE1 프론트엔드 자료들이 그렇게 선택해서 사용하고 있습니다. 레이아웃, 스킨 많이 만들어 보셨으니 잘 아실 텐데요. XE3에도 여러 장점이 있지만, XE1을 깎아내리면서까지 비교할 필요는 없다고 생각합니다.

  • profile profile

    기존 XE도 지원되는군요. 여태 레이아웃, 스킨 제작은 기본 스킨 소스를 기반으로 작업했기 때문에 XE의 세부적인 영역은 잘 몰랐네요. XE1을 깎아내린다는 느낌으로 보셨다면 그런 의도는 아닙니다. 단순한 예시입니다. 물론, 새로고침 없는 스킨들도 많이 나와있지만 xe 구조와 php 지식이 전무한 저에게는 그 새로고침없는 ajax 처리가 어렵게만 느껴졌습니다. 하지만 rest를 사용한 spa는 자바스크립트만 안다고 하면 플랫폼에 대한 배경 지식은 크게 요하지 않게 되죠. 글에서 언급한 내용은 버튼을 누를 때 새로고침될지 말지를 프론트가 취사 선택할 수 있다. 즉, 의존성이 덜하다, 좀 더 자율적이다 라는 의미입니다. 이 형태의 장점은 API 명세만 있으면 개발할 수 있다는 것이죠. 제가 생각하는 프론트엔드의 독립이 이런 거라고 생각합니다.

    그리고 코어단에서부터 이러한 사용 사례를 보여주는 것 또한 의미가 크다고 생각합니다. 이번 XE3에 대해 긍정적인 시각은 기술이 진보했다라는 점보다는 생태계를 주도하겠다는 의지가 보였거든요. 큰 맥락은 XE 개발진의 행보가 꽤나 의미가 있다.. 정도로 받아주시면 좋을 것 같습니다.

  • profile
    XE3 내용 잘 봤습니다.
    내용이 다소 모르는 용어들이 나오네요^^
    snax님께서는 엄청 실력자시네요.
    XE3가 안정화 될 때를기다려봐야겠네요.
    그때 관련자료개발을 해봐야겠습니다.

    저 또한 그누보드보다는 XE에 더 애착이 갑니다. 그이유중에 하나가 모듈화...테스트도 할겸해서 그누보드 자료들을 몇가지 개발해봤는데... 개발은 가능하겠더군요. 다만 코어을 많이 건들어야 하고... 구조화가 덜 된 느낌이었습니다. 하기야 쓰는 입장에서 잘 쓰면야 아무 문제없죠^^

    XE3의 아쉬운 부분은 XE3로 갈것이 아니라... 기존 XE를 업데이트 하는 것이 좋았을것 같아요. 잘쓰던 툴을 갑자기 전체적으로 비꾸어버리면 큰혼란이 생기기 마련입니다. 제로보드에서 XE로 넘어올 때도 그런일이 있었던 것으로 알고 있습니다.

    그때와 지금은 상황이 다릅니다. 지금은 워드프레스,그누보드 등 안정적인 CMS가 있습니다. 이와중에 구조를 바꾸어버리면 기존XE 유저들이 이탈할 가능성이 많습니다. XE타운도 그맥락에서 만들어진 사이트로 알고 있습니다.

    XE3가 나왔으니... 그래도 XE3가 잘 진행되기를 기대해봅니다. 당연히 모듈화는 잘되어 있겠죠? 안정화도 기대할게요. 설치를 해봤는데... 설치가 안되더군요. 어려운 여건이지만... 빨리 안정화가 되었으면 좋겠습니다.
  • profile profile
    시대에 따른 변화는 어쩔 수 없다고 생각합니다. 그누보드도 세대를 거듭하면서 상당히 많은 변화가 있었습니다. 다만... XE3는 아예 마이그레이션이 안되고, XE3 만든다고 기존 프로젝트와 커뮤니티를 싸그리 외면한 점이 가장 실망스러운 점이기도 하죠. 라이믹스가 나오기 전까진 이제 망한건가...? 싶기도 했습니다.

    이 글을 쓰면서 XE3가 기존 모듈형이 아닌 그누보드나 워드프레스와 같은 플러그인인 것 같더라구요. XE의 매력은 모듈형 구조인데 이걸 버린게 참 아쉽습니다. 장단점이 명확한 만큼 호불호도 강한 그런 프로젝트같아요. 어떤 식으로 수요를 이끌어낼지 궁금하네요.
  • profile profile
    https://store.xehub.io/plugins/importer

    XE1->XE3 마이그레이션 플러그인은 있습니다.
  • profile

    아무리 좋은 물건도 사용자가 사용하지 않으면 고철이 되버립니다.
    결국 평가는 사용자가 하는것이고 XE3도 시간이 지나면 그 결과가 나오겠죠 ㅎ

  • ?

    좋은 글 감사합니다.
    미국에 dsl 인터넷이 유행하던 시절 즘, 한국에 홈피라는 유행이 시작한 거 같아요. 당시엔 빠른 인터넷속도 때문이었는진 몰라도 다른나라에선 시작도 해보기전에 한국에선 유행이 끝나기도 했죠. 적어도 미국에서 보면 그런 느낌이에요.
    아까 말씀드린 ‘홈피’ 유행의 주역은 제로보드였다고 확신해요. 코딩을 몰라도 쉽게 제어할 수 있는 CMS 는 파격적이었죠. 당시 교환용으로 작은 배너 한두개즘은 다들 만들어 놓으시지 않았나요? 가끔 보이는 멋진 플래시 배너를 보게되면 감탄하고... 그때 생각만해도 추억에 설레게 되네요. 참고로 이쪽관련 일을 하고있다면 하고있지만 풀타임 (특히 프론트) 프로그래머는 아니에요.

    이 이야기를 왜 하냐면 제로보드나 xe는 코딩을 모르는 사람들의 니드와 원트를 모두 해결해주는, 접근성이 매우 뛰어난 툴이기 때문이죠. 지금도 타운엔 개발과 전혀 상관없는 분들도 꽤 오실거에요.

    제로보드/XE1/라이믹스를 있게한건 뚸어난 접근성, 그리고 그로인해 얻은 커뮤니티의 지원이겠죠. 라이믹스가 그 산 증인이구요. 그런 장점들을 다 버리고 개발전문툴로 방향을 잡은거 같은데 이건 좀 아닌거 같아요. 이미 세계는 더 좁아져서 워드프레스 한글 튜토리얼도 어렵지않게 찾을 수 있죠. 아예 노드기반툴들도 개발되고 있고, 더 나아가서 golang 으로 만든 프로젝트들도 하나 둘 보이네요.

    메신져만 봐도 세계적으로 와츠앱이나 라인, 페북메신져가 점유율 높잖아요? 그런데 한국분들이 동요하면서 카톡 버리고 갈아탈까요? 아니죠. 다음에서 꾸준히 이 시장을 위해 개발해왔으니까요. XE3는 한국시장에 카톡같은 존재가 되었어야 더 성공적이지 않았을까요? 워드프레스의 단점이라면 게시판과 회원관리 그리고 한글화일텐데, 그런 불편함을 시원하게 해결해 줄 기회를 뻥 차버리고 뿌리부터 세계적인 CMS들을 잡아보겠다고 폼재는게 거의 배신감이 느껴지죠. 버즈워드에 같혀버린 실패작같은 느낌이에요. 적어도 첫걸음은요.

    이것저것 개발환경엔 나아젔을지 몰라도, 적어도 라이믹스보다 사용법이 어려워서 접근성이 떨어진다면 90프로 이상 실패할거에요. 앞으로 노력해서 접근성을 타이트하게 잡아준다면 모를까, 자신들을 받쳐준 사람들이 칭찬보단 실망을 더 하는 이 분위기를 빨리 읽지 못하면 아마 라이믹스가 더 장수하지 않을까 싶네요.