'분류 전체보기'에 해당되는 글 1286건

허니몬의 IT 이야기/프로그래머, '코드 엔지니어'

지난 2월 22일 토요일, 세종대학교 광개토관에서 열린 ‘제 14회 한국자바개발자 컨퍼런스(http://www.jcoconference.co.kr/)’가 열렸다.


이 컨퍼런스의 커뮤니티 세션에서 ‘REST API 설계와 구현(A부터 I까지)’이라는 제목으로 발표를 진행했다.

이 바닥에 개발자로 뛰어든지 5년만에 이룬 쾌거다. 개발자로서 30대 중반에는 한번 해봐야지 하고 계획했던 일 중에 하나.


시작하게 된 계기는 의외로 단촐했다.
JCO 커뮤니티 트랙에서 스프링 4.0에 대한 발표와 관련한 회의를 하다가 불쑥 결정되었을 뿐이다.
지난 해부터 꾸준하게 REST API에 대한 내용으로 누군가가 발표를 해주었으면 좋겠다고 이야기를 하고 있었는데

그럼 네가 하면 되겠네.

라는 이야기와 함께 순식간에 결정되어버렸다. 하아…

하기로 결정된 것, 번복하기에는 이미 늦어버린 상황이라, 한 달정도의 기간이 남은 상황에서 준비를 시작한다.
SLiPP.net 에서 발표했던 내용을 조금 더 다듬어서 준비하면 되겠지 하는 안.일.한. 생각으로 준비를 했다.

처음에 계획했을 때는,





REST API 에 대한 이야기(A부터 I까지). 모바일 시대에 들어서면서 다시한번 개발자들의 관심을 받기 시작한 REST API. 그 근간이 되는 리소스에 대한 이야기부터 REST API 설계, 스프링을 이용한 구현, 테스트와 문서화에 대해 이야기한다.

라는 주제를 잡고 이야기를 시작했는데, 정작 발표하겠다고 준비하는 내용은 REST API의 이론적인 설명에 대한 이야기들로 가득했다. 나도 모르게 ‘45분 이라는 발표시간만 채우면 되지.’ 라는 안일한 생각을 품고 있었을 것이다. 사실… 하기 싫… 주변에서는 ‘좋은 기회’라고 하는데 그게 막상 내가 하게 되니까 꼭 그렇지는 않더라. 배부른 소리하고 있는거지…. 누군가에게는 간절히 바라는 것일텐데.

발표를 몇일 앞두고, 커뮤니티의 리뷰가 있었다. 한창 발표자료와 발표예제(Rocking the REST API - github)를 작성하고 있는 상황이었다(지금도 작성하고 있지만… 추가적으로 사용하는 예로 AngularJS를 이용한 프론트 프로젝트(Rocking the REST API View)도 조금씩 만들고 있고). 내 발표내용을 들으신 분들의 이야기는 무엇을 말하고 싶은 것인지 정확히 모르겠다 였다. 여기서 덜컥하는 마음이 들었다. 이대로하면 안되겠구나….
집으로 가는 길에 어떻게 해야하나 궁리를 한다. 그리고는 ‘하나의 이야기를 만들어 그 이야기를 따라서 발표를 하자.’라고 기본 가닥을 다시 잡고 발표내용을 싸그리 뒤집었다. 이야기의 흐름은 ‘사용자가 커뮤니티(처음에는 그룹이었는데 Group 이라는 이름이 DB의 예약어와 충돌하면서 테이블이 생성되지 않는 문제가 있어서 커뮤니티로 교체했다. 마음이 조급하니까 이 문제를 파악하는데 상당한 시간이 소요되었다. 하아… )를 만들고 회원으로 가입하여 글을 쓰는 서비스를 만든다.’ 라는 가닥을 잡았다.



그리고 발표내용을 싸사삭 바꾸고, 발표예제도 싸악 바뀌었다. 발표내용과 발표예제를 맞추는 작업이 생각보다 많은 수고스러움을 야기한다. 발표를 할 때는 발표에 사용할 PPT와 발표와 관련된 내을 전달하는 문서(Word or Markdown)와 발표내용으로 구성된 예제를 보여주는 것이 좋겠다는 생각을 가지고 있는 나였기에 좀 무리를 했다. ㅡ_-);;; 어쨌든, 스프링 프레임워크를 기반으로 해서 동작하는 REST API 프로젝트를 만들어 제공하고 싶었다.

