윈도우 vs 맥

윈도우 개발환경 삽질기를 통해서 그럭저럭 맥을 버리고 윈도우에 이주하는데 성공했고, 그 뒤로 계속 윈도우만 쓰는 중이다. 쓰다보니 장단점이 다양하게 느껴져서 한 번 정리를 해보기로 했다. 

키보드 단축키 체계

맥을 쓰는 동안 윈도우를 간간이 맛보면서 예상했던 것은 맥의 키보드가 인체공학적(?)으로 좀더 유리하긴 하지만 윈도우의 키보드도 장점이 많아서 쌤쌤이 아닐까 싶었다. 하지막 막상 윈도우에 적응해갈수록 맥의 단축키 체계가 낫다는 생각이 많이 들었다. 맥 단축키 체계의 장점은 다음과 같은 것들이다.

모든 앱에서 핵심 단축키가 동일하다는 것은 사실 당연한 거여야 하는데 윈도우에서는 당연하지 않다. 일단, 맥에서 공통으로 쓰이는 단축키들을 보자. 모두 Command와의 조합이다.

이 중에 윈도우도 일관성이 높은 것들이 있긴 하지만 복사, 붙여넣기 같은 흔한 동작조차도 윈도우에서는 예외가 존재한다. 터미널 류의 프로그램들은 Ctrl + C와의 충돌을 피하기 위해 Shift + Ins 등의 단축키를 사용하는데 그것도 프로그램마다 살짝 다르다. 리눅스도 이 문제는 마찬가지다. 설정 여는 단축키가 동일하다는 것도 매우 강력한 장점이다. 심지어 메뉴 위치까지 동일하다. 탭 닫기와 앱 종료하기도 일관성이 높아서 편리한데, 윈도우는 최근 맥과 유사하게 Ctrl + W와 Ctrl + Q를 지원하기 시작했지만 여전히 Ctrl + F4와 Alt + F4가 공존한다. 

그리고, 윈도우와 달리 대부분 일반키로 조합이 되기 때문에 눈으로 보지 않고 다 누를 수 있다. 여기서 잠시 용어를 정리하고 넘어가자면, 일반키는 영문자와 숫자에 백스페이스, 탭, 화살표, 엔터 등의 필수키를 합한 것을 지칭했다. 이 키들은 거의 모든 키보드에서 동일한 위치에 있고 모든 OS에서 동일한 역할을 한다. 이런 일반키를 제외한 나머지를 특수키라고 지칭할 것이며, 펑션키, Home, End, Page Up, Page Down, Insert, Delete 등을 말한다. 일반키는 위치와 역할이 항상 동일하기 때문에 손쉽게 누를 수 있다. 하지만 특수키는 노트북의 경우 위치가 다 제각각이라서 기억하기도 어렵고, 역할도 OS마다 다르다. 이런 특수키를 거의 사용하지 않기 때문에 맥북은 펑션키 이외의 특수키를 과감하게 빼버려도 별 문제가 없었고, 이제는 펑션키마저 거의(?) 없애고 있다.

윈도우에서 특수키가 장점이 없는 것은 아니다. 맥에서 조합해야 하는 것을 하나의 키로 누를 수 있다는 것은 분명 장점이다. 이 장점은 데스크탑의 시대에 표준화된 101키 호환 키보드를 쓸 때는 명확했다. 하지만, 노트북의 시대가 되면서 이 장점은 단점으로 바뀌었다. 윈도우에서 101키를 쓸 때 편리했던 Home, End, Page Up, Page Down 등이 노트북으로 오면서 도리어 불편한 이유는 무엇일까? 전술한 것처럼 특수키의 위치가 일관성이 없고 제각각인 것도 이유 중 하나지만 더 중요한 이유는 101키에서 누르기 쉬웠던 이유에서 찾을 수 있다. 101키에서는 특수키들이 적절한 여백 공간으로 분리되어 있었다. 이를테면 프로그램 종료 단축키 Alt + F4는 101키에서 F4와 F5 사이에 간격이 있기 때문에 보지 않고도 손으로 조금 더듬거리면 정확하게 F4를 누를 수 있다. 101키에서 화살표 위에 있는 6개의 특수키도 따로 분리되어 있기 떄문에 그 공간을 이용해서 정확하게 누를 수 있어서 Delete키가 그토록 편리했던 것이다. Home, End는 단독으로 누를 때도 있지만 Ctrl 등과 조합해서 쓰기도 했는데 그래도 편했던 것은 안 봐도 누를 수 있었기 때문이다. 하지만 노트북 키보드에서는 안 보고 누르기가 매우 어렵다. 정말 노트북 브랜드마다 아무렇게나 처박아놓았고, 인접한 키랑 구분이 안된다.

