C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
분야별 포럼
C++빌더
델파이
파이어몽키
C/C++
프리파스칼
파이어버드
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

자유게시판
세상 살아가는 이야기들을 나누는 사랑방입니다.
[13015] Re:개발의 절대 신공을 찾는 사람들!
이경환.단디 [lncsoft] 2440 읽음    2007-05-21 16:14
주정섭님의 좋은 글 잘 읽었습니다.

사람마다 중요시하는 것들이 다르기 때문에, 기억력의 중요성을 강조하는 부분은 나름대로의 주장이라고 인정하고 싶습니다. 하지만, 이 글을 읽다보니 명백히 잘못된 과정을 통해 결론을 도출시키고 있기 때문에 나름대로의 의견을 적어 봅니다.

단도직입적으로 얘기해서, 이 글은 몇가지 큰 오류를 범하고 있습니다.

원문에는 아래와 같은 논지가 있습니다.

>>1) 나는 기억력이 가장 중요한 능력이라고 생각한다.

>>2) 그런데, 개발자들 중에는 암기나 기억력은 별로 중요하지 않고, 이해력과 응용력만이 가장 중요한 개발자적 자질이라고 우기는 사람들이 있는데, 이들의 공통된 행태가 있다. 3) 바로 지극히 게으르다는 것이다. 이들의 공통된 습관은 바로 개발 비급, 혹은 절대 신공이 존재한다고 믿으며, 이런 절대 신공을 찾고자 혈안이 되어 있다는 것이다. 4) 개발 실력 향상을 위한 피나는 노력은 전혀 쓸데 없는 시간 낭비라고 생각하는 것이다.

>>5) 그 고수는 피나는 수련과 시행착오를 반복한 끝에 그 신공처럼 보이는 기술을 "익히고 체득한" 것이다. 절대 신공이 적힌 비급(우리 개발자들은 이를 주로 개발관련 팁이라고 칭한다) 몇권을 훑어 보면 그 고수의 절대 신공이 익혀질 것이라고 생각하면 아주 큰 오산이다.

논지를 풀어보자면...

1) 시작부에서는 분명히 기억력이 가장 중요하다고 얘기하고 있습니다.
2, 3) 이해력이나 응용력을 중요시하는 사람들이 지극히 게으르다는 단정은 어디에서 유추된 건지 궁금합니다. 또한, 이해력이나 응용력하고 '개발 비급', '절대 신공'하고 무슨 관계가 있는 건가요?
4, 5) '피나는 노력'이 기억력에만 해당되고, 이해력 또는 응용력하고는 전혀 상관없다는 얘기인가요?
기억력을 강조하면 피나는 노력을 하는 것이고, 이해력이나 응용력을 강조하는 것은 '절대 신공의 신봉자'라고 주장하는 것은, 어디서부터 시작된 근거인지 이해가 안됩니다.

결론적으로 얘기해서, 기억력과는 관계가 없는 '피나는 노력'을 기억력과 결부시킴으로서, 이해력이나 응용력의 중요성을 강조하는 것이 '절대비급'을 찾기 위한 '게으른 노력'이라는 결론을 유도해 내고 있습니다.

주정섭님이 기억력의 중요성을 강조하고 싶었다는 것은 이해하지만, 그로 인해 이해력이나 응용력에 대해서 극단적으로 '게으르다'거나 '절대 신공의 신봉자'라고 표현한 점은 도대체 이해가 되지 않습니다.

설마, 이해력이나 응용력의 중요성을 강조하는 것이 '카피 신공'을 강조하는 것으로 '이해'하고 있는 건 아니시겠죠?

이왕 시작한 글이니 조금만 더 해볼까요?

기억을 아무리 잘해도 이해력이나 응용력이 따라주지 않는다면, 그건 끝없는 삽질의 연속일 수 밖에 없습니다.

