C언어를 배우려는 이유가 뭔가요?
이 글을 읽고 있는 독자에게 질문 하나 해보고 싶다.
C언어를 배우는 이유가 뭔지...
가장 기본이 되는 언어라서? 많은 사람들이 처음에 C언어를 하라고 추천해줘서?
뭐 여러 가지가 있겠지만, C언어는 C언어 그 자체로 받아들였으면 좋겠다는 말을 하고 싶다.
가령 JAVA를 배우고 싶어서 커뮤니티에 "JAVA를 배우고 싶은데 뭐부터 해야 하나요?"라고 물어보면 총 2가지의 대답을 받을 것이다.
"하려는 것을 하세요"라는 대답과 "C언어부터 시작해보세요"라는 대답이다.
이 대답을 들은 질문자는 어떤 생각이 들까?
'JAVA를 배우고 싶다고 물어봤는데 C언어부터 시작해보라고 하네?'라는 생각이 들지않을까?
그렇다면 질문자는 JAVA를 "위해" C언어를 공부하게 되고,
C언어를 자꾸 JAVA와 연관시켜 생각하려고 할 것이다.
하고 싶은 말은
C언어가 꼭 필요로 해서 배우는 사람은 해당하지 않지만, 다른 언어들 (예를 들면 JAVA, C#, C++ 등)을 빠르게 배우기 위해 C언어를 배우는 사람이라면 꼭 C언어를 배울 때만큼은 C언어를 사용하기 위한 C언어를 배우라는 것이다.
좌절하지 마세요
흔히 C언어든 어떤 언어든 처음 시작하면 뭐부터 하는가?
printf("Hello World!\n"); 부터 시작하지 않는가?
이게 html css 같이 웹 프론트엔드 공부하는 사람들과 달리
게임 프로그래머라든지 앱 개발자가 되고 싶은 사람들은
뭔가 되긴 되는데 별로 멋없는? 이런 느낌이 강하게 들것이다.
웹 프론트엔드를 공부하는 사람들은 그래도 어떠한 형태가 갖추어져 있어서 뭔가 작업이 진행되고 있구나! 하는 느낌이 드는데 반해
C언어를 공부하는 사람은 프로그램을 짜고 실행을 시키면 맨날 시커먼 창에 하얀 글씨로 된 텍스트나 보고 있으니 '언제쯤 번지르르한 것을 만들 수 있을까?'라는 생각이 들 것이다.
당신이 1인 개발자가 아닌 이상 맨날 시커먼 창에 하얀 텍스트만 봐야 하니 이것으로 내가 뒤쳐지고 있나..라는 생각은 하지 않길 바란다.
마치며...
프로그래밍이든 코딩이든 결국은 하나의 목적이 있어서 배우는 게 아닐까?
무언가를 '개발'하기 위해서...
'개발'의 의미를 잘 생각해보길 바란다.
내가 원하는 개발은 회사에서 다른 사람들과 회의를 통해 새로운 것을 만드는 것인지.
아니면 혼자서 독창적인 아이디어로 새로운 것을 만드는 것인지.
우리는 "개발자"가 되기 위해서 위 같은 프로그래밍 언어를 배우는 것이지, 프로그래밍언어 박사가 되기 위해서 배우는게 아니라는 것을 마음속에 세기고 공부했으면 좋겠다.