GR Core 와 Tool 에 대하여
Posted by 시리니Aug 19
바톤 리스트 펼쳐보기
잇는 글쓰기는 처음인데, 아리새의펜촉님께서 넘겨주셔서
한 번 생각해 보는 기회로 삼아 볼까 합니다.
주제도 아주 흥미로운 것을 주셔서 (저만 그런가요 ^^;) 이야기가
길어질지도 모르겠는데 최대한 짧고 간결하게 쓸 수 있도록
노력해 보겠습니다.
GR Series 에서 필요로 하는 외부 라이브러리들을 모두 통합해서 가지고 있고
현재 당장은 필요 없지만 차후에는 필요하게 될지도 모를 라이브러리까지
내장하고 있습니다.
또한 일관성있는 DBMS 연결과 동작지시, 기본적으로 공통 작업등을
자체적으로 정의하고 있으며 이를 통해 Core 를 이용하는 모든 도구들이
통일성 있고 예측 가능한 동작을 할 수 있게 됩니다.
XE 의 경우도 마찬가지 방식이지만 XE 의 Core 가 마치 "심장" 과도 같은
역할을 한다면, GR 에서 Core 는 "허브" 정도의 역할을 한다고 보시면 되겠습니다.
사실 Core 전략은 새롭다거나 신기능이라거나 그런 것은 아니구요.
개발과정을 좀 더 모듈화하고 각각의 도구들이 좀 더 유기적으로 동작할 수 있도록
하려면 어떻게 해야 할까 고민 끝에 "가장 노력이 적게 드는" 방법을 찾다가
Core 전략을 선택하게 되었습니다.
다른 도구들과 달리 GR Series 는 개발 리소스가 매우 한정적인 편입니다.
물론 도움을 주시는 분들이 계셔서 그 나마 프로젝트를 유지하고 있지만
지금까지와 같은 개발과정을 앞으로 계속 유지할 경우 어느 시점 이후부터는
한계에 부딪치게 될 겁니다.
따라서 이를 미리 대비하여 개발 단위를 좀 더 작게 분할하고 분할된 작업량을
다시 효율적으로 분배할 수 있는 방안을 준비해야 하는데, 저는 Core 가
완전히 정착된 이후에 그 것이 가능해질 것이라 생각하고 있습니다.
단순한 개발 과정의 변화라기보다는, 생존을 위한 변화라고 할 수 있습니다.
빠른 속도와 가벼움이 사라지는 것은 아닐까 우려하고 계십니다.
특히 제일 먼저 시작한 GR Board 의 경우 이러한 우려가 이미 현실이 되어
사용자분들중 일부는 v1.8.x 안정버젼에서 업데이트를 그만두시는 경우도 보고 있습니다.
(아직 v1.6.x 안정버젼에서 머무르고 계시는 분들도 적지 않으신 것 같습니다.)
그러나 GR Core 로 장차 GR Series 가 통합 연동되게 되면
오히려 개발 속도나 동작 속도가 지금보다 훨씬 더 빨라질 것으로 예상하고 있습니다.
물론 이러한 저의 예상을 믿지 못하시는 분들도 계시지만 한가지만 말씀드리면
프로그램 자체의 크기가 꼭 동작 속도나 가벼움을 뜻하지는 않는다는 사실입니다.
(XE 의 경우에도 이러한 오해가 마치 사실처럼 굳어진 케이스입니다.)
GR Series 개발의 특수성을 감안할 때 개발 프로세스의 변화는 반드시 필요하고,
또 프로세스가 변화됨과 동시에 전체적인 도구들 간 연동과 역할 분담이
좀 더 명확해져야 합니다. 그리고 이러한 과정 속에서 분명 지금 보다는 좀 더 좋은
성능의 도구들을 사용해 보실 수 있습니다.
개선 방향의 0순위는 "속도" 입니다. 그 것이 개발 속도든 동작 속도든 Core 시대에는
지금보다 더 빠르게 되도록 만들 생각입니다. 안정적으로 사용할 수 있으면서
빠른 속도로 동작하는 것. 그 것이 제가 원하고 여러분들이 원하시는 것이겠죠?
그러나 경우에 따라서는 MSSQL 도 지원해야 할테고, Cubrid 나 SQLite 등을
지원해야 할 것입니다.
이러한 지원을 위해서는 먼저 DBMS 관련 작업들을 한 곳에서 통합해서
체계적으로 관리할 필요가 있습니다. 이는 앞으로 Core 가 해결해야 할 하나의
숙제입니다.
MSSQL 의 경우는 현재 가지고 있는 라이센스나 MS Windows 서버가 없어서
개발이 어떻게 될지는 모르겠습니다. 우선 고려하고 있는 것은 Cubrid 이고,
GR board v1.9.x 가 시작되는 시점부터 아마 조금씩 지원이 되지 않을까
생각됩니다.
저에게 있어 GR Series (GR Tools) 는 참으로 뗄래야 뗄 수 없는 존재입니다.
처음 GR Board 를 만들었을 때, 그리고 시간이 흐르면서 Blog 나 Counter 등을
만들고 최근의 Forum 까지 오면서 최근 제 인생에 적지 않은 시간을 투자했고
또 적지 않은 노력을 기울인 자식같은 존재들입니다.
몇 년의 세월을 거쳐 오면서 이런 도구들 덕분에 나름 인지도라는 것을 얻기는 했지만
아직 대부분의 사람들이 모르는 도구이고, 또 웹을 좀 안다는 분들도
정확히 뭘 하는 도구들인지 아시는 분들은 드뭅니다. 직설적으로 말하면
아직도 듣보잡이라는 말일테고, 앞으로 언젠가 한 번 알려지는 날이 올지 어떨지도
모르겠습니다.
이 도구들을 만들면서 즐거웠던 적도 많았고 슬펐던 적도 많았습니다.
제 전공분야가 아니지만 공부를 해 보면서 나름 깨닫는 부분도 많았고 컴퓨터 공학의
어려움에 대해 느끼면서 즐거운 마음으로 코딩했습니다. 반면 스스로가 만들어낸
버그 덕분에 애를 먹기도 했고 본의 아니게 사용중 피해를 입으신 분들로부터
욕도 많이 먹었습니다.
또 기존 사용자분들로부터는 왜 홍보를 제대로 하지 않느냐는 질책을 듣기도 했습니다.
나름 여기 저기 알리기는 했는데 제가 만든 것들을 막 자랑하거나 하는 게 좀 부끄럽기도 하고
제 성격에도 안 맞는 것 같아 블로그를 통해서만 소개해서 그런 것 같습니다.
오픈소스 프로젝트로 취미 삼아 하는 일인데 상용 소프트웨어 수준의 보상을
요구하는 분들이나 잘못된 사실을 마치 사실인 양 호도해서 제가 만드는 도구들이
평가 절하되도록 하시는 분들, 그리고 타 도구들과 지속적인 비교를 통해
저를 밟고서 우월의식을 고취시키려 하시는 분들을 보면서 사실 요새 좀 지쳤습니다.
예전에는 소통을 나름 중시했으나, 최근에는 소통에도 비싼 대가가 지불된다는 사실을 깨닫고
소통은 최소한으로 줄이는 중입니다. 남들이 어떻게 생각할까, 남들이 이상하게 보지는 않을까,
남들이 내 말을 오해하진 않을까, 남들이 내 글을 보고 화 내지는 않을까... 등...
이러한 "심려" 가 말 그대로 마음에 생각을 계속 쌓게 만들고 결국 쌓인 만큼 부담이 되더라구요.
그래서 요즘은 누가 뭐라고 해도 별로 무신경하게 되고 욕을 하던 비난을 하던 거짓말을 하던
관심을 잘 가지지 않게 되었습니다. 그럴 시간에 제 본연의 공부나 하고, 책이나 보면서
저를 위한 시간을 가지는 게 더 좋을 것 같더라구요. 또 요즘에는 그림 그리는 새로운 취미도
하나 만들어서 거기에 빠져 살기도 합니다. ^^;
거짓은 언젠가 밝혀지기 마련이고, 오해는 언젠가 풀려지기 마련이라고 생각합니다.
그 시기가 비록 당장은 멀어서, 그 동안에 조금 불편하고 조금 짜증이 나더라도
그냥 그렇게 담담하게 보내면 되는 것 같습니다. 별 시덥잖은 작은 프로젝트나 하는 주제에
마치 인생의 풍파를 다 겪은 듯한 글이라니, 저도 좀 갱생해야 겠네요. ㅎㅎ;
오픈소스의 미래라는 것은 생각처럼 그리 밝지 않다고 생각됩니다.
서로가 서로를 도와서 시너지를 만들어내야 그 생태계가 유지될텐데,
지금은 마치 어느 한 쪽의 희생을 강요하는듯한 분위기로 가고 있습니다.
무엇이 우리 사회를 이렇게 만들었을까요?
초/중/고/대학교 까지 아이들을 그저 무한경쟁으로 서로 찍어 내리게 하는 것만 가르친
우리나라의 100일 대계 교육정책이 문제일까요? 아니면 "나만 아니면 된다" 는
무한 이기주의가 우리 사회에 만연해져서 그런 걸까요?
모르겠습니다. 요새는 이런 얘기를 하는 것 조차 부질없어 보이기도 합니다.
분명한 것은, 이대로 가다가는 우리나라의 오픈소스 생태계라는 것은
상당히 기형적인 모습이 될 것이라는 점입니다.
이 글을 읽어주시는 분들께 간곡히 부탁드리고 싶네요.
GR Series 가 아니어도 됩니다. 현재 많은 분들이 참여하고 계시는 Textcube 나
XpressEngine, 그누보드, metaBBS 등과 같은 오픈소스 프로젝트들에 조금이라도 좋으니
참여해 보시면서 힘이 되어주세요. 꼭 개발을 할 줄 알아야 하는 것은 아닙니다.
문서화에 도움을 주실 수도 있고, 혹은 블로그에 글을 쓰면서 홍보를 해주실 수도
있겠고 버그 제보등을 하실 수도 있으실 겁니다.
이러한 작은 도움들이 모이면 큰 힘이 됩니다. 그리고 이러한 문화가 정착됨으로서
우리나라의 오픈소스 생태계가 다시 살아나게 됩니다.
어떻게 쓰다보니 이런 하소연을 또 하게 되었는데 염치 불구하고 부탁드려 봅니다.
여러분들이 관심을 가지고 계시는 프로젝트에 참여해 보시면서, 오픈소스의 즐거움도
느끼고 모두가 win-win 할 수 있도록 힘이 되어 주세요. :)
...쓰다 보니 또 무진장 길어졌네요. =ㅁ=;
마침 쓰고 싶은 주제의 글감을 넘겨 주셔서 재밌게 써 보았습니다.
이 다음글을 쓰실 분들께 바톤을 넘겨드려야 본래 맞는 것인데
현재 시국이 시국인지라 저는 따로 누군가에게 직접 바톤을 넘겨드리진 않고
아래 주제로 글을 쓰실 예정이거나 혹은 이미 쓰신 분들이 계시면
그 분이 바톤을 받으신 것으로 여기도록 하겠습니다.
(제 짧은 인맥으로는 사실 누군가를 정하는 것 조차 사치입니다. -_;;)
『오픈소스』에 대해서
긴 글 읽어주셔서 감사합니다. 아울러 바톤을 받아주신 분께도 감사드립니다. :)
잇는 글쓰기는 처음인데, 아리새의펜촉님께서 넘겨주셔서
한 번 생각해 보는 기회로 삼아 볼까 합니다.
주제도 아주 흥미로운 것을 주셔서 (저만 그런가요 ^^;) 이야기가
길어질지도 모르겠는데 최대한 짧고 간결하게 쓸 수 있도록
노력해 보겠습니다.
1. GR Core 의 도전
Core 는 말 그대로 엔진부를 말하며 핵심적인 역할을 담당하는 부분입니다.GR Series 에서 필요로 하는 외부 라이브러리들을 모두 통합해서 가지고 있고
현재 당장은 필요 없지만 차후에는 필요하게 될지도 모를 라이브러리까지
내장하고 있습니다.
또한 일관성있는 DBMS 연결과 동작지시, 기본적으로 공통 작업등을
자체적으로 정의하고 있으며 이를 통해 Core 를 이용하는 모든 도구들이
통일성 있고 예측 가능한 동작을 할 수 있게 됩니다.
2. Core 도입 이후의 시대
GR Series 는 장차 모든 도구들이 Core 를 이용해서 동작하게 됩니다.XE 의 경우도 마찬가지 방식이지만 XE 의 Core 가 마치 "심장" 과도 같은
역할을 한다면, GR 에서 Core 는 "허브" 정도의 역할을 한다고 보시면 되겠습니다.
사실 Core 전략은 새롭다거나 신기능이라거나 그런 것은 아니구요.
개발과정을 좀 더 모듈화하고 각각의 도구들이 좀 더 유기적으로 동작할 수 있도록
하려면 어떻게 해야 할까 고민 끝에 "가장 노력이 적게 드는" 방법을 찾다가
Core 전략을 선택하게 되었습니다.
다른 도구들과 달리 GR Series 는 개발 리소스가 매우 한정적인 편입니다.
물론 도움을 주시는 분들이 계셔서 그 나마 프로젝트를 유지하고 있지만
지금까지와 같은 개발과정을 앞으로 계속 유지할 경우 어느 시점 이후부터는
한계에 부딪치게 될 겁니다.
따라서 이를 미리 대비하여 개발 단위를 좀 더 작게 분할하고 분할된 작업량을
다시 효율적으로 분배할 수 있는 방안을 준비해야 하는데, 저는 Core 가
완전히 정착된 이후에 그 것이 가능해질 것이라 생각하고 있습니다.
단순한 개발 과정의 변화라기보다는, 생존을 위한 변화라고 할 수 있습니다.
3. 개선 방향
적지 않은 분들이 GR Core 자체의 크기만을 가지고 혹시나 GR Series 가 가진빠른 속도와 가벼움이 사라지는 것은 아닐까 우려하고 계십니다.
특히 제일 먼저 시작한 GR Board 의 경우 이러한 우려가 이미 현실이 되어
사용자분들중 일부는 v1.8.x 안정버젼에서 업데이트를 그만두시는 경우도 보고 있습니다.
(아직 v1.6.x 안정버젼에서 머무르고 계시는 분들도 적지 않으신 것 같습니다.)
그러나 GR Core 로 장차 GR Series 가 통합 연동되게 되면
오히려 개발 속도나 동작 속도가 지금보다 훨씬 더 빨라질 것으로 예상하고 있습니다.
물론 이러한 저의 예상을 믿지 못하시는 분들도 계시지만 한가지만 말씀드리면
프로그램 자체의 크기가 꼭 동작 속도나 가벼움을 뜻하지는 않는다는 사실입니다.
(XE 의 경우에도 이러한 오해가 마치 사실처럼 굳어진 케이스입니다.)
GR Series 개발의 특수성을 감안할 때 개발 프로세스의 변화는 반드시 필요하고,
또 프로세스가 변화됨과 동시에 전체적인 도구들 간 연동과 역할 분담이
좀 더 명확해져야 합니다. 그리고 이러한 과정 속에서 분명 지금 보다는 좀 더 좋은
성능의 도구들을 사용해 보실 수 있습니다.
개선 방향의 0순위는 "속도" 입니다. 그 것이 개발 속도든 동작 속도든 Core 시대에는
지금보다 더 빠르게 되도록 만들 생각입니다. 안정적으로 사용할 수 있으면서
빠른 속도로 동작하는 것. 그 것이 제가 원하고 여러분들이 원하시는 것이겠죠?
4. 다양한 DBMS 지원
호스팅 환경만 고려해 본다면 MySQL 만 지원해도 사실 충분하리라 생각됩니다.그러나 경우에 따라서는 MSSQL 도 지원해야 할테고, Cubrid 나 SQLite 등을
지원해야 할 것입니다.
이러한 지원을 위해서는 먼저 DBMS 관련 작업들을 한 곳에서 통합해서
체계적으로 관리할 필요가 있습니다. 이는 앞으로 Core 가 해결해야 할 하나의
숙제입니다.
MSSQL 의 경우는 현재 가지고 있는 라이센스나 MS Windows 서버가 없어서
개발이 어떻게 될지는 모르겠습니다. 우선 고려하고 있는 것은 Cubrid 이고,
GR board v1.9.x 가 시작되는 시점부터 아마 조금씩 지원이 되지 않을까
생각됩니다.
5. GR Tools (GR Series) 에 대해서...
여기서부터는 그냥 두서 없이 주저리 궁상 좀 떨어볼까 합니다. ㅎㅎ;저에게 있어 GR Series (GR Tools) 는 참으로 뗄래야 뗄 수 없는 존재입니다.
처음 GR Board 를 만들었을 때, 그리고 시간이 흐르면서 Blog 나 Counter 등을
만들고 최근의 Forum 까지 오면서 최근 제 인생에 적지 않은 시간을 투자했고
또 적지 않은 노력을 기울인 자식같은 존재들입니다.
몇 년의 세월을 거쳐 오면서 이런 도구들 덕분에 나름 인지도라는 것을 얻기는 했지만
아직 대부분의 사람들이 모르는 도구이고, 또 웹을 좀 안다는 분들도
정확히 뭘 하는 도구들인지 아시는 분들은 드뭅니다. 직설적으로 말하면
아직도 듣보잡이라는 말일테고, 앞으로 언젠가 한 번 알려지는 날이 올지 어떨지도
모르겠습니다.
이 도구들을 만들면서 즐거웠던 적도 많았고 슬펐던 적도 많았습니다.
제 전공분야가 아니지만 공부를 해 보면서 나름 깨닫는 부분도 많았고 컴퓨터 공학의
어려움에 대해 느끼면서 즐거운 마음으로 코딩했습니다. 반면 스스로가 만들어낸
버그 덕분에 애를 먹기도 했고 본의 아니게 사용중 피해를 입으신 분들로부터
욕도 많이 먹었습니다.
또 기존 사용자분들로부터는 왜 홍보를 제대로 하지 않느냐는 질책을 듣기도 했습니다.
나름 여기 저기 알리기는 했는데 제가 만든 것들을 막 자랑하거나 하는 게 좀 부끄럽기도 하고
제 성격에도 안 맞는 것 같아 블로그를 통해서만 소개해서 그런 것 같습니다.
오픈소스 프로젝트로 취미 삼아 하는 일인데 상용 소프트웨어 수준의 보상을
요구하는 분들이나 잘못된 사실을 마치 사실인 양 호도해서 제가 만드는 도구들이
평가 절하되도록 하시는 분들, 그리고 타 도구들과 지속적인 비교를 통해
저를 밟고서 우월의식을 고취시키려 하시는 분들을 보면서 사실 요새 좀 지쳤습니다.
예전에는 소통을 나름 중시했으나, 최근에는 소통에도 비싼 대가가 지불된다는 사실을 깨닫고
소통은 최소한으로 줄이는 중입니다. 남들이 어떻게 생각할까, 남들이 이상하게 보지는 않을까,
남들이 내 말을 오해하진 않을까, 남들이 내 글을 보고 화 내지는 않을까... 등...
이러한 "심려" 가 말 그대로 마음에 생각을 계속 쌓게 만들고 결국 쌓인 만큼 부담이 되더라구요.
그래서 요즘은 누가 뭐라고 해도 별로 무신경하게 되고 욕을 하던 비난을 하던 거짓말을 하던
관심을 잘 가지지 않게 되었습니다. 그럴 시간에 제 본연의 공부나 하고, 책이나 보면서
저를 위한 시간을 가지는 게 더 좋을 것 같더라구요. 또 요즘에는 그림 그리는 새로운 취미도
하나 만들어서 거기에 빠져 살기도 합니다. ^^;
거짓은 언젠가 밝혀지기 마련이고, 오해는 언젠가 풀려지기 마련이라고 생각합니다.
그 시기가 비록 당장은 멀어서, 그 동안에 조금 불편하고 조금 짜증이 나더라도
그냥 그렇게 담담하게 보내면 되는 것 같습니다. 별 시덥잖은 작은 프로젝트나 하는 주제에
마치 인생의 풍파를 다 겪은 듯한 글이라니, 저도 좀 갱생해야 겠네요. ㅎㅎ;
덧. 곁가지 이야기...
다른 포스트를 통해서 언젠가 언급할 날이 오겠지만, 우리나라에서오픈소스의 미래라는 것은 생각처럼 그리 밝지 않다고 생각됩니다.
서로가 서로를 도와서 시너지를 만들어내야 그 생태계가 유지될텐데,
지금은 마치 어느 한 쪽의 희생을 강요하는듯한 분위기로 가고 있습니다.
무엇이 우리 사회를 이렇게 만들었을까요?
초/중/고/대학교 까지 아이들을 그저 무한경쟁으로 서로 찍어 내리게 하는 것만 가르친
우리나라의 100일 대계 교육정책이 문제일까요? 아니면 "나만 아니면 된다" 는
무한 이기주의가 우리 사회에 만연해져서 그런 걸까요?
모르겠습니다. 요새는 이런 얘기를 하는 것 조차 부질없어 보이기도 합니다.
분명한 것은, 이대로 가다가는 우리나라의 오픈소스 생태계라는 것은
상당히 기형적인 모습이 될 것이라는 점입니다.
이 글을 읽어주시는 분들께 간곡히 부탁드리고 싶네요.
GR Series 가 아니어도 됩니다. 현재 많은 분들이 참여하고 계시는 Textcube 나
XpressEngine, 그누보드, metaBBS 등과 같은 오픈소스 프로젝트들에 조금이라도 좋으니
참여해 보시면서 힘이 되어주세요. 꼭 개발을 할 줄 알아야 하는 것은 아닙니다.
문서화에 도움을 주실 수도 있고, 혹은 블로그에 글을 쓰면서 홍보를 해주실 수도
있겠고 버그 제보등을 하실 수도 있으실 겁니다.
이러한 작은 도움들이 모이면 큰 힘이 됩니다. 그리고 이러한 문화가 정착됨으로서
우리나라의 오픈소스 생태계가 다시 살아나게 됩니다.
어떻게 쓰다보니 이런 하소연을 또 하게 되었는데 염치 불구하고 부탁드려 봅니다.
여러분들이 관심을 가지고 계시는 프로젝트에 참여해 보시면서, 오픈소스의 즐거움도
느끼고 모두가 win-win 할 수 있도록 힘이 되어 주세요. :)
...쓰다 보니 또 무진장 길어졌네요. =ㅁ=;
마침 쓰고 싶은 주제의 글감을 넘겨 주셔서 재밌게 써 보았습니다.
이 다음글을 쓰실 분들께 바톤을 넘겨드려야 본래 맞는 것인데
현재 시국이 시국인지라 저는 따로 누군가에게 직접 바톤을 넘겨드리진 않고
아래 주제로 글을 쓰실 예정이거나 혹은 이미 쓰신 분들이 계시면
그 분이 바톤을 받으신 것으로 여기도록 하겠습니다.
(제 짧은 인맥으로는 사실 누군가를 정하는 것 조차 사치입니다. -_;;)
『오픈소스』에 대해서
긴 글 읽어주셔서 감사합니다. 아울러 바톤을 받아주신 분께도 감사드립니다. :)
6 Responses
[아크몬드] DELETE REPLY*
[시리니] DELETE
[아리새의펜촉] DELETE REPLY*
참! more/less 기능인가요? 리스트 펼쳐보이는 게 불여우에서 깨져서 나오네요.
[시리니] DELETE
덧. 윈도용 FF 에서는 문제 없는데 리눅스용 FF 에서는 문제가 있더라구요. script.aculo.us 를 jQuery 로 교체해야 할 것 같습니다. 음;;
[stophobia] DELETE REPLY*
자기자식 중심교육의 문제도 있겠지만, 아직까지 우리나라에서 오픈소스와 공유에 대한 개념이 제대로 잡히지 않아서 그런걸수도 있겠다는 생각을 해봤습니다.
모두가 주고 받을수 있다면 좋겠지만, 짧은 시간안에 결과를 얻기 위해서는 일단 받는게 편하고, 그러다 보면 주는 부분에 대해서는 신경을 못쓸수도 있지 않을까 하는...
물론, 그걸 자각하고 있을수록 더 나눌수 있도록 노력해야겠지요 ^^
[시리니] DELETE