나는 이른바 코딩 해서 먹고 살고 있는 프로그래머라 불리는 사람 중 한 명이다. 하루 종일 코딩 하기 위해 애쓰는 그런 사람 중 한 명이란 말이다. 그런데 요즘 들어 문득 오픈 소스 커뮤니티를 돌아다니다 나보다 뛰어난 수많은(개인적으로 우리나라 프로그래머 중에 80%이상은 나보다 뛰어날 거라 생각한다) 프로그래머를 만나면서 나의 작은 존재감에 다시 한번 생각하게 되었고 그럼 과연 내 프로그래밍 철학은 무엇인지 생각해 보게 되었다.
프로그래밍 철학이란 다시 말해서 내가 프로그래밍을 하면서 추구하는 궁극적인 목표라고도 말할 수 있을 것이다. 그렇게 말할 수 있는 이유는 철학이 행동을 만들고 그 행동은 그 사람의 삶의 목표와 맞다 아 있다고 생각하기 때문이다. 그럼 내가 프로그래머 직업을 가지면서 궁극인 목표로 삶고 있는 것이 무엇일까? 한참을 생각해 봤지만 부끄럽게도 목표라고 내세울만한 건 없었다. 지금 하는 프로젝트 대박 내는 것? 아니면 열심히 해서 회사 잘 키워보는 것? 물론 이것들도 중요하지만 아무래도 이런 것들은 철학, 목표라고 하기에는 너무 근시안적인 것뿐이다.
난 웹(web) 프로그래머라 불리는 사람이다. 닷넷(.net)을 이용해 개발하고 있고 주로 사용하는 언어는 C#이다. 그렇다고 아직 C#전문가라 불릴만할 정도로 그 부분에 대해 권위가 있는 수준은 아니다. 또 어느 한 플랫폼에 집중돼서 전문가라 불리는 것도 원하지 않는다. 플랫폼에 집중된 노력을 쏟는 것은 멀리 볼 때 발전가능성을 더디게 한다고 생각해서이다. 하지만 웹 프로그래머들은 상대적으로 그런 부분이 취약하다. 자신의 플랫폼 이외의 플랫폼에는 관심이 덜하거나 관심이 전혀 없는 실정이다. 주위에 php하는 프로그래머와 닷넷 프로그래머와 대화해 보라. 쉽게 알 수 있을 것이다. 과연 웹 프로그래머로써의 나의 철학은 뭘까?
난 웹 사이트와 윈도우 어플리케이션을 비교해서 말하는 것이 싫다. 그것보다 어플리케이션 이라는 말이 윈도우 프로그램을 대표하는 단어가 됐다는 게 싫은 것이다. 웹은 어플리케이션이 아니고 윈도우 UI를 가진 프로그램만이 어플리케이션이란 말인가? 익숙해져서 인지 주위에 그렇게 말하는 사람들을 많이 볼 수 있다. 실제로 그런 말을 들을 때마다 웹 어플리케이션, 윈도우 어플리케이션 이렇게 말해야 맞는다고 정정해 주고 싶은 심정이다. 내부를 들여다 보면 더 다르지 않다는 것을 볼 수 있다. 단지 웹은 웹API를 이용할 뿐이고 웹 브라우저를 이용할 뿐인데 말이다.
다시 처음으로 돌아가면 프로그래밍 철학이란 결국 플랫폼이나 개발언어에 국한되지 않은 목표가 되어야 하고 근시안적인 목표가 아닌 인생전체를 걸고 추구해야 할 목표였으면 하는 것이다. 올림픽에서 매달을 딴 선수가 자신의 목표한 것을 이뤘기 때문에 기쁨과 감격의 눈물을 흘리듯이 내가 세운 프로그래밍 철학을 내가 이뤘을 때 감격할 수 있는 그럼 목표를 세웠으면 하는 것이 나의 바램인 것이다. 이 글을 쓰면서 한 문장으로 정리된 목표는 아직 말할 수 없지만 어떤 방향인지는 대충 정리가 된 느낌이다. 그걸 이루기 위해 계속 긴장을 늦추지 않고 노력해야 할 것이다. 또, 그럼 목표를 이룰 수 있는 지금 나의 상황들 모두가 감사할 뿐이다.