프로그래머라면 윈도우를 사용하지 마세요!

Programmers, Don’t Use Windows!

작성자
발행일
2025년 10월 05일

핵심 요약

  • 1 전문 프로그래머는 유닉스 기반의 macOS를 사용해야 하며, 윈도우는 프로그래밍 작업에 부적합합니다.
  • 2 macOS는 POSIX 준수, 강력한 명령줄 도구, 통합된 개발 환경을 제공하여 효율적인 작업을 가능하게 합니다.
  • 3 유닉스의 '모든 것이 파일'이라는 추상화와 파이프라인 개념은 복잡한 작업을 자동화하고 조합하는 데 필수적입니다.

도입

저자는 5년 전 자신의 저서에서 "윈도우는 프로그래머에게 적합하지 않으며, 맥북을 사용해야 한다"고 주장했던 견해를 재확인하며 글을 시작합니다. 이 글은 덜 주관적이면서도 더 설득력 있는 방식으로 프로그래머에게 macOS 사용을 권장하는 내용을 다룹니다. 핵심은 윈도우를 사용하느냐, 아니면 전문 프로그래머가 되느냐의 양자택일이라는 강력한 메시지를 전달합니다.

이 글은 macOS가 프로그래머에게 우월한 이유를 유닉스 기반의 추상화와 도구의 관점에서 설명합니다.

macOS의 프로그래밍 이점

  • POSIX 준수: 유닉스 표준을 따르며 환경 일관성 보장.

  • 네이티브 도구: grep, awk, sed, ssh, make 등 핵심 유닉스 도구 기본 제공.

  • 통합된 컴파일러 툴체인: Clang, LLVM, git 등이 원활하게 작동.

  • 쉬운 패키지 관리: HomeBrew를 통한 간편한 설치.

  • 언어 환경 설정: Node, Python, Ruby, Go, Java 등이 PATH 문제 없이 작동.

  • 향상된 개발 경험: iTerm2, 빠른 Docker, SSH 키 통합, 예측 가능한 Git 동작.

저자는 명령줄 도구를 사용하지 않고 VS Code만 사용하는 이들을 “아직 프로그래머가 아닌 소비자”로 규정하며, 유닉스 기반 명령줄 인터페이스(CLI)가 제공하는 깊이 있는 상호작용의 중요성을 강조합니다.

유닉스와 윈도우의 근본적 차이

  • 유닉스: 1960년대 후반 벨 연구소에서 개발. “모든 것이 파일” 철학과 파이프라인 개념 도입. 다중 사용자, 다중 작업 시스템을 위해 설계.

  • 윈도우: CP/M, MS-DOS를 거쳐 발전. 초기에는 단일 사용자, 단일 작업 마이크로컴퓨터용으로, 유닉스와 같은 추상화 부족. Windows NT 이후 개선되었으나, 여전히 유닉스와는 다른 추상화 방식.

  • macOS: NeXTSTEP 기반으로 재탄생한 POSIX 준수 유닉스 OS. 아름다운 GUI와 유닉스 철학을 결합.

파이프라인의 중요성

유닉스 파이프라인은 작은 도구들을 조합하여 복잡한 작업을 효율적으로 수행합니다. git log 예시처럼, 코드 변경 분석 등은 파이프라인을 통해 자동화되며, 이는 IDE 플러그인으로 대체 불가능한 강력한 기능입니다. 많은 윈도우 개발자도 결국 WSL을 통해 유닉스 스타일 작업을 시도합니다.

결론

결론적으로, macOS와 윈도우 모두 일상적인 작업이 가능하지만, 전문 프로그래머에게 macOS는 유닉스 추상화를 통해 컴퓨터와 깊이 있게 상호작용할 수 있는 환경을 제공합니다. 명령줄 인터페이스(CLI)는 개발자를 '생성자'로 만들고, GUI는 '소비자'로 만든다고 주장합니다. CLI는 논리를 노출하고 자동화 및 조합을 가능하게 하는 반면, GUI는 제스처와 아이콘 뒤에 논리를 숨깁니다. 따라서 프로그래머는 50년간 다듬어진 유닉스의 규율 있는 추상화를 계승하는 macOS를 선택해야 한다고 강조합니다.

댓글 0

로그인이 필요합니다

댓글을 작성하거나 대화에 참여하려면 로그인이 필요합니다.

로그인 하러 가기

아직 댓글이 없습니다

첫 번째 댓글을 작성해보세요!