이 글은 slipp.net 버전 2를 운영할 때 쓴 글로 2011년 8월 4일 작성했다.


어제 play framework 구글 그룹스를 보다가 play framework가 Thoughtworks사의 Technology Radar에 추가되어 있다는 내용을 봤다. 그래서 Technology Radar가 무슨 내용인지 봤더니 현 시점에 기술적으로 관심을 가질 필요가 있는 기술 목록을 체계적으로 보여주고 있었다. 가장 최근에 발간된 Technology Radar 문서는 http://www.thoughtworks.com/sites/www.thoughtworks.com/files/files/thoughtworks-tech-radar-july-2011-us-color.pdf에서 볼 수 있다. 지금까지 발간된 Technology Radar는 http://www.thoughtworks.com/radar에서 볼 수 있다.

이 문서를 보면 새로운 기술에 관심이 없더라도 최근에 주요 이슈가 되고 있는 기술 요소들을 살펴볼 수 있는 좋은 문서라는 생각이 든다. 이 문서에 최근에 관심있는 주제로 play framework이 포함되었다. 단순히 흥미로운 기술로 선정되었을 때 이렇다할 분석이 추가된 것은 아니다.

이 문서를 보면서 대부분이 익숙한 용어들이지만 다소 생소한 용어들도 있었다. 이미 익숙한 용어들이지만 마음만 있지 실무에서 적용하지 못하고 있는 부분들도 많았다. 특히 최근에 Continuous Integration에서 한 단계 더 나아가 Continuous Delivery까지 고민하고 있다는 것을 알 수 있다. 우리는 Continuous Integration도 익숙하지 않은 상태인데 벌써 그 다음 단계를 이야기하고 있다. 이 일환으로 DevOps 문화에 대해서도 강조하고 있다. DevOps는 어제 이 문서를 보면서 처음 접했던 용이다. 2009년부터 이 주제로 컨퍼런스도 열리고 활발한 논의가 되고 있는 듯 하다. 특히 최근 클라우드가 주요 화두로 떠오르고 있는 시점에 DevOps 문화는 만들어지면 좋을 듯 하다. 이런 대부분의 활동이 기존의 개발 프로세스나 문화와는 좀 다른 접근 방식으로 보여진다. 좀 더 애자일 스럽다고 해야하나..아니면 더 많은 커뮤니케이션과 협업을 기반으로한 활동이라는 생각이 든다. 우리도 각자의 영역 속에서만 Silo 형태로 협업을 할 것이 아니라 좀 더 열린 마음으로 영역을 넘나 들면서 업무를 진행할 필요가 있을 듯 하다. 그럴 때 지금까지와는 완전히 다른 접근 방법과 해결책이 나타나리라는 느낌이다.

도구 중에서는 git과 github에 대한 주제가 유독 관심을 가지게 한다. 최근에 slipp 소스를 github에 공개한 후 github를 활용해 온라인 협업이 얼마든지 가능하겠다는 생각을 하게 된다. 또한 Continuous Delivery를 위해 기능 단위로 브랜치를 만들고 통합하는 것이 가능한 환경이 되어야 하는데 ThoughtWorks도 이에 대한 고민이 많은 듯 하다. 이에 대한 해결 방법으로 git과 같은 분산 버전 관리 시스템을 활용해 해결 방법을 찾아가려는 기도도 엿보인다. 아직까지 우리에게는 이상적이라고 생각되는 부분이 많겠지만 기존과는 완전히 다른 방식으로 접근해볼 마음이 있다면 이 문서에서 제시하는 내용들을 하나씩 습관으로 만들어 가는 것도 좋은 전략이라는 생각이 든다. 암튼 새로운 것을 많이 보고 배울 수 있는 좋은 문서였다. 관심 있는 개발자들은 한번씩 봤으면 좋겠다.