ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 빵집 개발자의 소고
    좋은글 2017. 3. 8. 21:45

    빵집이라는 압축프로그램을 개발한 유명한 개발자의 글을 퍼왔습니다.


    대한민국 소프트웨어 개발자들께...

    이메일상으로 하도 문의가 많아와서 도움말에 집어 넣습니다.

    어떻게하면 잘 맹글수 있느냐.... 머 그런얘기 엄청 물어봅니다.

    제 생각은 남들하고 조금 다를수도 있습니다.

    가장 중요한건 실력이 좋아야한다는겁니다. (헉.... 옳소.... ^^ )

    제가 후배들한테 많이 해주는 이야기 몇가지를 하겠습니다.

    첫번째 이야기...

    자.... 퀴즈....

    작곡가가 되려고 합니다.

    좋은 음악을 작곡하기 위한 첫번째 조건이 무엇일까요?

    머.... 음악 이론을 잘 알아야한다.... 감각이 있어야한다....열정이 있어야한다.....

    땡땡땡... 다 틀렸습니다.

    좋은 음악을 만들기 위한 조건들중 가장 중요한것은 그것들이 아닙니다.

    음악 이론 많이 몰라도 좋은 음악은 만들 수 있습니다.

    감각이 없어서 이론적으로나마 좋은 음악은 만들 수 있습니다.

    열정이 없어도 핑핑 놀아가며 하기 싫은거 억지로 해서라도 좋은 음악은 만들수 있습니다.

    그런데 꼭 필요한게 있습니다.

    그것은....

    좋은 음악을 들었을때...... '아~ 좋다~' 라고 느낄수 있어야한다는 겁니다..

    좋은 음악을 듣고 좋은지 모르는 사람은 절대로 좋은 음악을 만들 수는 없습니다.

    좋은 소프트웨어를 만들려면 좋은 소프트웨어를 봤을때 '우와~ 좋다~'라고 느낄 수 있어야합니다.

    좋은 음악과 좋은 소프트웨어를 보고 느낄수 있는것은 그냥 저절로 되지는 않습니다.

    많이 경험해 봐야합니다.



    두번째 이야기...

    한강에 벽돌을 쌓습니다.

    강변이 아니라 강 바닥에 벽돌을 쌓습니다.

    아시다시피 한강물이 썩 깨끗하지는 않습니다.

    강 바닥에 벽돌을 쌓는것은 생각보다 어렵습니다.(물론 전 안해봤습니다. ^^)

    그냥 헤엄치는것도 어려운데 한손에 벽돌을 들고 가야합니다.

    좌우지간 갔습니다. 

    강바닥으로 내려가서 벽돌을 놓고 나옵니다.

    나와서 보니 어떤가요?

    기껏 쒜빠지게 열심히 했는데.... 티도 안납니다.

    다음날....

    또 벽돌을 들고 헤엄쳐서 어제쌓은 벽돌 위에 한장 더 올려놉니다.

    역시나 힘듭니다.

    또 나와서 보니.... 이젠 허탈하기까지합니다...

    두장이나 쌓았는데.... 역시나 티도 안납니다.

    사흘...

    나흘....

    맨날 맨날 똑같은 짓을 해도.... 맨날 맨날 똑같습니다.

    나는 정말 매일 매일 열심히 했는데... 아무리 쌓고 쌓아도 할때만 열심히 했지 나와서 보면 안보이기는 마찬가집니다.

    이정도 되면 정신적으로 힘들어집니다.

    이걸 계속 해야하나...하는 생각도듭니다.

    그래서....

    포기합니다............

    에잉 확~ 쒜려 챠뿔쟈.... 하고 관둡니다.

    그러면? 그걸로 끝이지요..... 머... 더 설명할것도 없습니다. 그냥 끝입니다.

    그러나.....

    포기하지 않고 계속 한다고 칩시다....

    열흘, 한달, 일년, 이년.....

    에잉 모르겠다.... 이거나 하나가 죽자....라고 생각을하고 맨날 맨날 똑같은 짓을 합니다....

    그러면?

    보이지 않는 벽돌이 쌓이고 쌓여서....

    언젠가는 수면으로 떠오릅니다.

    그때가 되면 벽돌을 한장 쌓으면 한장 쌓이는게 눈에 보입니다..

    내 눈에만 보이는게 아니라 남들에게도 보입니다.

    지금까지 힘들었던게 다 잊혀집니다.

    그런데 사람들은 그걸 못참고 때려치웁니다.

    열심히 쌓고 쌓으면 언젠가는 올라올텐데....

    단지, 사람마다 수심이 조금씩 다를뿐인데.....

    벽돌이 수면위로 올라오면 그때부터는 물속의 별돌을 다시 한번 살펴볼 필요가 있습니다.

    남들에게는 안보이는 자신만이 아는 자신.....

    기초를 든든히 해야 더 높이 올라갈수 있습니다.

    개발을 하는 일도 .... 모든 학습을 하는 일도 다 똑같다고 봅니다.

    포기하지 않고 열심히 하다보면 언젠가는 되기 시작합니다.

    그때까지만 참고 열심히 합시다....

    아... 이 얘기는 제 얘기가 아니라 고등학교때 읽은 허영만作 만화책에서 본 내용입니다. ( 참 유익한 만화져? ^^ )




    세번째 이야기...

    이 이야기는 저에게 '프로그래먼데 너무 힘들다. 실력도 없고...다른 직업을 알아봐야하냐' 라는 그런 내용의 메일을 보내온 분들께 공통적으로 해드린 이야기입니다.

    제가 프로그래머가 된 과정을 그린 이야기인데... 머... 솔직히 쪽팔립니다만...이젠 하도 많이해서 ^^;;

    자 그럼 이메일의 일부분 나갑니다.

    시~ 작~

    제가 29살 때의 이야기를 해보겠습니다.

     
    전 29살 3월에 결혼했습니다.
     
    그전에는 인켈에 7년간 오디오엔지니어로 다니다가 그만두고 인켈의 하청업체에 1~2년 다니다가 다시 유사한 전자쪽의 작은 업체를 다니다가 ... 머 그럴때였습니다.
     
    전자쪽 직업을 가지고 있으면서 한가지 불만이 있었는데 임근이 너무 박하는거 였습니다.
     
    당시의 "내"가 임근이 짠건 견딜만 했는데 그 바닥에서 정말 열심히 일했던 선배들이 임금이 박한건 정말 견디기 힘들었습니다.
     
    왜냐면 그 사람들이 내 인생의 모델인데... 그 사람들이 어렵게 산다는것은 곧 나의 미래가 어렵다는것과 같기때문입니다.
     
    그래서 언젠가는 직업을 바꿔야겠다고 생각하고 있었는데..
     
    그러다가 29살에 결혼을 해버렸습니다.
     
    결혼을하면 직업을 바꾸기가 더 힘들어지지요... 게다가 아내는 임신을하고....
     
    해서리.... 애가 태어나기전에 바꾸자...... 라고 마음을 먹고....
     
    그때부터 회사를 과감히 그만두고 델파이만 붙잡고 씨름을 했습니다.
     
    당시에는 비디오 대여점이 뜰때였는데..... 그래서 비디오 대여점 관리 프로그램을 만들자라고 마음을 먹고 열심히 했습니다.
     
    거짓말 안하고 정말로 10개월동안을 아무것도 안하고 코딩만 했습니다.
     
    거의 책에만 의존하면서 했지요...
     
    물론 벌이가 없으니 집안 꼬라지는 말이 아니고 그 와중에 애도 태어났는데.....
     
    애 분유값을 대기도 정말 힘들었습니다.
     
    한번은 한겨울이었는데 석유살 돈이 없어서 전기장판을 사서 애를 가운데 놓고 잤습니다.
     
    그렇게 전기장판 생활을 하던중 어느날...
     
    잠을 자다가 문득 깨보니 중간에 애가 없는거 였습니다.
     
    벌떡 일어나서 보니 애가 저 위에 머리맡에 방바닥에서 자고 있었습니다.
     
    물론 냉골이지요.... 애를 전기장판으로 옮기려고 보니 열이 나더군요....
     
    애가 거의 실신 상태였습니다.
     
    급히 119를 불러서 응급실로 실려가던.... 그런일도 있었습니다.
     
    병원에 다녀와서는 어케든 보일러를 가동해볼려고 했는데 .....
     
    돈도 없고 한밤중에 석유파는데도 없고 ....
     
    간신히 간장파는 가게에서 간장통을 얻어다가 주유소에 가사 사정사정해서 석유를 얻어왔습니다...
     
    그 석유가 일주일이 가더군요 ^^;;;;
     
    암튼 당시에는 그랬습니다.
     
    다행히도 장인어른께서 농사를 지으셔서 쌀은 있었습니다.
     
    밥하고 김치만 먹고 살았지요... --;;
     
    그러던중 이제는 더 이상 견디기 힘들어서 부랴부랴 비디오 대여점 프로젝트를 마무리하고 통신망에 올렸습니다.
     
    당시에는 인터넷이 거의 안쓰일때였고 하이텔, 천리안, 나우누리에 올렸습니다.
     
    그리고서는 아내에게 "자기야 조금만 기다려... 이거 팔아서 우리 나래 분유값이라도 벌어볼께..." 하며 ...... (에혀....... --; )
     
    암튼...
     
    그랬는데 어케된일인지 한달이 지나도 전화 한 통 안옵니다. 정말 막막하더군요....
     
    아내도 나도 이것만 믿고 견뎌왔는데....
     
    하이텔로 메일이 하나왔습니다.
     
    "당신이 만든 프로그램 잘 봤다... 그런데 당신은 프로그램은 잘 만드는데 비디오 대여점에 한번 앉아보지도 않고 만들었다" 라고 하더군요....
     
    맞습니다.. 그냥 테이프 빌려주고 돈받고 돌려받고 그러면 되는 줄 알았지요....
     
    정말 절망적이더군요....
     
    다시 예전의 직업으로 돌아가야하나...
     
    난 프로그래밍을 할 수 없다는 말인가...
     
    정말 많은 생각을 했습니다.
     
    해서 생각한것이.... 포기하고 그것을 디스켓에 넣어서 이력서를 써서 돌아다녔습니다.
     
    팔아먹지는 못해도 프로그램을 만들수 있다는 증거는 될수 있으니깐요.....
     
    그렇게 한달동안 매일 몇군데씩 다녔는데....
     
    나이도 30인데다가 결혼에 애도 있고... 경력은 하나도 없고... 전공한것도 아니고.....
     
    에혀.... 나라도 나같은 사람을 써줄리 없었습니다.
     
    그러던중 여의도에 있는 한 업체에서 "당신의 그 무모한 용기가 가상하다"라는 이유로 --; 취업이 됐습니다.
     
    첫월급 70만원.....
     
    마누라랑 그 봉투 붙잡고.... 엉엉.....
     
    에혀.....
     
    그렇게 저의 본격적인 프로그래머 인생이 시작되었습니다.............
     
    그러다가 하이텔 동호회였던 델마당에서 활동도하고.....
     
    정말 열심히 했습니다...... 머... 다른 사람보다 한참 늦었으니 열심히 하는수 밖에 없었지요.....
     
    그러다가 몇몇 기업에서 스카웃도 되가고.....
     
    지금은.....
     
    먹고 살만한 정도 프리랜서로 활동하고 있습니다.
     
    이제부터....
     
    제가 견딜수 있었고 이만큼 성잘할수 있었던 나름대로의 비결을 이야기해 보겠습니다.
     
     
    첫째......
     
    프로그래머는 자기만의 꿈이 있어야합니다.
     
    큰 꿈을 항상 간직하고 있어야합니다. 지금 직장 생활을하고 고생을하는것은 그 꿈을 이루기 위해서 필요한 지식과 경험을 만들어 가는 과정입니다.
     
    게임프로그래머라면 리니지나 스타크래프트 이상으로 히트할 수 있을만한 게임을 기획하세요....
     
    지금부터요.... 물론 1~2년안에 완성할만한 간단한거 말구 정말 물건같은 물건을 기획해보세요.....
     
    지금은 못만들더라도 지금부터 그것을 완성시킬수 있을만한 지식과 경험을 쌓아가세요...
     
    그러다보면 언젠간 머릿속에서 이제 시간과 돈과 사람만 있으면 할수 있겠다...라는 판단이 들때 그때 실천에 옮기세여....
     
    암튼.... 꿈이 있어야합니다.
     
    첨부한 그림을 한번 보세요... 제 노트북 바탕화면입니다.
     
     
    예전에 TV에서 방영하던 전격z작전에 나오는 자동차 "키트"입니다.
     
    전 오래전부터 바로 저 차에 들어가는 소프트웨어를 만드는게 꿈을 갖고 있습니다.
     
    물론 자동차용이아니라 일반 생활용이지요.... 말을하고 판단을 하고 알아서 처리해주는...... 인공지능 + 자연언어처리 + 학습 ... 머 그런겁니다.
     
    이 꿈을 가지면서부터 지금까지도 모든 프로젝트를 할 때에 나의 꿈을 이루기 위해서 필요한 지식과 경험을 쌓는다라고 생각하며 일하고 있습니다. 물론 그 꿈은 진짜 꿈이고 언젠가는 코딩을 시작할겁니다.
     
    직장생활을 하면서도 일처리.. 그리고 사람들과의 관계... 그 모든것들도 다 나의 꿈을 이루기위해 필요한 단체경영 방법을 배운다라고 생각하고 있습니다.
     
    둘째......
     
    프로그래머는 물건을 만드는 사람입니다......
     
    건물을 만드는 사람이지 벽돌을 나르는 사람이 아닙니다.
     
    어떻게 만들지도 중요하지만 뭘 만들지가 더 중요합니다.
     
    프로그래머는 항상 머리속에 "방법"보다는 "대상"이 그려져 있어야합니다.
     
    다시말해서 어떤 기능을 수행할수 있는 기술을 배우는데 모든 정력을 투자하지 말아야합니다.
     
    물론 기술은 당연히 가지고 있어야합니다. 하지만 기술 자체가 목적이 되어서는 안됩니다.
     
    기술이 아니라 물건에 항상 관심을 가지고 그 물건을 만들어 내기 위해 필요로 하는 기술을 배워야합니다.
     
    프로그래머는 소프트웨어를 만드는 사람이기때문에 모든 소프트웨어를 평가할수 있는 자질이 있어야합니다...
     
    제가 자주하는 이야기인데 좋은 음악을 만들기 위해서 필요로하는 첫번째 조건은 좋은 음악을 들었으때...  "아~~ 좋다"라고 느낄수 있어야합니다... 그래야 자기도 좋은 음악을 만들수 있습니다.
     
    창의력을 요하는 모든분야의 일이 다 그렇습니다.
     
    프로그래머도 마찬가지지요 모든 프로그램을 비평할수 있어야.. .좋은 물건을 만들수 있습니다.
     
    그럴려면 소프트웨어, PDA, 핸드폰등 최첨단 IT기기에 민감하게 반을할 필요가있고 세상 돌아가는 일에도 관심을 가져야합니다.
     
     
    세째.....
     
    아이디어는 자기가 구현 할수 있는 기술의 범위 안에서 나옵니다.
     
    둘째 이야기하고는 상반되는 말인데..... 둘째 이야기가 프로그래머로써 소프트웨어 프로젝트의 기획능력을 말한다면 세째는 기술에 관한 이야기입니다...
     
    자기만의 좋은 물건을 만들려면 아이디어가 상당히 중요한데 아이러니컬하게도 엔지니어의 머리에서 나오는 아이디어는 그 엔지니어가 스스로 구현할수 있는 기술의 범위내에서만 나옵니다. 그러므로 프로그래머가 많은 아이디어를 배출해 낼려면 많은 분야의 기술을 습득하고 구현할 수 있어야합니다.


    여기까지...끝...


    정리....

    자... 잔소리는 그만합시다... ^^;;

    머... 결론은 목표를 가지고 열심히 하자는겁니다. ^^;;

    현대의 프로그래밍은 OOP가 필수적입니다.

    그냥 객체가 아니라 살아있는 객체를 디자인하고 구현할수 있는 사람이 제대로 된 물건을 만들고 그렇게 될때 자기가 목표로하는 꿈을 이룰수 있을겁니다.

    음....

    대한민국에 소프트웨어 업계는 아직도 희망이 있습니다.

    왜나면....

    불법 사용률이 짱 높기 때문이죠....

    정품 사용률이 높음에도 불구하고 지금처럼 힘들었으면 그건 정말로 어려운겁니다.

    그러나....

    아직 사람들은 소프트웨어를 위해서 돈을 꺼내지 않고 있습니다.

    정부와 기업과 사용자들간에 좋은 방안은 연구해보고 서로 서로 노력하여 정품 사용률이 높아질때....

    그때는 지금보다는 훨씬 좋아질겁니다.

    자...

    대한민국 만세~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


    '좋은글' 카테고리의 다른 글

    앤서니 웰링턴 (Anthony Wellington) - 의식의 4단계  (0) 2017.03.28
    지금이 바로 새 출발점  (0) 2017.03.16
    거창고 직업 10계명  (0) 2017.02.08
    당신은 춤을 출 수 있다 - 이지성  (0) 2017.02.06
    눈빛.  (0) 2017.02.06
Designed by Tistory.