Blog

2007년 8월 12일 XpressEngine(이하 XE) 오픈 베타를 시작한지 벌써 1년하고도 6개월이라는 시간이 흘렀습니다.
당시에는 NHN에서 풀타임오픈 소스 개발을 할 뿐 모든 것을 제가 혼자 개발하던 때였습니다.
다행히 디자인 부분은 NHN 디자이너분들의 지원을 받았고 지금도 기본 스킨으로 사용되는 부분들이 있지만요. ^^

아무튼 오픈 베타를 시작할때 많은 분들이 관심을 보여주셨고 또 지금도 많은 관심과 충고/ 조언 그리고 함께 하시는 분들도 많으십니다.
그 중에 현재 XE의 개발 방향 때문에 힘드신 분들도 계시고 또 XE의 미래 방향성이 어떻게 될 것인지 걱정하시거나 불안해하시는 분들도 계실 것 같아서 XE 차후 방향에 대해서 말씀드리고자 합니다.

지금까지 XE가 발전되어온 배경과 차후 방향성에 대해서 더 쉽게 이해시켜드리기 위해서 왜 XE를 만들게 되었는지 말씀드리는 것이 좋을 것 같습니다.
아시다시피 저는 제로보드 개발자였습니다.
개인용으로 제작한 php script가 점점 배포 프로그램으로 발전했고 2001년 제로보드4를 배포하면서 웹프로그램을 정식으로 제작/ 배포하는 개발자로 알려지게 되었습니다.
제로보드4를 개발하고 배포하면서 많은 분들의 사랑을 받았지만 웹개발자였던 저는 주업이 제로보드 개발이 아니였고 열정을 가진 취미생활이였기에 주업을 잘하기 위해 제로보드4의 업그레이드를 거의 손대지 않았던 기간이 있었습니다.
거의 3년이 넘는 기간동안 서버 관리만 겨우 할 뿐 제로보드4에 신경을 쓰지 않았지만 오히려 그 시기에 많은 분들이 제로보드4를 더 키워주시고 또 참여해주셨던 기억이 있습니다.

제로보드4라는 이미 널리 알려진 그리고 이미 상당한 수의 스킨 디자인과 플러그인이 있는 프로그램의 업그레이드를 하지 않고 XE를 개발하게 된 것에는 대충 다음과 같은 이유가 있었습니다.

  1. 제로보드4는 더 이상 업그레이드할 수가 없었습니다.
    이상하게 들리실 분들이 있으실 것 같은데 지금보면 제로보드4는 프로그램의 성격보다는 라이브러리의 성격이였던 것 같습니다.
    게시판과 회원관리 기능을 위한 라이브러리들이 있었고 이를 바탕으로 기본적인 회원관리 + 게시판 기능을 가졌기에 제작 당시 상상할 수 없을 정도의 많은 스킨들, 일명 플러그인이라고까지 불리며 스킨자체 기능보다 프로그램적인 기능과 역할까지 가지고 있는 작품들이 많이 나오게 되었습니다.
    즉 제로보드4가 일관성 있는 하나의 프로그램이 아니라 거의 가져다 쓰기 좋은 코드와 환경을 갖춘 라이브러리가 되고 그 위에서 동작되는 좋은 프로그램들이 많이 생기게 된 것입니다.
    많은 분들이 사용하시는 제로보드4 기반의 프로그램들을 살펴보니 제로보드4의 업그레이드 자체가 어렵다고 생각이 되었습니다.
    제로보드4의 업그레이드를 하려면 제로보드4 기반의 널리 사용되는 스킨/ 프로그램들을 사용할 수 없기 때문이였습니다.
  2. 개발자로서의 욕심도 있었습니다.
    제로보드4는 제가 지금도 모자라지만 당시는 더욱 모자란 지식과 경험으로 겁없이 만들고 배포했던 프로그램이였습니다.
    지금 생각해보면 XE의 코드들도 부끄러운 부분들이 있는데 제로보드4는 지금이라면 절대 배포할 수 없는 그런 코드들이라고 저는 생각했었습니다.
    그래서 NHN에서 풀타임 오픈 소스 개발 지원을 받게 되었을때 이번에는 보다 멋진 그리고 체계적인 프로그램을 만들어 보고 싶다고 생각하게 되었습니다.
    물론 이런 생각들은 제로보드4를 더 이상 개발하지 않던 시절부터 제 머리속과 노트에 늘 적혔다가 지워지곤 했던 내용들이였고 이를 체계화 시켜서 XE 의 구조를 설계했고 2년 가까운 시간동안 개발을 하게 되었던 것입니다.

