자바 개발자는 JCO를 다녀와야 하는가? 하는 물음을 가지고 있었다. 작년에 나는 전업 자바 개발자가 아니였기 때문에 JCO 를 가는 동료들을 바라보면서 굳이 갈 필요가 있을까 하는 생각을 가지고 있었다. Deview 와는 다르고 개인적으로 자바라는 언어는 어느정도 완성된 언어라는 느낌이 들었다. 더 새로울게 있을까 하는 느낌? 그렇지만 올해 내가 처음 참가한 JCO의 느낌과 내용을 쓰려고 한다. 지극히. 주관적인 자바 초보 개발자의 JCO 후기라는 점을 잊지마시길.
선등록된 상태여서 일단 아침에 가자마자 등록을 마쳤는데, 10시에 갔는데 이미 많은 사람들이 있었도 서점인지 쇼핑센터인지, 경품행사장인지 모르는 모습에 약간 실망했다. 좀더 많은 오픈소스 커뮤니티가 있었으면 어땠을까 하는 생각이 들었다. 무의미하게 게임을하고 페이스북 좋아요를 눌러서 경품을 받는게 무슨 의미가 있을까 하는 생각이 보자마다 들었다. 그런의미에서 2012 DevOn은 오픈소스 커뮤니티를 가장 잘 활용한 행사라고 볼수 있겠다. 오전 세션은 듣지 않았다. 키노트 세션에 별로 흥미가 없었고, 근처 까페에 가서 자리 잡고 코딩을 했다.
OpenSource Engineering, NHN NEXT, 손영수 교수
필자가 처음 들은 세션은 NHN NEXT 손영수 교수의 OpenSource Engineering 이라는 주제로 전반적인 오픈소스에 대한 거대 기업(구글, MS, Apple)에 대한 대응 그리고 분석 방법, 만들었던 경험에 대해서 들을수 있는 소중한 세션이었다.
몇년 사이에 오픈소스에 대한 이야기들이 많아졌다. 사용도 많아졌고, 이제는 도입과 기술 내재화를 부르짖고있다. 그리고 그것을 넘어서서 세계의 오픈소스를 쓰는 입장에서 만드는 입장으로 전환되고 있는것 같다. 세션을 듣는 내내 오픈소스에 대해서 좀더 잘 알수 있는 시간인것 같아서 좋았을 뿐만 아니라, 손영수 교수에 대해서 잘은 모르지만 어떤 팀을 이끌고 있고 그 팀에서 오픈소스 작업을 한 내용을 공유하는 내용이었다. *마지막으로 든 마음은 같이 일해보고 싶다는 생각이 강하게 들었다. 본능적으로 저 사람이랑 작업을 하면 좀더 좋은 소프트웨어를 만들 수 있을것 같다는 느낌을 많이 받았다. *
오픈 소스 생태계에 대해서 잘 모른다면 위의 slide 를 잘 참고하면 도움이 많이 될것이다. 특히 사용함에 있어서는 가장 중요한 부분이 단연 라이센스의 문제일것인데, 개인 작업이 아닌 회사 단위의 상업 소프트웨어를 만드는 데 들어가는 오픈소스라면 면밀하게 라이센스를 확인해야 한다. 복잡한 부분을 사용적인 측면에서 생길수 있는 부분을 잘 설명해 두었다.
분석에 대한 부분은 STAN4J를 사용하는 것에 대해서는 알고 있었고, 대략적으로 어떻게 사용하는지 알고 있었지만 세세한 의미에 대해서 정확하게 집어주셔서 너무 좋았다. 어떻게 써야 하는지 그리고 오픈소스 개발에서 어떻게 활용할 수 있는지 등등 STAN4J에 대해서 의문이 있다면 참고하길 바란다.
Spring보다 쉽고 빠른 웹 개발 – 파이썬3 기반 웹프레임워크(Pylatte), 2HOT, 박상근
*
*
*
*
개인적으로 파이썬 웹 개발에 대해서 관심을 가지고 있었지만 Django의 높은 벽(나만 그런듯..)을 실감하고 있었는데 pylatte는 약간 그러한 부분을 해소할 수 있는 부분이라고 생각되어 진다. 기본 개념은 html 안에 python 문법 그대로 코딩을 한다는 것이었는데 생각보다 ‘직관적’ 이라는 면에서 재밌게 들었다.
그런데 가장 중요한 부분은 pylatte 를 만들면서의 ‘과정’ 에 대한 설명이었다. 어떤 형태를 만들었는데 부족한 부분 예를 들어 DB 매핑하는 부분이 부족하다고 생각되어 java 의 mybatis 를 참고 하는 등의 하나의 오픈소스가 부족한 기능을 채우기 위해서 어떻게 진화해 왔는가를 들으면서 많은 도움이 되었다. 딱 정해진 파이썬이라는 울타리에서 벗어나서 좀더 다른 언어, 다른 플랫폼을 찾아보면서 노력한 흔적이 보였다. 또한 개발만 하는것에서 벗어나서 공개 소프트웨어 개발대회를 통해서 외부의 의견을 받으면서 발전해 나가는 과정이 아름다웠다.
오픈소스는 만드는 과정도 중요하지만 홍보에 대한 부분도 매우 중요한데, pylatte의 경우 파이썬 창시자인 귀도 반 로이썸에 직접 메일을 보내는 적극성을 띄었고, 그로 인해서 꽤 많은 외국 개발자 분들이 피드백을 주었다고 한다. 오픈소스에서는 무엇보다도 소통이 중요하다는 것을 보여주는 하나의 사례가 아니였나 싶다.
개인적인 의견으로는 pylatte는 간단하게 API 레벨에서 사용해 보는 것도 괜찮을 것 같다는 생각을 가지고 있다. 워낙 빠른 웹 개발 & 경량 프레임워크를 지향하고 있다는 소개도 있었고, 리치 웹 혹은 서비스를 개발해야 한다면 pylatte 보다는 Django 를 이용하기를 권장하였다.
**Server Side Development, 조대협**
조대협님 블로그는 개인적으로 자주 가서 보고 RSS도 등록해서 보고 있는 지라, 개인적으로 관심도 많은 상태였다. 서버 개발에 대한 종합비타민 같은 세미나가 아니였나 싶다. 기본적인 방법론 부터 시작해서, 사용하는 오픈소스까지 훑어주시는 센스가 진짜 10년만에 19살의 메가스터디 강사님을 생각나게 만드는 강연이었다.
대용량 서버 측면에서, 개발 프로세스/개발도구/아키텍처/테스트 이 4가지 관점에서 종합적으로 설명을 해주셨는데 현재 실리콘 밸리에 대한 이야기로 포문을 열었다. 소규모 팀으로 시작하고, 최신 기술보다는 안정적인 기술, 팀에서 잘 아는 기술로 시작하는 것이 포인트라고 한다. 개발 프로세스에서는 방법론 적인 이야기를 해주셨는데 소프트웨어 개발은 개발팀 수준으로 하향 평준화 된다는 점, 실용주의 방법론의 기본은 요구사항이 변하는 것을 기본으로 한다는 점, 스크럼이 대세긴 하지만 관리 측면에서는 가시성이 안보이는 문제가 있기 때문에 전체 개발은 폭포수, 각 단계에서는 스크럼을 이용하는 큰 우산 개발 방법론(Big Umbrella) 를 이용하라고 하였다. 어려운것 부터 잡아 가면서 개발하고 왜냐하면 어려운것은 나중에 바꾸기 어렵기 때문에 잘 생각하고 설계해서 개발해야 한다고 한다.
**[제13회컨퍼런스 조대협 서버사이드개발](http://www.slideshare.net/Byungwook/13-16698473 "제13회컨퍼런스 조대협 서버사이드개발")** from **[Terry Cho](http://www.slideshare.net/Byungwook)**
강조한것 중 하나는 **“방법론과 도구는 말 그대로 도구일뿐, 필요한것만 써라.”** 라고 이야기 하면서 Jira, MS Project 이런 툴을 익히는 시간이 오래 걸린다면 단순하게 엑셀로 시작하라고 조언해주셨다.
그외에도 테스트 측면에서는 다른건 몰라도 일일빌드는 반드시 하고 테스트 커버리지 80%를 지킬수 없다면 오늘 개발한 것의 30%의 코드에 대해서 80%를 테스트 하라고 했다. 나중에 보면 문제가 생기는 것은 전체의 30% 에서 생긴다고 했다. 또한 서버 아키텍처에 대한 부분은 AWS 등의 클라우드 부분에 대해서 설명해 주셨는데, 지역적인 측면도 잘 고려해야 하고, 설치는 금방되나 기대보다 느릴것이라고 하였다. 그리고 멀티 데이터 센터 설계가 중요하며, 나에게 맞는 인스턴스를 잘 골라야 한다고 했다.
정말 많은 이야기, 1시간에 다 담을수 없는 이야기를 해주셨는데 마지막으로 하나의 스크립트 언어정도는 하는 것이 좋다고 하셨다. JAVA 가 꽤 많은 부분을 차지하고 있긴 하지만 요즘은 스크립트 언어의 비중 역시 만만치 않다고 한다.
필자가 들은것은 이렇게 3가지에 대해서 였다. 사실 더 듣고 싶은 것도 없었고, 남은 세션들은 실습세션이 있어서 조금 아쉽기도 하였다. OAuth 관련 부분을 들을까 했지만, 예전에 HelloWorld NHN 세미나에서 들었던 것이랑 겹칠것 같다는 생각에 주저하게 되었다.
오픈소스에 대한 내용은 좋았다. 좀 큰 오픈소스를 만들고 분석하고, 현재 트렌드를 종합해서 볼수 있었고 좌충우돌식으로 직접 만든 개발자에 녹아있는 생생한 경험담을 들을수 있어서 좋았다. 약간 SI 쪽과 연관이 있긴 하지만 서버 개발에 있어서 고려해야할 점 등등 거시적인 관점에서의 서버 사이드 개발에 대해서 알수 있어서 좋았다.
JCO 라고 해서 꼭 Java 와 연관이 있는 것이 아니였다. 내가 듣지 않은 세션에는 클라우드, 자바스크립트, 스타트업 관련 세션들이 있었다. 이런 행사의 경우 기업에서 하는 경우 내부 인력을 통해서 각 세션마다의 특징이 정해지는 데 JCO는 약간 그런 부분이 적어서 아쉽기도 했다.
**내년에 참가?**
내년에 참가할지는 모르겠다. 그러나 엄청나게 빠르게 변화하는 시대에 맞추기 위해서라면 개발자 뿐만 아니라 컨퍼런스를 주최하는 주최측에서도 그만한 리서치가 필요할것 같다는 생각이 들었다. 내년에는 좀더 많은 오픈소스 커뮤니티 그리고 한국인 오픈소스 커미터/컨트리뷰터가 소개하는 세션이 많아 졌으면 하는 바램이다.
PS) 손영수 교수님과 박상근 씨에게 개인적인 오픈소스 관련 질문을 드렸었는데 잘 조언해주셔서 너무 감사합니다.