Outsider's Dev Story

Stay Hungry. Stay Foolish. Don't Be Satisfied.
RetroTech 팟캐스트 44BITS 팟캐스트

JavaScript Application Framework 스터디 회고

지난 7월 17일부터 10월 17일까지 3달동안 JavaScript Application Framework 스터디를 진행했습니다. 이번 스터디도 지난번 카푸치노 스터디처럼 FRENDS에서 자리를 만들고 트위터에서 모집을 해서 진행하였습니다. FRENDS에서 몇명과 카푸치노 스터디때 알게 되신 분도 있었고 그외 다른 활동등을 통해서 알고 계신 분들도 있었고 처음 알게 된 분들도 있었는데 아는 분들이 반 이상 되었기 때문에 스터디는 꽤 편하게 느껴졌지만 12명이 시작할 때 모였고 멤버들은 상당히 수준 높은 분들이 많이 모였다고 생각합니다.

스터디 제목대로 자바스크립트 애플리케이션 프레임워크가 주제였는데 이는 상당히 광범위한 주제였기 때문에 어디까지를 자바스크립트 애플리케이션 프레임워크의 범주에 넣을 것인가도 고민이었고 그 중에서 어떤 것을 스터디 할 것인가도 고민이었습니다. 그래서 첫 모임에서는 페차쿠차 형식으로 자신이 공부하고 싶은 것을 2-3가지 정도 발표하면서 많은 사람들이 관심있는 것으로 4가지를 골랐습니다. 그게 Knockout.js, Backbone.js, CoffeeScript, Sproutcore였습니다. 주제가 다양했기 때문에 이 주제중 관심있는 것을 하나씩 골라서 3명정도씩 하나의 주제를 공부해서 한주씩 돌아가면서 공부한 것을 발표하고 다른 사람들에게 설명하는 방식으로 진행하였습니다. 프레임워크의 정의에 따라 프레임워크 범주에 들어가지 않는 기술들도 있지만 좀 주제범위를 라이브러리나 트렌스파일러까지 넓게 잡았습니다.



Pros
일단 다양한 기술들을 접해볼 수 있었던 것은 상당히 좋았습니다. 중간에 쉰 주도 있었지만 3주는 그리 짧은 기간은 아니긴 하지만 굵질굵질한 기술 4가지나 파악할 수 있었습니다. 저는 다양한 기술에 대해서 관심이 많은데 시간관계상 다 살펴보기가 어려웠는데 이 네가지 주제는 언제 한번은 보고 싶은 기술들이었기 때문에 이 기회에 간략하게나마 각 프레임워크들에 대해서 파악할 수 있었습니다.

물론 제대로 익힐려면 그룹스터디 외의 시간에 각 프레임워크들을 실제 만져보고 공부하면서 발표할 때 정보를 얻으면서 진행했어야 더욱 남는게 많은 스터디가 되었을텐데 개인적인 사정으로 그럴 여유를 찾지 못하다 보니 제가 맞은 커피스크립트만 공부하고 나머지들은 약간 수동적으로 전달받기만 했습니다. 그렇다 보니 아무래도 스터디가 끝난후 각 프레임워크들을 제가 직접 다룰수 있는 정도는 아니었지만 그동안 이름과 대충의 개념정도만 파악하고 있던데 비해서 이젠 동작하는 방식정도까지는 이해할 수 있게 되었기 때문에 그 이전의 궁금증은 많이 사라진 편입니다. 아마 이런 것은 다음에 기술을 선택할때 도움이 될 것 같고 투자한 시간에 비해서는 많이 파악할 수 있었다고 생각합니다.

