2012년 5월 3일 목요일

철학을 담은 프로그래머

이 글은 이 블로그가 최초 출처입니다.
'퍼가기' 또는 '참조'시 출처를 밝혀주시기 바랍니다.

모든 학문의 기초는 철학이다.

(물론 수학이라고 말하는 사람도 있지만 개인적으로는 철학이라고 본다.)

그래서 모든 학문과 기술의 기초에는 철학이 녹아있다.

더군다나 소프트웨어[프로그램]은 실체가 존재하지 않기 때문에

더더욱 많은 철학적 바탕이 깔려 있어야 한다.

대표적인 예가 요즘 프로그램 언어의 대표적인 C++, JAVA, C# 같은

'객체지향 언어'에서의 객체(Object)이다.

이 객체(Object)라는 것은 사랑(Love), 행복(Happy) 같이

실체가 없고 무엇이다라고 정확한 설명이 어려워

철학적인 고찰이 없으면 그 개념을 정확히 파악하기 어렵다.

객체(Object)와 모듈(Module)을 같은 개념으로 설명하는 이가 있는데,

물론 비슷하게 설명될 수는 있지만 객체와 모듈은

철학적으로나 개념적으로나 엄연히 다른 것이다.

이 글에서 기술이나 개념을 설명하려는 것이 아니므로 이는 다음 기회로 미루기로 하겠다.

어쨌든 소프트웨어야 말로 설계하는 사람과 구현하는 사람 모두

이런 소프트웨어적인 철학+자신의 철학을 담아야 하는데도 불구하고

한국의 많은 설계자, 개발자들은 기능의 구현에만 치우쳐

철학의 흔적이 보이지 않는 경우가 많다.

[철학을 담으려는 생각을 할 시간도 없다.]
[철학을 가르치지도 않는다.]
[철학을 가지고 있지도 않다.]

하청에 재하청, 가격 후려치기, 개발기간 대폭축소로
[철학을 담으려는 생각을 할 시간도 없다.]

속성으로 뽑아내고 얼마나 빨리 기능을 찍어내는가를 가르치느라
[철학을 가르치지도 않는다.]

이렇게 속성으로 뽑아낸 인원들은 하루하루 유행처럼 변하는 기술에 적응하느라
[철학을 가지고 있지도 않다.]

물론 모든 경우에 철학을 담아낼 필요는 없다.

상황에 따라서는 빨리 찍어내야 하는 경우도 있을 수 있다.

그리고 한국의 프로그램, 설계자, 개발자가 모두 그렇다는 것은 아니다.

난 그리 뛰어난 프로그래머가 아니지만,(오히려 실력이 별로.. ^^;)

한국의 현재 IT 상황에서 쉬운일은 아니겠지만,

기계적으로 뽑아내는 기능구현이 아닌

나의 철학, 나의 감성을 담아내려고 노력해야겠다는 생각을 하게 된다.

그래서 개인명함에도 나의 닉네임은 '철학을 담은 프로그래머' 이다.

그리고 프로그래머(설계자, 개발자)라면

기술적인 유행만 쫓으려 하지말고 본인의 철학을 가지고

그것을 프로그램에 담아내려는 노력을 했으면 하는 이가 많아졌으면 하는 바램이다.

그러면 한국의 IT 상황도 조금씩 좋아지지 않을까?

댓글 2개:

  1. 진정한 철학은 철학을 없애야는것이다.
    내가 무엇인가 할수있다고하는 생각과 관념이야말로 진정한 객체지향을
    무시한 처사이다. 그래서 님의 닉네임도 철학을 쓰레기통에 처박은 프로그래머가 돼어야만 한다.

    답글삭제
  2. 사실 거시적으로 말하면 내가 해야만 한다는 말도 언어적오류이며 주체지향적임일뿐이다. 다만 내 멘트가 도움이 됐으면 한다.

    답글삭제