창 전환도 윈도우는 서브 윈도우도 다 같이 Alt + Tab으로 전환하는데, 맥은 Command + 탭으로는 앱 전환, Command + `은 앱 내 윈도우 전환으로 나뉘어 있다. 윈도우가 일관성이 높아서 편할 듯 싶기도 하지만, 작업할 때 보통 5~8개의 앱을 쓰고 그 중에 두세 개의 앱은 1~3개의 서브 윈도우를 쓰는 상황에서 10여개의 창 중에 내가 가고 싶은 곳을 고르는 것보다는 먼저 5~8개 중에 한 번 고르고 1~3개 중에 한 번 고르는 게 더 쉬웠다.

창 관리 방식 비교

창 전환 이야기가 나온 김에 좀더 살펴보자. 맥은 Command + Tab으로 앱 전환을 하는데, 전환 목록에 앱의 아이콘만 노출된다. 그리고 앱 하나에 서브 윈도우가 여러 개 열려 있더라도 앱 하나만 선택할 수 있다. 예를 들어, 파인더로 세 개의 폴더를 열어놓았더라도 Command + Tab에는 하나만 표시되고, 일단 파인더를 선택한 후에 Command + ` 키로 원하는 파인더 윈도우로 찾아간다. 반면, 윈도우 10은 Alt + Tab을 누르면 모든 단위의 창 목록이 뜬다. 그리고 목록에는 상단에 작게 앱 아이콘과 창 제목이 표시되고 그 아래에 크게 창 화면의 축소판이 표시된다. 여기까지 말로 설명을 들으면 아마 윈도우가 우월하다고 느낄 것이다. 맥은 2단계로 찾아가야 하고 단축키도 두 종류이며, 앱 전환을 할 때 아이콘만 보고 골라야 하는 반면, 윈도우는 훨씬 상세한 정보가 표시되며, 단축키도 하나로 모든 창을 순회할 수 있기 때문에 구조도 더 단순하다. 기능이 더 많은데 구조적으로 더 단순하기까지 하니 엔지니어링의 승리라고 생각하기 쉽다. 하지만, 실제 경험은 그렇지 않았다. 창의 축소판 그림을 보고 내가 가고 싶은 창이 어딘지 식별하는 것은 매우 어려웠다. 반면, 맥은 두 단계로 찾아가야 하긴 하지만 일단 앱을 고를 때는 아이콘이 워낙 선명하게 드러나기 때문에 매우 빨리 인지가 된다. Dock에서 이미 계속 보게 되는 아이콘이라는 점도 인지 속도를 높이는 것 같다. 사실 축소판은 sublime text에서도 신기하지만 쓸모 없었던 것 같다. 그리고, 맥은 어차피 앱만 고르기 때문에 축소판을 보여주는 것 자체가 의미가 없기도 하다.

전술한 것처럼 선택지의 개수도 영향을 생각보다 많이 준다. 선택지의 개수가 10개를 넘어가기 시작하면 일단 힘들어진다. 여러 종류의 작업을 펼쳐놓다보면 윈도우에서는 20여개 중에서 골라야 하는 경우도 흔하다. 하지만 맥에서는 정말 이것저것 많이 펼쳐 놔봐야 10개 남짓이었다. 개수가 많아질수록 축소판 그림은 더욱 더 단점으로 작용하기 시작한다. 일단 앱을 고르고 나면 그 안에서 서브 윈도우가 많은 경우는 드물기 때문에 금방 원하는 창을 찾아내게 된다.

