우리가 미처 알지 못한 소프트웨어 공학의 사실과 오해

By | 2006/02/25

오늘로 다 읽은 ‘우리가 미처 알지 못한 소프트웨어 공학의 사실과 오해’.

전체적인 결론부터 말하면

‘잘 모르겠다.’ 이다.

 

왜냐하면, 제목에 ‘미처 알지 못한’이라 말처럼

아직 소프트웨어 공학을 많이 경험하지 못하였기에

책에 나와있는 사실이 사실인지 오해가 오해인지

제대로 인식하지 못하겠다.

 

하지만 어렴풋이 몇 개는 이해했다.

앞에 그 몇 개를 말하였고,

이 글에 나머지 부분과 최종 결론을 얘기하고자 한다.

 

먼저 가장 공감이 가는 것은

마지막으로 나온 오해이다.

‘프로그래밍을 가르칠 때 프로그램을 어떻게 작성하는지 보여주며 가르친다.’

실제로 내가 비주얼 베이직과 어셈을 독학으로 공부했을때나

C와 C++을 수업으로 들었을 때

또는 다른 여러 책들을 보면

‘어떻게 작성하는지’를 가르쳐주고 있다.

 

어찌 보면 당연한 것이다.

프로그래밍이란 프로그램을 만드는 작업이고,

그 작업을 하기 위해서는 어떻게 만들어야 하는지를

배워야 하는 것이다.

 

그렇지만 천재가 아닌 이상 처음부터 좋은 프로그램을 만들 수 없다.

그렇기에 우리는 다른 사람이 만든 코드를 읽을 줄 알아야 한다.

 

특히나 나는 읽는 훈련을 열심히 해야한다.

남이 만든 소스를 보고 읽을 줄 알아야지

오픈소스에도 참가할 수 있고,

유지보수에도 참가할 수 있는 것이다.

 

하지만 마땅한 커리큘럼도 없고,

읽다보면 알게 될 것이다라는 모호한 말 뿐이라

역자가 주석으로 언급한 책을 꼭 읽어봐야겠다.

 

하지만, 서점에 적혀있는 독자 리뷰는 나에게 아니라고 한다.

‘이 책을 읽어야 할 사람은 대형 프로젝트에서 수만라인의 소스코드

를 공유하는 개발자라던가, 지금 막 학부에서 컴퓨터 프로그래밍에 대한

공부를 마치고 회사에 입사하여, 동료나 선배가 만들어 놓은 코드를 분석

한 후 자기가 개발하는 모듈을 삽입해야 하는 일들을 하는 사람들에게

적합하다고 봅니다.’ – in Yes24

고민된다.

현재 내 실력으로 이 책을 읽어야 하는지 아닌지.

가격 역시 부담이 된다.

 

 

그 다음으로 공감이 가는 사실은

‘사실 40 – 동료 검토(peer review)는 기술적인 측면과 사회적인 측면을 모두 가진다.’

이다.

 

나는 아직 남에게 내 소스를 공개해본적이 없다.

(물론 레포트를 제외하고 말이다.)

왜냐하면 공개할 정도로 당당하지 못하기 때문이다.

하지만 내면의 다른 이유는 내 소스에 대해 내려지는

비판을 받아들이기가 힘들다는 것이다.

 

그렇기에 내가 어떤 프로젝트에 참가해서

동료 검토를 한다면

동료로부터 듣는 수정권고에

수치심을 감추지 못할 것이다.

또, 내 권고에 동료가 화를 낼지도 모른다.

 

하지만 귀를 꽉 막고 있으면

발전이 없다.

저자가 말했듯이

자아를 항상 통제할 수 있도록 노력해야겠다.

 

 

마지막으로 이 책에 나오는 내용 중에

가장 크게 나에게 작용한 글이 있다.

 

‘소프트웨어 분야는 번번이 과대 선전자와 그 추종자들에게 속아왔다.

설상가상으로, 장담하건대, 여러분이 이 책을 읽는 동안에도

다른 새로운 아이디어가 나타나 행진을 하고,

그에 대한 열광자들이 선두에 서서 엄청난 이득을 주장하고,

여러분의 동료가 그 열에 춤을 출 것이다.

과대선전의 ‘피리부는 사나이’가 다시 여러분을 꼬드기는 것이다!’

 

내 경험과는 약간 빗나가겠지만,

나에게 교훈을 주는 내용이다.

난 휴학을 하고 나서 컴공과로서 무엇을 배워야 할 지 몰랐다.

그래서 인터넷과 잡지를 읽으면서 여러 정보를 접했다.

그 결과로 나는

리눅스, 오픈 소스, 자바, UML, 어셈, C, C++, 네트워크,

역공학, API, 인공지능, 임베디드, XP, 디자인 패턴, 웹 2.0 등

정말 다양한 것을 경험하였다.

그렇지만 남는 건 아무것도 없었다.

난 단지 각 파트를 좋아하는 자들의 말에 놀아난 것이였다.

 

“리눅스가 좋다~~”

“와~~ 배우자~~~”

“XP가 혁명이다~”

“와~~~ 배우자~~~~”

 

즉, 전혀 비판적으로 보지 않고 다만 따라가기만 한 것이였다.

그렇기에 남는 건 잡다한 것 뿐. 아무것도 없었다.

이제 유행이나 과대선전에 놀아나지 않고

내 할 일에 충실히 나아가는 그런 인생을 살아야겠다.

 

참조

우리가 미처 알지 못한 소프트웨어 공학의 사실과 오해

Yes24.com

Leave a Reply