Draw2D

UML Diagram using Draw2D

Draw2D는 GEF에 내장되어 있기도 하지만 standalone으로 사용될 수 있는 그래픽 라이브러리다. GEF에서 그림을 그릴 때 내부적으로 이 라이브러리를 사용한다. Display a UML Diagram using Draw2D 문서를 읽고 금방 그 사용법을 익힐 수 있을 정도로 잘 구성되어 있다. 여러 Figure를 조합해서 하나의 component를 구성하고 그 component 사이에 connection을 정의할 수 있도록 되어있다. 물론 그림 처럼 connection에 해당하는 외관을 변경한다던지 레이블을 추가하는 등의 작업이 가능하다. Eclipse 혹은 SWT 기반의 어플리케이션에서 유용하게 사용할 수 있을 것 같다.  

내 영혼이 따뜻했던 날들

내 영혼이 따뜻했던 날들
포리스트 카터 지음, 조경숙 옮김/아름드리미디어

책을 읽다보면 어떤 책은 너무나 느낌이 좋아서 좋은 사람들에게 권하고 싶을 때가 있다. 이 책은 그 중에서도 가장 먼저 추천해주고 싶은 책이 될 것 같다. 은정이가 선물해준 이 책은 오래전부터 알고 있었고 실제로 읽으려는 시도도 해보았으나, 책 읽는데 관심이 없었던 이전에는 몇 장 읽다가 그냥 흔한 꾸며낸 이야기라는 생각에 흥미를 못느꼈었는데, 이 책을 다시 접했을 때는 이 책이 저자의 어린시절의 추억을 그려놓은 자전적 성장소설이라는 것을 알게 되었다.

책의 표지에 보면 삶의 철학을 바꿔주는 작은 고전이라고 적혀있다. 책을 끝까지 읽고 나서 정말 그 말에 공감하게 되었다. 꼬마 인디언 “작은 나무”가 할아버지, 할머니와 함께 생활하며 생각하고 느끼고 배웠던 것들이 책에 고스란히 남아있다. 다른 사람을 배려하는 따뜻한 마음, 자연과 동물과의 아름다운 교감등 배울 것들이 너무나 많이 담겨있는 책이다.

건조하고 급박하게 돌아가는 물질문명 사회에 살고 있는 나를 포함한 우리들에게 정말 제목대로 영혼이 따뜻해지는 느낌을 선사할 수 있는 책이라고 생각한다. 삶을 어떻게 바라보고 어떻게 조화롭게 살아가야 하는지 생각하는 기회를 주었다.

어제는 랩세미나 발표후 몸이 안좋아서 일찍 기숙사에 들어가서 이 책을 끝까지 읽었는데, 연구실에서 이 책을 읽었더라면 큰일날 뻔 했다! 아직은 순수한(?) 감성이 내게 남아 있음을 확인할 수 있었다. 은정이가 나에게 추천해준 것 처럼 누구에게든 읽어보라고 권하고 싶은 책이다.

할머니는 어디서나 쉽게 죽은 사람들을 찾아낼 수 있다고 하셨다. 여자를 봐도 더러운 것만 찾아내는 사람, 다른 사람들에게서 나쁜 것만 찾아내는 사람, 나무를 봐도 아름답다고 여기지 않고 목재와 돈덩어리로만 보는 사람, 이런 사람들이 죽은 사람들이었다. 영혼의 마음은 근육과 비슷해서 쓰면 쓸수록 더 커지고 강해진다. 마음을 더 크고 튼튼하게 가꿀 수 있는 비결은 오직 한 가지, 상대를 이해하는 데 마음을 쓰는 것 뿐이다. 게다가 몸을 꾸려가는 마음이 욕심 부리는 걸 그만두지 않으면 영혼의 마음으로 가는 문은 절대 열리지 않는다. 욕심을 부리지 않아야 비로소 이해라는 것을 할 수 있기 때문이다. 반대로 더 많이 이해하려고 노력하면 영혼의 마음도 더 커진다.

싸집


겉표지가 너무 매력적인 음반. 사실 나는 랩을 그다지 좋아하지 않는데 싸이의 음악은 참 마음에 든다. 그걸 처음 느끼게 해주었던 것은 “Remake & Mix 18번” 음반이였다. 직설적인 가사에 거침없고 거짓없는 목소리. 아직 잘하는 노래라고 보기는 어렵지만 열심히 노력하는 모습이 노래에 담겨져있는 듯한 느낌을 준다.

싸집은 별로라는 사람들이 있어서, 처음으로 싸이의 음반을 사볼까 고민을 하다가 진성이가 빌려줘서 몇 일 들어보고 Yes24 포인트로 구매했다. 공부하다 기분이 쳐질 때 들어주면 기분이 좋아지기도 하고, 뭔가 말하고자 하는 가사는 새겨듣게 된다.

맘에 드는 곡은 어른, 아름다운 이별2, we are the one, 노크, 비오니까 정도. we are the one은 피파온라인에서 배경음악으로 자주 들어온 곡이라서 워낙 익숙하고, 노크는 아이비와 같이 부른 곡인데 뇌새적인 음색과 므흣간 가사가 일품이다. 아름다운 이별2와 비오니까는 슬픈 가사와 선율이 마음에 들고.

싸이를 보면 결코(?) 멋진 외모를 가진 것은 아니지만 멋이 난다고 해야할까. 당당함, 자신감, 열심히 하는 모습이 너무 좋아 보이는 가수다.  다음 음반이 나와도 구매하게 될 것 같다.

