티스토리 뷰

해우소 (toilet)/- 일상&잡담

역사학과 프로그래밍의 공통점과 차이점.

공부하는 나부랭이, 무중력고기 2013.10.04 23:59

   역사학과 프로그래밍..


   공통점이라고는 눈을 씻고 찾아봐도 찾아볼 수 없을 것만 같은 두 녀석이다.


   역사학만 공부하다가 프로그래밍에 첫 발을 내디뎠을 때, 정말이지 정신적으로 무척 힘들었다.


   처음으로 프로그래밍 언어를 접한 건 Java였는데, int는 뭐고 String은 뭐고.. 이것까지는 괜찮았다. for문, while문이 나오고 구구단을 만들라는 둥(못하지는 않지만 난 어렸을 때 구구단과 나눗셈에 대한 트라우마가 있다), 경우의 수 같은 이상한 수학 문제 같은 걸 풀어보라는 둥 하는데.. 머리가 깨져버릴 것 같았다. ㅡ.ㅡ; 정말 심각하게 이 길로 가도 될까 고민도 많이 했다. 더군다나 언어는 규칙이라는 것을 깨닫지 못하고, "a=b이고 c=d이다"라는 어찌보면 당연한 공식에 "왜?"라는 의문을 달아서 스스로와 주변 사람들을 혼란에 빠뜨리기도 했다. 내가 해왔던 역사학에서는 당연시 되는 논리에도 "왜?"라는 의문을 제기하는 것이 학문하는 데에 있어서 가장 기초적이고 중요한 것이었기에, 그 버릇이 계속 나왔던 것이다. 오류가 발생해도 일단 "왜?"라는 의문과 함께 답을 찾아가기 시작하면, 디버깅으로 정확하게 오류를 잡아내기보다 내 나름대로 논리를 세워서 이건 이렇게 되어야 옳다고 결론을 내리고 쓸데없이 헤매는 경우가 많았다.(지금도 종종 그렇다. 빨리 디버깅하는 버릇을 들여야 하는데..휴우..) 역사학은 컴퓨터처럼 1+1=2와 같은 절대 정답이 없다. 신빙성 있는 사료와 탄탄한 논리만 뒷받침 된다면 내가 생각하는 것이 곧 정답이요 이론이다. 그런 점에서 프로그래밍을 하면서 절대 정답을 강요받는 듯한 느낌을 받을 때마다 스트레스를 좀 받았던 것도 사실이다. 프로그래밍은 그런 것 같다. 되면 되는 거고, 안되면 안되는 거. 중간은 없다. ㅡ.ㅡ;; (컴퓨터 전공자들을 보면 그런 성질이 사람을 다소 이분법적으로 만드는 듯도 하다. << 그냥 경험상 내 느낌..;;)


   그래도 공부하던 버릇이 프로그래밍을 배울 때 도움이 될 때도 많았다. 전혀 다른 분야인데도 미묘하게나마(?) 공통점이 있다. 내가 생각하는 그 둘의 가장 큰 공통점으로는 역사학이나 프로그래밍 모두 "흐름"이 중요하다는 점이다. 둘 다 흐름을 놓치면 이해하기가 어렵다. 그래서 흐름을 잘 못잡는 사람들이 헤매는 걸 많이 봤다. 또, 개념을 이해하는 능력도 상당히 필요한데, 공부했던 경험이 있어서 그런 건 참 좋아라하는지라.. 특히 객체지향을 배울 땐 최고로 재밌었다. 흐름이나 개념 이해에 익숙하지 않는 사람의 경우 고생하는 것을 많이 봤다. 근데 난 수학적인 머리에서는 좀 골치 아팠어도 그런 부분에 있어서는 득을 보지 않았나 싶다.


   앞으로 나의 숙제는 새로운 언어(C, C#..)들을 배우는 일과 부족한 부분들(JavaScript, Ajax, sql..)을 채우는 일, 그리고 못다한 학위를 머리 쌩쌩 돌아갈 때 최대한 빨리 마치는 것이다. ㅠㅠ


   두 마리 토끼를 모두 잡을 수 있을까..



댓글
  • BlogIcon 당근천국 구현할때는 정확한 답을 요구하지만 요구사항을 분석할때는 그렇지가 않습니다 ㅎㅎㅎ
    최선의 답을 구하기위해 피터지게 회의하죠.
    그런데 보통은 완벽한 답이 없기 때문에 피터지게 싸우는 거죠 ㅎㅎㅎ
    어찌됬건 프로그래밍이라는게 처음배울때나 어렵지 언어하나만 잘 해두면 다른 언어들은 금방금방합니다.

    힘네세요~
    2013.10.05 04:23 신고
  • BlogIcon 공부하는 나부랭이, 무중력고기 응원 감사합니다. ㅎㅎ 2013.10.05 20:30 신고
댓글쓰기 폼
Total
1,334,236
Today
822
Yesterday
969
«   2019/07   »
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      
글 보관함