Home > 정보마당 > 공개SW 도입사례

공개SW 도입사례

2013
nodeJS, Gruntjs, less, jsdoc3, wkhtmltopdf

“한국의 모질라재단 꿈꾸는 공개SW 연합체”


엑시스제이(AXISJ. www.axisj.com)를 한마디로 정의하는 건 쉽지 않다. 장기영 대표는 “비유하자면 다문화 공동체와 비슷하다”고 말한다. 이곳은 개발자 출신 개인사업자가 모여서 일하는 공개SW 연합체인 동시에 공개SW 개발자 커뮤니티인 깃허브(GitHub) 등을 통해 함께 활동하는 폐쇄형 커뮤니티이기도 하다. 장 대표는 폐쇄적 형태로 유지하는 이유로 “오픈 커뮤니티로 했을 때 겪는 문제, 예를 들자면 의견이 한데 안 모아지거나 개발 속도가 느려지는 문제를 해결하기 위한 방법”으로 선택했다고 말한다. 엑시스제이는 현재 핵심 개발자 3∼4명을 중심으로 질문 답변 참여자나 후원 그룹 15∼20명에 이르는 개발자가 참여하고 있다.

- 기     관 엑시스제이
- 수행년도 2013년
- 도입배경 공개SW 자바스크립트 UI 프레임워크로 개발 환경 개선
- 솔 루 션 nodeJS, Gruntjs, less, jsdoc3, wkhtmltopdf
- 도입효과 : 다양한 컴포넌트 등을 제공, 기존 라이브러리만으로 한계가 있던 개발 환경을 해결할 수 있는 자바스크립트 UI 제공

공개SW 연합이 만든 자바스크립트 UI 프레임워크

엑시스제이의 시작은 2008년으로 거슬러 올라간다. 당시 개발자로 일하던 장 대표는 자바스크립트 라이브러리를 개발하기 시작했다. 당시만 해도 자바 스윙이라는 라이브러리를 사용 중이었지만 UI가 지저분한 데다 아쉬운 점이 많았다고. 결국 직접 UI를 개발하겠다고 마음먹은 장 대표는 “굳이 뭐하러 만드냐”는 주위의 만류에도 공개SW 라이브러리 제작을 시작했다. 이렇게 시작한 첫 프로젝트명은 아리아스크립트. 그는 2009년 회사를 그만 두고 본격적인 공개SW 라이브러리 제작을 시작하면서 코드를 통째로 바꾼 모즈테일(modstail)을 내놨고 다시 2012년 또 한 차례 코드를 뒤집어 만든 엑시스제이를 선보였다. 이렇게 2번이나 통째로 코드를 재작업한 이유를 물으니 “첫째는 완성도 부족, 둘째는 개인적인 불만족”이 이유였단다. 개발자라는 게 늘 자신이 만든 코드에 만족을 못하고 욕심을 부리다 보니 그렇다는 얘기다. 물론 이런 과정을 거쳐 탄생한 엑시스제이는 이젠 “코드를 뒤집을 일은 없다”고 말한다.


장 대표는 엑시스제이의 전신 격인 모즈테일을 2010년 완성한 이후 각종 SI 현장에서 직접 사용하기 시작했다. 모즈테일은 UI 개발에만 3개월 가량 시간을 투자한 결과였다. 물론 이후 후속 버전인 엑시스제이 역시 전면 재작업을 하면서 또 다시 3개월을 투자해야 했다. 완성도 있는 디자인 작업을 위해 디자이너 김정원 씨도 참여했다. 개발자 2명과 디자이너, 보조 디자이너까지 3명이 엑시스제이 개발에 매달렸다.


엑시스제이(AXISJ)는 공개SW 자바스크립트 UI 프레임워크로 ‘axis of javascript’의 약자, 그러니까 자바스크립트의 축이라는 뜻이다. 애플리케이션 개발 경험을 구현한다는 의미도 동시에 담고 있다.


