공자보다는 맹자를, 명분보다는 실리를 좋아했습니다. 프로그래머였기 때문이죠.
하지만 큰 일을 이루기 위해서 명분을 빼놓으면 안 된다는 것을 안지는 얼마되지 않았습니다.
바로 일 추진에 필요한 관련자들의 설득을 얻기 위해 필요한 것이 명분입니다.

결국 포장을 잘 해야 된다는 얘기와도 맥이 같고, 코드 A4 한 장보다는 파워포인트 한 장이 더 많은 가치를 만들어 내는 이유이기도 합니다. 설득에 필요한 명분을 갖추고, 논리적, 감성적으로 이해당사자들의 마음을 얻어내는 것.

어렵죠.
남의 주머니에서 돈 빼오는 일이 쉬운 게 어디있을까요.

세상에 만들어지는 모든 것들은 생로병사라는 인생의 사이클을 가지고 있습니다. 태어나고 늙어가고 병들고 죽습니다. 그 동안 또 다른 버전을 내놓게 됩니다. 한 세대와 다음 세대 사이에는 겹치는 부분이 있습니다. 공존하는 시간 동안 학습을 통해서 문화가 만들어지고 전달이 됩니다.

사용자 삽입 이미지
image from: http://www.billyfire.com/plan.php


소프트웨어도 같은 맥락에서 바라보면 태어남, 늙어감, 병듦, 소멸에 대한 사이클을 갖고 있다고 할 수 있습니다. 태어나서 서비스를 할만큼 성장하고 갖가지 입력값과 쌓이는 데이터를 처리하면서 늙어갑니다. 버그나 해킹 그리고 시대의 변화에 따라 가지 못함으로 병이 들고, 사람들이 떠납니다. 그리고 소프트웨어는 역사의 뒷켠으로 소멸하게 됩니다.

인기 있는 소프트웨어가 있는가 하면 조용히 묵묵히 자기 일을 하다가 스러지는 소프트웨어들이 더 많습니다. 인명은 재천이라고 사람의 태어나고 죽음이 하늘의 뜻인 것처럼 소프트웨어의 명은 만들고 사용하는 프로그래머와 유저들에 달려있습니다.

흔히 버전이라는 것으로 소프트웨어의 생명을 연장하려고 합니다. 유년기에 해당하는 알파버전 청소년기에 해당하는 베타버전, 성인으로 세상에 나서는 1.0 그리고 20대에 해당하는 2.0, 쓸만해진 3.0, 이미 세상에서 인정받는 버전 4.0, 이렇게 소프트웨어는 성장합니다.

컴퓨팅 환경이 바뀌고, 사람들의 생활방식이 바뀌는 것에 적응해야 좋은 소프트웨어로 많은 사람들에게 서비스를 지속할 수 있습니다. 변화의 흐름에 맞는 소프트웨어, 또는 사람들을 변하게 할 수 있는 재주를 가진 소프트웨어가 가치를 만들어냅니다.

안정적인 서비스를 지속하면서, 더 나은 버전의 새로운 탄생을 준비하는 것. 소프트웨어 엔지니어가 해야할 일이 아닌가 생각해봅니다.

옆에 있어 주는 것 외에 아무런 조치도 취하지 못한다는 것이 이리 답답한 것인 줄 몰랐습니다.
기적이 일어나길 바라는데, 말 그대로 기적입니다.
고생하는 아내가 고마울 뿐입니다.

인생도 좋고, 소통도 좋지만,
저는 술 조심해야할 것 같습니다.
아래 사진은 합성입니다.
사용자 삽입 이미지

source image from: http://www.koreafilm.co.kr/movie/picture/still/12.jpg 

얼굴 소스: photo by 호랭이

다가나지//파리가 많이 껴서요. 지우지는 않습니다. 짬통으로 보내버리는거죠.
Tips 게시판에 Q&A 올라오면 안 어울리잖아요.
사는 얘기랑 머리식히는 곳 왔다가 인상 찌푸리게 될까봐
애초에 사람 속 긁는 글 들은 격리 시켜버립니다.
http://www.allblog.net 가시면 실컷 볼 수 있으니 여기서는 다른 얘기를 하죠.

전파하러 다니는 사람들 있죠. 싼 말로 알바, 좋은 말로 에반젤리스트
벽보 붙일 데 붙여야 되고, 도(道)를 전하는 것도 때가 방법이 있습니다.
팀 전체가 잘 하면 좋지만, 나 혼자 잘 한다고 되는 시대는 아닌 듯 합니다.
나 혼자라도 잘 해야지 라고 하면 다른 말로 소신 껏인데, 소신이라 함은 작은 믿음이 아니라 믿는 바입니다. 자기가 믿는 바대로 하는 것이 소신 껏입니다.
쉽게 말하면 내 맘대로라는 뜻이죠.

