Joshua Kerievsky 의 A Timelss way to communicate 세션 (부제 : : The Alexandrian Pattern Format )을 듣고 왔습니다. 패턴 저자들에게 Christopher Alexander 패턴의 가치를 깨닫게 해주고, 패턴 저자로써  가야할 방향을 제시한 좋은 발표였습니다.

크게 요약하면, 패턴을 작성하는 스타일이 있는데,  Portland Form  –  Jim Copeling Form – GoF Form – Alexandarian Form 형태로 성숙하고 더 좋은 포멧이라는 것을 설명하는 세션이었습니다.  A Timeless way of Building를 작성한 Christopher  Alexandar가 만든 패턴 포멧에 대한 가치와 심오한 배경등을 설명해 주고, 왜 우리 패턴 저자들이 Alexandar가 만든 스타일을 따라야 하는지 설명을 해주었습니다.

재미난 건 PLoP에 GoF인 Ralph Johnson도 있고,  Linda Rising 도 있고, Jim Copelin은 안 나왔지만 이미 친분이 두터운 관계인데, 그들의 스타일을 일일이 설명하면서, 어떻게 개선해야 되는지 설명한 세션이다 보니, 국내에선 이렇게 하다가 분위기가 험악해 질수도 있을거 같았는데. 놀라웠던건 그들이 그걸 수긍하고, 이미 Alexandarian 패턴 포멧을 따라가겠다는 의지를 밝혀 주었다는 겁니다.   역시 PLoP에 참가한 대가들은 변화와 개선점도 아주 빠르게 흡수한다는 것이 놀라웠습니다.

일단 특별히 어떤 형태로 쭉 잘정리하고 싶었지만 영어를 실시간으로 들으면서 정리하는데는 시간이 무지 많이 걸리거 같아. Timeline 순서대로 쭉 메모한 것을 그대로 적겠습니다.

계속 읽기

또는… 안녕하세요. 블로그를 통해서 이런 스팸성 글을 적어서 죄송합니다. 다름이 아니라. 이번주 금요일 부터 열려서 다음주 금요일날 끝나는 OOPSLA의 새로운 이름인 SPLASH나 PLoP에 참석하시는 한국분이 있으시면 연락 주시길 바랍니다. 제가 혼자 가게 될거 같습니다.  혹시 가시면 얼굴이라도 알고 지내고, 호텔비를 Save하는데는 도움을 드릴 수 있을것 같네요. 혹시 충동적으로 비행기/등록비를 내서라도 가고 싶은데, 현지 생활비가 걱정이 […]

새로운 시작 – Refactoring to Pattern

Joshua KerivskyRefactoring to Pattern (역서 – 패턴을 활용한 리펙토링,  이하 줄여 RtoP)을 저희 EVA 팀에서  새로운 스터디로 진행했습니다.

현재 진행중인 Fearless Change와 병행해서 2주 씩 돌아가며 진행이 되어집니다. 관심 있는 분은 어서 댓글을 달아 주시길.. 🙂   패턴에 익숙한 저희가 이 책들을 보았을때의 느낌은, 정말 잘 쓰여진 서적이라는 겁니다.  Refactoring과 TDD를 잘 접목하여 step by step으로 Pattern으로 적용하는 내용이 아주 잘 표현되어 있네요.

서적 초반 부(1장)에 나오는 내용중에 가장 마음에 드는 내용이 이겁니다.  과도한 설계 와 미진한 설계.

모든 걸 패턴으로 해결해야 한다는 패턴 신봉자가 되어 과도한 설계를 그려내는모습과 정말 아무것도 준비하지 않고 대충 설계한 미진한 설계에 대한 이야기가 나옵니다.  이 사이에 균형을 맞추는 것이 바로 저희들이 해야 될 일이 아닌가 쉽습니다.

RtoP는 바로 Pattern으로 설계하는 그 과정을 보여 줍니다.

