이 블로그는 하나의 긴 아카이브보다 몇 개의 학습 경로로 보는 편이 읽기 쉽습니다.

먼저 알고 싶은 것을 고르면 됩니다.

시스템 감각을 키우고 싶다면

아래 순서로 읽어 보세요.

  1. 컴퓨터 구조
  2. 리눅스 내부 구조
  3. 컴파일러

컴퓨터 구조에서 하드웨어의 실행 모델을 잡고, 리눅스에서 운영체제가 그 기계를 관리하는 방식을 봅니다. 컴파일러 시리즈는 소스 코드가 어떤 표현과 변환을 거쳐 실행되는지 연결해 줍니다.

언어와 런타임을 이해하고 싶다면

다음 두 시리즈부터 시작하세요.

컴파일러 시리즈는 오토마타, 파싱, AST, IR, 최적화, 코드 생성을 다룹니다. Python 시리즈는 일상적인 코드에 더 가까운 곳에서 컨테이너, 제너레이터, 클래스, 디스크립터의 동작 원리를 설명합니다.

조금 가볍게 시작하고 싶다면

Python 심화 강좌부터 읽는 편이 좋습니다. 실무 프로그래밍 경험은 가정하지만 다른 시리즈만큼 낮은 수준의 배경지식을 요구하지는 않습니다.

그다음 리눅스 내부 구조로 넘어가면 언어의 동작을 프로세스, 메모리, 파일, 시스템 콜과 연결할 수 있습니다.

전체를 한 흐름으로 읽는다면

현재 공개된 내용을 기준으로는 아래 순서가 자연스럽습니다.

  1. Python 심화 강좌
  2. 컴퓨터 구조
  3. 리눅스 내부 구조
  4. 컴파일러

다른 시리즈도 준비하고 있지만, 이 페이지에는 지금 바로 읽을 수 있는 글만 연결했습니다.