1번과 2번 모두 XE가 개발되기 위한 충분한 이유가 되었다고 아직도 생각합니다.
다만 제 예상보다 너무 오랜 시간이 초기 개발 목표를 충족하는데 사용되었던 것 같습니다.
확장성과 자유도가 높은 모듈 기반, 다국어, Template 기반의 MVC구조, 가상사이트, 애드온과 에디터컴포넌트/위젯처럼 기본 코드의 구조 아래 자유롭고 확장 가능한 작은 프로그램들, 웹상에서만으로도 사이트를 관리/구축할 수 있는 것까지 너무나 많은 것들을 하고 싶었던 것 같습니다.

만약 혼자서 개발했다면 아직도 지금의 반의 반도 구현하지 못하고 아마 제풀에 지쳐 포기했지 않았을까 싶을 정도로 돌이켜 보면 참 많은 기능들이 지금의 XE에 구현이 되었다고 생각합니다.
좋은 분들이 XE Open Source Project 에 참여해주셔서 같은 곳을 보고 달려주셨고 NHN에서도 팀을 만들어서 제가 전문적으로 할 수 없는 많은 부분을 같이 할 수 있도록 해주었습니다.

하지만 몇 주 전에 문득 돌이켜보니 지금의 XE의 개발 방향과 현재 모습이 너무 진취적이고 파격적일 정도의 업그레이드 양상을 보인다는 것을 느끼게 되었습니다.
즉 이미 1년 반이 넘는 시간이 흘렀고 이 동안 많은 분들이 XE를 믿고 사이트를 구축하셨는데 단지 더 나은 미래를 위한다는 명목으로 XE를 아껴주시는 분들을 힘들게 하였다는 생각이 들었습니다.
시간을 가지고 정리를 해보니 지금 XE의 코드가 제 마음에 모두 들지는 않지만 XE가 CMS로서 갖춰야 할 부분들과 또 XE위에서 모듈/위젯/애드온등 다양한 것들이 개발되어질 수 있는 가능성을 계산해보니 충분히 안정화가 필요한 단계까지 왔다는 판단이 들었습니다.
오히려 XE 자체의 코드 개선이나 기능개선보다는 XE 기반의 다양한 스킨과 프로그램들이 나올 시점이고 또 나올 수 있는 상황이라고 생각하게 되었습니다.

여기까지 읽으시는 분들 중 이미 여러번 그런 이야기를 하였는데 이제야 느낀거냐 라고 반문하실 분이 계실지 모르지만 제로보드4를 개발/배포하였던 경험에 비추어 불안한 마음과 더블어 이로 인해 개발된 코드에 대한 미련이 더 클 수 밖에 없었던 것을 이해하여 주시면 감사하겠습니다.

아무튼 사설이 길었는데 XE의 기본 코드는 다음주에 배포하게 될 1.2.2 에서 버그를 수정하는 것외에는 당분간 추가되거나 변경되지 않을 예정입니다.
특히나 1.2.0, 1.2.1 때 많은 불편을 드렸던 기본 위젯의 변경등은 절대 하지 않도록 할 예정이구요.

1.2.2 를 기반으로 사이트 구축시 차후 업그레이드가 된다고 해도 지금처럼 업그레이드에 대한 불안함과 걱정을 하지 않으시도록 하겠습니다.

많은 분들이 기대하시기도 하고 관심도 가져주시는 Textyle 이라는 이름이 지어진 XE 블로그 모듈도 XE의 기본 코드를 수정하지 않고 순수히 독립된 모듈로 개발을 하고 있습니다.
기존의 블로그툴들과는 다른 개성과 특징을 가진 괜찮은 블로그 툴이 XE 기반으로 나올것을 약속드릴 수 있을 것 같습니다.
현재 일정으로는 열심히 개발하고 있지만 5월 말이 되어야 개발이 완료될 것 같습니다.

또한 5월 말에 공식사이트 역시 개편을 같이 할 예정입니다.
공식사이트 개편때에는 현재 XE의 큰 덩치를 쪼개서 정말 기본 코드들과 그 외의 코드들을 분리할 예정입니다.
일전에 member blog에서 언급한 적도 있는데 project XE 라는 sf.net 이나 kldp.net 과 같은 프로젝트 호스팅을 할 수 있는 모듈을 이용하여 저나 XE 프로젝트 멤버뿐 아니라 스킨 제작자분들이나 애드온/모듈 개발자분들이 모두 손쉽게 XE 공식사이트에서 프로젝트를 개설하여 운영할 수 있도록 할 예정입니다.
이 project XE를 통해서 XE의 기본 코드를 개발하는 프로젝트를 개설하고 나머지 많은 부분들을 떼어내서 개발 프로젝트로 개설할 예정입니다.
이렇게 되면 순수 XE 업그레이드의 빈도는 무척 줄어들어 3개월이나 반년에 한번 정도 업그레이드를 하지 않을까 예상하고 있습니다.