냄새나는 생성 로직 -> factory 로 바로 가는 것이 아니라. creation method를 1차적으로 만들고,  encapsulation을 거쳐 최종 factory 객체로 가는 모습을 보여줍니다.

굳이 Factory로 꺼낼만큼 생성 부분에 확장 가망성이 낮다면 , creation method에서 그쳐도 된다는 거지요.  정말  실용주의적으로 refactroing 하는 기법을 설명해 주고 있는 서적입니다.   지금 현재 PLoP 준비와 Fearless Change 준비로 제가 RtoP에 스터디에 단순히 참여만하고 있지만, 정말 공감할만한 내용들이 많은것 같습니다.

RtoP 동영상 강좌 공유

여러분에게 저희가 스터디 한 내용들을 실제 동영상으로 공유합니다.   바로 EvaCast.net을 통해서요.  많은 분들에게 약간의 도움이 되었으면 합니다.

계속 읽기

마소 (마이크로 소프트웨어 ) 5월호에 “EVA네가 들려주는 Fearless Change 두 번째 이야기“라는 주제로 글을 기고했습니다.

원래 4월에 실릴 예정이었으나, 이런 저런 내부 사정으로 5월에 실리게 되었습니다.  이미 저의 블로그를 구독하시는 분에게는 싱거운 자료지만, 자료 공유 차원에서 올립니다.

물론 기고한 글은 모두 저의 지식이 아니며, Linda Rising의 지식과 다양한 분야의 경험을 가진 저희 EVA팀의 지식으로 만들어진 자료입니다. 지식을 나누어 주신 EVA 식구 여러분 감사합니다. 전 단지 정리를 했을 뿐입니다.

EVA 팀이 없었다면 이렇게 좋은 자료가 나온다는 것은 불가능했을 겁니다.  EVA팀 감사합니다. 다음과 같은 내용이 기고 되었습니다.

계속 읽기

패턴 칵테일.  이름을 봐서는 술이라도 한잔해야 될거 같은데요.

이름 맞추기 게임 (Name that Pattern)

이 게임은 패턴 포커를  뽑아서 보지 않고 자기 머리 위에 올려 놓습니다.  그리고 다른 사람에게 자신의 패턴이 뭔지 이것 저것 물어서 맞추어야 합니다.

상당히 쉬울거 같지만, 막상 당사자는 답답합니다.  무엇을 물어봐야 할지도 어렵고, 주위에 있는 사람이 실컷 설명해줘도, 찾기가 정말 어렵습니다.

계속 읽기

학습 곡선을 줄이며, 단기간에 쉽게 새로운 것들을 받아 들일 수 있을까?  그것에 대한 대답은 바로 놀이라고 생각합니다.

얼마 전 저희 EVA팀과 같이 Pattern Poker를 쳤습니다. 정말 놀이와 학습이라는 두가지 토끼를 잡은 좋은 게임이었습니다.  Pattern Poker (패턴 포커)라는 이름이  다들 생소하시리라 봅니다. AsianPLoP에서 만난 Refactoring to Pattern의 저자인 Joshua Kerievsky가 창안안 방법이며, 구입할 방도가 없어서 제가 직접 만들었습니다. 🙂 게임의 룰을 간단히 말씀 드리겠습니다.

계속 읽기

Framework 설계시 가장 중요시 여겨야 하는 것이 사용성이다.

사용자들이 쉽게 사용하고, 생산성에 만족하느냐가 Framework의 생존 여부와 연결되어 있기 때문이다. 쉽게 사용할 수 있는 사용 편의성을 일전에 얘기한 적이 있지만,이 못지 않게 중요한 것이  Framework 사용자가  실수를 하기 어렵게  만드는 것이다. 즉  실수하지 않게 성공의 웅덩이를 만들어서 성공할 수 밖에 없게 만들라는 얘기다.

PLoP10으로 인해 Framework 관련 논문을 작성하면서, .NET과 Java Framework를 설계한 대가들의 공통적인 충고를 들을 수 있었다.