앎을 삶으로 구현하는 것이 참 어렵습니다. 그래서 책을 읽는 것도 그것을 따라서 해보느냐 그냥 신문 뉴스 읽듯이 그런게 있더라 정도에서 읽는가는 큰 차이를 만들어냅니다.
말이 길어졌군요. 요즘 블로깅하느라 okjsp.tistory.com 에만 글을 올리는데, 이것도 옮겨놓아야겠네요.

행복하세요.
from: http://www.okjsp.pe.kr/seq/105490

원고 토픽 목록입니다. 정리한 내용은 다음달 마소에서 뵙겠습니다.
-----------------------------------------------------------------

21세기 프로페셔널 프로그래머

프로페셔널(professional)의 정의

해커? 프로그래머?
프로그램은 종류에 따라 나뉘어집니다.
그에 따라 프로그래머의 성격이나 스타일도 변합니다.
애플리케이션
비즈니스 애플리케이션
초정밀 애플리케이션

프로그램의 특성 중 하나는 갈수록 복잡해진다. 프로토타입은 간단, 리팩토링 필요. 명세 필요
If가 많은 프로그램은 생각의 분기를 발생시키기 때문에 코드의 가독성이 떨어진다.
기능의 추가 변경으로 인한 사이드이펙트

팀개발의 특성을 이해
오케스트라는 독주회가 아닙니다.
의사결정권한 가진 사람과 그 비즈니스 특성에 관한 이해
나밖에 이해 못하는 코드
시간이 흘러 나도 이해 못하는 코드. 청문회용 코드

코드리뷰를 통해서 널리 알리자.
코드리뷰에 대한 팁
마녀 사냥이 되어서는 안 된다.
랜덤 선택

팀간 코드 패턴에 관한 토론
내용정리 필수, wiki 이용.
동료와 코드로 얘기해 본지 얼마나 되었나.

지우지 못하는 코드
나중에 시간 날 때 정리하면 지는 거다.

깨진 유리창 법칙을 기억하라
누가 휴지를 버리고 방치해 두면 머지 않아 쓰레기 버리는 곳이 된다.
리팩토링은 쓰레기 청소하는 방정리와 같다.
군대에서 관물정리를 하는 이유는 간단하다. 보기 좋으라고 하는 것이 아니라. 전시에 불이 꺼진 상태에도 어디에 무엇이 있는지 빨리 찾아서 입고 출동하기 위해서이다. 짱 밖아 놓은 것이 많은 관물대는 스릴 만빵이다.

개발자와 오픈소스
자기가 만든 소스를 적들에게 알리지 말라. 내 밥줄인 소스를 공개할 수 없다.
독불장군 스타일의 혼자 노는 개발자

다른 사람과의 협업을 통해서 더 나은 프로그램을 만들 수 있다.
협업(collaborate)이라는 단어는 함께(col) 일하는(labor) 방법이다.
협동하는 방법
네비게이터
유저
패처
문서작성자
기여자

오픈소스를 이용하는 이유는 프로그램의 제어권을 잡을 수 있기 때문.
감사하는 마음을 갖자.
아주 나쁜 소스 도용.

프로페셔널 프로그래머는 과연

살아가는 공간이 같은 가족이나 동료들의 경우 저의 일상사에 묻혀서 그 사람들이 어떤 생각을 하고 있고, 어떤 사회적 활동과 업적을 남기는 지 소홀하게 됩니다. 그렇게 될 수 밖에 없습니다. 마찬가지로 저에 대해서도 밖에서 많은 활동을 하는데 조직 안에서는 일개 구성원 밖에 안되는구나 라는 자조섞인 생각을 자주 하게 됩니다.

선지자는 고향에서 인정을 받지 못한다는 얘기를 들어보셨는지요. 개인이 가진 능력은 잘 모르는 사람들 사이에서 부각됩니다. 그 사람에 대해 처음 소개되는 것이 그 사람이기 때문일까요. 하지만 함께 여러 날을 살아온 사람들 사이에서는 그 사람의 능력만 보이는 것이 아닙니다. 그 능력 외에 그 사람과 풀어야할 여러가지 관계의 소일거리들이 많이 있습니다. 당연히 주관적인 견해 내지는 감정이 들어가고, 다른 사람들이 생각하는 것처럼 그 사람이 위대해 볼 수 없도록 상황이 만들어집니다.

