직장생활 IT 정보/엑셀(Excel)

컴퓨터 전공자가 알려주는 컴퓨터 프로그래밍을 시작하기 위한 필수 조건 3가지!!

ComExpert 2022. 12. 8. 15:00
반응형

컴퓨터 프로그래밍을 해보고 싶어요.

 

뭔가 새로운 걸 개발해 보고 싶은데, 뭐부터 해야 할까요?

 

저 또한 가슴 한구석에 의문 덩어리가 있습니다. 왜 나는 컴퓨터 공학을 전공했을까? 지금은 일반인과 섞여서 살고 있는데 도대체가 왜 대학 전공을 컴퓨터로 했을까? 이 생각을 해보고 해봤지만, 답은 나오지 않았습니다.

 

그냥 컴퓨터가 신기했었던 것 같습니다.

 

그렇다면, 당신은 혼자 자문자답의 과정을 겪어야 할 것 같습니다.

 

컴퓨터 프로그래밍을 왜 배우고 싶은 건가요?

 

우선 빠르게 그 이유부터 찾아봐야 합니다. 세상에 없는 뭔가를 만들고 싶다면, 이 생각부터 바꾸셔야 합니다. 당신이 생각하는 그 많은 아이템은 이미 프로그래밍으로 구현되어 있습니다.

 

에이. AI가 나오는 이 시기에 왜 이리 고리타분하신가요?

 

아닙니다. AI조차도 프로그래밍의 결과물입니다. AI는 혼자서 태어나는 게 아닙니다. 알렉사나 구글 어시스턴스 등의 음성인식 프로그래밍이 학습을 통해서 우리의 생각을 인지한다고 하더라도 하나하나 한 땀 한 땀의 코딩이 없었으면, 시작되지 않았을 겁니다.

 

그런데도, 이 고난의 길에 들어서려 한다면, 제가 조금이나마 도움을 드리고 싶습니다. 적성에 맞든 맞지 않든 프로그래밍을 시작하고자 한다면, 이것부터 시작해 보시기 바랍니다.

 


컴퓨터 전공자가 알려주는 컴퓨터 프로그래밍을 시작하기 위한 필수 조건 3가지!!

 

첫 번째, 목적의식이 있어야 합니다.

 

엥?? 목적의식??

 

이것은 꾸준함의 비결입니다. 프로그래밍은 컴퓨터를 다루는 능력입니다.

 

컴퓨터를 다루는 능력이요? 무슨 말씀을??

 

맞습니다. 컴퓨터를 쉬운 방법으로 다루는 게 아니라, 컴퓨터가 이해하기 좀 더 쉬운 방법으로 컴퓨터를 다루는 능력을 의미합니다.

 

컴퓨터의 언어는 다양합니다. 그 인터페이스(주고받는 뭔가)는 이미 C언어부터 지금의 파이선까지 무궁무진하게 개발이 되어 있고, 지금 트렌트에 맞게 좀 더 쉽게 컴퓨터의 언어가 개발되어 있을 뿐이고, 우리는 손쉽게 가져다 쓰면 되기 때문입니다.

 

인간의 언어로 컴퓨터에 얘기하는 것은 소비자일 뿐이고, 컴퓨터 개발자들은 컴퓨터가 이해하는 언어로 명령을 하는 것입니다.

 

시작단계에서는 당신이 컴퓨터가 이해하는 언어로 무엇을 하고 싶은지 뚜렷한 목적이 있어야 합니다. 그렇지 않으면 중간에 그만둘 수밖에 없습니다.

 

대학이나, 컴퓨터 학원에서 교육을 마치고, 현업에 가면 진짜로 현실 자각 타임이 올 수밖에 없습니다.

 

뭔가를 개발하는 사람들이 이미 다 개발한 것을 마지막 단계에서 막노동하듯 코드를 조합하는 일만을 밤새도록 하기 때문입니다.

 

LG CNS를 비롯하여 삼성 SDS, SK C&C 같은 프로그램의 유지보수 업체들은 모기업의 시스템을 담당합니다. 그 시스템은 이미 다 개발이 되어 있고, 업무에 실시간으로 적용합니다.

 

적용하면서, 새로운 시스템을 개발할 때에는 이미 그 개발 시스템들은 거의 다 완료된 상태이고, 현업에 적용하는 데에 사람 손이 필요하고, 그 사람 손 역할을 현업에서 할 뿐이기 때문입니다.

 

실제로 교육받으면서 배운 컴퓨터 시작은 쓸모없습니다.

 

저는 그랬습니다. 대학 4년 간 배운 내 지식은 전혀 쓸모없는 곳이 현업이었다는 생각이 들었습니다. 돈을 벌기 위한 프로그래밍을 시작해 보고자 한다면, 다시 한번 생각해 보시라는 말씀밖에 못 드리겠습니다.

 

두 번째, 그런데도 시작해 보고 싶다면, “내일배움카드”를 이용하자.

 

그렇게까지 시작하지 말라고 했지만, 뭔가를 해보고 싶다면, 내일배움카드를 이용해보라고 권하고 싶습니다.

 

지금 당신은 직장인이고, 중소기업에 다닌다면, 더할 나위 없는 컴퓨터 학원 싸게 다니는 법이 됩니다. 그렇지만, 대기업이나 공공기관에서 다닌다면, 이를 이용할 수는 없습니다.

 