엑시스제이에는 수많은 공개SW가 담겨 있다. nodeJS, Gruntjs, less, jsdoc3, wkhtmltopdf 같은 공개SW를 이용해 개발한 것. nodeJS는 직접 사용했다기보다는 다른 공개SW를 작동시키기 위해 활용했다. gruntjs를 이용해 소스 코드를 합치고 압축해 배포했고 gruntjs-jsdoc를 이용해 소스 코드 안에 있는 API 설명 문구를 문서화하는 것도 잊지 않았다. 이렇게 문서화한 HTML 페이지는 wkhtmltopdf를 이용해서 PDF 파일로 변환했다.


엑시스제이는 자바스크립트 UI로 그냥 간단한 것을 예로 들면 달력 선택하는 UI 같은 컴포넌트를 비롯해 다양한 UI를 제공한다. 라이브러리만으로 개발에 한계가 있는 만큼 이런 문제를 해결하기 위한 솔루션인 것.


이제까지 선보인 공개SW가 엑시스제이만 있는 건 아니다. 반응형 웹 애플리케이션 템플릿 패키지인 악수, 공개SW 웹폰트 아이콘, 그러니까 웹 애플리케이션 프로젝트에 벡터 아이콘을 이용할 수 있도록 900개가 넘는 벡터 아이콘을 쉽고 빠르게 웹 애플리케이션에 구축할 수 있게 해주는 액시콘도 선보였다. 액시콘은 자바스크립트 없이도 CSS만으로 조작할 수 있는 건 물론 아이콘 검색 도구도 함께 제공한다. 물론 액시콘은 악수와 함께 이용할 수 있다. 지난해에는 SQL게이트와 공동으로 웹브라우저용 DB 쿼리툴인 액스게이트 프로토타입도 제작했지만 지금은 개발을 중단한 상태다. 어쨌든 엑시스제이가 개발하는 모든 작품은 웹 애플리케이션이라는 큰 테마를 중심으로 개발 방향을 이어가고 있다.




▲ 엑시스제이 아키텍처 구조도


재미있는 개발품도 눈길을 끈다. 제이슨껌이다. 제이슨껌은 엑시스제이가 지난해 선보인 제이슨(JSON) 데이터 포맷 뷰어다. 제이슨 데이터를 분석하고 편집 가능한 뷰어로 구조를 분석하거나 원하는 데이터를 쉽게 이용할 수 있게 해준다. 블록을 들여쓰기 정렬을 해주거나 트리형 리스트로 바꿔서 원하는 것만 집어서 집중할 수 있는 것. HTML이나 XML을 제이슨 형태로 바꾸는 기능도 갖췄다. 그런데 다른 건 다 공짜인데 제이슨껌만 4.99달러, 유료다. 왜 그럴까. 이유를 물었더니 장 대표 대답이 재미있다. “아. 그거요? 껌팔이 프로그램이죠. 하하.”


엑시스제이는 공개SW를 기반으로 한 비영리재단을 꿈꾼다. 장 대표가 롤모델로 삼고 있는 건 파이어폭스 등으로 유명한 모질라재단이다. 회사 형태를 취해도 될 법한데 굳이 힘들게 애매한 형태를 유지하는 이유도 여기에 있다. 아직까지 재단 형태로 만들려면 어려움이 많지만 공익 재단처럼 엑시스제이가 공개SW를 위한 단체가 되기를 바란다는 것이다. 이런 설명을 듣고 나니 문득 엑시스제이 홈페이지에서 봤던 ‘거룩했던’ 설립 목적이 이해가 갔다. “불모지나 다름없는 대한민국에 공개SW 문화를 정착시키고 소프트웨어 개발 주권을 바로 세운다”.


어쨌든 당장은 재단 형태를 취하기 어려운 만큼 현실적으로 엑시스제이를 운영하면서 장 대표가 사비를 들이는 것도 많다고 한다. 제이슨껌이 ‘껌팔이’에 나선 이유도 여기에 있다. 내부 팀원을 위한 도서 구입이나 개발 서버 비용, 디자인 비용 등을 위해 쓰려는 것이다. 또 엑시스제이는 지난해 연말 처음으로 참여자를 위한 영웅 어워드라는 행사를 진행했다. 개발이나 디자인, 홍보, 후원 등 4가지 형태로 참여하는 후원 그룹을 영웅으로 칭하고 이들에게 감사의 마음을 전하자는 취지로 마련한 행사다. 제이슨껌 판매를 통한 수익은 이런 후원자를 위한 행사에도 쓰일 예정이다.