각 기술에 대한 소감이라면 커피스크립트야 제가 맡아서 진행했고 실제로 만져보니 어느정도의 호감은 생겼기 때문에 계속 틈날때 마다 만져볼 생각입니다. Knockout.js는 그 이전에 Aj님이 한창동안 추천을 했었기 때문에 그 이전에는 못봤던 MVVM이라는 디자인패턴에 괜찮은 인상을 가지고 있었던 터라 스터디가 끝난 후에도 비슷한 수준의 관심을 가지고 있습니다. 그리고 스터디중에서 가장 괜찮아 보였던 것은 Backbone.js였습니다. Backbone을 알게 된지는 꽤 오래되었지만 사실 그 내부는 전혀 알지 못했었는데 Backbone의 기능들은 상당히 매력적이고 엔터프라이즈급 자바스크립트 애플리케이션을 만들때도 꽤 유용해 보였습니다. 언젠가 한번 사용해 보고픈 생각이 들었습니다. Sproutcore는 약간은 이전의 Cappuccino를 스터디할 때와 비슷한 느낌이었습니다. 스터디 기간중에 Sproutcore를 파악하기에는 약간 어려웠는데 기존의 자바스크립트와는 너무나 다른 환경이었기 때문에 러닝커브가 상당히 높고 쉽게 구조를 파악하기가 어려웠고 그에 비해서 매력적인 부분은 잘 발견하기 어려웠습니다. 나쁘다는 아닌데 일단 좀 어렵고 Sproutcore자체가 어떤지를 파악해 보려면 상당한 시간을 투자해보아야 될 것 같습니다. 아마 큰 계기가 없다면 쓸 일은 없을 듯 합니다. ㅎㅎ



Cons
각 기술별로 소그룹을 나눈 것이 여러기술을 볼 수 있었던 좋은 점도 제공하였지만 처음 해본 시도였지는 예상치 못했던 단점들도 있었습니다. 다같이 같은걸 보는 것은 아니니까 다른 기술들을 볼때는 약간 수동적이 되는 경향이 있었고 소그룹내에서 따로 또 같이 공부를 해야하다보니 실제로 스터디내에서 스터디가 생겨야 하는데 그럴 형편은 안되다보니 결국 각자 공부하게 되는 결과가 되었던것 같습니다. 소그룹으로 나눈 것이 실수였다고 생각하는 것은 아니지만 다음에 같은 방식으로 하게 되면 약간의 보완책이 필요할 것 같습니다.

그리고 처음에 12명이 모였지만 나중에는 5~8명정도만 계속 모였었는데 이정도 인원수의 변동은 스터디가 주업은 당연히 아니므로 당연한 결과라고 생각합니다. 하지만 같은 주제로 공부할때는 갑자기 그주에 진행하기로 했던 분이 안오면 다른 사람이(다같이 공부하고 있었으므로) 진행하거나 같이 보면서 진행을 해도 되는데 소그룹으로 주제가 나누어 지고 그 주의 스터디하기로 했던 주제가 정해져있기 때문에 회사일이나 다른일로 갑자기 진행하기로 했던 분이 참석못하게 되었을 경우 다른 소그룹에서 이에 대처할 수 있어야 하는데 사실 다른 소그룹은 그 다음 주에 맞춰서 준비하고 있었기 때문에 급작스러운 상황에 대처하기가 좀 어려웠습니다.



Epilogue
어찌되었든 새로운 사람들도 만나고 즐거운 시간이었습니다. 당초에는 이터레이션을 3번 돌 계획이었으나 진행하다보니 3번까지 진행할 상황이 좀 아닌것 같아서 2번으로 마무리를 했습니다. 다같이 스터디한 결과물로 어떤 것을 만들어보았으면(지난번 카푸치노스터디때처럼) 좀 더 괜찮지 않았을까도 싶었지만 더 바빠질 연말도 다가오고 있고 각자의 집중력도 좀 흩어진 경향이 있어서 스터디는 마무리 하기로 결정했습니다. 개인적으로 바쁜게 좀 정리되면 만지고 있던 커피스크립트를 좀 더 파봐야겠습니다.
2011/10/23 02:40 2011/10/23 02:40