Categories
Books Life

시는 걸작이 아닐 바에는 아예 존재하지를 말아야 해.

시는 걸작이 아닐 바에는 아예 존재하지를 말아야 해.

그래서 최고의 작품을 만들어 낼 소질이 없는 사람은 예술의 길을 단념하고 예술을 해보고 싶다는 유혹에 빠지지 않도록 각별히 조심해야 해. 물론 사람은 누구나 자신이 본 것은 무엇이든 따라해 보고 싶은 막연한 충동을 느끼지. 하지만 그건 정말 욕망일 뿐이지 실제로 그런 능력이 자신에게 있다는 뜻은 아니거든.

그런데 줄타기 묘기를 부리는 광대들이 마을에 오기만 하면 온갖 판자나 목재 위를 왔다 갔다 하면서 몸의 평형을 잡아보는 아이들을 생각해 봐. 다른 자극을 받아서 그것과 비슷한 장난으로 옮겨 가기 전까지는 그 짓을 그만두지 않아.

그리고 유명한 연주가가 연주회를 열 때마다 그 악기를 배우기 시작하는 사람들이 꼭 생긴단 말이야. 얼마나 많은 사람들이 이런 식으로 인생의 길을 잘못 드는지, 자신의 소망을 재능으로 착각했다는 사실을 일찍 깨닫는 사람은 그나마 행복한 편이라니깐.

빌헬름 마이스터의 수업시대 2권 2장에서 발췌

한동안 니체의 글만 탐독하다가 괴테로 넘어온지 며칠 째.

괴테는 따뜻하게 느껴진다.

Categories
Personal Piano

피아노 연습 :: Kuhlau Sonatine Op.55-1, Op-20.1

즐거운 피아노 연습 영상으로 안부 메시지 올립니다. 진행중이던 프로젝트의 끝자락이 보여서 Xacti로 녹화해봤습니다.

그런데 머리를 안감았네요.. -_-;

소나티네 앨범 7번 Kuhlau Op.55-1

소나티네 앨범 10번 Kuhlau Op.20-1

디지털 피아노의 장점을 살려 audio in/out 케이블로 녹음하여 깔끔한 소리를 제공하면 더 좋겠지만, UCC 기분을 잘 표현하기 위해 계속 디캠으로만 찍습니다. 헤헤.

Categories
Development Life

탐욕스러운 설계자 이야기

어느 나라에 설계자가 한 명 살고 있었다. 그는 대단히 탐욕스러웠다. 그는 따로 시간을 쪼개어 설계하기를 좋아하지 않았다. 그래서 고객과 요구사항 미팅을 할 때 머리속에서 바로 바로 설계하기를 즐겼다. 

이 방법은 몇가지 면에서 대단히 효율적인 방법이었다. 요구사항 미팅이 끝나면 머리속에 설계안이 완성되기 때문에 미팅이 끝나자마자 바로 코딩으로 돌입할 수 있는 장점도 있고, on the fly로 설계를 하기 때문에 첫 미팅 자리에서 효과적인 질문을 꺼내놓을 수 있기 때문이다. 게다가 후 설계작업을 위한 생동감 넘치는 문서를 작성할 필요가 없었다. 그저 기억이 왜곡되는 것을 방지하는 메모 정도면 충분하기 때문이다. 

그런데 이 방법에는 몇가지 단점이 있다. 

첫째, 그는 바로 바로 설계를 해야하기 때문에, 요청사항을 듣고 바로 설계를 할 수 없을 경우 ‘고민하는’ 표정이 고객에게 노출된다. 고객은 이 자가 바로바로 설계하기 때문에 표정이 일그러졌다고 생각하지 않는다. 오해를 양산한다. 

두번째, 고객이 말한 어떠한 항목이 자신의 캐퍼에 속하기는 하지만 고객이 세부사항을 지정하지 않았고, 각 세부사항에 따라 설계안이 꽤나 바뀔 경우 이 설계자는 고객에게 세부사항을 요구하고 싶어진다. 그래서 종종 미팅 자리에서 세부사항을 고객에게 묻곤 하는데, 고객이 당황스러워하지 않을 수 없다. 때로는 고객의 자존심이 쎈 바람에 세부항목에 대한 답변을 미루지 않고 그 자리에서 답해주는 경우도 있다. 이러한 답변은 충분한 사고과정을 거치지 않았기 때문에 정확도가 산으로 갈 수 밖에 없다. 고객이 완벽하리라는 상상을 했으니. 

