코딩 처음 시작할 때 길을 잃지 않는 방법

얼마 전 지인이 코딩을 시작했다며 화면 가득 열린 강의 목록을 보여줬다. 일주일 동안 영상을 여섯 개나 봤는데, 막상 혼자 만들 수 있는 건 없다고 했다. 처음엔 누구나 비슷하다. 배울 게 너무 많아 보여서 열심히 듣는 것만으로도 앞으로 나아가는 기분이 들기 때문이다. 그런데 코딩은 손으로 직접 입력하고, 오류를 만나고, 고쳐보는 시간이 있어야 조금씩 익숙해진다.
만들고 싶은 것부터 작게 고르기
코딩을 시작할 때 가장 먼저 정할 건 언어보다 만들 결과물이다. 예를 들어 매달 지출을 기록하고 싶다면 합계를 계산하는 작은 프로그램이 출발점이 될 수 있다. 웹 화면을 꾸미는 게 재미있어 보인다면 자기소개 페이지 한 장이면 충분하다. 결과물이 보이면 지금 배워야 할 내용도 좁혀진다.
처음부터 일정 관리 앱처럼 기능이 많은 것을 고르면 중간에 막히기 쉽다. ‘할 일을 입력하면 목록에 한 줄 추가된다’ 정도로 줄여보자. 입력하기, 저장하기, 지우기 중 첫 주에는 입력하기만 완성해도 괜찮다. 작은 기능 하나가 실제로 움직이면 다음 기능을 붙일 이유가 생긴다.
언어 선택도 이 목표에 맞추면 된다. 브라우저에서 움직이는 화면을 만들고 싶다면 HTML과 CSS로 화면을 만들고 자바스크립트로 동작을 붙일 수 있다. 파일 이름을 바꾸거나 숫자를 계산하는 프로그램이 목표라면 파이썬으로 시작하기 편하다. 어느 쪽이 더 뛰어난지를 오래 고민하기보다, 지금 만들 물건에 필요한 도구를 하나 고르는 편이 낫다.
짧게 배우고 바로 바꿔보기
강의를 한 시간 들었다면 같은 내용을 한 시간 더 듣기보다 예제를 직접 바꿔보는 게 좋다. 버튼을 누르면 ‘안녕하세요’가 뜨는 예제를 배웠다면 문구를 바꾸고, 버튼을 두 개로 늘리고, 누른 횟수를 표시해보는 식이다. 따라 입력할 때는 쉬워 보였던 코드가 조금만 달라져도 헷갈린다. 그때 무엇을 이해했고 무엇을 놓쳤는지 드러난다.
처음 한 달은 하루 20~30분씩 주 4회 정도 시간을 잡아도 충분하다. 첫 10분에는 배운 내용을 다시 입력하고, 다음 15분에는 한 부분을 바꿔본다. 남은 시간에는 막힌 곳을 한 문장으로 적는다. ‘변수가 어렵다’보다 ‘숫자에 따옴표를 붙였더니 더하기 결과가 달라졌다’처럼 적으면 다음에 확인할 지점이 분명해진다.
중요한 건 공부 시간을 길게 채우는 일이 아니다. 짧더라도 매번 화면이나 출력 결과가 달라지는 경험을 만드는 것이다. 어제 만든 코드에서 글자 색 하나를 바꾸는 일도, 왜 그 줄을 고쳤는지 설명할 수 있다면 좋은 연습이 된다.
오류가 나면 한 번에 한 곳만 확인하기
코딩하다 보면 빨간 오류 메시지를 자주 만난다. 처음에는 내가 뭘 크게 잘못한 듯하지만, 괄호 하나가 빠졌거나 파일 이름이 다른 경우도 흔하다. 오류가 생기면 먼저 메시지에 적힌 줄 번호와 단어를 읽고, 방금 바꾼 부분부터 확인한다. 여러 줄을 동시에 고치면 어느 수정이 효과가 있었는지 알기 어렵다.
예를 들어 계산 결과가 12여야 하는데 102가 나온다면, 숫자 10과 2가 계산 전에 글자로 들어왔는지 확인할 수 있다. 화면에 버튼이 보이는데 눌러도 반응이 없다면 버튼 자체보다 클릭했을 때 실행할 코드가 연결됐는지 살펴볼 차례다. 예상한 결과와 실제 결과를 나란히 적어두면 문제를 훨씬 작게 볼 수 있다.
검색하거나 도구에 질문할 때도 ‘코드가 안 돼요’보다 사용한 코드, 기대한 결과, 실제 나온 메시지를 함께 적는 편이 낫다. 답을 찾은 뒤에는 그대로 붙여 넣고 끝내지 말고, 고친 줄을 다시 되돌려 오류가 재현되는지 확인해보자. 한 번의 실패가 다음에 알아볼 수 있는 단서가 된다.
작은 완성작을 남기며 다음 단계로 가기
입문 단계에서는 새 주제를 계속 늘리기보다 작은 결과물을 끝내는 경험이 중요하다. 자기소개 페이지라면 이름과 소개 문장, 연락 방법이 보이고 휴대전화 화면에서도 읽을 수 있으면 첫 버전으로 충분하다. 지출 계산기라면 금액 세 개를 입력해 합계가 맞게 나오는 것까지가 첫 버전이다. 기능을 더 넣고 싶어도 일단 여기서 한 번 멈추는 게 좋다.
완성한 뒤에는 처음 만든 모습과 마지막 모습을 비교해보자. 버튼 위치가 달라졌거나 잘못된 입력을 처리하게 됐다면 그게 배운 흔적이다. 코드 옆에 ‘무엇을 만들었는지’, ‘어디서 막혔는지’, ‘다음에는 무엇을 고칠지’를 세 줄만 남겨도 다음 작업을 시작하기 쉬워진다.
코딩을 오래 하려면 처음부터 빠르게 잘하려는 마음보다, 궁금한 것을 작게 만들어 확인하는 습관이 오래 간다. 화면에 문장 하나를 띄우는 일에서 시작해도 괜찮다. 내가 쓴 코드가 예상대로 움직이는 순간이 쌓이면, 다음에 만들고 싶은 것도 자연스럽게 떠오른다.