윈도우의 태스크바와 맥의 독도 차이가 크다. 처음에 윈도우로 이사오고 나서는 태스크바의 기능이 참 좋았다. 맥과 달리 현재 사용 중인 윈도우, 실행 중인 윈도우가 구분되어 표시가 되며, 다운로드 등 뭔가 진행될 때는 앱 아이콘 전체가 프로그레스바의 역할도 한다. 마우스를 올려두면 서브 윈도우가 그루핑되서 축소판으로 보이며, 메뉴 + T로 태스크바의 항목을 하나씩 순회하면서 고를 수도 있다. 서브 윈도우가 여러 개일 때는 아이콘을 둘러싼 박스가 살짝 겹쳐진 것처럼 보여서 창이 여러 개임을 알 수 있다. 태스크바에 앱 이름을 보여주는 것도 가능하다. 그리고 크롬의 경우 멋진 기능이 하나 있는데, 다른 프로파일로 띄우면 각 프로파일의 사진을 크롬 아이콘 옆에 보여주고 각 프로파일별로 창을 그루핑해준다! 메뉴 +숫자 키로 몇 번째 태스크바 아이템으로 바로 점프도 가능하다. 기능 면에서는 막강한 느낌이다.

반면, 맥은 좀더 단순해보인다. 하지만 디테일이 꽤 좋다. 처음 윈도우에서 맥으로 넘어왔을 때는 그렇게 좋다고 느끼지 않았는데 윈도우로 돌아가니까 불편했던 것, 앱을 실행하면 독에서 아이콘이 톡톡 튀는 기능이다. 이게 그냥 앱을 실행할 때는 별 차이가 없는데, 큰 파일을 더블클릭해서 열 때 차이가 난다. 맥에서는 앱 실행이 오래 걸리더라도 바로 독에서 톡톡 튀기 시작하니까 내가 더블 클릭을 잘해냈다는 사실을 알 수 있는데, 윈도우는 아무 피드백이 없다. 그래서 엑셀로 같은 파일을 10개씩 띄우기 시도를 하기도 했다.

또 하나 좋은 점은 폴더를 등록해두고 폴더를 펼쳐 볼 수 있다는 것이다. 특히 다운로드 폴더를 부채꼴로 펼쳐 주는 건 너무 편하다. 이 두 가지 작은 기능은 즉각적인 사용성 개선을 가져왔는데, 윈도우 태스크바의 다양한 기능은 그닥 실질적인 이득이 없는 느낌이다.

메뉴가 창에서 분리되어 화면 상단에 고정되는 건 아직 장단점이 있는 것 같다. 어쨋든 맥은 독과 메뉴를 합쳐서 화면 세로폭의 상당 비율을 OS에 내줘야 한다. 윈도우는 좀더 작업 화면을 넓게 쓸 수 있다. 다만, 데스크탑 앱에서 점점 메뉴의 중요성이 줄어들고 있다는 점을 고려할 필요가 있다. 재미있게도 이 트렌드는 양쪽 모두에게 다른 종류의 장단점을 준다. 윈도우는 메뉴가 차지하는 영역이 사라져서 더욱더 메인 작업 영역이 넓어진다. 크롬처럼 메뉴를 아예 작은 버튼 하나 안에 처박아 두면 브라우징 영역이 좀더 넓어진다는 장점이 있다. 대신, 가끔이나마 메뉴를 써야 할 때 매우 불편하다. 맥은 무조건 메뉴 영역이 있어서 메뉴의 중요성이 줄어도 항상 상단 영역을 차지한다는 단점이 있지만, 가끔 메뉴를 쓸 때는 메뉴를 많이 쓰는 앱이든 적게 쓰는 앱이든 일관된 방식으로 쓸 수 있다는 장점이 있다. 점차적으로 윈도우의 장점이 중요해질 것 같긴 하지만, 맥은 트레이도 위에 있기 때문에 꼭 이 공간이 낭비되는 공간만은 아니다.

이 문제와 관련된 키보드 문제도 하나 있다. 윈도우에서 Alt 키는 이 메뉴를 여는 역할도 한다. 이 기능과 우측 버튼의 역할도 키보드로 할 수 있다는 점 덕분에 단축키가 할당되지 않은 명령도 키보드만으로 실행할 수 있다. 이건 단순 반복작업을 할 때 상당히 유용했었는데, 점점 메뉴의 역할이 축소되면서 이 기능의 필요성도 같이 줄어들고 있다. 과도기에는 Alt를 누르면 숨겨져 있던 메뉴바가 튀어나오기도 했는데, 나는 그 인터페이스가 꽤 마음에 들었었지만, 지금은 그 인터페이스가 드물어졌다.

