가장 훌륭한 코드베이스에도 불필요한 코드는 만들어진다. 프로젝트가 클수록 더 많은 불필요한 코드가 존재한다. 이것은 실패의 징조가 아니다. 죽은 코드를 발견했음에도 아무런 초취도 취하지 않는 것이야말로 실패의 징조다. 사용되거나 실행되지 않는 불필요한 코드를 찾아냈다면 즉시 제거해버리자.

코드의 새로운 부분을 작성할 때, 명세 부분은 옮기지 말자. 개인적으로 흥미롭더라도 요청되지 않은 ‘작은’ 기능을 추가하지 말자. 필요한 경우 나중에 추가하면 된다. 비록 좋은 생각이라 해도 하지 말자.

훌륭한 프로그래머 되는 법

기록하다.

언제부터인가 내가 어제 무엇을 했던가. 무엇을 생각하면서 지냈던가를 생각하지 못하면서 였었다. 이슈를 작성하고, 그곳에다가 어떤 이야기가 나눠졌고, 어떤 논의가 왔다 갔는지에대한 내용들을 간단히라도 적으려 노력한다. 하지만 아직까지는 내가 원하는만큼 제대로 작성이 안되는 부분도 있고, 개발자가 아닌 다른 사람들과 논의를 해야되는 부분들이 생기면서 그들에 맞는 툴들을 사용하기도 하니까. 되도록이면 한곳에서 그것들에 대해서 볼수 있도록 노력을 한다.
형식은 단순하다. 내가 할일을 이슈로 자세히 내용을 적고, 그것을 처리하고, 닫는다. 그것이 개발이든, 설치든, 구성이든 내가 하는 일에 대해서 어떻게 진행을 했는지에 대한 내용을 꼭 남기려고한다. 이런 것들에서는 따로 노트 프로그램을 사용하고 있지는 않다. 만약 사용해야된다면, 그건 이슈에 적거나 티켓으로 만들기 어려운 것들은 다른 곳에 적는 것으로 진행한다. 너무 많은 곳에다가 동일한 내용을 하면서 각인이 될뿐 진행이 되지 않는다는걸 아니까… 그리고 그것을 꾸준히 하기가 어렵다는 걸 아니까…
 
그런데 그렇지 않은 사람들도 있다. 그 사람들은 자신의 기억이 좋다고 판단하고 그러는 것일까? 아님 무엇때문에 그러는 것일까? 그들을 변하게 만들어야될까? 그들을 설득은 할 수 있겠지만… 지금까지 봐왔을때, 그들은 변경하지 않을 것이다. 그들은 그것이 왜 남아있어야하는지를 깨닫지 못하였기에… 몇달뒤 자신들은 자신이 무엇을 하였는지 모르고, 다른 사람에게 왜이렇게 했는지에 대해서 말하지 않겠지. 그리고 자신이 했다는 것을 알게되었을때, 그들은 침묵을 하겠지.
기억은 나에게 맞도록 조작이된다. 그것을 잊지말자. 기억은 내가 편한 것으로만 남아있다. 그것을 잊고, 자신의 기억을… 그리고 팀으로 작업을 진행하는 것에 있어서 같이 작업하는 것이아닌 자신만의 작업인 듯이 하지말자. 내가 하는 일에 대한 내용들을 남겨 일이 끊기게 하지말자. 어짜피 나는 사라질 것이고 회사는 남을 것이다. 그리고 그뒤에는 그들이 알아서 하겠지.
나만의 방식으로만 작업을 진행하지 말자. 만약 진행을 했다면, 그것에 대한 기록을 하자. 그래야지 그들이 수정을 하더라도 이해를 하고 수정하여, 처음 의도했던대로 작업을 진행할 수 있도록 해주어야한다. 그래도 그들은 자신들이 편한 방법으로 완전히 새롭게 만들것이다.
어떤 형태든 내가 한일에 대해서 남겨두고, 그것을 기반으로 이야기를 하자. 난 당신이 아니고, 당신은 내가 아니다. 그러니 내가 한일을 당신이 이해할 수 없다. 하지만, 기록을 남겨두고 조금이나마 관심을 가지고 있다면 당신은 내가 이렇게 했구나 정도는 알 수 있을 것이다.
자신만의 기록도 남기고, 남들을 위한 기록도 남기자. 항상 그렇듯 나를 위한 기록에서 더 자세히 적어놔야 남들을 위한 기록으로 남길때 편하게 남길 수 있을 것이다.

2016년

뭐 달라진 것이 있는가 한번 봐야겠다. 안된게 많을 것 같아.ㅠ.ㅠ.

2015년

다사다난했다. 날삼재였는데… 이 정도일 줄은 몰랐다. 이것저것 많은 일이 있었지만 이정도로 힘들줄은…

반성 및 변명

1. 안됨.

2. 사진찍기

전혀! 못찍었다. 중간전 참여를 하고 싶었는데 전혀 못했다. 시간도 안났고 뭔가 바빴다.

3. OpenStack

  • 번역
    • 용어집 – 단어집을 만들어서 필요한 것들이 나오면 추가하고 그대로 번역하려 노력하고 있다.
    • Hrizon – 이제는 익숙해져서 계속 필요한 진행이 필요하기 전에 작업을 하고 있다.
    • 한글 문서 폰트 문제 – 부대표님께서 패치해주셔서 제대로 나오는 걸로 알고 있으며, 이번에는 문서툴이 변경되면서 웹폰트로 보여줄 것이라 나쁘지 않을 것으로 보인다.
  • Summit
    • 도쿄 써밋 불참 – 회사 일정이 꼬이고 그래서 제대로 안되었다.
  • OpenStack Day
    • 연래 행사된듯… 참좋았다.

