윈도우도 훌륭한 개발머신이라구

Posted by 엘키의 주절 주절 on January 18, 2025

개요

한국에서 많은 웹이나 앱 개발자의 많은 수가 맥을 선택하고 있다.

나 역시 2018년 이후 맥을 병행해서 쓰고 있고, 특정한 시기에는 온리 맥도 썼던 입장에서 맥의 장점도 이해하고 공감하는 부분이 있다.

특히 인텔 맥 때의 애매함을 이겨낸 애플 실리콘 칩 이후의 맥은 ARM 데스크탑의 시대를 열었고 그 만족도는 나 역시 체감하고 있다.

M1 맥북 에어는 교체의 필요성을 못느낄 만큼 만족하고 있고, 특히 여행이나 집 안에서 가벼운 코딩이나, 타이핑에서 아주 잘 쓰고 있다.

개인적으로 오래 써오던 리눅스 미니 데스크탑도 맥미니로 교체하고 싶을 정도니 말이다.

나는 게임 개발자로써 살아온 커리어도 길고, 게이머로써의 아이덴티티도 강하다 보니 윈도우가 좋은 측면이 있다.

하지만 개발에서 아쉬움이 있었다면 윈도우를 메인 데스크탑으로 쓸 이유가 없는 상황이다.

이미 맥북만 써서 개발했던 기간도 5년이었고, 맥과 윈도우 (+WSL), 리눅스 데스크탑 OS (노트북으로) 사용한지도 8년이 넘었는데, 사실 어떤 OS를 써도 크게 이질감이 들지 않게 적응한 상황이기 때문이다.

이렇게 다 사용해본 입장에서 종종 나오는 논란에 대해서 이야기해보고자 한다.

논란

맥은 리눅스가 아니다

종종 리눅스 서버 개발에 친화적이라는 이야기를 하는 사람을 자주 본다.

맥은 Darwin 커널 기반의 별개의 OS지 리눅스가 아니다.

리눅스 개발 환경과 유사한 점은 유닉스 라이크라고 보는 것이 맞고, 이로 인해 꽤 많은 차이가 나서 동일한 동작을 보장하지 않는다.

WSL2

WSL(Windows Subsystem for Linux) 은 리눅스 호환률이 macOS보다 더 높은 편이다.

이는 WSL의 구조와 설계 방식이 리눅스와 직접적인데, WSL2는 리눅스 커널을 실제로 실행한다.

WSL1은 에뮬레이션 방식 이었지만, WSL2는 커널이다 커널.

당연히 훨씬 더 높은 호환성을 보여준다.

리눅스 데스크탑은 어때?

리눅스 데스크탑을 쓰면 여러가지 지식이 늘어난다.

각종 오류 (…) 발생 시 커맨드 라인 명령어를 써서 해결 해야 되는 상황들, 그리고 부족한 레퍼런스, 정식으로 지원되지 않은 수많은 앱 (다수의 앱이 윈도우나 맥 온리 또는 윈도우와 맥을 지원한다)이 개발자로써의 나를 강하게 성장시켜준다. (강해지고 싶다면 오라)

마치며

조만간 리눅스 이야기를 좀 더 하게 되겠지만, 개인적으로 리눅스에 익숙해진 뒤에도 여전히 윈도우를 쓰는 이유에 게임이 무관하지 않다.

다만 콘솔 켜듯이 충분히 윈도우도 스위칭해서 쓸 수 있음에도 개발 머신으로도 쓰는 것은, 철저히 윈도우가 개발 머신으로 훌륭하기 때문이다.

특히 많은 사람들이 불편을 말하는 포인트 대다수가 WSL2+VS Code를 연동하면 해결되는 이슈이기도하고, 윈도우를 사용하면서 발생되는 문제도 과거에 비하면 매우 줄어들기도 했다.

사실 개인적으로는 지금은 많이 해소 됐지만 m1 맥북 넘어오면서 아키텍쳐 변경으로 인한 호환성 이슈가 꽤 길기도 했고, 그러한 문제 이외에도 나는 리눅스 서버 개발에 더 편한 경험을 못했는데, 감안할만한 수준이라는 점은 나 역시 공감한다.

또한 프론트엔드 개발자라면 맥 OS를 쓰면서 겪는 이슈나 문제가 없을 가능성도 높고 맥의 장점 위주로 체감할 확률이 높다는 것 역시 인정하한다.

다만 맥을 써야만 개발이 편하다는 편견 대신 윈도우가 개발 머신으로 부족하거나 문제가 있는게 아니고 충분한 선택지이며, 리눅스 데스크탑도 쓸만하다는 이야기를 하고 싶었다.