을 사용한 예제를 만들었다. 발표용 PPT는 발표날 새벽에 만들어졌고, 발표예제는 발표전까지도 계속 개발되었다…. 하아.
벼락치는 삶의 일부로구나. 커피와 포션으로 점철된 발표날이었다.

그리고 발표가 시작되었다.





45분의 발표시간이 어떻게 지나갔는지 잘 모르겠다. 그래도 사람들 앞에서 하는 두번째 발표라고 나름 여유가 생겼는지 사람들을 살펴보기도 하고 시간 조절(생각해보면 발표내용은 실제로 35분 정도 밖에 안되었다… 급 내용변경을 하면서 충분하게 채워넣질 못했어)도 하면서 무사히 발표를 마쳤다. 너무 많은 분들이 오셔서 오히려 내가 미안할 지경이다.

발표내용에 어느정도 공감을 해주셨을까?
발표를 마치고 난 후에는 긴장감이 풀려서는 아무 것도 하기가 싫었다. 그래서 지인들과 근처의 카페에 자리를 잡고 수다를 떨다가 어린이대공원을 산책하며 긴장했던 몸과 마음을 이완시켰다. 뒷풀이도 잘 끝나고 무사히 잘 마쳤다.


발표를 끝내고 난 뒤, 여러가지 아쉬움이 많이 남아있었다.
‘내가 좀 더 많은 경험과 지식을 가지고 있었다면 더 좋은 내용들을 전달할 수 있었을텐데’하는 아쉬움이 제일 컸고 이 아쉬움은 지금까지도 남아있다. 나보다 더 많은 경험과 노하우를 가지고 계신 분들이 이 바닥에 많으실텐데… 그 분들의 이야기를 듣고 싶은데 그 분들은 잘 드러나지 않는다. 내가 제대로 모르는 것인지도 모르지만…

다른 사람들의 발표를 듣고서 이런저런 이야기만 하던 입장에서 사람들 앞에서 발표하는 입장을 겪고 보니, 다른 사람들 앞에서 발표를 하는 게 결코 쉬운 일이 아니라는 것을 알게 되었다. 발표를 듣기 위해 오는 사람들이 어떨지 예측하기도 쉽지 않다. 그래서 ‘REST API에 대해 호기심을 가지고 있는 초보자’라고 청중을 특정짓고 이야기를 꾸려갔다.

난 지금도, 기술관련 발표라면 그 기술을 이해할 수 있도록 다각적인 발표자료가 준비되어야 한다고 본다.

  • 발표내용을 훑어볼 수 있는 ppt
  • 발표내용에 대한 상세한 설명된 문서
  • 실행가능한 예제

… 이거 준비하려면 발표하기 오래전부터 준비를 해둬야한다는 게 흠이고… 효율성은 많이 떨어진다. 그래야 조금이라도 도움이 된다고 생각한다. 실제로 보면 하찮거나 별거아닌 쉬운 기술일지도 모르지만, 그것을 어떻게 구성하고 어떻게 동작하는지 살펴볼 수 있으면 더욱 이해하는데 도움이 된다고 생각하니까.

발표를 끝내고 나니,

이제 발표 안할거야.

라는 생각이 절로 든다.
발표가 끝나고… 난 강릉으로 떠났다.


2014/03/02 - [허니몬의 취미생활/여행객!] - 20140224 바우길 1코스 - 선자령 풍차길



허니몬의 IT 이야기/프로그래머, '코드 엔지니어'

우리나라에서 일반인들이 가지고 있는 일반적인 잘못된 편견이 하나있다.

손님은 왕이다.

1, 2차 산업에서 3차 서비스 산업이 확산되고 서비스와 관련된 일에 종사하고 있는 사람들이 늘어나기 시작한다.
이런 서비스에 종사하고 있는 사람들은, ‘자신이 서비스 제공자이고 자신이 서비스 사용자’이기도 하다.
그런데 그런 그들 사이에서 공유하고 있는 공통된 명제가 하나있다.

손님은 왕이다.


Lifesize Religious King Statue with Spear
Lifesize Religious King Statue with Spear by epSos.de 저작자 표시


이것은 비단 서비스업이 아니라, 고객을 대상으로 하는 IT산업도 마찬가지다. SW산업 중 컨텐츠를 생산하고
서비스를 제공한다. 그리고 그 서비스를 개발하기 위해 수많은 기획자-디자이너-개발자가 얽혀있다.