계속 읽기

Pattern을 어떻게 하면 잘 만들수 있을까요? Joe 의 패턴 라이팅을 공개합니다.

이번 AsianPLoP에서는 작년에 참여한 PLoP BootCamp와는 조금 다른 형태로 Joe(Joseph William Yoder) 아저씨의 패턴 라이팅(Pattern Writing)을 경험해 보는 좋은 시간을 가졌습니다.

패턴 라이팅을 말하기 전에 Joe 아저씨에 대해서 간략히 소개를 해 드리면, 그는 Refactory Inc. 를 운영하고 있으며, 런타임시에 객체의 생명주기를 관리하는 유명한 패턴인 AOM (Adaptive Object Model) 을 만든 사람입니다.  GoF 중 한 명인 Ralph Johnson의 제자 이기도 합니다.

그의 발표자료를 공유합니다. 브라질에서 열리는 PLoP인 SugarLoad PLoP에서 2년전에 이미 발표한 자료네요. 이 자료를 읽기 전에 저의 블로그에 공유한  Linda 아주머니의  Pattern 만드는 법, 또 PLoP에서 소개한 Pattern Template을 먼저 읽어보시길 바랍니다.

Writing Patterns “The Straight Scoop” 다운 받는곳 (출처 SugraLoad PLoP)

패턴 템플릿 설명

계속 읽기

이 책의 저자인 Linda Rising은 조그만 Recorder Consort 팀을 이끕니다.  5명이라고 하지만 다 제각기의 다양한 장단점과 개성이 있기 마련입니다.

과연 Fearless의 저자인 Linda는 어떻게 이 팀을 이끌까요? 바로 개별적으로 만나는 것(Personal Touch)입니다.

  • Karen은 어렸을때부터, 레코더를 불었기 때문에, 가장 뛰어난 실력자입니다. 그래서, 가장 어려운 부분과 솔루 부분을 맡깁니다.
  • Rick은 레코더도 잘 부르지만, 기타와 노래도 잘 부릅니다. 하지만  Rick 은 어러운 부분을 부르는 것을 싫어하며, 튀기 좋아합니다.

그래서 어려운 부분은 Karen에게 다양한 악기 파트는 Rick에게 맡깁니다.

  • Anne 와  Karl 은 온화한 성격이며, 적당한 도전을 기쁘게 받아들입니다. 그리고 Anne는 피아노도 잘 칩니다.

Anne와 Karl의  온화한 성품때문에, 합주나 Karen을 뒷받침하는 연주를 부탁합니다.

결국 Linda는 Personal Touch와 Tailor Made 패턴을 이용해, 구성원의 다양한 성격과 장단점을 파악하고, 적합하게 팀을 조율했습니다.

계속 읽기

Fearless Change 그 전장 들을 통해 이미 사람도 나의 편으로 만들어 놓고, 자주 소통할 수 있는 상황을 만들었습니다.

이제 다 준비 되었으니 촬영을 시작해야죠! (Take Action)!

A라는 변화나 행위를 하고 싶을때, 부정적인 생각과 피드백을 받을수 도 있지만, 해보지 않고는 모르는 일입니다. 완벽을 너무 추구한 나머지 아무것도 하지 않는 것보다는, 어떠한 행동을 취하면서 실제 느껴 보는 것이 중요합니다.

춤을 배우고 싶을때, 먼저 춤을 쳐보고, Mentor에게 도움을 받는 것이 좋지, 아무것도 안하고 멘토링 받을 수 있을까요?

행동을 취하기 위해서는 다음과 같은 패턴들이 필요합니다.

  • Study Group : 서로의 의견을 받아 들이고 발전시켜라!
  • Mentor :  Study Group에서 먼저 시작한 사람, 경험있는 사람이 Mentor가 되어서 이끈다.
  • Just Do It : 무언가 하면서 해라!!

계속 읽기