모든 개발작은 깃허브에 100% 소스 공개

엑시스제이가 개발한 모든 작품은 100% 소스 코드까지 깃허브를 통해 공개하는 걸 원칙으로 한다. 이런 활발한 공개 원칙은 엑시스제이가 열어놓은 깃허브 쪽으로만 매일 200∼300명에 달하는 개발자가 접속할 만큼 인기가 높다. 장 대표는 “정확하게 산정할 수는 없지만 엑시스제이를 이용한 프로젝트가 지금도 100개 정도는 돌아가고 있다고 보면 된다”고 말한다.


상용 제품과는 일단 가격 면에서 비교가 안 된다. 같은 기능을 제공하는 상용 제품의 경우 외산이 많은데 장 대표 설명에 따르면 “싸게 봐도 돈 천만원 이상은 들어간다”는 설명이다. 여기에 유지보수 비용도 연간 500∼1,000달러는 내야 한다. 반면 엑시스제이는 공짜다. 무슨 말이 필요하랴.


물론 단순하게 가격만 싸다고 쓸 수는 없는 법이다. 성능을 물었다. 장 대표는 “단순하게 커피를 마신다는 면만 보자면 상용이나 공개SW의 가치는 같다”고 말한다. 하지만 엑시스제이는 단순한 가치를 떠나 상용과 견줘도 98% 수준은 된다고 강조한다. 나머지 2%가 궁금했다.


“성능 자체가 떨어진다는 건 아닙니다. 엑시스제이를 개발한 사람들은 모두 개발자이고 속된 말로 SI밥 먹고 사는 사람들이에요. 불필요한 기능을 뺐다는 얘기입니다.”


보통 상용을 쓰면 필요하지 않은데 들어가 있는 게 많기 일쑤다. 엑시스제이는 “없는 거 빼고 다 있다”. 물론 꾸미는 것, 그러니까 포장도 상용보다 조금 떨어질 수는 있지만 어디까지나 실제로 쓰는 실속에 집중한 제품이라는 설명이다.


다음으로 걸리는 문제는 유지보수다. 장 대표도 인터뷰 도중 공개SW의 문제점 중 하나가 물어볼 곳이 없다는 것으로 들기도 했다. 엑시스제이는 어떨까.
엑시스제이는 이런 문제 해결을 위해 3가지 솔루션을 제공한다. 첫째는 공짜를 원하는 그룹. 이들을 위해선 깃허브에 이슈 제기 코너를 마련해 질문을 하면 반드시 답변해준다는 것. 장 대표는 “이제까진 답변 안 해준 적이 없다”고 말한다. 엑시스제이를 직접 개발한 개발자는 물론 이를 현장에서 활용 중인 후원 그룹까지 성실하게 답을 달아준다.


다음은 연간 하자보수계약이다. 연간 120∼150만원 사이 정도에 계약을 맺고 개발자가 직접 하자보수를 맡아주는 것이다. 마지막은 독점 계약으로 쉽게 말하면 SI를 맡는 것이다. UI에서 커스터마이징까지 프로젝트에 대한 모든 책임을 지는 것이다.



“공개SW 장점은? 자유다”

엑시스제이는 현재 엑시스제이5 버전을 개발 중이다. 깃허브를 통해 프로젝트를 진행 중이며 제이쿼리 기능을 모두 구현할 예정이다. 장 대표 설명에 따르면 현재 완성도로 따지면 85% 수준이지만 기존 엑시스제이 컨버팅을 통해 유연한 에디팅 방식을 구현하게 될 것이며 공개 시점은 계획상으론 올해 10월 정도가 될 것 같다고 말한다. 장 대표는 현재 나온 엑시스제이는 한국 시장에 특화된 것이었다면 엑시스제이5는 해외 시장에서도 충분히 통할 만큼 가능할 것이라고 덧붙였다.