전반적으로 윈도우는 좀더 다양한 기능을 갖추고 있어서 편리할 것 같고, 맥은 팬시하지만 그리 편하지는 않을 것 같은 느낌을 주지만, 실제 창 관리 방식의 사용성은 맥이 제법 큰 차이로 우세인 것 같다.

해상도와 폰트

윈도우에는 아주 훌륭해보이는 기능이 있다. 화면 전체의 해상도를 조절하는 것 뿐 아니라 해상도는 그대로 둔 채 폰트 등 UI 요소의 크기만 퍼센트로 조절할 수 있다.  텍스트, 앱 및 기타 항목의 크기 변경 라는 옵션이다. 레티나와 비슷한 해상도의 노트북이 많아지면서 기존 해상도로는 폰트가 너무 작게 보이는 문제를 해결하기 위해 등장한 기능인 듯 하다. 실제로 레티나급 해상도의 노트북을 그냥 100% 크기로 놓고 쓰면 글자가 너무 작기 때문에 이 기능은 나처럼 눈 나쁜 사람에게는 필수나 마찬가지인 기능이다. 여기까지만 보면 사람에 따라 커스터마이즈를 할 수 있으니 매우 좋은 기능인 것처럼 보인다. 눈 좋은 사람은 그냥 100%로 쓰면 화면을 넓게 쓸 수 있고, 나 같은 사람은 125%나 150%로 편하게 쓸 수 있으니 얼마나 좋은가.

그러나, 여기에는 여러 가지 문제가 있다. 가장 핵심적인 문제는 폰트 문제다. 윈도우 개발환경 삽질기에서 설명한 바 있는데, 폰트가 텍스트 크기 조절 옵션을 바꿀 때마다 렌더링되는 게 일정하지 않다. 확대 정도에 따라 글자가 다르게 일그러진다. 이것은 ClearType의 특성이라고 한다. 해상도가 낮은 스크린에서도 폰트가 선명하게 보이게 하기 위한 폰트 렌더링 방식인데, 고해상도에서도 같은 방식으로 렌더링을 하니까 폰트의 원래 디자인과는 다르게 나오는 것이다. 그래서, 일그러지긴 하지만 선명하긴 하다. 반면, 맥은 해상도에 상관 없이 가능한 한 폰트의 원래 디자인에 가깝게 렌더링하는 전략을 취한다. 그래서, 맥의 폰트는 어떤 스크린에서 보든 동일한 모양이 나오지만, 저해상도에서는 흐릿하게 보인다. 그런데, 맥은 레티나로 이 문제를 완벽하게 해결했다. 맥은 어차피 하드웨어를 같이 만드니까 가능한 해법이다. 이제 맥은 어떤 기기에서 보든 폰트가 원래 디자인대로 나오면서도 선명하다. 두 마리 토끼를 다 잡은 것이다. 맥 뿐 아니라 애플의 제품은 다 dpi가 비슷한 수준이라서 글자를 읽는 가독성이 매우 일정하다. 하지만 윈도우는 기기마다 제각각이라서 텍스트 크기 변경 옵션을 제공하지만, 맥처럼 최적화된 결과를 얻지는 못했다. 스크린 사이즈와 해상도 비율에 대한 표준화가 필요할 것 같다.

텍스트 크기 조절 기능의 문제가 하나 더 있다. 이 기능을 존중하지 않는 앱이 많다는 것이다. 아직도 옛날 개발툴로 개발하는 프로그램이 많다보니 이 기능이 동작하지 않는 경우가 많다. 특히 인스톨러들은 심각하다. 게다가, 국산 프로그램들은 폰트를 굴림으로 강제 지정해놔서 한국어 추가 폰트를 설치해두지 않은 경우는 폰트가 깨지기까지 한다. 도대체 폰트를 왜 강제지정해둔 것인가. 비단 국산 프로그램 뿐 아니라, 자바도 그런 짓을 해두고 있어서 자바 기반 프로그램 중에 한글이 깨지거나 무조건 굴림으로 나오는 경우를 많이 볼 수 있다. 공인인증서 류(?)의 프로그램에도 이런 경우가 제법 있다. 역시 발전 없는 국내 보안 업체들.

앱 찾고 실행하기

개발 환경

게임