검색을 잘하고, 문제 해결 능력이 뛰어난 고수들이 가지고 있는 것은 단지, 기억력이나 암기력이 아닙니다. 그들이 필요한 자료를 쉽게 찾고 문제를 쉽게 풀어나가는 것은, 문제가 무엇인지 좀 더 잘 이해하고 있다는 겁니다.

어떤 소스의 어느 위치에 문제의 요인이 존재할 것인지 '분석'하는 것은, 복잡하게 얽힌 클래스 구조를 달달달 외운다고 되는 것이 아니라, 각각의 클래스의 역할이 무엇이고 어떻게 연결되어 있고, 언제 그것들이 어떤 방식으로 작동하는지를 이해해야 한다는 것입니다.

기억력이 뛰어난 자들은 남들보다 훨씬 빨리 머리속에 많은 내용을 저장할 수 있고, 그러한 능력을 활용하여 남들에게 으스댈수는 있겠지만, 그러한 점들이 실제적인 상황에서의 문제 해결 능력을 보증하지는 않습니다. 또한, 기억력만으로 문제를 해결할 수 있는 상황은 그다지 많지 않습니다. 자신의 두뇌를 하드디스크의 용도로 주로 쓴다면, '융통성이 없다'는 수식어가 따라 다닐지도 모릅니다.

우리가 외워야 할 것들은 그냥 '내 컴퓨터'나 '인터넷'에 보관해두고, 언제든 내가 필요할 때, 즉시 꺼내 쓸 수 있도록만 하면 됩니다. 즉, 머리속에는 포인터만 보관해 두면 된다는 얘기입니다. 메모리로서의 두뇌의 역할이 더 중요하다는 얘기입니다.

프로그래머에게 중요한 자질의 하나는 무엇을 아느냐가 아니라, 주어진 특정 상황에서 해결책을 제시할 수 있느냐는 것입니다.

어떤 특정 상황이 일반적으로(?) 해결이 가능함에도, 그 해결책이 상대방(고객의 요구 사항이든, 실제적인 코드의 구현이든)과의 타협이나 양보를 이끌어내는 방향으로 진행되어 가는 횟수가 많을수록, 코드의 '삽질 지수'는 비례하여 증가한다는게 내 생각입니다.

다양한 상황에서 벌어지는 문제들에 대한 해결책을 제시하기 위해서는, 수 많은 경험(샘플코드 작성, 실제 프로젝트 수행 등등)을 통해서 변별력을 길러야 가능한 것입니다. 변별력이란 것은 기억력보다는 상황 판단(이해력)과 대처 능력(응용력)이 더 중요한 것입니다.

억지로 외워서 좋은 성과를 올릴 수 있는 것은, 학교 다닐때 수없이 경험한 사지선답형의 문제일 때, 제대로 그 위력을 발휘합니다.

어느 분야에서든, 실무에서는 사지선답형식의 문제가 거의 없습니다. 특히, 개발 실무에서는 더 하다고 생각합니다. '10년 초보', '20년 초보'라는 말은, 이해력과 응용력을 발전시키지 못했기 때문에 나오는 것입니다. 보다 많은 이해력과 다양한 응용능력을 키우는데 게을리 한다면, '만년초보'라는 비아냥을 주위사람들이 하고 있다는 사실을, 자신만 모르고 있을 수도 있습니다.


기억력도 물론 중요합니다.

그렇지만, 현실 세계에서는 항상 예기치 않은 문제가 발생하고 또 해결해 나가야 합니다. 어떤 특정한 상황에서, 스스로 문제를 해결할 수 있었다면, 가장 큰 이유가 무엇이었는지 다시 한 번 생각해 볼 필요가 있을 것입니다.

+ -

관련 글 리스트
12998 개발의 절대 신공을 찾는 사람들! 주정섭 3506 2007/05/18
13015     Re:개발의 절대 신공을 찾는 사람들! 이경환.단디 2440 2007/05/21
13018         정신 분석학적 기억력 정의에 대한 변명! 주정섭 2761 2007/05/21
13020             <정신 분석학적 기억력 정의>의 절대 신공(!) 이경환.단디 2722 2007/05/22
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.