ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 소셜 네트워크 게임과 구글 앱 엔진 SNG & GAE - 공개SW역량프라자, 오픈 테크넷
    IT 2011. 12. 2. 13:46

    이번엔 집에서 가깝다는 이유만으로 덜컥 신청해서 가 본 오픈 테크넷 이야기. 숭실대는 집에서 걸어서 약 한 시간 거리, 아주 가깝다.

    그래서 츄리닝에 슬리퍼 질질 끌고 살랑살랑 마실 가듯 갔더니, 사람들이 모두 이상한 눈으로 쳐다 보네. 뭐! 츄리닝(트레이닝 복 아님, 츄리닝임!)에 슬리퍼 신은 사람 처음 보냐! 했지만, 계절이 겨울이었군. 사람들 눈엔 내가 IT 기술에 관심 있는 노숙자로 보였겠군. 뭐 상관 없어, 패션쇼 하러 가는 것도 아니고, 대학생 꼬시러 가는 것도 아니고. 뭐 어때.

    가까운 곳이라 산책 삼아 가끔 가는 숭실대지만, 본관 쪽과 조금 떨어져 있는 정보과학관은 한 번도 들어가본 적 없는 곳. 대학 건물이 다 그렇고 그렇지만, 여긴 조금 한샘학원 분위기가 나네.

    어쨌든 그래서 정보통신산업진흥원 공개SW역량플라자가 주관한 '18회 Open Technet'에 갔다는 이야기. 참고로 이 행사는 주기적으로 다른 주제들을 가지고 열리는 거고, 열릴 때마다 장소도 바뀌는 행사다 (밥은 안 줌).









    유엔진솔루션즈라는 회사의 장진영 대표가 'Top 1% 커뮤니티 리더에게 듣는 커뮤니티 글로벌 전략'이라는 제목으로 세션을 시작했는데, 당연히 나는 늦게 가는 바람에 이 세션은 마지막 부분만 조금 들었다. 사실 대학교에서 하는 강연인 만큼, 주로 올 대상이 어떨지, 제목에 따른 내용이 어떨지 약간 짐작이 되기도 했고.

    아주 잠깐 들은 이 부분에서 기억에 남는 것들을 적어 보자면 이렇다.

    - 회식에 안 나오거나, 잘 어울리지 않는 개발자가 회사의 핵심일 가능성이 높은데, 억지로 끌어내 봤자 역효과만 날 뿐이라, 이들을 소통에 끌어들이기 위해 페이스북을 이용해 봤다. 안 하는 것 보단 나았다.

    - 개발자들이 남이 짠 소스코드를 받아 들면 일단 스크롤 하며 감상을 한다. 그리고 왕창 욕을 퍼붓고, 자기가 다시 코딩 한다. 그 프로그램은 욕 듣기 마련이고, 그러면 개발자는 결국 '에이, 오픈 소스는 할 게 못 돼'라고 생각한다.

    - 개발자들은 자신이 직접 코딩을 해야 자아적 정체성을 가진다고 생각하는 경향이 있다. 하지만 요즘은 매쉬업 mash up을 이용한 비자아적 프로그램이 시작을 만든다. 남의 코드도 존중할 줄 알아야 한다. 우리 회사에서는 '이거 왜 이렇게 짰어?'라는 말을 못 하게 한다.

    - 오픈 소스 비즈니스 모델이 필요하다.

    - 페이스북에 올려서 안 되면, 다른 채널로 가져가봤자 안 된다. 끝.








    행사 들어가면서 받은 소책자와 우분투 시디를 만지작거리며, 휴식시간에 놓여진 과자를 먹으며 계속되는 세션을 들었는데, 아아 솔직히 좀 관심 없는 부분이었다.

    이어지는 강연은 '웹 기반 AJAX 개발을 위한 프레임워크 - 메타웍스3'라는 제목이었는데, 처음부터 끝까지 다 들었지만, 메타웍스3 라는 것의 정체를 모르겠다. 자사에서 개발중인 오픈소스 툴인지, 아니면 세계적인 개발 툴인지 조차. 강연 끝나고 집에 와서 사이트 들어가봐도 이상한 오작동스러운 화면만 뜰 뿐이고.

    일단 확실한 것은 웹 기반 개발 툴이라는 것. 그리고 장진영 대표는 강연 내내 프로그램 짤 때 모델링을 통한 조직화가 중요하다고 강조했는데, 결국 '설계'가 중요하다는 이야기로 압축할 수 있는 말이었다. 설계가 중요하다는 말은 동의하지만, 강연 중 'POJO와 Spring을 통해 생각나는 데로 코딩하라'라는 것 때문에 SW 체계성이 많이 망가진다(망가졌다)라는 말은 선뜻 동의할 수가 없다.
     
    내가 개발 베이스라서 그런지는 몰라도, '생각나는 데로 코딩해라'는 개발에 기쁨과 재미와 자유도를 높여주는 유용한 방법이라 생각하기 때문이다. 물론 거기서 생산성이 높아지는가라는 질문을 한다면, 선뜻 예라고 대답하기는 어렵다. 하지만 놀이가 꼭 생산적이어야 할 필요는 없지 않나. 그러면 또, 회사 일이 놀이냐라고 물을 수도 있겠지만, 회사 일이 놀이가 되면 좋지 아니한가라고 반문할 수 있다.

    설계는 중요하다. 새삼 또 말 할 필요도 없다. 하지만 건설현장 노가다를 해 본 분들이라면 아시겠지만, 설계는 설계고 현장은 현장이다. 사무실에서 설계도 그린 사람 입장에서야, 세부적인 사항까지 모두 따라 주었으면 하는 마음으로 그렸겠지만, 실제 현장에서 일 해 보면 그게 딱딱 들어 맞지가 않는다.

    벽돌 0.1밀리미터가 쌓이다 보면 어디선가 오차로 인해 삐끗날 때가 있고, 그 때는 현장 숙련자의 노련한 솜씨로 마감을 해야 하는 상황이 있다는 거다. 따라서 설계도는 배가 산으로 가지 않게 하기 위해 제시되는 것일 뿐, 모든 것을 통제할 수는 없다는 것, 어차피 설계도 사람이 한 거니까. 그래서 나는 제대로 된 설계와 함께 자유도 높은 코딩 방식 또한 양립해야 한다는 입장이다. 어쨌든 넘어가자, 길게 쓰면 논쟁 된다. 








    세번째로 발표한 분은 소프트웨어인라이프라는 회사의 장선진 대표. '구글 앱 엔진과 소셜 네트워크 게임'이라는 제목으로 강연을 했다.

    사실 이 강연이 제일 끌렸는데, 혼자 메뉴얼 보고 이것저것 만져보며 알아가는 것도 좋긴 하지만, 이미 경험한 사람, 그것도 나와는 조금 다른 목적으로 이용하고 있는 사람의 이야기를 들으면, 몰랐던 사실이나 새로운 것들을 알 수 있기 때문에 혼자 골방에 처박혀 있는 것 보다 낫다는 생각이다.

    내 경우야 구글 앱 엔진을 그저 경험삼아, 재미삼아 혼자놀기 용으로 테스트 잠깐 해 본 것 뿐이지만, 이 분 입장은 실제 사업을 위해 진지하게 이용해 본 경험이 있으니까 한 번 들어봐야겠다는 생각이 들었던 것. 거기다 소셜 게임 사업까지 덧붙여 설명 해 주니 관심이 갔던 거다.

    어쨌든 강연 내용을 압축해서 중요한 내용들만 간단히 정리해 보겠다. 이후 나오는 약자 중 SNG는 Social Network Game을, GAE는 Google App Engine을 뜻한다.





    - 소셜 네트웍은 스마트폰 때문에 폭발적인 인기를 얻어서, 이제 분명한 IT 플랫폼이고, 이 네트웍은 범위가 점점 넓어지고 증폭이 빨라지고 있다.

    - 페이스북은 지금 전세계적으로 거의 8억에 달하는 유저들이 이용하고 있는데, 앞으로는 관심사 별로 사람들을 모아주는 서비스가 뜰 것이라고 예상된다.
     
    - 그렇게 관심사 별로 사람을 모아주는 앱App 중 하나가 바로 게임이다. SNG가 포화상태라는 말도 나오지만, 앞으로 새로운 플랫폼이 또 나올 거고, 페북에서 서비스 제공은 아직도 해 볼 만 하다.
     
    - 페북은 거대한 마켓 플레이스다. '서울역 앞에서 장사 하면 어떤 장사를 해도 잘 된다'라는 말이 있듯, 페북은 많은 사람들이 오가는 도전해 볼 만 한 마켓이다. 여기서 중요한 것은 이제 더이상 국내 시장에 집착하는 것은 버려야 한다는 것.

    - SNG의 특징 중 하나는 우선 공짜로 즐기게 해 주고, 나중에 아이템을 사게 유도하는 방식이라는 것. 여기서 대략 1%의 유저들만 유료 결제를 하는 것으로 알려져 있다.

    - 페북 게임 중 시티빌은 유저 수가 약 9천 만. 팜빌은 4천 8백 만. 15위권 안에 든 게임들 유저 수가 모두 1천 만 이상이다. 1천 만 유저 중 1%만 유료 서비스를 이용한다 해도, 10만 유료회원이 확보되는 거다.

    - 야심차게 1등을 꿈 꿔 보자. 시티빌을 넘어서려면 대략 1억 명의 유저를 확보해야 한다. 그렇다면 이 정도 인원을 감당할 서버를 구축할 수 있는가? 혹은 처음부터 몇 명이 접속할 지 잘 예측하고 서버를 구축할 수 있는가? 이런 문제에 대한 대안이 클라우드 컴퓨팅이다.






    - 클라우드 컴퓨팅은 규모의 경제. 그래서 구글이나 아마존 같은 회사들이 할 수 있는 것. 어쨌든 구글은 전세계적 서버 시스템으로 클라우드 컴퓨팅 환경이 잘 구축되어 있다.

    - 구글 데이터 센터에 대한 자료는 탑 시크릿이라 알 수 없지만, 밝혀진 바에 따르면 페이스북 유저들의 분포도와 거의 일치하는 곳에 데이터 센터가 있다 한다. 따라서 페북 용 SNG를 만든다면 구글을 사용해 볼 만 하다.


    - SNG는 서버 점검 시간 따로 없이 멈추지 않고 서비스를 해야만 한다. 그리고 유저들을 계속 붙잡아 두려면 좀 더 예쁜 건물이나 새로운 아이템 등을 수시로 계속해서 업데이트 해야 한다. 따라서 서버를 멈추지 않고, 지속적으로 업데이트가 가능해야 한다는 것.

    - GAE는 버전 관리 기능이 있어서, 새로운 버전을 기존 프로그램을 멈추지 않고 배포 할 수 있다. 그리고 원한다면 옛 버전으로 되돌아갈 수도 있다.


    - SNG는 엄청난 데이터 스토리지가 필요하다. 사용자마다 건물을 지을 공간에 대한 데이터와, 아이템들, 이미지 데이터 등을 고려해 본다면, 대부분을 간단한 텍스트로 만든다 해도 1천 만명 이상이 이용하면 엄청난 공간이 필요하게 된다. 구글 GAE의 데이터스토어나 아마존 AWS는 이 문제에 대한 해결책이 된다.


    - GAE는 Auto Scaling이 가능하다. 서버 작업 없이 DB 용량을 증설한다든가 하는 것이 가능하다. 돈만 내면 된다. 100달러 정도면 하루 100기가의 밴드위스Bandwidth를 사용할 수 있어, 기업 입장에서 크게 부담되지도 않는다. (주: 이 부분에서 100달러는 조금 애매함. 가격 정책을 자세히 살펴보고 확실히 알아내야 할 필요 있음)

    - GAE는 XMPP를 이용할 수 있는데, 이것은 GTalk에서 사용하는 통신 프로토콜이다. 이걸 이용해 다양한 서비스 구현이 가능하다.

    - GAE에서 80메가 정도 되는 앱을 배포deploy하는데 2~3분 정도 걸렸다.

    - Google Apps Marketplace에서는 다양한 앱들이 판매되고 있어, 스타터들이 바로 골라 쓸 수 있다. 또한 자기가 개발한 앱을 업로드해서 판매할 수도 있다. (주의: 여기서 앱은 핸드폰 앱이 아님)




    이 정도로 정리 끝. (그럴리는 없겠지만) 뭔가 큰 걸 기대하고 들어온 분들이라면 실망했을 수도 있겠다. 그저 SNG 개발하는 데 GAE를 사용할 수도 있겠다라는 것을 배웠다는 것 정도로 만족하자.



    참고로 구글 앱 엔진 Google App Engine은, 스마트폰 용 앱만 돌릴 수 있는 것이 아니다. 간단히 설명하자면, 웹 게임 같은 서비스를 돌릴 수 있는 서버라고 이해하면 된다. 웹 호스팅이나 서버 호스팅 비슷한 거라고 이해해도 된다. 그런 것들과 약간 차이는 있지만, 사실 마음만 먹으면 쇼핑몰도 충분히 만들어 돌릴 수 있기 때문에, 개발자가 아닌 사람들에겐 큰 차이 없게 보일 수도 있다. 

    GAE는 올해 중반 쯤 가격 정책을 바꿨는데, 기존에는 공짜로도 충분히 사용할 만 했는데, 이젠 좀 많이 비싸졌다. 개인이 재미삼아 뭔가 돌려 보기에는 약간 부담스러울 수도 있는데, 그래도 아직 기업 입장에서 이용한다면 싼 편이다 (서버 호스팅 같은 것에 비해서). 물론 앞으로 또 어떻게 변할 지 알 수 없다는 문제점이 있긴 있지만.

    그러니 지금 막 시작하는 사람들이라면 무작정 웹 호스팅이나 서버 호스팅으로 돈 들이려 하지 말고, GAE를 한 번 살펴 볼 필요가 있다. 특히 전세계적 서비스를 목표로 한다면 꽤 유용한 방법이다.




    참고자료
    구글 앱 엔진 소개(영문): http://code.google.com/intl/ko/appengine/docs/whatisgoogleappengine.html
    구글 앱 엔진 가격정책: http://www.google.com/enterprise/cloud/appengine/pricing.html

     

    댓글

Copyright EMPTYDREAM All rights reserved / Designed by Tistory.