입문

프로그래밍 공부를 시작하는 법: 입문자를 위한 실용 로드맵

어떤 언어를 고를까? 어디서 배울까? 막히면 어떻게 할까? 첫 90일을 위한 단계별 가이드.

프로그래밍을 배우기로 마음먹은 사람들 대부분이 포기하는 이유는 어려워서가 아닙니다. 선택지가 너무 많기 때문입니다. 수십 가지 언어, 수백 개의 강의, 그리고 어디에나 있는 서로 엇갈리는 조언들. 이 글은 모든 선택지를 늘어놓지 않습니다. 대신 첫 90일 동안 따라갈 하나의 분명한 길을 제시합니다. 그다음은 스스로 정하면 됩니다.

1. 무엇을 만들고 싶은지 정하세요

올바른 질문은 “어떤 언어가 가장 좋을까?”가 아니라 “나는 무엇을 만들고 싶을까?”입니다. 언어는 도구일 뿐이고, 목표가 도구를 고릅니다.

  • 웹사이트와 웹 앱: HTML과 CSS로 시작해서 JavaScript로 넘어가세요.
  • 데이터 분석, 자동화, AI: Python으로 시작하세요.
  • 모바일 앱: Android는 Kotlin, iPhone은 Swift, 둘 다 만들려면 Flutter(Dart).

아직 잘 모르겠다면 Python을 고르세요. 거의 평범한 영어 문장처럼 읽히고 여러 분야에서 쓰이기 때문에, 나중에 어느 방향으로 가든 배운 것이 헛되지 않습니다.

2. 1~30일: 기초만 배우세요

이 단계에서는 다음 개념만 있으면 충분합니다. 거의 모든 언어에 공통으로 있는 개념들입니다.

  1. 변수와 데이터 타입(숫자, 텍스트, 리스트).
  2. 조건문: if와 else.
  3. 반복문: for와 while.
  4. 함수: 다시 쓸 수 있는 코드 만들기.
  5. 오류 메시지를 두려워하지 않고 읽어 내기.

위 내용 대부분이 들어간 작은 Python 예제입니다.

python
def grade(score):
    if score >= 90:
        return "우수"
    elif score >= 60:
        return "통과"
    else:
        return "복습 필요"

for s in [95, 72, 40]:
    print(s, grade(s))

이 코드의 모든 줄을 이해했다면, 프로그래밍의 핵심을 이해한 것입니다. 나머지는 시간이 지나며 쌓이는 세부 사항입니다.

3. 30~60일: 작은 프로젝트를 만드세요

대부분의 입문자가 여기서 ‘튜토리얼 지옥’이라는 함정에 빠집니다. 강의를 연달아 듣고, 볼 때는 다 이해한 것 같은데, 빈 화면 앞에서는 아무것도 못 하는 상태죠. 해결책은 직접 만들어 보는 것뿐입니다. 이 단계에 어울리는 아이디어입니다.

  • 간단한 계산기.
  • 숫자 맞히기 게임.
  • 파일에 저장되는 할 일 목록.
  • 다운로드 폴더를 파일 종류별로 정리하는 스크립트.
규칙: 강의를 한 시간 봤다면, 직접 코드를 두 시간 쓰세요.

4. 60~90일: 현업에서 쓰는 도구

  • 코드 에디터: VS Code. 무료이고 모든 언어에서 쓸 수 있습니다.
  • Git과 GitHub: 작업의 버전을 저장하고 공유하는 도구입니다. 작은 프로젝트도 전부 GitHub에 올리세요. 나중에 그게 포트폴리오가 됩니다.
  • 터미널: 기본적인 이동 명령어만 익히세요. 지금은 그 이상 필요 없습니다.
  • AI 도우미: 오류와 개념을 설명받는 데 쓰고, 코드를 대신 쓰게 하지는 마세요. 이해하지 못한 답을 복사했다면 아무것도 배우지 못한 것입니다.

5. 시작하기에 충분한 무료 자료

  • freeCodeCamp: 인터랙티브 실습과 수료증이 포함된 완전 무료 학습 과정.
  • 하버드 CS50: 최고의 컴퓨터 과학 입문 강의이며, 완전히 무료입니다.
  • 언어 공식 문서: 예를 들어 Python 공식 사이트의 튜토리얼. 처음엔 어렵게 느껴지지만 일찍 익숙해지는 게 좋습니다.

6. 막혔을 때는 이렇게 하세요

아무것도 모르겠다는 느낌이 드는 날이 분명히 옵니다. 지극히 정상이고, 모든 프로그래머가 겪는 일입니다. 다음 순서로 해 보세요.

  1. 오류 메시지를 끝까지 읽으세요. 답이 이미 그 안에 있는 경우가 많습니다.
  2. 문제를 한 줄씩 소리 내어 스스로에게 설명해 보세요.
  3. 오류 메시지 문구를 그대로 검색하세요.
  4. 한 시간 정도 쉬었다가 돌아오세요. 쉬고 나면 답이 떠오르는 경우가 얼마나 많은지 놀라실 겁니다.

정리

목표를 정하고, 언어 하나를 골라 90일 동안 꾸준히 하세요. 기초를 배우고, 작은 프로젝트를 직접 만들어 GitHub에 올리세요. 프로그래밍은 운전처럼 연습으로 익히는 기술입니다. 남이 하는 걸 보는 것만으로는 배울 수 없습니다.

앞으로 satarcode의 글에서 여기서 소개한 프로젝트 몇 가지를 단계별로 함께 만들어 보겠습니다.

함께 읽기: 입문자를 위한 최고의 프로그래밍 언어: 솔직한 비교, 12달러 도메인과 무료 호스팅으로 블로그를 만든 방법