CD수납장

조립전
조립후

책상 위에 널브러져 있는 CD들을 차곡차곡 정리하기 위해 매우 저렴한 (6000원대) CD수납장을 구매했다. 저렴한 만큼 직접 나사를 조여가며 조립해야 했고, 사진에서 볼 수 있듯 페인트 칠이 엉성한 부분이 군대군대 있다. 워낙 저렴해서 큰 불만은 없었고, 오히려 오랜만에 뭔가를 뚝딱뚝딱 만드는 재미를 맛보게 해주었다.

조립후 CD를 넣고 정리를 하니 한결 보기가 좋다. 집에 옛날 CD들이 많긴 하지만 연구실에 와서 구입하거나 또는 선물받아서 가지고 있는 시디는 몇 장 안된다. 그중에서 이루마의 피아노 연주곡 CD가 4장이다.

CDP는 올초에 구입했고 헤드폰은 한달전쯤 구입했던 것 같다. MP3플레이어를 사용할 때는 늘 듣던 노래만 계속 듣게 되고 타이틀 곡만 골라 듣다 보니 음악듣는 즐거움이 예전만 못하였다. 요즘에는 웹서핑을 전폐하고 CDP+헤드폰 조합으로 흘러나오는 풍부한 음량의 음악으로만 스트레스를 다스리고 있는데, 집중력이 흐트러지지 않고 차분함을 유지할 수 있어서 좋다. 적어도 꼬리에 꼬리를 무는 무뇌상태의 웹서핑 끝에 남는 허무감보다는 훨씬 바람직하다.

플라시보 효과 일지는 모르겠지만, CDP와 헤드폰으로 음악을 들을 때의 살아 있는 느낌이 좋다. 정품 CD를 구매하는 자부심(?) 같은 것도 무시 못할테고 CD를 갈아끼는게 불편한 관계로 하나의 음반에 담겨 있는 모든 곡들을 온전히 감상하게 되는 장점이 있다. 실제로 좋은 곡들은 타이틀이 아닐 경우가 많다.

MP3플레이어 보다는 CDP가 좋고, TV보다는 책이 좋고, 컴퓨터로 글을 쓰는 것 보다 손으로 쓰는 것이 좋다. 나는 시대를 역행하는 걸까?   

Graphical Editing Framework (GEF)

The Graphical Editing Framework (GEF) allows developers to create a rich graphical editor from an existing application model. GEF consists of 2 plug-ins. The org.eclipse.draw2d plug-in provides a layout and rendering toolkit for displaying graphics. The developer can then take advantage of the many common operations provided in GEF and/or extend them for the specific domain. GEF employs an MVC (model-view-controller) architecture which enables simple changes to be applied to the model from the view.

GEF는 이름 그대로, Graphical Editor의 구현을 도와주는 프레임워크라고 할 수 있다. 무에서 Graphical Editor를 구현한다고 상상해본다면 어떨까? 유사한 경험을 가지고 있지 않다면 대체 어디서 어떻게 시작해야할지 도무지 감을 잡을 수 없을 것이다.

항상 어떤 프레임워크나 플랫폼을 활용할 때는 딜레마를 느끼게 된다. 잘 짜여진 프레임워크를 활용하면 내가 한 일에 비해서 보기좋은(?) 아웃풋을 얻을 수 있다는 장점이 있는 반면에 얼마나 자유도를 가지고 시스템을 개발할 수 있는지에 대해서 의구심을 떨쳐버릴 수가 없고 충분히 활용하기까지 공부를 많이 해야한다는 단점이 있다.

분명한건 이런 프레임워크나 플랫폼은 나보다 똑똑한 여러명이 심사숙고해서 만들어 놓은 뼈대이며, 자유도를 고려한 디자인을 가지고 있다보니 본의 아니게(?) 복잡해질 수 밖에 없다. 따라서 이를 활용하기 위해서 적잖이 공부해야한다.

연구실에서 개발하는 Verification Integrated CODesign Environemnt (VICODE)에서 임베디드 시스템을 설계 할때 전체 시스템의 논리적인 디자인을 다이어그램 에디터에서 이루어지게 하려고 한다. 분명 xml 코드를 직접 쓰는 것보다는 훨씬 낫겠다는 기대와 함께 …

구현을 돕기 위해 공부해야할 것에는 다음과 같은 것 들이 있다.

EMF (Eclipse Modeling Framework)
GEF (Graphical Editing Framework)
GMF (Graphical Modeling Framework)


이들은 모두 MVC (Model-View-Controller) Architecture를 기반으로 한다. EMF는 Eclipse에서 사용할 Model의 클래스 구조를 자동생성해주는 녀석 쯤으로 보이고 GEF는 특정 Model을 편집할 수 있는 그래픽 편집기를 생성하는 프레임워크라고 볼 수 있다. 여기서 EMF로 생성된 Model이 GEF의 Model의 조건을 만족하기 때문에 EMF+GEF 조합의 솔루션이 소개되었다. 그리고 이를 돕기 위해 GMF 프로젝트가 전개되고 있다.

나는 GEF만을 사용하여 다이어그램 에디터를 구현하고자 한다. 여전히 복잡하고 어려워보이지만 “복잡한 문제는 단순한 문제의 합” 이라고 믿고 그냥 가보는거다! GEF를 공부하고 그 틀대로 구현을 하게 되면 아래와 같이 보기 좋은 그래픽 에디터가 생성된다.