비전공자를 위한 기초 코딩 학습 로드맵 막막한 초보자를 위한 가이드
- 공유 링크 만들기
- X
- 이메일
- 기타 앱
검은 화면이 두려운 당신에게
처음 코딩을 배우기로 마음먹었을 때가 기억납니다. 서점에 가서 가장 두꺼운 C언어 책을 샀고, 집에 돌아와 검은색 터미널 창을 띄워놓고는 한참을 멍하니 바라만 봤었죠. 주변에서는 요즘은 개나 소나 코딩을 한다는데, 왜 나에게만 이 외계어들이 이토록 낯설고 어렵게 느껴지는지 자괴감이 들기도 했습니다. 아마 지금 이 글을 읽고 계신 분들도 비슷한 심정일 거라 생각합니다. 비전공자로서 새로운 영역에 발을 들인다는 건, 짙은 안개 속을 걷는 것과 같으니까요. 제가 멘토링을 하면서 만난 수많은 비전공자분들이 가장 많이 하는 실수는 의욕만 앞세워 무작정 어려운 길로 뛰어든다는 점이었습니다.
우리는 컴퓨터 공학을 전공하려는 게 아닙니다. 코딩이라는 도구를 활용해 내 삶을 개선하거나, 새로운 커리어를 만들고 싶은 것이죠. 그래서 접근 방식 자체가 달라야 합니다. 오늘은 제가 시행착오를 겪으며 깨달았던, 그리고 현장에서 비전공자 출신 개발자들과 일하며 확인한 가장 현실적이고 효율적인 학습 로드맵을 이야기해보려 합니다.
언어 선택의 딜레마, 무엇부터 시작할까?
가장 많은 분이 여기서부터 막힙니다. C언어가 근본이라던데, 자바가 취업이 잘 된다던데, 아니면 요즘 뜨는 파이썬을 해야 하나? 저의 조언은 아주 명확합니다. 여러분이 당장 대기업 시스템 개발자가 되겠다는 목표가 아니라면, 학습 곡선이 완만한 언어로 '성취감'을 먼저 맛보는 것이 중요합니다.
코딩은 마라톤입니다. 초반에 너무 숨이 차면 완주할 수 없습니다. 흥미를 잃지 않는 것이 최고의 학습법입니다.
데이터 분석이나 업무 자동화, 혹은 인공지능에 관심이 있다면 파이썬(Python)으로 시작하세요. 문법이 직관적이고 마치 영어 문장을 읽는 듯한 느낌을 줍니다. 반면, 눈에 보이는 웹사이트나 결과물을 바로바로 만들어내고 싶다면 자바스크립트(JavaScript)와 HTML/CSS 조합을 추천합니다. 내가 짠 코드가 브라우저에서 바로 움직이는 것을 보는 것만큼 강력한 동기부여는 없거든요.
강의만 듣는 '튜토리얼 지옥' 탈출하기
인터넷 강의를 켜놓고 강사가 치는 코드를 눈으로만 쫓다 보면 마치 내가 다 이해한 것 같은 착각에 빠지게 됩니다. 업계에서는 이를 '튜토리얼 헬(Tutorial Hell)'이라고 부릅니다. 강의를 볼 때는 알겠는데, 막상 빈 화면에 혼자 무언가를 짜보려 하면 손가락 하나 까딱할 수 없는 상태죠. 제가 이 함정에서 빠져나온 방법은 아주 단순하면서도 무식한 방법이었습니다.
1. 베껴 쓰지 말고 변형해서 쓰기
강사가 "Hello World"를 출력했다면, 여러분은 "Hello My Name"을 출력해보세요. 계산기 예제를 만든다면 더하기 기능을 빼고 곱하기 기능을 넣어보세요. 아주 사소한 변형이라도 직접 코드를 수정하고 에러를 마주하는 과정에서 진짜 실력이 듭니다.
2. 엉성해도 나만의 프로젝트 만들기
문법 공부는 딱 2주에서 한 달이면 충분합니다. 그 이후에는 곧바로 아주 작은 프로젝트를 시작해야 합니다. 거창한 앱을 말하는 게 아닙니다. 오늘 할 일 목록(To-do List) 만들기, 내 몸무게 변화 기록기 같은 아주 단순한 프로그램이라도 좋습니다. 내가 필요해서 만든 프로그램은 완성했을 때의 희열이 다릅니다. 이 희열이 다음 단계로 넘어가는 연료가 되어줍니다.
CS 지식, 언제 공부해야 할까?
비전공자분들이 가장 불안해하는 부분이 바로 컴퓨터 공학(CS) 기초 지식의 부재입니다. 자료구조, 알고리즘, 운영체제 같은 단어만 들어도 주눅이 들죠. 하지만 처음부터 이 이론들에 매몰되면 코딩은 재미없는 학문이 되어버립니다. 집을 짓는데 건축학 개론부터 배우는 격입니다. 일단은 벽돌을 쌓아보고, 벽이 무너져도 보고, 왜 무너졌는지 궁금해질 때 이론 책을 펼치세요.
- 코드를 짰는데 속도가 너무 느리다고 느껴질 때: 자료구조와 알고리즘 공부 시작
- 데이터가 어떻게 저장되고 통신하는지 궁금할 때: 데이터베이스와 네트워크 기초
- 컴퓨터가 내 코드를 어떻게 이해하는지 궁금할 때: 운영체제와 컴퓨터 구조
필요에 의해 공부한 이론은 머릿속에 스펀지처럼 흡수됩니다. 처음부터 전공 서적을 독파하려 하지 마세요. 우리는 학자가 되려는 게 아니라 메이커(Maker)가 되려는 것이니까요.
비전공자라는 무기를 활용하세요
많은 분이 비전공자라는 타이틀을 약점이라고 생각합니다. 하지만 현업에서 보면 오히려 그 반대인 경우가 많습니다. 여러분이 가진 본래의 전공 지식이나 사회 경험에 코딩이라는 무기가 더해지면 대체 불가능한 인재가 될 수 있습니다. 마케터 출신 개발자는 데이터를 보는 눈이 다르고, 디자이너 출신 개발자는 UI/UX를 고려한 코드를 짭니다. 코딩은 결국 문제를 해결하는 도구일 뿐, 중요한 것은 어떤 문제를 해결하느냐입니다. 여러분의 경험 속에 해결해야 할 문제들이 이미 가득하다는 것을 잊지 마세요.
처음 시작은 당연히 막막하고 두렵습니다. 에러 메시지 하나에 3시간을 끙끙대기도 하고, 어제 알던 것이 오늘 기억나지 않아 좌절하기도 할 겁니다. 저 또한 그랬고, 지금 뛰어난 개발자라고 불리는 사람들도 모두 겪었던 과정입니다. 중요한 건 속도가 아니라 방향, 그리고 멈추지 않는 꾸준함입니다. 오늘 하루, 단 한 줄의 코드라도 작성했다면 여러분은 이미 개발자의 길을 걷고 있는 것입니다.
지금 당장 여러분이 만들고 싶은, 혹은 해결하고 싶은 아주 사소한 불편함은 무엇인가요? 그것을 댓글로 남겨주시면 어떤 언어로 어떻게 시작하면 좋을지 제가 아는 선에서 힌트를 드릴게요.
댓글
댓글 쓰기