메뉴 건너뛰기

박영식 홈페이지

[글쓰기] 나는 테스터다. 단위 테스트는 지양한다.

[원문보기]

개발자 입장에서 실제 사용자는 어떤 식으로 입력할지, 기능을 사용할지 알 수 없다.


물론 초기에 "A는 B에 입력하고, C를 D와 같이 사용하세요." 라고 하더라도, " A?, B?, C?, D? == 가, 나, 다, 라 "로 흘려 들을 수 있다. 사실 제품 제작자가 아닌 내 자신이 사용자가 된다면, 설명서에 집중하여 최대한 시행착오를 줄이려 노력한다 해도 결국 한 두가지를 간과하여 실패에 이른다.


자주 짧은 코드를 작성하고, 간단한 단위의 배포 소스를 수정해 적용하는 업무를 하고 있다. 아무리 코드의 양이 적더라도 단위 테스트 등을 통해 품질을 관리할 필요가 있다. 이는 확장성에 닿아 있기 때문이다. 그러나 나는 게으르기 때문에 테스트를 위한 코딩은 하지 않는다. 단지 디버깅 로그를 사용할 뿐이다. 또한 핑계를 하나 더 붙여서 사용자의 입력과 행동이 단위 테스트 범위를 넘어서는 경우가 많아 차라리 사용자 테스트를 통해 버그를 수정하고, 축적된 데이터를 분석하는 것을 선호한다.


그동안은 나의 게으름을 완전히 숨겨왔지만, 이를 정당화(?)해 줄만한 글을 읽었기에 옮겨 놓는다.


테스트는 해야 한다. 테스트, 테스트, 테스트. 하지만 나는 단 한번도 (a) 설정하는 데 걸리는시간이 100 시간/사람 이상 걸리지 않거나 (b) 수많은 공학적 자원을 빨아들이지 않거나 (c) 실제로 상관이 있는 버그를 발견하는 구조적인 테스트 프로그램을 본 적이 없다. 단위 테스트라는 것은 수많은 엔지니어에게 지루함을 견디고 아무것도 찾아내지 않는 것의 대가로 급여를 지급하는 수단에 불과하다 - 윌 쉬플리-


개인적으로 나는 테스트 주도 개발이라 생각했다. 작은 코딩을 하고 테스트하여 원하는 결과를 얻고, 같은 방식으로 새로운 함수를 만들거나 확장하는 식으로 코딩을 하기 때문이다. 그러나 적확하지는 않음을 깨달았다. 이런 개발방식은 차라리 주먹구구식에 가까울지도 모른다. 그래도 설계가 어느 정도 포함되어 있고, 규모 자체가 워낙 작기에 효율적이다.


보안 점검에서 좀 더 과격한 테스터의 관점을 더한다면 아래의 조언을 받아들일 수 있다.


과감하게 말하겠다. 당신의 망할 프로그램을 반드시 테스트해야 한다. 실행하라. 사용하라. 이상한 일들을 해보라. 키보드를 망가뜨려라. 지나치게 많은 항목을 더해보라. 2MB 짜리 텍스트 파일을 넣어보라. 그것이 어떻게 오동작하는지 발견하라. 이렇게 하는 것이 매우 중요하기 때문에 나는 지금 고함을 지르고 있다. - 윌 쉬플리 -


한국은 너무과도한 테스트를 했는지도 모른다. 정말 2MB 를 넣었더니 디버깅이 불가능한 수준으로 갔다. IT 테스트베드로 좋다는 것은 인정하지만, 실험정신이 너무 강했는지도 모른다.


내가 제작한 프로그램은 사용자가 IT 관련이 아니다. 물론 이것은 중요하지 않을 수도 있다. 정말 생각지도 못한 사용이 일어나기도 하여, 끔찍한 결과가 나온 적도 있다.(그렇게 끔직하진 않다.) 아무튼 난 단위 테스트라기 보다는 사용전 테스트와 사용자 테스트를 통해 코딩을 한다. 이건 단순 테스트 주도 개발이 아닌 "주먹구구식 사용자 테스트 주도 개발" 정도로 불러본다.

[도서] 시인들이 쓴 1원의 경제학

