머 잘 하는 사람은 이론 몰라도 잘합니다.
못 하는 사람은 이론 알아도 못합니다.
감각적인... 이라던가
센스가 있다거나 하는 수식어가 붙지만
가장 중요한건
프로그래밍 분야에 있으면서 직접적인 교육을 통했던, 간접적인 체득을 통해서 깨우치거나 어렴풋이 근본에 대해 알아야 한다는 점이 아닐까 합니다.
솔찍히 그런거 안배워도 잘하는 분들 이야기 해보면
수식이나 거창한 말은 표현하지 못해도 그에 상응하는 논리적 전제나 이론적 기반에 대한 이해를 하고 있고
그것에 근거하여 자신의 논리를 펼칠수 있다는 느낌을 받게 됩니다.
아무튼.. 질문자의 태도니 머니 이런걸 떠나서
답만을 원하는 자에게는 이론적 지식이 필요 없을 수 있겠지만
이 길을 걸으려는 자에게는 거의 필수에 가깝게 알려고 하는 자세와 앎이 있어야 한다고 생각합니다.
사족 : 모르고 써도 되는 라이브러리가 넘쳐나지만.. 검증되고 사용법이 확실하게 깨달으려면 최소한 어느정도 부딛혀야 하고
문제점이 발생했을때 블랙박스로 남아버린 부분이 많을수록 디버깅은 산넘어 산이 될테니 결국에는 모든걸 알아야 하지 않을까 합니다.
다만, 알아야 하는 내용과 시점은 그 사람의 능력과 상황에 따라 다르겠지만요.