이런 글을 쓰게된 발단이 되는 일은, 최근에 있었던 네이버 웹툰의 ‘스마트뷰(그리드 컴퓨팅)’ 기술도입에 관련된 일화다.

네이버 웹툰 스마트뷰

로 검색해보면 관련된 내용들을 찾아보면 된다. 간단히 설명하자면,

  • 네이버웹툰은 자정(00시)을 기점으로 그날의 웹툰이 업데이트가 된다.
  • 이 웹툰을 보려고 사람들이 자정부터 엄청나게 접속한다.
  • 이게 웹툰서비스가 동작하고 있는 서버에 엄청난 부하(트래픽)가 집중된다.
  • 이 부하를 견디려면 그만큼의 자원(서버)를 준비하고 있어야 한다.
  • 이 부하를 견디고나면 트래픽은 ‘미미’하다고 할 수 있을만큼 줄어든다.
  • 이 최고치와 최저치 사용의 갭이 매우 크다. 이걸 유지하기 위한 비용이 만만찮다.
  • ‘스마트뷰’라는 서비스로 둘러쳐진 것을 사용자의 컴퓨터에 설치해서 이 부하를 분산하려고 한다.

이 부분 정도가 대략적인 ‘스마트뷰’ 도입의 계기라고 짐작을 한다. 나는 실제 서비스 관련자가 아니니까 짐작이다.
이에 대해서 네이버에서는 ‘스마트뷰’라는 해결책을 내놓는다. 스마트뷰는 ‘그리드 컴퓨팅’이다.

그리드 컴퓨팅(grid computing)은 최근 활발히 연구가 진행되고 있는 분산 병렬 컴퓨팅의 한 분야로서, 원거리 통신망(WAN, Wide Area Network)으로 연결된 서로 다른 기종의(heterogeneous) 컴퓨터들을 묶어 가상의 대용량 고성능 컴퓨터를 구성하여 고도의 연산 작업(computation intensive jobs) 혹은 대용량 처리(data intensive jobs)를 수행하는 것을 일컫는다.

‘그리드 컴퓨팅’ 기술에 ‘자정 이전에 다음날 나올 웹툰을 볼 수 있다.’ 라는 기획이 곁들여졌다. 웹툰 소비자들은 그러게
‘스마트뷰’를 위해 프로그램들을 설치한다. 이 과정에서 네이버측은 스마트뷰가 사용하고 있는 기술에 대한 이야기와 그 기술을
사용하기 위한 공지를 하지 않았다.
 이게 스마트뷰에 대한 오해를 일으키는 요인이 되었다.

  • 웹툰 소비자들은 조금이라도 빨리 웹툰을 보고 싶어했다.
  • 네이버는 ‘스마트뷰’를 설치하면 그게 가능하다고 했다.
  • 이 ‘스마트뷰’가 ‘그리드 컴퓨팅’이라는 기술을 사용했고 이 그리드 컴퓨팅은 사용자의 컴퓨터에 설치되어 일부 사양(CPU, 메모리, 저장소)을 사용할 수 있다.
  • 네이버는 이런 ‘스마트뷰’의 동작원리나 기능에 대한 설명을 ‘웹툰 소비자’들에게 공지하지 않았다.
  • 이 ‘스마트뷰’의 기술에 대해 알게된 사람들이 ‘그리드 컴퓨팅’에 대해 설명하면서 이에 열폭한 ‘스마트뷰’ 설치자와 웹툰 소비자들이 열폭한다.

조삼모사_빈칸
조삼모사_빈칸 by Jinho.Jung 저작자 표시동일조건 변경허락

뭐… 그렇다.

이 문제에 대한 내 생각은 이렇다.

뭐 이런 걸… 극성스럽게 난리를 떨지…? ‘꼭’ 12시에 봐야해? 자고 담날 출근시간 등교시간에 보면 되는거 아냐? 사람들이 살아가는 게 각박하니 ‘만만’한 것에서 극성을 떨며 난리를 치지. 우리네 삶은 왜 이리 각박하냐?

자기들이 사용자(소비자)라고 하면서 유난을 떠는데, 실제로 그 서비스를 이용하는데 얼마나 도움이 될까? 무료라는 것은 결국은 ‘유료’ 사용자들을 낚기 위한 밑밥이다. 이 밑밥이 이상하다고 난리를 치고 있…
그 속에 거들먹거리는 무리가 하나 있는데, 프로그래머나 관련업자들. 아는 놈들이 더 해. 해봤던 놈들은 좀 더 해. 자기들도 이런 상황이 되면 비슷한 해결책을 내놓을 수 밖에 없을건데.