4. 플랜

GTD로 진행하려고 하였으나 Todo 방식으로 모든 일이 진행되는 현상발생.
그래도 omni Foucus를 계속 사용하고 있는데 이것도 잘은 안되고 있음. 다른 방법을 찾아야되는건지 아니면 더 사용하는 것을 계속 할 것인지에 대한 내용을 자겁하는 것이 필요할 듯.

5. 공부

  • Rust – 못함
  • JS – 하다 맘
  • Sphinx – 못함
  • 번역… – 한국어 공부는 계속하는중…

6. 자료 정리

Evernote로 모든 것을 넣어두고 있는 것을 동일. 하지만 조금씩 블로그로 그 내용들을 정재하여 내보낼려고 정리하는중.
모든 자료들에 관련된 내용들을 정리할 수 있도록 작업을 중간 중간 추가하고 있는중.

7. 개발

  • Dotfile 생성
    • 버그는 있지만 작업을 다 해놓음.
    • 군데구데 손을 봐야하는 부분이 존재해서 수정이 필요함.
  • 오픈소스 코드 읽기
    • 금방 금방 되는건 아니지만은 그래도 차근차근… 읽는다고 다 읽히는 것만은 아닌… 읽을 것들이 많다.

블로그 정리

2015년 블로그글 순위

묘하다. 이렇게 되어있고… 뭔가 일이 있었던건가… 너무 많이 들어오는데…

모임

이상한모임에서 모임이 있으면, 참여하고 이야기하고… 아쉬운건 하고자 했던걸 진행시키지 못했던것. 내가 뭘 하고 있는지에 대해서 이야기 하지 못 했던 것..

OpenStack 한국 모임. 2015년 초에 스터디로 만났던 분들과 스터디를 꾸준히 진행해 올 수 있었던것. 후반기 스터디도 잘 지나갔고… 아쉬운건 OpenStack관련 세미나가 많지 않았던 점. 배울껀 많은 데 앞에서 끌어주는 사람도 없고 내가 끌어가야되니 힘들기도 하고…

2016년

할꺼

1. 번역

기본 작업이 되어서 그런것도 있긴하다만. 본업보다 더 바쁘게 작업을 진행하고 있다. 일정이 잡힌것도 있고, 내가 사람들에게 강요를 안하고 있다는 소리기도 하고, 하지만 그것을 강요한다면 그에 따른 무언가를 제시할 수 있어야하지만 이건 그렇지가 못하니 그냥 내가 해야지…

올해는 문서를 완료해야 하고, 항상 하던 Horizon작업도 진행하고, 프로젝트들 중 번역되지 않은 것들이 있으면 그것들을 번역해서 하나하나 늘려갈 수 있도록하는 것.

2. 영어

번역을 하고 있으나 그러면 뭐하나 말을 못하고, 대화가 안되는데… 어떻게든 영어로 말을 하고 대화가 가능하도록 공부를 해주는 것이 필요.
그런데 어떻게 하지… 학원에 등록해야되나…

3. 개발

  1. 업무
    • 업무적인 개발들은 우선은 Ruby로 진행이되나 RoR이라 이건 RoR을 더 배워야되는 것인 프레임워크이니 이걸 진행을 해놔야될 것으로 보임.
    • 이외 작업을 하면서 진행해야될 것들이 있다면, 대도록이면 Ruby로 하려하되 안되는 것들은 Python이나 Shell 스크립트로 작업을 진행할 것. 그리고 필요에따라 언어들을 배워놓고 사용할 수 있도록 할것.
  2. 오픈소스
    • OpenStack의 내용들을 하나하나 느리게 알아가도록 하자. 어짜피 모든 프로젝트들을 전부다 볼려면 그것을 지금처럼 조금의 시간을 드려가면서 작업을 한다면, 시간이 걸리더라도 전체를 다보는 건 필요하니, 늦겠지만.
    • 도울 수 있는 프로젝트들이 있다면 손거들것. 외국으로 작업을 진행하는 것도 필요하고.
  3. 토이
    • 판 벌려놓은 것 작업을 진행해야… 어짜피 CLI로 작업을 진행하는 것들로만 작업을 하도록 해놨으니 작업을 진행하는 것이 필요함. 우선 돌아가는 것부터 작업을 진행하는 것이 필요하니까. 왠만한 것들은 Ubuntu에서 기본적으로 돌아가도록 설정. 16.04 기준으로 작업해야지…
    • 하나에 3개월을 넘지 않도록 마일스톤을 찍어가면서 피치를 올릴 수 있도록.

4. 자료 정리

Evernote의 태깅을 제대로 써보도록 하는 것이 필요. 그리고 그것을 구성해두고 DEVOnThink으로 구성을 구체화하여 블로그로 내보낼 수 있도록 하자.

5. 모임

올해도 꾸준히 개발자 모임에 참여할 수 있도록 하고, 특히나 Pycon은 한국에서 열리는 만큼 어떻게든 들을 수 있도록 하는 것이 필요. 누군가는 컨퍼런스 다녀오는 것에 대해서 특별한 경험이 었다 말하지만. 참여 하면 할수록 우리나라에서 그것을 진행할때는 참여를 해주는 것이.

오픈스택 데이 진행도 있을 껀데. 어떻게 진행하실려나 모르겠다.

올해 오픈스택 컨퍼런스는 스페인이니 갈 수 있도록 준비를 해놔야될듯.