사용자 삽입 이미지


image from: http://blog.daum.net/misstess/10865030?nil_profile=blog 조직 내에서 별다른 역할을 하지 않던 사람이 조직을 떠나 다른 곳에서 자수성가하는 모습을 보이는 경우도 있습니다. 그건 개인과 조직의 궁합이 맞지 않는다고 할까요. 조직의 성격이 그런 성향의 개인을 누르거나 개인이 조직을 개선해 나갈 기회가 없다고 판단되었기 때문이죠. 여기서 조직이란 거대 조직을 얘기하기 보다는 최하위 팀을 얘기합니다. 같이 생활하는 팀단위 얘기입니다.

함께 있는 사람의 능력을 발견하는 방법 중의 하나가 식사를 같이하는 겁니다. 구내식당 말고, 특히 저녁시간 다른 곳 다른 장소에서 말이죠.
또 하나는 그 사람의 id를 갖고 뒷조사를 하는 겁니다. 구x, 네이x, 다x, 네x트 정도를 뒤지면 온라인에서 활동상을 어느 정도 파악할 수 있습니다. 돈도 안 들고, 의외의 성과를 얻을 수 있습니다.
정신없는 상황에 같이 있으면 또 새로운 모습을 보기는 합니다만, 쉽지 않은 접근법입니다.

함께 일하는 사람들, 중요하게 생각한다면 그만큼 노력을 들여야겠습니다.

ps. 정리안된 글 읽어주셔서 감사합니다.


10월 17일

땜빵할 땐 말이지, 긍적적인 생각은 최대한 항문 근처로 보내고, 전시에 경계근무를 서는 것처럼 50m(여기서는 minutes의 의미)마다 점검하고, 구멍난 요구사항은 없는지, 작전본부는 계획 바꾼 것은 없는지, 화장실은 갈 수 있는지 바짝 긴장해야 -------------------------빨리집에간다.

10월17일 오후 11시 24분 앞으로는 이럴 거예요 지금 낚인상황 오픈날짜 정해졌는데 사이트 소스를 다른 분들이 엄청 키워버렸네요 이건 정글이야


10월 18일
허[과장] 님의 말 : 이미 우린 죽은 거예요.
김[대리] 님의 말 : ㅎㅎ
류[사원] 님의 말 : 음..
허[과장] 님의 말 : 내일부터는 목에 피빨아먹는 좀비예요.
10월18일 오후 5시 42분 효과가 없었다 하지만 피할수도없다




10월 19일
다시는 이러고 싶지 않아서 로그남깁니다. 10월17일 09:00 출근해서 10월19일 01:14 현재까지 아직 일 못 끝내고 회사에서 작업중입니다. 꼬인 실타래 푸는 시간을 공수에 넣지 못해서 사지(死地)로 내려가는 중입니다.


모든 문제의 원인은 저의 잘못된 선택입니다. ㅠㅠ; 덴장. (피할 수 있었는데...)

지금 존재감 : 도움이 안되는 개발자

http://mbastory.tistory.com/266 

5throck님이 "개발자 부족이 낳은 기이한 현상"이라는 제목으로 요즘의 시장에 대해서 생각을 기술하였고, 그 아래 70여개가 넘는 좋은 토론이 오갑니다.


답글 다신 분 중에 "고급개발자?" 닉으로 남기신 글이 좋은 것 같네요.

"프리랜서 시장은 그야 말로, 지금 당장 정규직으로 문제를 해결하는 것 보다는 일시적으로 좀 돈이 들 수는 있지만 잠시 "땜빵"을 위한 것 뿐이지, 이 곳에 중급 개발자가 없다고 한탄하는 것은, 새벽인력시장에 왜 63빌딩을 설계할 수 있는, 혹은 정밀 시공을 할 수 있는 기술자가 나타나지 않느냐고 한숨짓는 것처럼 들릴 뿐입니다. "


개발자가 줄어들고 있다고 느끼는 것보다 중요한 것이 자기가 어떻게 직업적인 프로그래머로써 세상의 가치를 만들어 나가느냐 고민하고 그것을 위해서 스스로 또는 팀으로 노력하는 것이 아닐까 합니다.


한 번 가서 읽어보시길 추천합니다.

ps.
1. 5throck님 좋은 발제 감사합니다.
2. 제목 변경합니다.

폐인이 다 되서 강연을 했습니다.
들어주신 분들께 감사드립니다.
강의 파일은 일전에 블로그에 올렸습니다.
http://okjsp.tistory.com/1165643104

오픈 소스, 하시기 바랍니다.
참여의 기쁨이 있습니다.

+ Recent posts