제 주변 프로그래머들은 저 정도는 아니지만... 상당부분 비슷한 면이 있습니다.
창의력 따윈 없어요. 그냥 정해진대로 움직입니다.
프로그래머가 이렇게 된 데에는 기획자가 어려운 요구를 했을 때 "구현" 하는데
모든 에너지를 쏟다보니... 후천적으로 변한 부분이라고 봅니다.
재미난건 이런 프로그래머를 양성한다며 초등학교에서 코딩을 가르쳐야 한다고
주장하는 사람들입니다... 이유가 더 웃깁니다. 창의력이 생기기 때문이라고 합니다.
미쳐도 단단히 미쳐 돌아가네요... 창의력은 이런걸로 못만들어요 죽어도
주변 사람들로 세상을 보려하지 마세요.
최근 진보와 혁신을 일궈낸 사람들이 누군지 생각해보세요.
기획자가 생각해낸 걸 엔지니어가 구현해냈을 뿐이라고 생각하나요?
수많은 벤쳐를 만들어낸 사람들은 엔지니어고, 그들이 경영도 잘 해왔답니다.
이해진, 김범수, 김정주, 김택진 등등 모두 프로그래머였어요.
기획만으로도, 프로그래밍만으로도 새로운 것을 만들 수는 없습니다.
둘 다 할 수 있는 자들이 새로운 것을 만드는 거죠.
기획자가 프로그래밍 배우는 것은 불가능하지만, 프로그래머가 기획을 하는 것은 가능하기에 프로그래머들이 벤처를 만들고 세상을 바꿔나가는 거예요.
주변에 보이는 평범한 프로그래머와 허접한 기획서를 자랑스럽게 던져주는 기획자를 보고 세상을 판단하지 마세요.
창의력에 대해서 많은 사람들이 오해를 합니다.
단언컨대 창의력 내지 아이디어에는 구현 방법이 포함되어야 합니다.
그럴싸하지만 아이디어가 아닌 극단적인 예가 타임머신입니다.
구현 방법을 모르는 아이디어는 그냥 공상이죠.
구현된 예로 스마트폰을 들어보겠습니다.
스마트폰의 기본 개념 및 니즈는 수십년전에 나왔지만, 구현 가능한 수준의 기술이 도래했기에 10여년전에 아이폰이 나온 거죠.
소비자가 100만원 이하로 컴퓨팅 가능한 성능의 칩셋, 고해상도 디스플레이, 정전식 터치스크린, 저전력 기술, 배터리 소형화, 손안에 들어가는 작은 사이즈, 그걸 뒷바침하는 UX 기술 등등을 조합해 내는 기획/기술력이 뒷받침됐기에 아이폰이 나오는 거죠.
당시에 그러한 기술들은 산재되어 있고 그 시점에서 그런 기술을 잘 이해하고, 집약하고, 기획하고, 구현하는 최고 수준의 지식과 능력이 있었기에 만들어 낸거죠.
창의력의 원천은 생각보다 테크니컬합니다. 그걸 이해 못한다면 낮은 수준에서 못 벗어납니다.
수많은 발명가들이 직접 구현을 한 엔지니어였다는 걸 잊지 마세요.
우리가 과거를 배우는 이유는 현재를 잘 살기 위해서입니다.
얼마 안되는 당신의 경험이 진리인양 떠들지 마세요.
참, 개인적으로 초등학생 코딩론은 저도 그닥 찬성하지는 않습니다.
수학을 잘 하면 프로그래밍을 잘 할 가능성이 큽니다.
글을 논리적이고 체계적으로 잘 써도 프로그래밍을 잘 할 가능성이 큽니다.
수학과, 물리학과 출신 프로그래머들이 컴공 출신보다 프래그래밍 잘 하는 사례도 수도없이 봤습니다.
음악, 미술, 역사, 철학, 경제 등 인문학적인 공부들은 프로그래머에게 풍부한 영감을 줄 것이고, 물리, 화학, 생물, 지학 같은 과학 지식은 프로그래머에게 구현 방법에 대한 다양한 아이디어의 원천이 될 것입니다.
코더를 키울거라면 초등학교때부터 코딩시키면 되지만, 프로그래머를 키우려면 다양한 지식과 경험을 쌓게 하는게 맞습니다.
마크 주커버그가 페이스북을 만든 계기를 보면 공부벌레가 아니라 균형잡힌 사람이 좀 더 나은 프로그래머가 될 수 있다는 걸 알게 될 겁니다.
어떻게 만들것이냐라는 범주를 못벗어나는 프로그래머는 하수입니다.
동감합니다..
마소도 소프트웨어 전공자뿐만 아니라..
타 이공,기초과학 계통 전공자들도 많이 뽑죠..
이유는..
복잡한 수학,물리학,통계학문에 기반한 프로세스로 결과물을 구현해야하는 프로젝트들이 많아지는데..
소프트웨어전공자에게 물리학을 가르치는것보다..
물리학 전공자에게 코드를 가르쳐서 팀웍으로 써먹는게 장기적으로 효과적이었다 라는 예가있죠..
뭐.. 님 주위 프로그래머들 수준이나 님의 수준은 알겠네요..
주위에 개발하는 프로그래머는 없고 죄다 '구현'하는 프로그래머만 있나보네요..
남이 만들어놓은거를 연결만 하는 프로그래머가 많긴 하죠.
(그런 '구현'하는 프로그래머라도 님을 포함한 대부분의 일반인에 비하면 창의적일겁니다.)
그리고 코딩 교육으로 논리력은 훈련될수 있습니다.
코딩 교육이 무슨 실무자가 쓰는 쌩코딩에 복붙을 가르치는줄 아시는거 같은데
선택자, 핸들러, 속성 등.. 뭔가를 구동할때 필요한 요소를 가르치는거에요..
5년전쯤 집에서 일하는거 구경하던 큰 조카에게 몇가지 간단한 코딩을 가르친적이 있는데
지금 그 아이가 중1인데 다른 아이들 보다 확실히 논리적이고 창의적입니다.
문제해결력도 있구요.