재미있는 프로젝트도 하나 더 진행하고 있다. 엑시스제이 개발에 참여했던 디자이너 김정원 씨가 전 세계를 여행 중인데 여행지마다 엑시스제이 테마를 추가하는 작업을 하고 있는 것이다. 지금은 호주 테마가 완성된 상태이고 뉴질랜드와 칠레 등이 조만간 선보일 예정. 이런 식으로 엑시스제이에 전 세계 테마가 추가될 예정이다.


마지막으로 장 대표에게 공개SW의 장점이 뭐냐고 물었다. 경제적 이득을 얘기할 줄 알았지만 그가 먼저 꺼내든 말은 “성능이 더 월등하다”는 것이다. 오히려 상용에 없는 것까지 갖춘 경우가 많다는 얘기다. 다음으론 안정성이 좋다는 걸 꼽는다. 장 대표는 “안정성이란 다른 말로 바꾸면 얼마나 테스트가 됐냐”는 말과도 같다고 말한다. 이런 점에선 더 많은 사람이 참여하는 공개SW가 더 유리하다는 것이다.


장 대표는 “한마디로 공개SW는 자유”라는 게 가장 큰 매력이라면서 공개SW에는 상용엔 없는 가치가 있다는 점을 든다. 그는 영화 루시에 나왔던 내용을 인용했다. 인간의 평균 뇌 사용량이 10% 밖에 안 되는데 100%까지 진화를 하는 영화 속 주인공 루시가 결국 인간의 뇌를 그렇게까지 쓰게 됐을 때 선택한 건 지식 전달이라는 것. 장 대표는 공개SW는 이런 지식의 공유, 다음 세대에게 지식을 전달한다는 점에서 공개SW는 사명감이나 신념을 갖게 해주는 멋진 수단이라고 말한다. “공개SW는 당신의 지식을 후세에 남길 방법”이라는 얘기다.



[인터뷰] “상용에 없던 기능·안정성도 공개SW가 유리”

엑시스제이 장기영 대표


엑시스제이 장기영 대표

Q. 공개SW의 가장 큰 장점은 뭔가?

A. 공개SW는 한마디로 자유라고 할 수 있습니다. 상용에 없는 가치도 있죠. 지식의 공유 수단이자 다음 세대에게 지식을 전달한다는 점에서 공개SW는 사명감과 신념까지 느낄 수 있게 해주는 멋진 수단입니다. 그 뿐 아니라 현실적으로도 이젠 상용에 없는 기능까지 갖춘 경우도 많죠. 안정성도 마찬가지예요. 안정성을 다른 말도 바꾸면 얼마나 테스트가 됐냐는 말과도 같은데 이런 점에선 더 많은 사람이 참여한 공개SW가 더 유리하다는 것이죠.


Q. 유지보수 문제에 대한 해결책도 있나?

A. 엑시스제이를 이용하면 아무런 문제가 없습니다. 깃허브에 이슈 제기 코너를 마련했는데 질문을 하면 반드시 답변을 해줍니다. 이제까지 답변을 안 해준 적이 없습니다. 엑시스제이를 직접 개발한 사람은 물론이고 이를 SI 현장에서 직접 활용 중인 후원 그룹 개발자도 이런 질문에 성실하게 답변을 달아줍니다. 공개SW를 쓸 때 보통 물어볼 곳이 없다는 게 단점으로 작용할 수도 있는데 엑시스제이는 이런 문제가 없는 거죠.


Q. 앞으로 엑시스제이가 발전할 방향은?

A. 우리가 롤모델로 삼고 있는 건 모질라재단입니다. 회사 형태를 취해도 물론 되고 아직까지 재단 형태로 만들려면 어려움도 많지만 공익 재단처럼 엑시스제이가 공개SW를 위한 단체가 됐으면 합니다. 불모지나 다름없는 대한민국에 공개SW 문화를 정착시키고 소프트웨어 개발 주권을 바로 세우고 싶다는 그런 희망이죠.




- 공개SW 역량프라자
맨 위로
맨 위로