[원문보기]
이 도서의 시대적 배경은 1997년 즉, IMF 체제에 들어섰을 때이다. 벌써 10년이 다 되간다. 지금의 경제 상황은,.. 아니 서민 경제는.. 훨씬 더 어렵다고들 말한다. 왜. 전 보다 훨씬 편리해 진 것은 사실이지만, 업무량에 있어서는 전혀 줄지 않았기 때문이다. 그것은 왜 일까. 일부에서는 기업들의 과도한 경쟁으로 업무 시간을 줄이지 않기 때문이라고 분석하는데...(외국의 경우도 마찬가지다.) 사실일까? 유지보수비가 많이 들어가는 것일까.. 앞으로 10년후, 아니 곧 부양해야 할 인구가 2배로 뛸 것이다. 그러면 노동계층에서는 2배로 더 일을 해야 할지도 모른다. 물론 실버산업의 주체들이 일을 해서 자족하긴 하겠지만, 그것은 이상적인 경우다. 예측으로서는 부양해야할 노인들이 지하철의 노약자석이 일반석과 바뀐 것 만큼이나 늘어날 것이다. 악몽이다.!! 1원의 경제학 에서는 대한민국의 경제 성장기에 그것을 일궈온 지식인(시인)들이 쓴 과거사(가난했던 시절의 절약)와 현재(절약하는 그들의 모습)을 보여주고 있다. 힘든 시절을 겪었는데, IMF 경제 체제는 그다지 어렵지 않았다고 말하기도 하고, 그 당시의 과소비와 거품경제를 비판하고 있다. 그렇다면 그것을 지금에 어떻게 적용해 볼 수 있을까. 무조건 허리띠를 졸라 메는 것이 능사인가? 지금은 노는 사람들이 너무 많다. 이들을 위해 정규직(지속가능한)을 마련하고, 돈을 쥐고 있는 부유층에서는 시장에 돈을 투자해야 한다. 그래야 돈이 돈다. 무조건 돈을 축적하려고 파이낸셜 기관에 부동산에 외국으로 빠져나가게 한다면, 그것은 대한민국이 망하는 지름길이다. 현재 한국은 위기에 빠지고 있다. 경제 공황으로 치닫고 있다. 교육, 과학기술 뭐, 내세울 것이 없다. 운운하고 있는 최첨단 기술도 팔지 못 하면 그만이다. 이공계 기피 등으로 연구 인력도 곧 부족하게 될 것이다. 교육은 말 그대로 입시 위주의 멍든 체제로, 바꿔야 된다는 말하면서 외국계를 좇기만 하고 있다. 과연 잘 될까. 출산율이 낮아, 이젠 사범대도 인근 국립대로 통폐합 시키려 하고 있다. 이것이 말이 되는가.. 1원의 경제학에선 절약을 잘 보여준다. 우린 지금 외화는 절약하고, 집안(국내)에서는 활발한 경제를 위해 돈을 써야 한다. 그렇지 않으면, 거리에 노숙자는 더 증가하고, 20대의 백수들은 줄지 않을 것이며, 나아가 배고픈 날들을 보내야 할 것이다. * 박영식님에 의해서 게시물 복사되었습니다 (2007-06-09 01:29)"

[도서] 코딩호러의 이펙티브 프로그래밍

[원문보기]

사람들은효과적으로 글을 쓰는 방법을 익히면서 평생을 보낸다. 이 과정에는 속임수가 없다. 글을 쓰는 능력은 돈을 주고 살 수도 없다. 스스로 열심히 익히는 방법 외에는 다른 방법이 없다.


바로 그렇기 때문에 글을 쓰는 것을 두려워하는 사람들은 블로그를 시작해야 한다.


그것은 일종의 운동과 같다. 아무리 몸매가 엉망인 사람이라도 매주 몇 번씩 운동을 열심히 하다 보면 몸매가 차츰 나아지기 마련이다. 자신의 블로그에 짧은 글이나마 일주일에 몇 차례씩 글을 올리면 글쓰기 능력도 차츰 나아진다. 글을 쓰는 것이 무서워서 글쓰기를 회피하면 엉망인 몸매로 평생을 살아가야 한다. 30쪽


초보 프로그래머 혹은 실력은 있지만 열정이 부족한 프로그래머는 원격근무를 하면서 성과를 내기가 어렵다. 적어도 전형적인 관리자나 투덜거리는 팀 리더가 그들의 목 뒤에 콧김을 내뿜지 않으면 말이다. 상처에서 피 대신 1과 0이라는 비트가 흘러내리지 않는 사람, 혹은 스스로 성과를 낼 수 있는 사람이라는 확실한 증거가 있는 사람이 아니라면 그런 사람과 원격근무를 통해 일할 생각은 하지 않는 것이 좋다. 163쪽