개인적인 생각으로는 이렇게 소란스럽게 구는 이유를 모르겠다. 물론..

  • 스마트뷰에 사용된 기술
  • ‘그리드 컴퓨팅’에 동작방식
  • 돌아가는 방식에 대한 공지를 제대로 하지 않음

결국은…

00시 이후 나오는 웹툰을 조금 더 빠르게 보기 위해 ‘스마트뷰’를 설치하고 몇십분이라도 일찍 보겠다.

여기에 해주고 싶은 이야기는,

땅을 파봐라. 돈이 나오나.

이 이야기는 얼마 전에 나온,

라는 기사를 보면 딱히 드러맞지 않는 이야기지만… ㅎㅎ

내 결론을 정리하자면,

  • ‘스마트뷰’에 대한 공지를 제대로 하지 않아서 이런 난리를 일으킨 너그도 문제고…
  • 자기들의 ‘웹툰을 몇십분이라도 일찍 보겠다.’라는 욕심으로 설치한 프로그램에 열폭하는 사람들.

둘 다 좀 그래…

프로그래머와 같은 SW엔지니어들은 기술에만 집중하는 ‘중독’된 자들이다. 다른 말로는 ‘몰입’이라고 한다. 내가 작성한 코드, 내가 구성한 아키텍처들이 동작하는 모습을 보면서 ‘즐거움(혹은 쾌락?)’을 즐기는 어린애들이라고 생각한다.

프로그래머로서 살아가고 있는 나로서는, ‘타산지석’ 삼아야겠다.

조금 더 시야를 넓혀서 ‘서비스’에 대해서 관심을 가져야한다. 자신이 사용한 기술들과 마법이 어울어져서 만들어가는 ‘서비스’와 그 서비스를 사용하는 ‘사용자(…고객이라고 하기 싫다… 고객은 지랄맞다.)’를 고려해야 하고, ‘법法’적인 테두리 안에서 ‘합법’적인 활동을 하는 것이 중요하다. 그걸 쓰는 사용자들의 움직임을 조정하는 것도 재미있… 중요한 건, ‘사람’에 대해서 이해하고 관심을 가져야 한다는 거다. 결국 우리가 만드는 것들을 사용하고 그에 반응하는 것은 ‘사람’이니까.

프로그래머여, 사람에게도 관심을 가지자.

난, 평범한 ‘일반인’이다. 그렇다. 암만…

허니몬의 취미생활/여행객!

JCO 발표를 마치고, 오랜만에 여행을 다녀왔다.

강릉에 눈이 많이 내렸다는 이야기에 무작정 강릉으로 무작정 떠나서 친구를 만나 근사하게 대접을 받고, 대관령 휴게소로 샹했다. 대관령 휴게소에서 '선자령 풍차길'은 바우길 제 1코스로 대략 4~5시간이 소요된다(눈길을 걸으니 조금 추가될 수도 있다).
















선자룡 풍차길에서 길을 잘못들 수 있는 구간이 있다. 선자령을 돌아서 내려오는 길에 한일목장 쪽입구 부근에서 안내표지판에 따라서 가지 않고 차단기를 넘어 한일목장으로 쭈욱 들어가는 경우가 있다(내가 그랬다. 길을 잘못 들어서 왕복 2시간을 허비했다). 한일목장 쪽으로 가면 횡계시 쪽으로 쭈욱 걸어나갈 수밖에 없다.











0123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118


허니몬의 취미생활/로드레이서!

나와 함께 올해도 열심히 달려보자.

블랙조에 어울리는 빨간 테이핑을 교체하고, 묵은 먼지를 씻어내고, 기름을 두르고 새로운 마음으로 달려보자.

허니몬에 관한 보고서/허니몬의 직장일기

배가 침몰하는 순간.

배가 침몰할 때를 짐작할 수 있는 상황들이 있다.


배에 소리를 기울여라.

1 ··· 32 33 34 35 36 37 38 ··· 258
블로그 이미지

Email : ihoneymon@gmail.com 안녕하세요, 꿀괴물 입니다. ^^ 멋진 비행을 준비 하는 블로그 입니다. 만능형 인간이 되어 많은 이들에게 인정받고, 즐겁고 행복하게 살기를 간절히 원합니다!! 달콤살벌한 꿀괴물의 좌충우돌 파란만장한 여정을 지켜봐주세요!! ^^

허니몬