세번째, 설계자 본인의 model pool이 확장되기 어렵다. 대화 중 incremental로 model pool에서 select를 하고, 데이터가 존재하지 않을 경우 자신이 가진 model 중 가장 근접한 것을 선정하여 요구사항을 자신의 model에 맞춰가기 위해 고객과 협상을 시도할 경향이 높기 때문이다. 위험한 점은 이미 잘 써오던 model 을 끄집어내서 협상을 시도하기 때문에 고객이 넘어갈 확률이 높다는 것이다. 결국 이 설계자가 자신의 model pool을 확장하려면 스스로가 정한 별도의 훈련 기간을 거쳐야만 한다. 왠지 부자연스럽다.  

 

철저히 소비 위주의 설계자라 할 수 있겠다. 큰 소비에는 큰 생산이 뒤따른다. 자연스러움을 잃은 행동을 일삼는 그는 고수준의 자기관리가 뒷받쳐지지 않는한 쉽게 지칠 것이다.

Categories
Books

Software Creativity 2.0

그날 그날 기분에 따라 쉽게 환호하고 쉽게 무시하기도 하는 성격이긴 하지만,

Software Creativity 2.0
Software Creativity 2.0

아휴 버릴 게 없다. 버릴 게 없어. 

Effective Java 1판 이후로 이렇게 임팩트 넘치는 책을 읽어본 적이 없다. 

저자의 의도를 떠나서, 이 책을 읽다보면 여러가지 side effect (긍정적인) 도 얻을 수 있다. 내가 얻은 가장 큰 이점은 이 책의 내용들 중 일부분이 내가 프로그래밍할 때 피하지 못하고 견뎌내기만 해야했었던 많은 부정적인 느낌들을 말끔하게 패치해줬다는 데에 있다. 

이렇게 진지한 측면을 포함하고 있으면서도, 책을 읽는 중간중간 웃고 울고.. 

이 책을 구매토록 인도해주신 gEEkInsIdE님의 포스팅에게 무한한 감사를. 

 

인용구 몇개 건질 수 있지 않을까 하며 이 포스트를 여신 분들을 위해 레퍼런스 아티클 몇개와 인용구 몇개를 준비한다. 

 비자아적 프로그래밍 (ego-less programming) 십계명

 우수한 설계자는 하향식이 아니라 편의적으로 설계한다 하지만 설계자가 아닌 사람은 설계 과정에서 창의적이고 편의적으로 넘나드는 사고의 흐름을 이해하지 못한다. 그래서 우리는 설계를 하향식으로 위조해서 기술한다. 문서를 읽는 사람에게 설계를 이해시키는 유일한 방법이기 때문이다. 

 문제는 고 파루틴 문제가 있고 저 파루틴 문제가 있다. 해법은 고 파루틴 해법이 잇고 저 파루틴 해법이 있다. 사람은 고 파루틴 사람이 있고 저 파루틴 사람이 있다. 마지막으로, 프로젝트도 고 파루틴 프로젝트가 있고 저 파루틴 프로젝트가 있다. 

“내 말은 정형주의가 우리의 가능성을 제한한다는 뜻이다. 우리는 정형 기법을 넘어서 조직 안에서 그리고 소프트웨어 설계 안에서 서로 소통하는 방법을 익혀야 한다. 불분명하고, 부정확하고, 정형화가 불가능한 접근 방식, 즉 우리가 일상적으로 활용하는 접근 방식에 관심을 기울일 때가 왔다.” 

Better Is The Enemy of the Good Enough

흔히 복잡성과 모호성을 능숙하게 처리하는 인물은 약자로 여겨지는 반면 흑백논리를 강하게 펼치는 인물은 강자로 여겨진다는 사실이 흥미롭다고 테트락은 지적한다. 물론 그는 오히려 반대라고 주장한다. 

내가 아는 한 프로젝트가 성공하는 방법은 단 하나다. 능력 있는 팀장과 팀원을 확보해서 문제를 정확히 이해하게 만든다. 문제를 명세할 필요는 없다. 별도로 시나리오를 작성할 필요도 없다. 문제를 해결할 당사자들이 요구사항을 정확히 이해하면 그만이다. – Frosch 1969 

다시 말하겠다. 중요하니 집중하기 바란다. 상위 CASE 도구 대다수는 표현 활동을 도와주는 도구일 뿐 표현을 생성하는 지적 활동을 도와주는 도구가 아니다. 두 가지는 전혀 다른 활동이다. 하나는 문제를 이해하고 설계를 수행하는 활동으로, 상당히 지적이다. 다른 하나는 도표를 그리고 명세와 설계를 저장하는 활동으로, 대체로 사무적이다. 

학계 사람들에게는 흥미를 추구하는 태도가 윤리다. 업계 사람들에게는 유용성을 추구하는 태도가 윤리다. 

그리스인은 작성할 문서를 최소로 줄이고, 로마인은 최대로 늘이며, 야만인은 문서를 안 만든다는 사실에 자부심을 느낀다. 

흡족하다.