사용자는 미쳤다. 자동화된 테스트 스위트는 실제 베타 테스터들이 현실 세계에서 수행하는 베타 테스팅에 미치지 못한다. 사용자는 예측 불가능하기 때문이다. 사용자들은 자기가 선호하는 코드의 경로를 갖기 마련이다. 사용자들은 자신의 PC에 이상한 소프트웨어를 설치해 놓고 있다. 사용자는 미쳤다. 여기에 논쟁의 여지가 없다. 이러한 사용자들에 비해 컴퓨터는 지나칠 정도로 이성적이다. 293쪽


당신의 애플리케이션이나 웹사이트가 사용자의 행동을 유용하고 의미 있는 방식으로 수집하게 만들어라. 사용자의 피드백만 듣고 행동을 결정하지 말아야 한다. 사용자가 제공하는 피드백에 연결 지을 수 있는 실제 행동 데이터를 반드시 가지고 있어야 한다. 사용자의 피드백을 무시하는 것은 궁극적으로 당신을 실패로 몰아넣을지도 모른다. 하지만 모든 사용자의 요청에 맹목적으로 반응하는 것은 당신을 확실한 실패로 몰아 넣는다. 316쪽


사용자는 정말 "왜 그렇게 한 거지? 제대로 정신을 갖고 이런 행동을 한 것인가?"라는 생각이 들 만한 행위를 한다. 그래서 입력에 대한 로그를 수집하는 건 참으로 중요하다. 이미 그것을 하고 있는 나로써는 상당히 흥미로운 대목이었으며, OS와 제조사에서 백그라운드 작업으로 로그 수집을 하는 것에 대해 조금 더 잘 이해하게 되었다. 그러나 몰래 수집하는 듯한 느낌을 줄이기 위해, 사용자 정보를 가져가는 행위는 조금 더 공개적으로 하면 좋겠다.

[합격] 숭실대학교 일반대학원 컴퓨터학과(정보보안)

[원문보기]
이제, 졸업만 하면 대학생활은 마무리 되는군."

[도서] 녹지대

[원문보기]

박경리의 소설이다.

 

"무슨 일이든 할 때까지가 좋지. 다 이루어좋고 보면 쓸쓸하고 외로워지는 거지." 83쪽

 

"원래 연애란 순탄하지 않어." 238쪽

 

 

문학이 끊긴,........ 북카페를 떠올려 줄만한 책.

 

대학생 때, 시화전을 보았던게 떠오른다. 요즘에도 대학 축제 때 시화전을 하는지.....

[도서] 파인만씨 농담도 정말 잘 하시네요!(도솔)

[원문보기]
그러므로 나는 여러분에게 단 한 가지 바라는 것이 있다-내가 말했던 그러한 성실함을 유지할 수 있을 만큼 자유스러운 어떤 곳에, 조직체 내에서의 자신의 지위를 유지해야 할 필요성이나 재정적인 지원 등등의 필요성 때문에 자신의 성실성을 잃도록 강요되고 있다고 느끼지 않는 어떤 곳에, 여러분이 속하게 되는 행운을 갖기를 바란다. 여러분이 그러한 자유를 지니게 되길 빈다. 맨 마지막 절 "화물숭배 과학"에 나오는 말이다. 에필로그를 넣는 대신에 한 문단으로 대신한 것 같다. 천재적인 과학자로 노벨상을 수상한 파인만은 괴짜라고 할 만한 사람이다.(보통 물리학자들은 특이하다. 주관적으로) 다시한번 약간은 국내 교육사정에 대해(대학 사정에 대해) 약간은 차별감을 느낀다. 파인만이 지내온 곳은 광할한 곳이며, 그 만큼의 지원이 가능한데 비해, 국내는 좁은데다가 전혀 지원이 될 만한 것이 안 보이는 곳이다. 파인만 같은 위대한 사람이 나오는 조건이 그곳에는 있는데, 이곳에는 없다는 말이다. 물론 이것은 핑계에 지나지 않을 수 있다. 하지만, 차이가 있는 것은 있는 것이다. TV에서 어제 잠깐 대치동 학부모와 일반인의 토론을 봤다. 토론이라기 보다는 탁상공론 아니, 잡담... 그것은 전혀 결말을 낼 수 없다는 것을 알면서도 재미와 흥미를 일으키기 위해 또 돈이라는 상투적 매체로 결말지어가고 있었다. 이런 곳에서 과연 살아남아서 뭔 의미를 찾을 수 있을지 모르겠다. 눈만 뜨면 오늘은 돈 좀 벌어야 하는데, 일하러 나가야 하는데 하는 사회에서 말이다. 파인만에게는 자유가 있었다. 물론 대학에 들어가기 전에는 꽤나 파트타임잡을 했을 경험담이 나오긴 하지만, 그 후에는 별 걱정없이 산 듯하다. 유흥가에서 즐기는 모습이 많이 묘사되어 있다. 국내 교수들이 그렇게 했다면 뭐라고 했을까. 그건 바로 직위해제 감이다. 우리나라는 많이 바뀌어야 할 것이다. 그러나, 보수세력들이 막고 있다. 정부는 그들과 계속 싸울 것인가? 나는 어떻게 할 것인가. 힘이 없는 그들과 나로서는 현 지배체제에 순응해야 할 것이다. 그렇게 그렇게 조금씩 변해 가겠지. 퇴행이든 순행이든 그 판단은 현 지배세력의 기록을 해석한 후세들의 몫일 것이다. * 박영식님에 의해서 게시물 복사되었습니다 (2007-06-09 01:29)"