5월 말까지 XE의 안정화 및 만들려고 하는 모듈들을 개발하고 6월부터는 확실한 안정화 모드를 유지하려고 합니다.
XE Code Camp (가칭) 이나 오프모임등을 통해서 XE  를 사용/ 관리하거나 XE에서 개발하는 것들에 대한 세미나등을 할 예정입니다.
그리고 여러번 언급드렸던 매뉴얼 작업이라든지 하는 부분을 보다 전문적이고 효율적으로 하기 위해 준비하고 있습니다.
물론 일정이 무척 빡빡해서 일정을 맞출 수 있을지 걱정이 되지만 현재 목표는 6월에는 새로운 모습으로 모두가 편하고 쉽게 XE를 이용할 수 있도록 하고 싶습니다.

XpressEditor가 그 이름이 가지는 의미처럼 훌륭한 컨텐츠를 생산하고 발행/ 유통 시킬 수 있는 좋은 도구가 되고 이 도구 자체로 많은 분들이 즐거워질 수 있기를 간절히 바랍니다.
지금까지의 XE 의 행보가 불안했다거나 걱정스러우셨던 분들께 심려와 불편 끼쳐드려 죄송하다는 말씀을 꼭 드리고 싶었습니다.

그리고 textyle과 공식 사이트 개편과 관련해서는 자료가 정리되는 데로 공유드리도록 하였습니다.

환절기 일교차가 심한데 감기 조심하시고 늘 좋은 하루 하루 되시기를 바랍니다.

긴 글 읽어주셔서 감사드립니다.

 

제목 최종 글 날짜
공지 XE1 신규 보안 취약점 신고 포상제 종료 안내   2019.10.23
공지 [중요!] Object 클래스의 이름 변경 안내(PHP 7.2 버전 호환성) [7] 2020.08.16 by 천재 2017.11.27
XpressEngine FaceOff 알파 버전 배포합니다. [134] [4] file 2020.03.14 by vibram five fingers 2009.02.26
XE 긴급 보안 패치 (모든 버전에 해당) [38] file 2012.08.16 by vibram five fingers 2009.04.16
XE 차후 방향성과 개발 일정 [118] file 2012.08.16 by vibram five fingers 2009.04.20
XpressEngine 저장소 분리 [13] [2] file 2012.08.16 by vibram five fingers 2009.07.10
NHN DeView 2009 행사가 개최됩니다. [8] [1] file 2012.08.16 by vibram five fingers 2009.08.26
XE CAMP에 여러분을 초대합니다! [33] [1] file 2012.08.16 by vibram five fingers 2009.10.01
Textyle v1.0b 배포를 시작합니다 [9] file 2012.08.16 by vibram five fingers 2009.10.13
XE CAMP 참가자 메일확인 바랍니다 [10] [1] file 2012.08.16 by vibram five fingers 2009.10.21
XE 캠프에 참석해주셔서 고맙습니다! [18] [3] file 2012.08.16 by vibram five fingers 2009.10.26
XE 공모전을 개최합니다! [8] file 2012.08.16 by vibram five fingers 2009.10.29
XE 1.3.1.2 배포하였습니다. [32] [1] file 2012.08.16 by vibram five fingers 2009.12.21
XE 1.4.0.10 보안패치 배포합니다. [11] file 2012.08.16 by vibram shoes 2010.03.17
XE 1.4.2 에 Optimizing 사용시 문제점 원인과 해결방법 [17] [1] file 2012.08.16 by vibram shoes 2010.05.19
Syndication Module ver 1.0 배포 [26] file 2012.08.16 by vibram five fingers 2010.06.23
검색 성능 개선 프로젝트 - nLucene [22] file 2012.08.16 by vibram five fingers 2010.10.20
XE with CUBRID [10] file 2012.08.16 by vibram shoes 2010.11.05
제2회 XE 사용자 공모전을 개최합니다. [10] file 2012.08.16 by vibram five fingers 2010.11.17
Naver Syndication API 모듈 가이드 [4] file 2012.08.16 by vibram five fingers 2010.12.17
우리 XEED가 달라졌어요! [18] [2] file 2020.03.14 by Chat 2011.01.21
XE Core, 단락편집기를 품다! [11] file 2012.08.16 by ZOPO ZP500 2011.02.09