아니, 왜 돈 내고 프로그래밍을 배워야 하나요?

 

저도 누군가에게 의지하는 느낌이 들어서 배우는 것을 좋아하진 않습니다만, 프로그래밍을 처음 시작할 때에는 아무리 기본서를 보더라도 이해하기 쉽지 않은 상황이 옵니다.

 

예를 들자면 파이선을 책을 사서 공부한다고 가정해봅시다. 제가 얼마 전에 파이선의 라이브러리가 궁금해서 공부를 시작했습니다만, 그 책에서 제공한 코드대로 코딩하고 실행을 하는데, 실행이 안 되었습니다. 그와 관련된 카페를 들어가서 확인해 보아도, 저자는 어떤 글도 올리지 않았습니다. 이대의 해결방법은?

 

라이브러리의 변수 인자 방식이 업데이트되어서 함수가 적용되지 않았던 겁니다. 코드의 작은 변화가 있었음에도 바로 확인이 어려워 그냥 몇 시간을 허공에 날렸습니다.

 

그나마 공부를 해왔던 분들이라면 github에 들어가서 관련 라이브러리의 업데이트 상황을 확인했을 것이고, 바로 문제를 찾아서 수정했을 텐데 말이죠.

 

프로그래밍은 멈춰있지 않습니다. 당연히 현재 쓰는 언어를 공부한다면, 계속 업데이트가 이뤄집니다. 20년 전의 C언어의 함수를 가져다 쓰는 게 아니라면, 숨 쉬고 있는 프로그래밍을 빠르게 배우기 위해서는 현업에서 배우는 게 가장 빠르고, 그다음은 컴퓨터 학원에 다니는 일입니다.

 

이거 컴퓨터 학원 광고인가요? 아니면 내일배움카드 광고인가요?

 

두 개 모두 아닙니다. 전공자였던 저조차도 학부 시절에 포인터가 이해가 되지 않아 학원을 찾아가 전문가 과정까지 돈을 내고 배워 왔었으니. 이젠 좀 이해가 될까 싶습니다.

 

내가 지금 몇 살인데, 강사에게 뭔가를 배우나? 라는 생각은 없애져도 됩니다. 돈을 주고 배우게 되면, 열심히 하게 됩니다.

 

저는 그냥 실직자입니다. 그래서 전직하기 위해 프로그래밍을 배우고 싶어요.

 

실직자도 나라지원이 가능합니다. 무조건 실직자를 위한 컴퓨터 프로그래밍 과정이 많으므로, 무조건 찾아보셔야 합니다.

 

 

세 번째, 돈이 없어도 노트북을 구매하셔야 합니다.

 

노트북으로 프로그래밍이 돌아가나요?

 

네 돌아갑니다. 프로그래밍을 위한 15.6인치 이상의 컴퓨터를 구매하세요. 17인치에 가벼운 노트북이면 더더욱 좋습니다.

 

뭔가를 새로 시작할 때에는 무조건 금전적인 부분을 해결하셔야 합니다. 노트북이 살 돈이 없다면, 집의 데스크톱을 이용해야 하는데, 그 컴퓨터 개발환경을 집에서만 고정적으로 하기에는 너무나도 힘듭니다. 물론 학원에 다니게 되면, 학원 컴퓨터를 활용하겠지만, 무조건 배운 것을 복습하는 과정도 필요할 것이고, 나만의 코딩을 이동 중에도 가능한 환경을 꾸려야 하기 때문입니다.

 

노트북 높은 사양을 사야 되는 거 맞죠?

 

아닙니다. 1~2년 전 나온 라이젠 노트북이면 충분합니다. 메이커 노트북을 살 필요는 없습니다. 화면이 그나마 조금 큰 노트북을 사셔야 코딩이 가능한 환경이 됩니다.

 

기본적으로 메모리 16기가라면, 조금 더 실행을 빠르게 하겠지만, 8기가라도 충분합니다.

 

노트북을 사는 것이 프로그래밍의 첫걸음이 아닐까 생각합니다.

 


요약
첫 번째, 프로그래밍하려는 목적의식이 있어야 합니다.
두 번째, 컴퓨터 학원에 다니기 위한 지원책 중의 하나인 “내일배움카드”를 이용하자.
세 번째, 이동환경에서도 코딩이 가능한 노트북을 구매하셔야 합니다.

 

쓰고 보니, 돈이 있어야 한다고 들릴 수도 있겠지만, 프로그래밍으로 밥벌이를 하는 것은 진짜로 고된 노동의 길입니다.

 

제가 왜 일반인 속에 섞여서 일반행정을 하는지는 묻지 않아도 답해드릴 수 있습니다. 지금의 생활을 고정적으로 15년 하게 된 이유 중의 하나가 항상 공부해야 하는 상황에 현실 자각을 했었고, 이직했기 때문입니다.

 

그런데도 저는 지금도 컴퓨터 프로그래밍을 공부하고 있습니다.

 

왜요? 무슨 목적이 있나요?

 

네 목적이 생겼습니다. 업무에 적용할 수 있는 일반인과 섞여서도 내가 활용할 수 있는 코드를 구현해서 조금이나마 편하게 일해보고 싶어서입니다.

 

당신도 프로그래밍을 해보고자 한다면, 당장에 세 가지를 실행해 보시기 바랍니다.

 

오늘 하루도 수고하셨습니다. 행복한 하루 되시기 바랍니다. 감사합니다.

 

반응형