[잡담] 핫산과 정자, 주임과 청이, 리자와 당자

[원문보기]

핫산은 낙하산이다. 정자는 내정자다.


핫산은 정자씨와 한쌍을 이루는 환상의 커플이다. 둘다 금수저에 속한다고 해야하나? 아닐 수도 있지만 그럴만한 빽이 있는 것이다.


주임은 외주, 청이는 하청을 달리 표현해 봤다.(업체, 트너 등을 떠올려 봤으나 적절한 조어가 안된다.)


청이는 괜찮은데, 주임은 다른 직급과 헛갈릴 수 있다.


약직과 규직은 방금 생각 남(계약직과 정규직)


리자는 관리자이고, 당자는 담당자이다.


보통 담당자는 관리자 부하직원이고, 외부 직원은 담당자와 일하지만 관리자의 의도를 잘 파악해 일을 해야 한다. 담당자의 생각이나 지시로 잘못된 방향의 일을 수행하게 된다면, 다시 해야 하고, 책임도 당자보다는 주임이 져야한다.


수많은 핫산과 정자씨에게 소외당하는 약직들이 있다.


리자와 당자에게 휘둘리는 주임과 청이도 (고)객사에서는 규직과 멀다.


암튼 이런 조어들에 왜 흥미를 느끼는지 잘 모르겠다. (그런데, 핫산과 정자씨는 너무 잘 어울린다. ㅎㅎㅎㅎ)

[타율] 공모전에 참가한 실적을 계산했다.

[원문보기]
2할 9푼 4리는 적당하다.
17개 참가해서 5개 입상

[영화] 라푼젤, 사도

[원문보기]

라푼젤에 노파는 정말 대응되는 인물이 있다. 탑 밖을 나가지 못하도록 하고 거짓을 이야기하는 노파.


라푼젤은 국민인가?


사도세자도 뒤주에 갇히고.


나도 사람들의 생각을 벗어나지 못하여 죽어가고 있다.


“허공으로 날아간 저 화살이 얼마나 떳떳하냐”


다들 재미없다고 한 것은 정말 떳떳한 발언이다.


그러나 그런 발언을 떳떳하게 할 수 있는가!!!

[도서] 누가 아인슈타인의 연구실을 차지했을까?

[원문보기]
제목을 보면, 잘 알려진 과학자들이 나올 줄 알았는데, 내가 과학에 관심이 없었던 탓인지는 몰라도, 잘 모르는 사람들이 대부분이었다. 한가지 재미있었던 점은, 아인슈타인이 표현한 원자폭탄 실험과 리차드 파인만이 묘사한 원자폭탄 실험이 너무도 대조적 이었다는 것이다. 아래의 책 "파인만 씨...."와 지금 소개하는 책에 공통된 것이 이 부분이고, 두 책다 서로의 이름(아인슈타인과 파인만)이 언급되어 있다. 아인슈타인과 파인만은 둘다 천재이다. 물론 이론 물리학이라는 굉장히 생각하기 힘든 분야의 인물들 이지만, 존경하고 그들의 이론을 이해하고 싶은 욕망에 사로잡히곤 한다. * 박영식님에 의해서 게시물 복사되었습니다 (2007-06-09 01:29)"
첨부 (0)
위로