오랜만에 '기술에 대한 생각' 카테고리를 선택한다. 블로그 목적이 수필식으로 일기마냥 적는 것이었기에 다른 카테고리들이 그닥 사랑을 받지 못하고 있는 것은 어쩔 수 없는 현실. 뭐, 어쩌랴-
무엇을 상상하든...
어떤 프로그램을 작성하려 할 때, "아- 이런 저런 기능이 필요한데" 하는 걱정은 누구나 늘상 하는 일이다. 머릿속에서 이건 이렇게, 저건 저렇게 이래저래 분리시키고 잇고를 반복하다보면 조금은 짜증날 법한 코어가 발생하기 마련인데, 경험이 조금씩 쌓이다보면 그렇게 발생한 코어의 기능이 왠지 그럴싸하고 어쩐지 모르게 왠지 누군가 만들었을 것 같다는 생각을 하게 된다.
빙고! 누군가도 나와 같은 고민을 하고 있다! 헛소리가 아니다. 전국 수백만의 아이들의 머릿속엔- 그렇다, 수 많은 개발자들 중에 당신과 같은 고민을 한 사람이 어찌 한 명도 없으랴- 재밌는 사실은, 이런 동족이 의외로 많다는 것. 당신의 고민은 그래서 당신만의 고민이 아니고, 생각치도 못한 수 많은 사람들의 고민이었으며, 아마 대부분은 굉장히 잘 만들어진, 당신의 코어 기능을 만족하는 제품(또는 라이브러리)이 존재한다!
소프트웨어 영역은 이미 포화 상태를 넘어서고 있는 듯 하다. 미친 듯이 넘쳐나는 표준, 미친 듯이 넘쳐나는 기술, 미친 듯이 넘쳐나는 라이브러리... 그 속도는 조금도 줄어들 생각이 없는지, 하루가 다르게 새로운 기술이 발표되고 새로운 표준이 등장하고 그런 비몽사몽한 환경 속에서 당신은 "아- 이런 저런 기능이 있었으면 좋겠는데" 를 외치고 있다.
찾아라.
넘쳐난다니깐. 여태 뭘 들은거지? 당신이 만약 "그래도 내가 짜 볼래요, 내가 필요한 기능만 딱 만들면 되는데 왜 힘들게 다른거 배우죠? 그럴 시간에 코드를 한 줄 더 짜겠어요" 라고 말한다면, 지금 당장 다시 한 번 생각해보길. 나는 아무런 거리낌없이 "니가 짜 봤자 얼마나 잘 짤건데?" 라고 말하련다. 아? 너무 무시한건가? 조금 점잖게 말해보지. "당신이 만들려고 하는 그 기능은 정말 신뢰할 수 있을 정도의 품질을 보장할 수 있나요? 그 때만 쓰고 버릴 건가요, 아니면 다른 비슷한 요구사항에 대해 재사용할 수 있는 건가요?"
자- 우린 이제 코딩 그 자체에 재미를 느끼기엔 나이가 좀 들었잖아? 왠만하면 직접 작성하지 마라. 이미 만들어져 있는 수 많은 라이브러리들은 오랜 시간 동안 전세계 양아치들에게 혹사를 당해서 왠만해선 죽지 않는 아주 훌륭한 품질을 자랑한다. 범용성? 최고라니까. 한 번 믿어보라구!
뭐가 이렇게 많아?
주의할 것은, 찾다보면 필요로하는 기능을 제공하는 라이브러리들이 생각보다 넘쳐난다는 것. 아뿔싸! 대체 뭘 선택해야 하는거야? 귀찮으니까 그냥 아무거나 하나 잡으면 되겠지? 안된다. 인간아- 많은 사람들이 들락날락 거리는 곳부터 쑤셔라. 많이 쓰는게 좋은거다. 다른 답 없다. 많이 쓴다는 건 그만큼 많은 사람들이 신뢰한다는 것이고 그만큼 혹사 당하고 있어서 품질이 아주 대박이라고!
자, 하나 더! 만약 당신이 필요로 하는 기능을 구현하는 라이브라리가 어떤 잘 알려진 다른 기술을 포함하는 경우, 눈치를 잘 봐라. 새로운 기술에 현혹되어서는 안된다! 절대 조심할 것!! 얘네들은 홈쇼핑마냥 지들 장점만 잔뜩 포장해서 구만 구천 구백원 팔고 있는 녀석들이야!! 단점을 완전히 파악하고 써라. 기술이 넘쳐나는 만큼 그 생명 주기도 짧은 경우가 많다. 붐을 일으켰다가도 소리소문없이 스르륵 사라지는 프로젝트가 어디 한둘이랴. 들락날락하는 사람들이 바글바글한 곳에서, 제법 신뢰할 수 있는 기술을 지원하는 그런 것에 눈독들여라. 그리고 그저 갖다 쓰는 얌체가 되지 말고 관련된 기술을 익혀라. 추세를 봐라. 아- 이 기술 계속 써도 되겠는데- 쯤의 확신을 갖도록 노력해라.
편하자고 만들어지는 새로운 기술들은, 포장은 그럴 듯 해도 사실 그 기술을 배우기가 그들이 주장하는 만큼 그다지 편하지는 않다. 노선을 잘못 탔다가는 나중에 엄청 고생할지도 모른다. 눈치껏! 빵상빵상! 잘 골라 보라고-
무엇을 상상하든...
어떤 프로그램을 작성하려 할 때, "아- 이런 저런 기능이 필요한데" 하는 걱정은 누구나 늘상 하는 일이다. 머릿속에서 이건 이렇게, 저건 저렇게 이래저래 분리시키고 잇고를 반복하다보면 조금은 짜증날 법한 코어가 발생하기 마련인데, 경험이 조금씩 쌓이다보면 그렇게 발생한 코어의 기능이 왠지 그럴싸하고 어쩐지 모르게 왠지 누군가 만들었을 것 같다는 생각을 하게 된다.
빙고! 누군가도 나와 같은 고민을 하고 있다! 헛소리가 아니다. 전국 수백만의 아이들의 머릿속엔- 그렇다, 수 많은 개발자들 중에 당신과 같은 고민을 한 사람이 어찌 한 명도 없으랴- 재밌는 사실은, 이런 동족이 의외로 많다는 것. 당신의 고민은 그래서 당신만의 고민이 아니고, 생각치도 못한 수 많은 사람들의 고민이었으며, 아마 대부분은 굉장히 잘 만들어진, 당신의 코어 기능을 만족하는 제품(또는 라이브러리)이 존재한다!
소프트웨어 영역은 이미 포화 상태를 넘어서고 있는 듯 하다. 미친 듯이 넘쳐나는 표준, 미친 듯이 넘쳐나는 기술, 미친 듯이 넘쳐나는 라이브러리... 그 속도는 조금도 줄어들 생각이 없는지, 하루가 다르게 새로운 기술이 발표되고 새로운 표준이 등장하고 그런 비몽사몽한 환경 속에서 당신은 "아- 이런 저런 기능이 있었으면 좋겠는데" 를 외치고 있다.
찾아라.
넘쳐난다니깐. 여태 뭘 들은거지? 당신이 만약 "그래도 내가 짜 볼래요, 내가 필요한 기능만 딱 만들면 되는데 왜 힘들게 다른거 배우죠? 그럴 시간에 코드를 한 줄 더 짜겠어요" 라고 말한다면, 지금 당장 다시 한 번 생각해보길. 나는 아무런 거리낌없이 "니가 짜 봤자 얼마나 잘 짤건데?" 라고 말하련다. 아? 너무 무시한건가? 조금 점잖게 말해보지. "당신이 만들려고 하는 그 기능은 정말 신뢰할 수 있을 정도의 품질을 보장할 수 있나요? 그 때만 쓰고 버릴 건가요, 아니면 다른 비슷한 요구사항에 대해 재사용할 수 있는 건가요?"
자- 우린 이제 코딩 그 자체에 재미를 느끼기엔 나이가 좀 들었잖아? 왠만하면 직접 작성하지 마라. 이미 만들어져 있는 수 많은 라이브러리들은 오랜 시간 동안 전세계 양아치들에게 혹사를 당해서 왠만해선 죽지 않는 아주 훌륭한 품질을 자랑한다. 범용성? 최고라니까. 한 번 믿어보라구!
뭐가 이렇게 많아?
주의할 것은, 찾다보면 필요로하는 기능을 제공하는 라이브러리들이 생각보다 넘쳐난다는 것. 아뿔싸! 대체 뭘 선택해야 하는거야? 귀찮으니까 그냥 아무거나 하나 잡으면 되겠지? 안된다. 인간아- 많은 사람들이 들락날락 거리는 곳부터 쑤셔라. 많이 쓰는게 좋은거다. 다른 답 없다. 많이 쓴다는 건 그만큼 많은 사람들이 신뢰한다는 것이고 그만큼 혹사 당하고 있어서 품질이 아주 대박이라고!
자, 하나 더! 만약 당신이 필요로 하는 기능을 구현하는 라이브라리가 어떤 잘 알려진 다른 기술을 포함하는 경우, 눈치를 잘 봐라. 새로운 기술에 현혹되어서는 안된다! 절대 조심할 것!! 얘네들은 홈쇼핑마냥 지들 장점만 잔뜩 포장해서 구만 구천 구백원 팔고 있는 녀석들이야!! 단점을 완전히 파악하고 써라. 기술이 넘쳐나는 만큼 그 생명 주기도 짧은 경우가 많다. 붐을 일으켰다가도 소리소문없이 스르륵 사라지는 프로젝트가 어디 한둘이랴. 들락날락하는 사람들이 바글바글한 곳에서, 제법 신뢰할 수 있는 기술을 지원하는 그런 것에 눈독들여라. 그리고 그저 갖다 쓰는 얌체가 되지 말고 관련된 기술을 익혀라. 추세를 봐라. 아- 이 기술 계속 써도 되겠는데- 쯤의 확신을 갖도록 노력해라.
편하자고 만들어지는 새로운 기술들은, 포장은 그럴 듯 해도 사실 그 기술을 배우기가 그들이 주장하는 만큼 그다지 편하지는 않다. 노선을 잘못 탔다가는 나중에 엄청 고생할지도 모른다. 눈치껏! 빵상빵상! 잘 골라 보라고-
이 글의 트랙백 주소는 http://semix2.tistory.com/trackback/346 입니다

흠.. 맞는 말이군요 ㅋㅋㅋ
ㅋㅋㅋㅋ; 답없죠 뭐-