2018년 11월 19일 월요일

블로그 이전​


https://www.saturnsoft.net 로 이전 합니다.


기존 포스트나 커멘트는 그대로 둘 생각입니다만 이 사이트는 더 이상 업데이트하지 않고 새로운 포스트는 위 사이트로 가 주세요.​ 커멘트를 제외한 블로그 포스트 내용은 새 사이트에도 이전되어 있습니다.​

This site is no longer updated. Please visit https://www.saturnsoft.net instead.

2018년 4월 2일 월요일

클라우드플레어의 ​DNS 리졸버 1.1.1.1


4/1에 만우절 조크가 아니라 Cloudflare 가 퍼블릭 DNS 리졸버로 사용할 수 있는 1.1.1.1 (그리고 1.0.0.1)을 발표하였습니다.

https://blog.cloudflare.com/announcing-1111/

PC나 모바일의 경우 직접 DNS 리졸버를 변경해서 사용하면 됩니다. 공유기를 쓰는 경우라면 공유기의 DNS설정을 바꾸어도 되겠지요.

종종 그냥 DNS 서버라고 하는 경우가 있어 헷갈리는데, 일반적으로 DNS 서버라고 하면 authoritative DNS 서버를 말하고 해당 도메인의 마스터 정보를 갖고 있는 DNS서버를 말합니다. DNS 리졸버란 네트워크 설정시에 사용할 수 있는 DNS IP 주소로, 질의한 이름의 IP주소를 찾아서(resolve) 반환해 주는 역할을 합니다.​ 1.1.1.1은 바로 이 리졸버 설정에 사용할 수 있는 주소 입니다. 보통 집에서 인터넷을 쓰는 경우 ISP에서 기본 값을 자동으로 내려 주지만, 공유기 등에서 ​수동으로 설정할 수도 있습니다.​

1.1.1.1의 ​특징이라고 한다면
  • 외우기 쉬운 주소
  • IPv6 지원 (2606:4700:4700::1111, 2606:4700:4007::1001)
  • 프라이버시 (로그는 24시간 내로 지워짐)
  • DNS over TLS, DNS over HTTPS 등 보안 관련 ​기능 지원
인데, 요즘에 이런 DNS리졸버 서비스들이 몇 ​있습니다. 1.1.1.1 이외에도 유명한 것이​
약간 외우​기는 어렵지만 OpenDNS도 있지요.
왜 기억하기 쉬운 DNS 서비스가 좋냐 하면 고정IP로 네트워크 설정할 때 DNS 리졸버를 넣어야 하는데 DHCP가 아니라면 기억하기 쉬운 IP가 좋으니까요. 국내 IT업계 종사자라면 KT의 168.126.63.1 같은걸 외우고 계시는 분들도 많을 겁니다.​

다만 이런 서비스는 모두 애니캐스트 기반이라 외부 네트워크의 피어링이 어려운 중국 내에서는 잘 동작하지 않을 수 있는데, 중국 내부라면 아래 서비스가 중국 내에서 애니캐스트 기반으로 동작 합니다. 더 있을지도 모르겠네요.
또한 IP주소 ​1.x는 A class 에 속하는 영역이라 어떻게 확보했을까 하는 궁금증이 있었는데 해당 주소를 관리하는 APNIC과의 연계로 가능했던 것이네요. 자세한 사항은 APNIC의 관련 블로그 글을 읽어 보시면 됩니다.​​

주의 사항이라고 하면,
  • edns-client-subnet extension (privacy 와 충돌하는 부분이 있으니 향후 추가될 지​ 모르겠지만) 지원이 없는 관계로 애니캐스트 기반이 아니라 유니캐스트 기반의 ​CDN (Akamai, CDNetworks 등)이라면 로드밸런싱에 문제가 있을 수도 있으니, 혹 많이 가는 사이트가 느려 진다면 설정 전후로 테스트를 해 보시기 바랍니다. 해당 옵션의 영향에 대해서는 예전에 썼던 이 글을 읽어 보시면 도움이 됩니다​.
  • 1.1.1.1 은 일부 ISP에서 차단/하이재킹이나 Captive Portal 등​ 각종 이상한 용도로 사용되는 경우가 있어서 DNS lookup 에 문제가 발생할 수 있습니다. 따라서 기본 리졸버를 바꾸기 전에 반드시 테스트를 하는 것이 좋습니다. 이게 아마 1.x 가 오래동안 일반 서비스에 사용되지 않다 보니 Private 영역이 아님에도 불구하고 Private처럼 쓰이는 경우가 있어서 그런 것으로 생각됩니다.​
한국 기준으로 하면 좋은 점도 있는데, OpenDNSGoogle Public DNS의 경우 한국에는 POP이 없어서 일본이나 대만으로 연결되기 때문에 레이턴시가 40-60ms 정도 추가 됩니다.  1.1.1.1의 경우 클라우드플레어가 한국에 POP이 있으므로 매우 빠르게 연결이 될 수 있습니다.

기존에 DNS서버를 변경해서 쓰고 있거나, 새로운 서비스에 흥미가 생긴 분들은 한번 도전해 보시는 것도 좋겠네요. https://1.1.1.1 에 가시면 기본 설명이 되어 있습니다.​

p.s. 1.0.0.1 은 많은 경우 https://1.1 로 줄여 쓸 수 있다고 하네요. IPv6주소는 중간에 0 이 연속되면 줄여 쓸 수 있는데 v4 도 되는 줄은 몰랐습니다.​

2018년 3월 8일 목요일

효우게모노 25권 (완)

대망의 효우게모노 완간.

사진은 1권.

1월에 나온 것 같은데 이제 보았다. 만화 전체를 일본어로 본건 이게 몇번째 되긴 하는데 이건 현대어가 아니라 특히 어려워서 (전국시대물임. 시마즈가는 사투리가 심해서 그런지 그냥 뱀꼬리처럼 표기하는 일도 있지만) 고생하긴 했는데 정발이 이제 5권인가 그럴테니 완간될지도 불분명하고...

전에도 쓴적 있는것 같은데 이 책은 특히하게도 전국시대물이지만 오다 노부나가, 토요토미 히데요시, 도쿠가와 이에야스와 같은 유명한 다이묘나 기타 유명한 인물이 주인공이 아니라 다도 등 예술을 좋아하는 스키모노(数寄者)인 전국무장 후루타 시게노리 (만화에서는 관직명을 따라서 오리베라고 주로 부르지만)가 주인공이다. 무력은 0에 가깝지만 센리큐 등의 예술인을 만나면서 자신 안에 숨겨진 예술에 대한 탐구와 심미안 (그리고 욕심)을 뜨게 되면서 센리큐 사후에 최고권력자 밑에서 다도를 포함한 예술 전반을 관장하면서 벌어지는 여러가지 사건들이 전국시대의 여러 주요 사건을 따라서 적절히 만화같은 상황으로 펼쳐진다. 오리베는 실존 인물이고 실제 다도의 권위자이기도 하므로 픽션같은 넌픽션으로 볼 수 있겠다.

오리베는 오다 - 도요토미 - 도쿠가와 3대를 모두 섬기지만, 여기서의 인간 관계는 권력을 기준으로 한 것이 아니라 스키모노인가 아닌가 (즉 예술을 이해하는가)로 결정이 된다. 전국무장 중에도 다도나 예술에 관심이 있는 사람들을 중심으로 일이 주로 벌어지는데, 최고권력자를 따르기도 하지만 그들과 양보할 수 없는 것들 (주로 예술 관련)로 대립하기도 한다. 특히 대립하는 것이 초반의 히데요시, 이시다 미쯔나리 그리고 도쿠가와 이에야스와의 갈등은 결국 오리베를 죽음에 이르게 한다. 25권의 후루타의 마지막 장면 (실제로도 모반 혐의로 할복)은 아무래도 넌픽션이지만 애초에 노부나가의 죽음이 매우 판타지스러웠는지라 그냥 실소로 넘어갈 수 있을듯. 근데 오리베는 매우 지고의 예술을 추구한다기 보다 (그점이 스승인 센리큐와 다은 점) 해햑이 결합된 B급 예술 (작중에서는 을)을 추구하는지라, 격식 중심이기 보다는 재미 중심으로 예술을 보다 보니 작중에서 여러모로 좌충우돌을 벌이는데 그 점이 이 만화의 재미있는 점이다.

다도가 주 소재이고 전국시대 후반부 약 50년을 다루다 보니 임진왜란 등도 어느정도 묘사가 되는데 (황윤길, 김선일과 만났을 때의 에피소드 및 이순신 등장 등) 아무래도 당시에 조선에서 온 다기를 최고로 치는 만큼 흥미있는 묘사들이 몇 있다.

넌픽션인만큼 실제 인물및 관련 에피소드들이 계속 나오는데 약간 궁금해서 찾아보면 정설은 아닌 것들을 채용한 것이 많아서 이걸 역사책의 관점으로 보면 안되지만 또 그렇다고 아주 황당한 걸 갖다 붙이지는 않았으니 그점이 아슬아슬한 매력이라 볼 수 있다. 가령 노부나가가 자살인지 암살인지, 도요토미 히데요리는 살아남았는지 아닌지 등등.

전국무장과 다기의 관계는 사실 게임 노부나가의 야망 무장풍운록을 하면서 처음 접했는데 (게임 내에 다기가 아이템으로 등장하고 하사하면 충성심이 팍팍 오른다. 종종 리큐 선생이 다녀가기도 하고) 그래서 알지 못했으면 아마 읽지 않았을 것 같은 작품.

p.s. 25권 띠지를 보면 실사화 예정이라고 한다. 보통 일본 애니를 실사화하면 그닥 품질이 좋지 않았던게 사실인데 이건 애초에 대하드라마 스타일로 하면 나름 괜찮을듯.
 

2018년 2월 26일 월요일

번역: 리눅스에서 Go를 스크립트 언어로 사용하기

이걸로 세번째군요.

리눅스에서 Go를 스크립트 언어로 사용하기
https://blog.cloudflare.com/using-go-as-a-scripting-language-in-linux-ko/

2018년 2월 6일 화요일

번역: Rust 로 복잡한 매크로를 작성하기: 역폴란드 표기법​

하나 더 번역 했습니다.

Rust 로 복잡한 매크로를 작성하기: 역폴란드 표기법​
https://blog.cloudflare.com/writing-complex-macros-in-rust-reverse-polish-notation-kr/

Rust는 생소한 언어이고 이건 또 매크로를 다루는 내용이라 더 생소하긴 하지만... Rust는 지속적으로 관심가져볼 만한 주제인것 같네요.

2018년 1월 17일 수요일

번역: SYN 패킷 처리 실제​

업데이트 (1/19/2018)

이 글은 회사 공식 블로그에 게시 되었습니다. 중복을 피하기 위해서 이 포스트의 글은
아래 링크에서 읽어 주세요.
https://blog.cloudflare.com/syn-packet-handling-in-the-wild-kr/

2017년 11월 25일 토요일

아이폰X

기존에 쓰던 6이 물에 빠져서 5로 간간히 버티고 있다 드디어 아이폰X로 갈아타게 되었습니다. 모델번호가 두배가 된만큼 기대도 큰데 써본 소감을 간단히 정리하면...

일단 5대비 무지 빠릅니다. 5가 2012년 출시 제품이니 이건 당연할 거고, 카메라는 포트레이트 모드가 대박이네요. 그리고 라이브포토에서 소리도 녹음되는줄 몰랐습니다. 근데 이건 기존 시리즈에도 있는 것이라, 기존 대비 크게 다른 점은 페이스ID를 통한 인증과 홈버튼이 없어졌다는 점일 것입니다.

페이스ID는 실제 셋업해 보면 별 딜레이를 (아주 빠르게 열어 보려면 약간의 대기시간이 있는데 실 사용에 지장 있을 수준은 아닙니다) 거의 느낄 수 없고, 약간의 각도가 있어도 잘 열리는데 가령 차에서 네비용으로 옆에 달아두었을 때에는 얼굴과 직선으로 되어 있지 않아도 잘 열립니다. 터치ID의 대용이 되는데 시티은행 앱이나 뱅크오브아메리카는 이미 페이스ID로 로그인 가능하고, 국내 은행은 역시 좀 기다려야 할 것 같네요. 터치 ID는 사실 쳐다보지 않아도 된다는 점에서 꼭 봐야 한다는 건 약간 불편할 수 있겠네요.​

이보다는 홈버튼이 제거된 것이 UI적 측면에서는 더 큰 변화라 할 수 있겠습니다. 물리 버튼이 없고 애초에 베젤도 매우 얇아서 전면은 거의 화면만 보이게 되었습니다. 많이 지적되는 M자형 탈모...는 생각보다 거슬리지 않습니다. 앱에서 쓰는 화면이 잘린 것도 아니고 상단 ​상태바의 여러 아이콘들이 양쪽으로 갈라져 배치되어 있고 칸이 없다 보니 이통사 이름같은건 기본으로 보이지 않는 문제점이 있는데 실 사용에는 거슬리는 수준이 아닙니다.

홈버튼이 없는 대신 동일한 동작은 기기 아래에서 위로 쓸어올리는 형식으로 변경 되었고 기존에 그 방법으로 부르던 제어 센터는 위에서 이야기한 대로 우상단에서 쓸어 내리는 방식으로 변경이 되었습니다. 이건 오히려 좋은데 왜냐하면 우상단이라는 명확한 위치가 있어서... 그리고 ​소소한 변경 중에 앱 목록 제어가 있는데, 홈버튼 동작 같이 아래에서 위로 쓸어 올린 후 약간 그대로 대기하면 앱 목록이 나옵니다. 목록은 좌우로 쓸어 볼 수 있는데, 기존에 앱 종료하는 동작이 위아래​로 던지는 거였는데 이게 없어지고 해당 앱 스크린샷을 누르고 있으면 좌상단에 - 표시가 나오고 그걸 클릭하는 2단계로 바뀌었습니다. 왜 그걸 바꾸었는지 잘 모르겠네요. iOS는 사실 앱 종료라는게 필요 없긴 하지만 가끔 쓸 때가 있어서 (특히 회사에서 테스트 용으로...) 한단계 더 늘어난 건 좀 불필요해 보입니다. 이건 업그레이드로 해결 되었으면 좋겠네요.

그 외에는 별 불만 사항 없고 좋습니다. 아이폰5는 iOS 10 까지만 업그레이드가 되는지라 iOS 11 을 폰에서 처음 써 보는 것도 좋은 경험이고요. 버그가 많다고 하는데 딱히 접한 적은 없고 제어센터가 좀 난잡해 보이긴 합니다.

위 두가지의 급격한 변화 때문에 실험작 취급 받긴 합니다만 전반적인 첫인상은 매우 좋습니다. 그렇다고 향후 10년의 미래다... 라고 이야기 하기에는 안드로이드에 이미 유사한 변화가 많은지라 쉽게 이야기하기는 어려운데, 위와 같은 ​실험적인 시도를 사용자 경험에 불편한 변화 없이 잘 반영한 점은 역시 애플이라 생각이 듭니다.

2017년 2월 14일 화요일

HTTPS로​ 업그레이드하기​

크롬이 ​최근 업데이트에서 예고한 대로 HTTP 페이지에 암호 입력 폼이 있을 경우 안전하지 않다는 경고를 주소창 앞쪽에 붙이고 있습니다.


우리나라에서는 알고 있었는지 모르고 있었는지 모르지만 크롬 업데이트 (한국의 크롬 브라우저 점유율은 많이 높아져서 ​50% 정도 라고 합니다) 이후 주로 네이버 홈 페이지를 중심으로 기사화가 되고 있습니다.


한겨레 기사를 바탕으로 한 아래와 같은 반론 글도 접할 수 있고요.


HTTPS 로 업그레이드하기

국내에는 주로 웹사이트를 HTTP로 제작하고 HTTPS의 경우 비용이나 성능 등의 문제를 들어 꼭 필요한 부분 (로그인, 결제 등)만 HTTPS 처리를 하는 것이 일반적인데 비해, 주로 영미권에서는 도청이나 검열 문제를 들어 사이트 전체를 HTTPS화하는 움직임이 이미 몇년전부터 있어 왔고, 크롬의 업데이트도 그런 이동을 가속화하고자 하는 취지가 아닌가 합니다.

성능 저하에 대한 우려


SSL/TLS의 성능 문제에 대해서는 아래 사이트에서 많은 내용을 찾아볼 수 있습니다.


현재로서는 적당히 좋은 하드웨어를 사용하는 경우 SSL화로 인한 CPU 부하는 1%, 네트워크에 추가로 전송되는 데이터는 2% 정도라고 합니다. 서버 하드웨어의 경우 CPU에서 지원하는 하드웨어 가속 기능 등을 충분히 활용할 경우라 볼 수 있겠습니다.

따라서 성능의 경우 현재는 많은 부분이 선입견이라 할 수 있고, 실제 문제는 다음과 같은 점에 있지 않을까 합니다.

  • 신규로 TLS를 설정하는 번거로움
  • 인증서 구매 및 정기적으로 업데이트하는 번거로움

각각의 경우에 대해서 요즘 많이 이용되는 방법을 알아보도록 하겠습니다.​

신규로 TLS를 설정하는 번거로움

신규 TLS 설정은, 일단 웹서버에 TLS 기능을 넣는 것부터 시작해서, 웹사이트가 100% TLS에서 잘 동작 하는지, HTTP 로 접속하는 경우 자동적으로 HTTPS로 리다이렉트가 되는지, 주된 사용자 계층에서 접속에 문제가 없는지 확인하는 등등의 작업이 포함 됩니다.

TLS 의 최근 이슈는 주로 보안 관련인데, OpenSSL을 사용하는 경우 업데이트가 최신 버전까지 되어 있는지 확인 하고, 설정 후에 꼭 ssllabs 를 이용해서 사이트의 TLS 보안 수준을 확인 하는 것이 좋습니다. A+ 로 만드는 것이 최종 목표이지만 이용자 환경에 따라 그렇지 못한 경우가 있다는 점도 주의해야 할 것입니다.


테스트 할 사이트는 인터넷 접속이 가능해야 하며, 공개 기록을 남기지 않으려면 ​Hostname 아래에 있는 체크 박스를 꼭 체크 하도록 하세요.

TLS 설정에는 여러가지 옵션이 있고 Cipher List 등, 웹 서버별 설정이 번거로운 점이 많습니다. 일단 오픈 소스 웹 서버 (nginx, lighttpd, apache 중 하나)를 사용한다면 일단 아래 사이트의 내용을 복사해서 쓰세요.

Cipherli.st Strong Ciphers for Apache, nginx and Lighttpd

위 사이트의 설정 파일을 사용한다면 대부분 문제는 없습니다만 (SSLLabs 에서 A+ 받을 수 있는 수준입니다) 반대로 오래되거나 취약한 암호 알고리즘 등을 모두 배제하고 있으므로 오래된 브라우저 (XP + IE 6 등)에서는 아예 접속이 안될 수 있습니다. 이점 유의해서 작업 하면 됩니다.

인증서 구매 및 정기적으로 업데이트하는 번거로움

사실 이게 더 문제일 수 있는게, 비용도 그렇지만 정기적으로 (보통 1년) 업데이트를 해야 하기 때문에 관련 예산이 확보되지 못한 공공기관이나 소규모 회사, 또는 별도의 웹사이트 관리자가 없는 경우 라면 인증서가 만료된 이후에도 업데이트가 제때 이루어지지 않을 수 있으므로 더 문제가 생길 수 있습니다. HTTP 로 만들어진 사이트면 서버만 돌아가고 해킹만 당하지 않으면 몇년동안 방치해도 괜찮을 수 있지만 HTTPS로 바꾸면 정기적인 인증서 관리는 필수가 됩니다.

웹사이트용 SSL인증서는 인터넷에서 쉽게 구매할 수 있지만 역시 비용이 문제가 되고, EV Multi Domain과 같이 추가 비용이 드는 경우도 있습니다.

여기에 대한 대안으로 StartSSL과 같은 ​무료 인증서 발급 기관도 있었으나 보안상 문제가 있어서 지금은 사용하지 않는 것이 좋으니, 직접 구매해서 설치하는 경우를 제외하면 다음과 같은 선택지가 있습니다.
  • 클라우드 업체에서 제공하는 인증서를 이용하기
  • CDN 업체에서 제공하는 HTTPS 서비스를 이용하기
  • Let's Encrypt 를 이용하여 직접 발급 받기

클라우드 업체에서 제공하는 인증서를 이용하기

AWS 의 경우 자체적인 인증서 발급 서비스를 이용할 수 있습니다. ELB와 CloudFront 서비스에 붙이고 웹사이트 주소를 바꾸는 방식이 되겠지요. 다만 자체 발급되는 만큼 직접 키를 다운받을 수는 없으므로 다른 서비스에 이용하거나 자체 웹사이트에 적용은 불가능합니다.

CDN 업체에서 제공하는 HTTPS 서비스를 이용하기

CDN은 웹사이트 앞단에 존재하기 때문에 오래 전부터 SSL서비스를 제공해 왔습니다. 일정 규모가 있는 CDN회사는 모두 SSL서비스를 하고 있으니, 이용하고 있는 CDN회사가 있다면 직접 문의해 보시면 SSL에 대한 해결책을 얻을 수 있을 겁니다. 보통은 다음 3가지 중 전부 내지 일부를 제공할 것입니다.
  • 와일드카드 인증서에 고객 도메인 추가. 가격은 저렴하고 직접 인증서를 발급받을 필요는 없지만, 인증서 내용에 자신의 것이 아닌 도메인도 잔뜩 포함되어 있을 수 있습니다
  • 직접 보유한 인증서 업로드 또는 제휴된 인증서 회사를 통한 발급 후 인증서 업로드​
무료로 HTTPS 서비스를 받으려면 현재로서는 CloudFlare 가 ​제일 좋은 해결책입니다. 무료 플랜에서도 SSL지원이 되므로 개인 웹사이트 등을 손쉽게 전환이 됩니다. HTTP 웹사이트를 이미 갖고 있다면, CF에 가입해서 SSL 서비스를 활성화 하고 DNS를 전환하는 작업이 필요하게 됩니다.
CF는 와일드카드 인증서를 쓰고 있으므로 ​인증서 조회하면 인접한 도메인도 보이게 될 것이고, 키를 다운받을 수는 없습니다.

Let's Encrypt 를 이용하여 직접 발급 받기

개인 웹사이트라면 ​Let's Encrypt 를 통해서 무료로 인증서를 발급받을 수 있습니다.


웹사이트에 파일을 직접 올릴 수 있는 권한 정도만 있으면 인증서를 발급받을 수 있습니다만, 3개월 후 만료되는 짧은 인증서를 발급해 주므로 3개월마다 갱신하는 일이 필요 합니다. 이는 certbot 을 이용해서 자동화할 수 있으므로, 홈페이지가 있는 서버에 프로그램을 설치할 수 있다면 주기적으로 업데이트하는 것 만으로 인증서 관리가 쉬워 집니다. 

아래 사이트에 접속해서 운영체제와 사용하는 웹 서버를 선택하면 인증서 발급 방법이 안내 됩니다.



끝으로


HTTP 사이트를 HTTPS 화 하는 몇가지 최근 방법을 살펴 보았습니다. 시대는 흘러 흘러 이미 HTTP/2 로 가고 있는데, HTTP/2 에서는 TLS가 필수 이므로, 일단 사이트를 HTTPS 전용으로 만들 수 있다면 HTTP/2는 웹 서버 소프트웨어 업그레이드 정도만 남겨 놓았다고 보면 됩니다. 시간이 되면 그 부분에 대해서도 별도로 글을 작성 하도록 하겠습니다.




















2017년 2월 3일 금요일

MSX TurboR FS-A1GT!!!


MSX 최후의 사양인 Turbo R, 두 종류밖에 나오지 않은 기종 중 마지막 기종이자 최강의 스펙을 자랑하는 FS-A1GT 를 손에 넣었습니다! 90년 발매되어 95년까지 판매하였다고 하니, 최고 27년 된 머신이죠. 제가 가진 것의 생산일은 알 수 없지만, 90년에 MSX매거진에서 대대적으로 TurboR 에 대해서 다룰때 침만 흘리고 있던 저로서는 27년만에 이 머신을 구할 수 있었습니다. 감격 감격

방법은 의외로 쉬었는데 야후저팬 옥션에서 평범하게 입찰을.. 하는데 그동네는 아무래도 현지인이 아니면 불편한 점이 많아서 (일본 살때 해볼걸 그랬어요), buyee.jp 에서 외국인 내지 외국 거주자를 위한 입찰 대행 서비스를 하고 있습니다. 그렇다고 해도 직접 입찰 해야 하는 건 변하지 않지만요.

사실 이제와서 MSX를 구한다고 하면 기왕 구할 바에야 최고스펙의 FS-A1GT를 원하게 됩니다만, 여의치 않으면 동일한 Turbo R인 FS-A1ST도 좋은 선택입니다. 부품 수급 문제로 하나 더 사야 할까도 생각 중입니다만.... 대략 야후저팬 옥션에서는 2017년 초 기준으로 GT 기준으로 풀 박스셋이 약 17만엔 정도, 동작하는 본체는 약 6-7만엔 정도로 보면 되지 않을까 싶네요. ST는 3만엔 정도면 본체를 구하는게 가능할 듯 싶습니다. 그런데 출품 자체가 이제는 매우 적으니 나올때 바로바로 챙겨 두는게 차라리 속 편할것 같습니다. 가격이 적당 하고 동작하는 것이라면 입찰될 확률이 높습니다.

제가 구한 것도 R-TYPE (이것도 저에게는 기억나는 사연이 있지만)이 잘 동작하고 있고, 디스크도 어느 정도는 동작하는 것 같은데 일부 오동작하는 부분이 있어서 플로피 드라이브를 계속 사용 하려면 아예 새걸로 교체 하든가 하는 일이 필요할 것 같습니다만, SD 스토리지를 주문한게 있으니 그게 잘 되면 플로피를 써야 할 이유는 많이 줄어들 것 같습니다. 하지만 일단 3.5인치 플로피 한박스와 맥용 플로피 드라이버를 확보 했으니 급하면 어떻게는 되겠죠. R-TYPE은 미국 ebay에 있길래 낼름 확보했습니다.​ 미국 ebay 에서도 MSX관련 제품이 꽤 있으므로 한번 둘러 보는 것도 좋을것 같네요.​

현재의 문제는 소리가 나지 않는다는 건데... 디스플레이는 S단자 (S-Video) -> HDMI 업스케일러를 사용해서 연결해 두었습니다. 그건 좋은데 S단자 자체가 오디오 지원을 하지 않다 보니 소리가 나지 않는 문제가 있네요. 오디오 단자는 아무리 찾아도 없고... 좀 찾아 보니 GT의 경우는 비디오는 S단자 또는 RGB (8-pin DIN) 이고 소리는 RGB쪽에만 들어 있다고 하니, 어떻게든 RGB 쪽의 오디오를 끌어낼 방법을 찾아야 할 것 같습니다. 사용중인 모니터는 LG 풀 HD인데, 사진과 같이 와이드라서 실제보다 좌우가 긴 문제가 있습니다. 다만 일단 그건 참고 보면 되니까 오디오부터 해결해야 겠네요.
(추가: 박스 밑바닥에 RGB-SCART 케이블과 조이패드가 있었는데 모르고 있었습니다! SCART-HDMI 컨버터를 테스트해 볼 수 있겠네요. 조이패드는 뭐 있으면 좋긴 한데 예전에도 그리 쓰지는 않았는지라)​

지금 봐서는 S단자 대신 RGB -> SCART -> HDMI 변환을 이용해서 모니터를 연결하고 스피커는 오디오 잭으로 따로 연결하는 방식이 유력할 것 같습니다. RGB 에서 오디오 핀 따서 자체 제작하는 경우도 있을것 같은데 일단 그건 2순위로 생각해야 할 것 같네요.

이외 현대적인(?) MSX 주변기기를 몇 주문해 두었으니 도착하는 대로 테스트하고 소개하는 시간을 갖도록 하겠습니다.​

2016년 11월 14일 월요일

MeetBSD CA 2016 참석기


MeetBSD CA는 2008년부터 2년마다 열리는 행사로 2014년 산호세의 웨스턴 디지탈사에 이어 올해는 BSD의 고향이라 할 수 있는 캘리포니아 버클리 대학교의 Clark Kerr 캠퍼스 내에 있는 Krutch Theatre에서 열렸습니다.


MeetBSD 행사는 기술 컨퍼런스라기 보다는 유저그룹이 모이는 행사에 가까운데, 지난번에 비해서는 아주 자세한 기술 이야기는 줄고 그보다는 현황에 대한 업데이트라든가 언컨퍼런스 형태의 모임 위주로 진행이 되었습니다. 아무래도 기술적인 이야기는 EuroBSD, BSDCan, AsiaBSD에서 주로 다루고 있고, 이름에서도 알 수 있듯이 지역 행사에 더 가깝기 때문입니다.

그중 몇몇 세션에 대해서 살펴보면, (놓친 것도 있습니다)

Day 1


Devin Teske, "Netgraph vs epair+if_bridge in the context of vimage jails; Using and managing vimage jails"

jail 안의 networking (VIMAGE 사용)에 대한 이야기입니다. 기존의 jail 방식에 추가로 VIMAGE커널을 하나 구축해서 jail 내에서 독립적인 네트워킹을 할 수 있는데 netgraph 와 if_bridge 두가지 방법으로 호스트와 브리지 형태의 네트워크를 구축할 수 있네요.

Krste Asanovic, "RISC-V: Instruction Sets Want To Be Free"
RISC-V는  CPU 아키텍처 책에도 나오는 RISC ISA (Instruction Set Architecture) 의 다섯번째 에디션으로 오픈 소스 형태로 개발이 되고 있습니다. Intel의 IA-32, IA-64, ARM의 ARM v7 등이 많이 쓰이는 ISA의 대표적인 예인데, 상용이기도 하고 오래 되다 보니 한 명령이 너무 많은 일을 수행하는 경우도 있다고 합니다. RISC-V는 간단하고 확장 가능한 아키텍처를 지향하고 있고, 실제 하드웨어와 컴파일러를 위해 여러 업체나 오픈소스 프로젝트와 협력하고 있다 합니다. FreeBSD와 같은 오픈 소스 OS는 이런 오픈 아키텍처 위에서 돌아가는데 매우 적합 하겠죠.

Sean Chittenden, "Using FreeBSD in the Cloud, Development to Prod"

HashiCorp (consul, terraform 등으로 유명하죠) 의 Sean 씨는 FreeBSD를 클라우드상에서 이용하는 방법에 대해서 GCE기반으로 설명을 해 주었습니다. 요즘에는 다수의 서버나 VM을 다루는 일이 많아 졌으므로 단순히 OS만 설치하는게 아니라 어떻게 설정 관리를 하는지도 매우 중요합니다. 

Matt Ahrens, "History of ZFS and OpenZFS"

Matt 씨는 선마이크로시스템즈에서 ZFS를 개발한 핵심 개발자 중 한명인데, 2001년 이후 ZFS의 역사에 대해서 발표를 하였습니다. 처음에는 솔라리스용으로 개발하다 선이 오라클로 인수되고 여러가지 역사를 거치면서 ZFS는 2011년 오픈소스화되어 지금은 FreeBSD에서 매우 밀어 주는 파일시스템이 되었고 FreeNAS 등의 스토리지나 기타 몇몇 스토리지 어플라이언스에서도 사용되고 있습니다. zfs는 FreeBSD 궁합이 잘 맞고 부트 파일시스템으로도 이용 가능하기 때문에 기존의 FFS를 완전히 대체할 수 있습니다.
리눅스에서도 ZFS on Linux가 있고 (라이센스 이유로 커널에는 정식 포함은 안되고 있습니다) Ubuntu 가 ZFS를 기본 채용한다고 해서 화제가 되기도 하고요. 처음부터 상용으로 개발이 된 것이라 매우 안정적이고 (대신 메모리를 좀 먹는데 요즘에는 큰 문제는 안됩니다) 매우 확장성이 높은 것이 특징입니다.

Michael Dexter, "Not Only is BSD Coming Home to Roost But so is the bhyve Hypervisor!"

FreeBSD에는 가상 OS를 쓸 수 있게 해 주는 네이티브 하이퍼바이저로 bhyve가 있습니다. Michael 씨는 bhyve 프로젝트의 창시자이자 리더인데, bhyve 프로젝트의 역사와 현황에 대해서 발표를 하였습니다. 지금은 게스트 OS로 FreeBSD 뿐 아니라 리눅스, 윈도우 등도 모두 사용 가능하고 게스트 콘솔용 RDP 서버도 지원하는 등 대부분의 하이퍼바이저에서 지원하는 기능을 모두 포함하고 있습니다. 향후에 큰 발전이 기대되는 프로젝트이기도 합니다.

Day 2

Jordan Hubbard, "FreeNAS 10: The Challenges of building a modern Enterprise Storage Appliance on FreeBSD"

FreeBSD 프로젝트 창시자이자 현재는 iXSystems의 CTO인 Jordan씨가 FreeBSD 기반의 스토리지 OS인 FreeNAS 10 에 대해서 소개를 하였습니다. UI가 잘 되어 있고 ZFS기반인 것이 특징입니다. FreeNAS 프로젝트 자체도 오픈 소스이니 집이나 회사에서 스토리지 서버 만들 때 쉽게 활용할 수 있습니다. 특이하게 UI를 통해서 bhyve기반의 VM이나 이를 활용해서 Docker 컨테이너를 만드는 데모 (리눅스 게스트 위에서 돌아가는)도 보여 주었는데, Docker와 같은 컨테이너 기술은 *BSD가 아직 부족한 분야 이기도 합니다. jail 이 오래전부터 있어 왔지만, Docker 는 널리 사용되는 점도 있고 패키징이나 업데이트등의 관리가 용이하다는 것이 더 좋은 점이겠지요.

아무래도 Jordan 씨는 BSD관계자라면 대부분 아는 사람이다 보니 자기소개 없이 시작했는데, 나중에 '자기 소개 부탁 드립니다'라고 물어 보는 사람이 있어서 다른 청중들이 웃기도 했습니다.

Kris Moore, "Unveiling TrueOS"

PC-BSD는 FreeBSD 기반의 데스크탑 OS입니다. 이번에 이름을 TrueOS로 바꾸었는데, 기본적으로는 FreeBSD를 더 데스크탑에서 이용하기 쉽게 다시 패키징하고, 관리 UI를 제공하고 있다고 보면 됩니다. 노트북 등에서 사용할 BSD를 선택할 때에는 FreeBSD에서 시작하기 보다는 PC-BSD (이제는 TrueOS) 에서 시작하는게 아무래도 편리한 점이 많습니다. GUI 설치도 가능 하고요. 이름을 바꾸게 된 것은 BSD기반이기는 하지만 데스크탑과 서버를 모두 포괄하는 범용 OS로 나가고자 하는 의지가 있지 않나 싶습니다.

새 버전에는 GNOME/KDE/XFCE와 유사한 X윈도우 기반 데스크탑 환경인 Lumina Desktop 이 기본이 되었고 (기존에는 GNOME/KDE/XFCE 등을 고를 수 있었습니다), 시스템 설정 UI가 SysAdm 으로 변경되고 API 서버로도 제공, FreeBSD 릴리즈를 따라가는게 아니라 -CURRENT를 따라가는 업데이트 시스템, base의 pkg화 등 내부적인 변화가 많이 있습니다. 데스크탑에서의 요구를 반영하다 보니 FreeBSD에서는 설치 단게에서 기본적으로는 제공되지 않는 사운드 시스템(PulseAudio)이나 몇몇 패키지의 옵션 변경등도 추가되어 있습니다.

Allan Jude, ZFS Discussion Panel

Allan씨는 Michael Lucas 씨와 함께 FreeBSD Mastery: ZFS를 쓰는 등 FreeBSD 활동이 매우 활발한 분입니다. 관련 개발자들과 같이 하는 Q&A였습니다.

Kylie Liang, PCI pass-thru

마이크로소프트는 자사의 Azure 클라우드 서비스에 FreeBSD를 기본 제공하는 등 리눅스 이외에도 오픈 소스 OS 지원을 하고 있습니다. 이 발표는 MS의 Hyper-V 하이퍼바이저의 PCI Passthrough 기능을 FreeBSD가 지원하게 되면서 호스트에 있는 하드웨어 (네트워크 카드 등)을 직접 하드웨어 수준에서 접근 가능하게 되었다는 내용 입니다. SR-IOV도 지원 예정이라고 하네요.


그외 FreeBSD 10.3이 Azure에 올라 왔고, OpenBSD도 예정이라고 하네요.


또한 중국에서 처음으로 BSD Meetup를 열 예정이라고 합니다.


이번 MeetBSD CA 2016에서는 최근에 많이 화제가 되었던 zfs, bhyve, PC-BSD, FreeNAS등의 주요 프로젝트는 대부분 다루어지긴 했습니다만, FreeBSD(또는 그 기반 OS)에 대한 내용이 대부분이었고 NetBSD나 OpenBSD관련 내용이 없던 것이 조금 아쉬웠습니다. 그외 각 프로젝트의 역사 등에 대한 세션도 유익 했고, 마이크로소프트가 지속적으로 BSD에 대한 지원을 하고 있는 점도 인상적이었습니다. 알게모르게 많은 발전이 이루어지고 있는지라 많은 공부가 되었습니다. VIMAGE커널이나 bhyve는 저도 써본적이 없는데 한번 시도해 봐야 겠고요.

오픈소스의 역사를 살펴 보면 OS가 매우 큰 부분을 차지 하지만, 요즘에는 서버 쪽에서는 클라우드 기반 서비스, 빅데이터, 클라이언트는 웹이나 모바일 개발의 비중이 늘어 나면서 OS자체의 관심은 상대적으로 줄어든 게 아닌가 합니다. 또한 클라우드나 빅데이터의 경우에도 OS의 선택은 대부분 리눅스가 되다 보니 아마존, 마이크로소프트, 구글 등의 큰 벤더 이외에는 BSD 등을 기본 제공해 주는 클라우드는 많지 않은 것이 현실입니다. 그런 점에서 보다 적극적으로 클라우드, 빅데이터, 컨테이너 등에 대한 지원이 더 필요하지 않을까 싶습니다.






2016년 3월 11일 금요일

이세돌9단 vs 알파고

일단 한국 밖에서는 별 관심 없는것 같고 (미국 미디어에 소개는 되는데... 바둑이라는데 미국서는 생소한 게임이다 보니 아무래도 관심은 적은듯. 우리가 체스경기에 별 관심 없듯이) 사실 나도 바둑을 둘 줄 몰라서 그런지 관심은 많이 떨어지는 편이다. 오히려 주변의 반응을 즐기고 있는 듯.

내 관점에서는 체스나 바둑이나 정해진 룰 안에서 이루어지는 게임이고 컴퓨터는 정해진 룰 안에서 정해진 알고리즘대로 움직이는데는 인간을 능가하는건 당연하다고 생각한다. 구글과 같이 거의 무한의 컴퓨팅 자원을 동원할 수 있는 곳이라면 더더욱 제한이 없어질 것이라 보므로, 일개 인간과 무한의 컴퓨터 자원의 대결이라면 인간이 이길 확률은 없다고 보는 것이 맞을 것이다. 이제 이세돌9단이 3연승으로 인간의 자존심을 지킨다고 해도, 다음번 경기에서 그렇게 될 확률은 더더욱 낮을 것이므로. 카스파로프가 졌고 이제 스마트폰 안의 체스 프로그램조차 당신이 이길 확률이 없듯이, 바둑도 그런 수순을 거칠 거라는 것에는 의문의 여지가 없다.

따라서 미래에 인공지능이 인간의 직업을 많은 부분 대체할 것이라는 점에 대해서는 이론의 여지가 없지만, 그렇다고 그것이 인간이 기계의 노예가 된다거나, 취직자리가 없을까봐 걱정하는 것은 지나친 걱정이라 본다. 인공지능까지 생각하지 않아도 이미 많은 일자리가 간단한 자동화만으로도 없어지고 있고 그런 경향은 이미 르네상스 이후 산업화에 의해 지난 2-3백년간 계속된 현상이다. 처음에는 인간으로 때우다 반복 작업을 기계로 대치하는 건 새로운 현상이 전혀 아니라는 의미이다. 아마 인공지능과 3D프린터를 결합하면 새로운 조각 미술을 만들어낼 수 있겠지만 그것이 조각가라는 직업이 영영 없어지는 건 아니라는 건 인간이라면 직감할 수 있을 것이다.

인간이 해야 할 것은, 단순하고 범위가 정해진 내에서 효율을 따지는 건 점점 기계에게 맡기는 것이고 그러고 나면 또 새로운 분야, 새로운 직업을 만들어 내는 것이다. 전화 시대 초기에는 교환원이 필요 했지만 자동 교환기가 발명된 이후에는 필요 없어진 직업이고, 교환원이 없어진 대신 다른 직업이 생겨 났다. 피처폰시대에 제한적인 앱 개발하던 것이 스마트폰이 생겨서 기존에는 없던 앱 개발자라는 직업이 대대적으로 생겼고, 만약 앱 개발이 인공지능화 된다면 그걸 이용해서 돈을 버는 또다른 직업이 생겨날 것이다. 물론 100명이 하던 걸 5명+기계가 하면 된다고 하면 나머지 95명은 무얼 해야 하는지에 대해 의문을 가지게 되겠지만, 그건 기본적으로는 지난 200년간의 산업 발전을 되돌아 볼 때 "당장 직업을 잃게 되니 대책을 만들어 내라는 현실파" vs "기술의 발전이 또 다른 직업을 만들어 낼 거니 걱정 없을 거라는 낙관파" 간의 갈등에 다름 아니다.

우리가 해야 할 것은 이제 인공지능이 대체하는 분야를 마련하고 대신 인간은 무엇을 해야 하는지에 대한 논의를 심도있게 해야 한다. 인간의 호기심과 그에 따른 과학 기술의 발전은 자본에 의해 일시적으로 제어될 망정 제어할 수 없다. 따라서 이런 발전을 특정 자본에게 유익하게만 하지 않도록 제어하는 역할이 필요하고, 기술이 폭주하지 않도록 제어하는 역할도 필요하다. 이건 이미 기존에 존재하는 정치경제 제도가 해야 할 일이라 생각한다. 기술의 무한 발전은 이미 피할 수 없고 인간의 그것에 적응하는 일 빼고는 할 것이 없기 때문이다.

2015년 11월 25일 수요일

월간 마이크로소프트웨어 휴간 소식을 듣고

월간 `마소` 역사속으로

한국의 컴퓨터 월간지 마이크로소프트웨어(애칭 '마소')가 12월호를 마지막으로 휴간 (이라고는 하지만 언제 재개될지 모르므로 폐간으로 받아들이는 사람이 많은것 같다)한다고 한다. 개인적으로는 최근호는 거의 읽지 않았고 정기구독도 한 적이 없는지라 큰 도움은 되지 못했지만, 오래전의 기억을 더듬어 본다.

PC를 시작한게 84년 즈음 (집에 FC-150이 들어왔을 때)인데 당시에는 컴퓨터 잡지가 기억나는 것이 컴퓨터학습(나중에 마이컴으로 변경), 학생과컴퓨터, 마이크로소프트웨어 정도였다. 다른게 있었는지는 잘 모르겠지만 위 3종은 동네 서점에 가도 항상 볼 수 있었으니 구하기도 쉬웠고. 컴퓨터학습이나 학생과컴퓨터는 주로 학생 계층 내지는 초보자 대상이었고 내용 자체도 보기 쉬운 내용 내지는 8비트 PC (SPC, FC, 애플계열) 위주였는데 비해서 마이크로소프트웨어는 8비트도 다루지만 16비트도 당시 일부 있었고 (IBM-PC가 81년에 발표되었다. 당시 CPU가 인텔 8088인데 이게 8비트와 16비트의 중간 정도라... PC XT에서 8086을 채용하면서 본격적으로 16비트 PC가 된 것으로 기억한다) 꽤 전문적인 내용을 다루고 잡지도 두꺼웠다.

FC-150은 워낙 자료가 귀해서 아파트에서 누가 내다버린 금성전자의 내부 소식지(?)랑 폐품으로 내놓아져 있던 FC-150 모니터 매뉴얼을 주워다 닳도록 읽고 있었는데 BIOS를 다루려면 역시 베이직으로는 한계가 있었고 곧 기계어에 관심을 갖게 되었다. 하지만 문제는 Z80 어셈블리를 다루어야 하는데 FC-150은 어셈블러를 구할수가 없었고 베이직으로 어셈블러를 짤 능력은 안되는지라 (아마 본 책 중에 SPC-1000용의 베이직으로 만든 Z80 어셈블러/디스어셈블러가 있었는데 베이직의 차이 때문에 변환을 포기 했었다) 고민하던 와중에 마이크로소프트웨어 84년 11월호(정확하게 알 수는 없는데 창간 1주년호로 기억하니 아마 그게 맞을거다. 마소는 83년 11월에 창간)를 보게 되었는데 Z80 어셈블리가 0x00 ~ 0xff 까지 (2바이트 명령도 있으니 그거 포함) 몇페이지에 걸쳐 실려 있는 것을 보았고 그걸 당장 사온 다음에, 손과 노트를 사용해서 일단 어셈블리 언어로 (LD A, 30H 이런 식으로) 적고 그걸 다시 잡지를 보면서 기계어로 변환 (위 명령을 변환하면 3E 30 이다. 다시 찾아 봤음)해서 그걸 베이직으로 자작한 (주로 BASIC-G를 썼다) 모니터를 통해서 입력하고 실행하는 식이었다.

당시에 모니터(Monitor)라고 하면 기계어 덤프하고 입력, 실행을 할 수 있는 프로그램을 지칭한 것으로 알고 있었다. 보통은 베이직의 PEEK, POKE, CALL 문으로 직접 메모리를 다루었는데, 한바이트씩 다루어야 하니까 아예 베이직으로 간단한 프로그램을 작성해서 데이터 입력이 가능하게... 정확하게 기억은 안나지만 다음과 같은 식이다.

> D 1000
1000 00 00 00 00 00 00 00 00
1008 00 01 02 03 04 05 06 07

1000번지부터 내용을 덤프(화면에 출력)

> I 1000
3E 30

1000H번지 (지금은 보통 0x1000 이라고 하는데 당시에는 1000H 라고 했다)에 다음 줄부터의 내용을 입력

> G 1000

1000번지의 내용부터 실행 (Program Counter를 바꾸는 식)

저장이야 당연히 카세트 테이프에 하는 것이고...

어쨌든 모니터까지야 어찌어찌 작성 가능했는데 손어셈블이라는 걸 가능하게 해 준건 바로 마소의 덕이었다. 그 이후에 종종 사 보았지만, 마소에서는 FC-150을 거의 다루지 않았기 때문에 주로 MSX나 SPC-1000용의 기사를 보며 침만 흘리거나 실려 있던 작성된 베이직 프로그램을 변환해서 사용하다가, 86년말에 IQ2000을 갖게 되면서 MSX2 발표에 따른 해설 기사에 (아마 정내권씨가 썼던 것으로 기억 하는데 아닐 수도 있다) 나와 있던 그래픽 데모 프로그램을 돌려 보기도 하고, 이후에는 MSX 관련해서 몇가지 좋은 기사가 있어서 80년대 후반까지는 종종 사 보았는데, 16비트 위주로 기사가 바뀌면서 (당시에 안철수씨가 바이러스 관련해서 연재하곤 했었다) 거의 보지 않게 되었다.

MSX관련해서는 MAD-80이라는 (FC-150시절에 그토록 바라던) 모니터/어셈블러/디스어셈블러가 통합된 프로그램이 실렸는데, 이달의 디스켓테이프... 를 구할 돈은 없었고 잡지에 실려 있던 16KB분량의 기계어를 며칠에 걸쳐 다 손으로 입력해서 MAD-80을 실행했을 때의 기쁨이란 이루 말할 수 없는 것이었다. 왜냐하면 더 이상 손어셈블을 안해도 되니까. 그 즈음쯤 가면 잘 쓰는 명령은 거의 외우고 있었지만, 상대 점프같은거 쓰려면 주소 계산까지 해야 하는데 기계어 변환이 안되면 주소 변환이 안되고...

나의 마소에 관한 기억은 주로 8비트 PC에 관한 것이니 이미 30년이 다 된 일이지만, 그만큼 역사와 전통을 자랑하는 잡지가 더 이상 나오지 않는다는 건 매우 아쉽다. 몇년전에 서점에서 사 볼일이 있었는데 (회사 사장님 인터뷰나 같이 일하던 편용현님 인터뷰 실렸을 때) 두께가 예전에 알던 것 반 정도밖에 안되어서 꽤 놀랐던 기억이 있다. 물론 이제는 인터넷에서 구할 수 있는 자료가 훨씬 최신이고 품질도 좋아 졌으니 잡지의 필요성은 많이 줄었을 테지만 당시에는 마소가 최신 자료를 구할 수 있는 유일한 수단 중 하나였다.

어렸을때 꿈 중의 하나는 마소에 기고하는 거였는데 결국 이루지는 못했지만... 언젠가 다시 꼭 부활하는 모습을 보았으면 좋겠다.







2015년 10월 17일 토요일

매직 트랙패드 2






발매되었다는 소식을 듣고 바로 신청 했는데 배달 보다는 픽업 가능한 애플스토어 목록을 보다 보니 애플 본사 위치에 있는 Infinite Loop 의 애플스토어가 뜨길래 호기심 반으로 그쪽에서 픽업하기로 했습니다. 이 애플 스토어는 지난 9월에 원래 있던 컴패니 스토어 (여기서는 애플 제품은 안팔고 기념품이나 각종 악세사리만 팔았던 걸로 기억 하는데) 대신 새로 열렸습니다. 실리콘밸리 와서 한번 가볼만한 곳이 생겼다고 보시면 됩니다. 여기가 애플맵의 지도 아이콘 바로 그 위치라... ^^ (어 근데 iOS9 를 다시 보니 좀 헷갈리는군요. 예전에는 Infinite Loop 가 바로 보이는 아이콘이었는데) 앞에서 사진 찍는 사람도 많고요.


제가 갔을 때에는 중국인과 한국인이 무척 많았습니다. :) 평일 점심시간대 방문하는 건 주차장 문제가 있지 않을까 하네요. 여기까지는 일반인도 그냥 들어올 수 있습니다.

실리콘밸리 지역에서 방문할 만한 애플 스토어는 역시 스탠포드 쇼핑몰 점인데 일단 크기가 압도적으로 제일 크지요. 스탠포드대학교 구경할 때 돌아오는 길에 갈 만 한데, 굳이 팔로알토까지 갈 일이 없다면 쿠퍼티노 애플 본사의 애플 스토어도 어떨까 합니다. 아 문제는 여기는 매우 작아서 다른 애플스토어에 가본 분 있으면 매우 실망합니다. 지금까지 본 애플스토어중 가장 작은 수준.

매직트랙패드 2 (왼쪽)는 기존 매직 트랙패드와 비교하면 모양이 와이드... 가 되어 있습니다.





그리고 구 버전은 배터리를 넣어야 하는 부분이 위쪽이 동그랗게 되어 있는데, 이번에는 그런건 없고 바닥에 평평하게 붙습니다. 경사는 약간 있지만요. 그리고 충전식으로 바뀌었기 때문에 후면에 전원 스위치와 라이트닝 단자가 있습니다. 뒤에서 보면 이런 식입니다.


매우 고마운 점은 패키지에 라이트닝 케이블을 하나 동봉했다는 점입니다. 애플 정품 케이블은 비싸거든요. 동봉된건 길이로 봐서 1m 모델인데 이것만 해도 $19 씩 하는지라...

그리고 제대로된 사용을 위해서는 OS X El Capitan 이 필수로 생각 됩니다. Yosemite 에서 붙였을 때에는 (2012년 맥북 프로) 일단 마우스로 인식이 되고 (화면에 그렇게 나오더군요), 이단 클릭(포스터치의 한번 더 깊이 누르는 것)이 안되고, 두 손가락 스크롤이 안되는 등 문제가 많으므로 OS도 맞추는게 좋습니다. 겸사겸사 업그레이드 하니까 별 문제 없이 잘 되네요. 케이블만 연결해도 동작한다고 하니까 충전중에는 그냥 케이블만 연결해 주면 됩니다.

전에 포스터치 달린 맥북 만져봤을때에도 이 포스터치라는게 매우 신기한데 후면의 전원을 끄면 그냥 딱딱한 판일 뿐이지만 전원을 넣으면 두번 눌리는 감촉이 매우 신기 합니다. 그 기능을 제대로 쓰려면 소프트웨어적인 지원이 뒤따라야 하는데, 내장 앱에서는 되는 것들이 있고, 앞으로 많아질 것이라 예상 합니다. 아이폰도 그렇고 맥북 하드웨어에서는 이제 기본으로 생각이 되니까요.




2015년 9월 7일 월요일

COIN 리뷰


COIN은 샌프란시스코의 Coin, Inc. 에서 만든 신용카드형 결제 장치이다. 일종의 핀테크라고 할 수 있는데 국내에서는 여러가지 이유로 전혀 관심이 없는듯 하지만... 미국에 있는 관계로 예전에 올려 두었던 프리오더를 몇달전에 보내 주었는데 사용기에 대해서 까먹기 전에 써두고 싶다. 현재는 미국에서만 구입 가능. 사용 자체는 해외에서도 가능한 듯 싶은데 COIN을 설정하려면 계정이 있어야 하는데 그 계정은 미국에서만 만들 수 있다.



COIN은 쉽게 말하면 신용카드처럼 쓰면 된다. 크기도 신용카드랑 동일하고, 뒷면에 자기대 (Magnetic Stripe)와 사인할 곳이 있다는 점도 동일한데 실제 보내준 버전은 뒷면에 개인 이름도 써 있다. 초기 버전에는 없었는데 개인 표시 및 상점에서 혼란을 막기 위한 용도인듯.

이 카드가 독특한 점은 사용자가 자신의 카드를 여러개 COIN에 등록해 주고 신용카드처럼 사용할 수 있다는 점이다. 쉽게 말하면 일종의 신용카드 복제 장치... 라고 보면 되는데, 카드를 등록하려면 아이폰이나 안드로이드 폰이 필요하고, COIN 박스에 동봉된 카드 리더 (이어폰 포트에 연결)를 통해서 직접 긁어 주거나, 카드 정보를 수동으로 입력해 주면 된다. 이렇게 해서 최대 8개까지 카드를 등록할 수 있고, 평소에는 아무런 동작을 하지 않지만, 사용 직전에 전면의 원형 단추를 눌러서 (위에서 오른쪽 위의 원이 그려진 부분이 실제 눌려진다) 깨우고 다시 같은 단추를 눌러 사용할 카드를 선택하고 나면 (카드 번호의 뒤쪽 4자리가 보인다) 그 상태로 일반 신용카드를 사용할 것 처럼 긁어주면 된다. 분실을 대비해서 폰이랑 블루투스 페어가 끊기면 자동으로 기능 정지가 된다. 이외 신용카드가 아닌 카드 (포인트 카드 등)도 등록 가능하나 실제 사용 가능한지는 안해봐서 모르겠다.

이렇게 하면 실제 여러장의 카드를 갖고 다닐 필요 없이 COIN 한장이면 된다는 건데, 실제 사용해 본 바로는 몇가지 문제점이 노출이 되는데...

  • 일단 결제가 잘 되는 곳에서는 꽤 쾌적하게 사용할 수 있다. 슈퍼마켓이나 주유소 등에서 사용해 보았는데 기존처럼 긁으면 되는 지라 평소랑 다를 것이 없다. 이점이 COIN의 최대 장점이자 단점인데 그 부분에 대해서는 다시 설명. ATM에서도 사용 가능하다고 하나 실제 시도해 보지는 않았다.
  • 이론적으로는 자기대 방식을 지원하는 카드 리더에서는 모두 문제 없이 돌아가야 하지만 꼭 그렇지는 않다. 호환되지 않은 상점이나 POS기기 리스트는 COIN FAQ에서 찾아볼 수 있다.
  • 폰이랑 페어링이 끊어지고 타임아웃 되면 사용 불능. 보안 기능이지만... 다만 인터넷 연결은 카드 등록 이외에는 필요하지 않으므로 실 사용에서 인터넷 연결이 필요하지는 않다.
  • 최대의 문제점이라면 아무래도 안되는데가 있을까봐 껄끄러우니 결국 신용카드를 한두장 같이 갖고 다니게 된다는 점.
보안에 대해서는 나름 신경을 쓴 부분이 보이는데 다음과 같다.
  • COIN은 스마트폰과 블루투스로 연결 되고, 폰에 전용 앱을 설치해서 COIN 장치와 동기화한다. 즉 앱에서 사용할 카드를 관리하고, COIN과는 동기화만 한다는 점이 다름.
  • 선택후 긁으면 자동으로 락이 걸리고, 앱에서 위치 추적이 가능
  • 폰이 리셋되면 처음부터 다시 등록해야... 기존에 있던 COIN도 사용 불가능이 되므로 리셋 후 다시 동기화해야 함. 잃어버리는 경우를 감안하면 이렇게 하는 게 맞을수도. 다른 말로 하면 COIN 등록시의 계정에는 카드 정보를 애초에 업로드하지 않는다는 이야기.
국내에서는 아마 이런 종류의 기기에 관심이 없어 보이는건 아마도 카드복제장치... 에 대한 거부감 내지는 합법성에 대한 의문일 텐데, 국내에서 이런거 팔아도 되는지 사실 모르겠다. COIN은 기존 카드사와 협력 관계가 아니다. 즉 허락 받고 하는게 아님. 그리고 마그네틱에서 칩 기반으로 옮겨가는 신용카드 시장도 관계가 있다. 이미 한국도 그렇고 유럽에서 카드 결제를 하면 보통 칩 기반 카드 + 사인 내지는 PIN으로 결제하는 경우가 이제 일반적인 경우인데 미국도 예외는 아니고 2015년 10월부터 카드결제하는 측(보통 상점)에서 EMV 기반의 카드가 아니면 사기 거래에 대한 면책이 되지 않는다고 한다(얼마 안 남았다). 따라서 기존의 카드 및 POS 시스템이 칩 기반으로 빠르게 옮겨가게 되는데 자기대 기반의 COIN은 칩 + PIN/사인에 대해서 지원할 수 없다는 것이 최대 약점이 된다.

지금 발매중인 COIN 1.0 은 자기대 지원 방식이라 발표될 때 부터 이점에 대한 의문이 많이 있었는데, 요즘에는 EMV 기반의 NFC 기능을 추가한 COIN 2.0 을 내놓기로 하고 기존 1.0 사용자에 대해서는 무료 업그레이드라는 특단의 조치를 취했다(아싸). NFC지원이라면 기존의 NFC방식의 스마트폰 결제 시스템과 유사하다고 생각이 되는데, 이게 애플 페이도 아니고 삼성 페이도 아닌지라 어떤 방식이 될지는 아마 2.0을 받아 봐야 알게 될 듯. 어쨌든 칩 + PIN기반의 방식은 물 건너갔다고 봐야 하는게 칩 방식 자체가 암호화 칩이라 자기대와 달리 복제가 불가능한지라 이게 된다고 하면 기존 카드 시스템 자체가 무너졌다고 봐야 하는지라...

사실 이러한 문제보다는 이 업체 자체의 문제도 있는데, 2013년에 프리오더를 넣어 놓고 까먹을 정도로 실제 제품 발송이 2015년까지 늦어진 문제가 있고 (중간에 얼리아답터 발송도 탈락...) 그 와중에 애플페이나 삼성페이 등이 런칭, EMV 칩 문제도 2015년으로 다가온 지라 2년 전에 실제 물건이 발송이 되었다면 좀 더 좋았을 텐데, 신뢰성의 문제도 포함해서 약간 실기했다는 느낌이 크게 든다.

애플페이나 삼성페이 이야기가 나와서, 차이에 대해 살펴보면 다음과 같다. 삼성페이는 실제 써보지는 않았으니 들어서 아는 한도에서만 이야기하면,
  • COIN은 아이폰 및 안드로이드 모두 지원. 카드 관리용 앱 설치 필요. 블루투스로 동기화. 폰에서 결제 하는게 아니라 COIN으로 결제.
  • 애플페이는 아이폰 최근 모델만 지원. 관리용 기능은 iOS 8 에 내장. 폰의 NFC로 결제하므로 다른 장치 필요 없음. 애플워치가 있다면 연동시킨 후에 워치로 결제 가능
  • 삼성페이는 삼성 안드로이드폰 최근 모델만 지원. 폰에 내장된 자기대 에뮬레이션 내지 NFC로 결제. 기어와는 아직 연동 안됨.
애플페이는 애초에 NFC방식이라 COIN과는 큰 관계가 없는데, 삼성페이는 기존의 자기대 카드 대신 자기대를 에뮬레이션해주는 자기장을 발생시킨다고 하고, COIN은 아예 자기대 자체가 달려 있다는 점이 큰 차이일 수 있다. 즉 미국 주유소나 ATM처럼 자기대 에뮬레이션으로 안되고 직접 카드를 넣어 주어야 하는 경우에는 COIN 방식이 유리할 수도 있겠다. 그리고 큰 차이라면 역시 카드사와 제휴를 했느냐 안했느냐인데, 애플페이나 삼성페이의 경우 카드사와 제휴해서 원타임 트랜젝션을 만드는 방식으로 보안성을 높인 것으로 아는데, COIN은 그냥 카드 복제에 불과하므로 기존 카드와 동일한 방식이라는 것.

COIN도 아이디어 자체는 좋아 보였지만 현실적인 구현 방식에서 여러가지 장벽을 만난 것으로 보이는데, 더 발전해서 NFC와 같이 새로운 방식도 모두 수용이 가능하고 폰 벤더에 관계 없는 범용 수단이 된다면 장래가 어느 정도는 있지 않을까. 또한 국내에서도 이런 것을 만들어서 판매 자체가 가능한지 핀테크적인 측면에서 법적인 문제는 없을지 생각해 보는 것도 좋겠다.

p.s. 유사한 제품으로 Qvivr 사의 Swyp 라는 제품이 있다. 현재는 프리오더 중인듯.













2015년 9월 4일 금요일

Apple Watch와 세가지 질문

사진은 굳이 올릴 필요 없으니 패스.

내건 밀레니즈 루프 42mm 모델인데, 사실 구매하게 된 데에는 여러가지 이유가 있지만 일단 시계줄 때문이라 말할 수 있다. 그냥 괜찮아 보여서.

애플워치를 차고 다니니까 (뭐 실리콘밸리에서는 꽤 보이는 편이다. 밸리 밖에서는 어떤지 모르겠지만 아마 별로 없겠지...) 가끔 사람들이 물어보곤 하는데 90%의 확률로 첫 질문은 왜 샀어요? 인데 보통 시계를 왜 샀냐고 사람들에게 물어보지는 않는걸 보면 기본적으로 애플워치에 대한 인식이 어떤지 짐작은 된다. 시계 사는데 큰 이유가 있을 리가 있나.

그러니까 애플워치에 대해 큰 기대를 하지 말고 (애플스토어 가면 테스트도 되고 직원에게 이야기하면 시착도 해 볼 수 있으니) 그냥 시계를 하나 샀다고 생각하면 마음이 편할 거라 본다. 시계라는게 요즘에는 사치품에 가까워서 일단 일반 시계도 조금만 괜찮은 거 사려면 애플워치 가격 나오는 건 일도 아니니까. 따라서 본체에 색과 크기말고 다른게 없는 애플워치를 고를 때에는 그냥 시계줄 보고 사는게 정답이다. 이미 시계줄만 따로 팔고 있는데, 2세대가 나오게 되면 반대로 본체만 팔아도 좋을것 같다. 시계줄은 있는거 그냥 쓰면 되니까.

따라서 나도 90%의 시간을 그냥 시계로 쓰고 있다. 앱이나 부가 기능은 애초에 기대를 하지 않는데, 그 전에 차고 있던 페블을 생각해 보면 그것도 시계 이외의 용도로는 거의 쓸 일이 없어서 (기껏해야 노티 보는 정도) 시계 이상은 아니었으니까.

그리고 두번째 질문은 시계 이외에 쓸만한 기능이 무언가 하는 건데 내가 볼 때에는 단연 Activity 이다. 이걸 추가하는 것 만으로 그전에는 활용성이 제로에 가깝던 아이폰의 Health 앱을 띄워 보는게 의미가 있게 된다. 그리고 하루 목표 채우기 위해서 굳이 더 걸어 다니게 되는 장점도 있고. 폰만 있을 때에는 Moves 앱으로 만보정도 채우는게 목표가 되었다면 워치의 Activity 앱으로는 다른 것들도 같이 볼 수 있게 되니 그런 점에서는 페블에 없던 장점이라 할 수 있다 (하지만 가격차가...)

그외 서드파티 앱들은 대부분 쓸모가 없어서, 원래 아이폰 앱으로 디자인 된 것들이라 사실 복잡한 UI가 불가능하니 일부 정보를 보는 정도밖에 못한다. 가령 애플워치에서 메신저 앱으로 뭘 할 수 있을까? 채팅이 거의 불가능하고 메시지야 노티 보면 되는데. 시티뱅크 앱은 계좌 잔고 등의 요약 정보를 보여 주는데 이건 또 개인 정보가 너무 노출되는 것 같아서 싫고, Swarm 앱은 체크인이 가능한데 뭐 생각하던 그 장소라면 문제 없지만 장소를 바꾸어야 하면 그것도 꽤 귀찮다. 아직까지는 애플에서 제공하는 기본 앱 이외에 서드파티 앱중에 쓸만한 건 아무것도 없다는 생각이고, 아마 향후에도 계속 그러지 않을까 한다. 주된 이유는 UI의 제약 때문인데, 이미 기본 기능과 센서 등은 기본 앱으로 충분한지라 어떤 혁명적인 앱이나 UI가 등장하지 않는 한 워치에서의 서드파티 앱은 의미가 없다고 본다.

그외에는 노티 날아오고 페블 대비 한글 걱정 안한다는 것 정도. 용두 인터페이스는 신기하긴 한데 용두 단추와 그 아래의 단추의 용도가 사실 구분이 안되어서 이 부분은 미니멀리즘을 지향하는 애플로서는 이해가 잘 안되는 부분. 용두 하나만 남겨 두어도 충분할 것으로 본다. 오래전에 매킨토시용 마우스에 단추가 하나밖에 없다는 사실에 충격을 받은 적이 있는데 (그리고 하나만 갖고도 별 문제가 없다는 점에) 그런정도의 노력은 필요하지 않았나 본다. 용두만 있으면 더 시계같아 보이기도 하고.
 
세번째이자 보통의 마지막 질문은 배터리가 얼마나 가느냐 하는 것이다. 페블을 처음에 차고 있었던 큰 이유 중의 하나가 배터리였는데, 페블은 정말 충전 안해도 일주일을 유지하기 때문에 큰 주의를 하지 않아도 된다는 장점이 있었다. 워치의 경우에는 하루밖에 안간다고 해서 불만들이 많았던 것으로 아는데, 하드웨어의 차이 때문이지 컬러와 터치 디스플레이를 갖는 경우는 다들 마찬가지인 것으로 안다. 그런데 내 경우는 주 용도가 시계와 Activity 라 그런지 (즉 조작할 일이 별로 없음), 9-10시간 정도 밖에서 보내고 퇴근해서 충전 케이블 연결하면 보통 75%는 남아 있다. 따라서 하루이틀 충전 잊어도 큰 문제는 없는데, 보통 폰이랑 세트로 들고 다니게 되다 보니 그냥 폰 충전할 때 같이 충전하는 버릇이 들어 버린다.

사실 충전케이블은 좀 불만이 있는데, 범용적인 USB를 애플에게 바라지는 않아도 라이트닝 정도였으면 호환성도 있고 좋았을 텐데 플러그가 없는 비접촉식의 충전 방식을 쓰는지라 동봉된 전용 충전 케이블이 아니면 애초에 충전이 불가능하다는 점은 단점이다. 출장갈 때 케이블 잊으면 그걸로 끝이라는 이야기. 게다가 충전시에 별로 멋있지도 않고... 물론 '나의 소중한 애플워치에 케이블 단자 구멍은 안된다는!' 과 같은 디자이너의 마음은 이해 못하는건 아니지만.

아, Activity 이야기를 하면 '그냥 핏빗 사면 더 싸고 좋지 않나요?'하는 이야기를 듣는데 이건 시계로 산거고 나머지는 다 덤입니다. 그렇게까지 운동 좋아하는 사람도 아니고...

페블도 그랬지만 소위 스마트워치를 두개 써 본 입장에서는, 현존하는 하드웨어의 제약인지 상상력의 부족인지 모르겠지만 아직은 스마트폰처럼 범용적이 되기는 어렵지 않을까 한다. 사실 이건 배터리 제약 등의 문제가 아니라, 그 작은 디스플레이를 갖고 할 수 있는게 UI의 제약이 가장 큰 문제이다. 스마트폰이 점점 커지는 이유가 답답해서인데, 워치는 갈수록 작아지지 커지지는 못하는 것이고, 완전 인공지능 음성인식이 당분간 될 리도 없고, 개인이 부담 없이 착용할 수 있는 몸에 바로 붙는 센서의 역할이 가장 크지 않을까 한다. 그외에는 아직 단순히 킬러 앱이 등장하지 않아서 그럴 수도 있겠지만.

따라서 원형이나 사각형이냐 배터리가 며칠 가느냐의 문제가 아니고, 시계 외에의 용도에서 사람들이 납득할 수 있는 용도를 찾아내는 것이 제일 큰 과제일 거라 본다. 스마트폰 초기에는 다들 화면도 작고 해상도도 낮고 배터리도 얼마 못갔지만 몇몇 킬러 앱들 때문에 순식간에 확산 되었다는 점을 잊지 않았으면 좋겠다.




2015년 8월 16일 일요일

소니의 재림: 삼성

Everyone is making fun of Samsung's BlackBerry-like keyboard case for its new phones
http://www.techinsider.io/samsung-keyboard-case-2015-8

원래 미국은 애플 팬보이의 본고장이라 이런 반응이 나온다고 해도 그렇게 어색하지는 않은데, 블랙베리의 재림이니 뭐니 하기 보다는 아직 삼성이 스마트폰으로 하고 싶은게 무엇인지 스스로 잘 이해를 못하고 있다는 반증이 아닌가 보다.

아마 물리 키보드는 블랙베리를 그리워하는 사용자 (한국에는 발매는 되었지만 애초에 끝물이라 제대로 팔린 적도 없으니)의 요청을 검토한 결과가 아닌가 싶지만, (뭐 그런 사용자 없지는 않다. 5년 전만 해도 미국 세일즈맨중 블랙베리 없는 사람이 없었는데 아이폰이 야금야금 잡아먹은 거니..) 사용자 요청에만 의존하는 것은 지금 같은 혁신 경쟁에서는 오히려 반대로 달려가는 것이라 생각.

단순하게 크기 비슷한 6+엣지와 넥서스6를 비교해 보자. 삼성 폰에는 휘어진 엣지 디스플레이가 달려 있고, 키보드가 달려 있고, 삼성페이가 달려 있는데, 그게 그렇게 큰 차이일까?

지금의 삼성을 보면 10년전의 소니를 보는것 같다. 당시 나는 바이오 노트북, 소니 카메라, 클리에 PDA를 모두 갖고 있던 (스스로 인정하기 싫은) 소빠였는데 지금은 맥북 아이패드 아이폰 애플워치를 갖고 있다. 어느시점에서 그렇게 되었는가 하면 1) 맥북 쓰면서 윈도 노트북이 필요 없어짐 2) 스마트폰 카메라가 좋아졌고 GPS태깅이 자동으로 되면서 SLR까지는 필요 없는 나는 스마트폰으로만 사진을 찍게됨 3) 클리에는 잃어버려서... ㅠㅠ 근데 일본어/영어만 잘 되나 보니 사용중에 무지 불편했음 의 과정을 거치면서 그리 되었는데, 당시 소니는 엄청난 하드웨어를 자랑 (가볍고 빠르고 우아하고, 비싼건 덤이라 하자) 했지만 소프트웨어는 조악하여 소니 노트북에 딸려오던 그 수많은 부가 설치 소프트웨어들이 어떠했는지는 써본분들은 잘 알것이다. 게다가 조그셔틀같이 혁신적으로 보이지만 실상 쓸모없는 기능, 무언가 멋져보이는데 쓸모없는 하드웨어 (구글 이미지 검색으로 Vaio P 시리즈나 GT시리즈를 찾아보자) ATRAC등 호환 안되는 음원 규격등 삽질이 겹치고 애플이나 삼성이 심플하고 좋은 제품으로 밀려 들어오니 지금의 모습이 된 것이다. 노트북 부서는 매각했고 폰은 안팔리고... 게임기는 참 잘하지만.




지금은 이미 LG가 그런 방면으로 가전 빼고 맛이 갔으니 삼성도 아래와 같은 '자랑하기 위한' 기능은 그만 넣었으면 좋겠다. 넥5나 넥6같은 심플하고 안드로이드 철학에 맞는 하드웨어를 싸고 좋은 가격에 생산하고 장기적으로 자체 OS 개발 및 서비스 개발에 힘써주었으면 하는 생각인데, 그런 건 이미 샤오미같은 중국 업체가 선점한 분야니...

2014년 11월 2일 일요일

MeetBSD CA 2014 참석기

MeetBSD는 세계적으로 열리는 BSD사용자의 모임입니다. 심각한 회의라기 보다는 각자 가벼운(또는 무거운) 주제로 발표 하고 사용자 간의 커뮤니케이션을 하는 행사입니다.

MeetBSD CA는 주로 실리콘밸리 지역에서 열리는데 2010년에 Hacker Dojo 에서 열린 행사에 참석한 적이 있습니다만 딱히 재미는 없었는지라... 2012년은 참석 못하였고, 이번 2014년 행사는 San Jose 남쪽에 있는 Western Digital (네 하드드라이브 만드는 그 회사) 사무실에서 열렸습니다.


일정은 이틀간 오전에 세션 두개 오후에 세션 두개 그리고 언컨퍼런스 형식으로 이루어집니다.

첫째날 - 11/1/2014

 

Rick Reed, “WhatsApp: Half a billion unsuspecting FreeBSD users” 

첫 세션은 WhatsApp 입니다. WhatsApp 은 최근의 여러 IT 서비스 중에서 FreeBSD로 돌아가는 가장 큰 예라고 할 수 있겠습니다. 약 6억 정도의 가입자가 있다고 하네요. 아무래도 창업자가 야후! 출신이라는 점도 작용하였을 것 같습니다만.

처음에는 오픈소스의 XMPP서버를 이용하여 서비스를 만들다가 이후에 erlang 기반의 독자 구현으로 옮겨 갔다고 합니다. OS는 FreeBSD 7 에서 시작하였다가 지금은 FreeBSD 9.1 ~ 9.3 을 사용하고 있고 10은 아직 테스트 중이라고 하네요. 서버는 약 800대 (채팅 및 사진/비디오 서버 포함)라고 합니다. 규모에 비해서는 단촐해 보이는데 서버를 꽤 한계까지 끌어서 쓰고 있는 것으로 보입니다. 동접이 140m (1.4억) 이라고 하니까 어마어마하군요.

재미있었던건 Q&A시간에 누가 설정관리 도구를 어떤 걸 쓰는지 물어 보았었는데 (흔한 대답은 puppet, chef, ansible, saltstack 같은 것입니다만) 딱히 쓰고 있지는 않고 make? 라고 하더군요 :) 서버가 몇대 안되는 관계로 (대당 open file 개수가 수백만인걸로 유명하니) 거의 수동 관리하고 있다고. 테스트도 대부분 1대 서버 정도를 실제 업데이트해 보고 문제 생기면 바로 롤백한다고 합니다. 규모에 비해서는 좀 심심한 대답이더군요. 누가 암호화에 대한 걸 물어 봤었는데 저장까지는 듣지 못했지만 초기에는 SSL을 적용 했다가 round trip 문제로 AES기반으로 별도 프로토콜을 정의해서 쓴다고 합니다. 그래도 SSL이 쓰이는 곳에 대해서는 erlang 의 SSL구현은 그리 좋지 않아서 stud 를 쓰고 있다고 합니다.

Jordan Hubbard, “FreeBSD: The Next 10 Years”

jkh 의 세션이었는데, 올해로 21년을 맞은 FreeBSD를 뒤돌아 보면 처음에는 지금의 모습에 대해서 예상하지 못한 것들이 많이 있었다고 하는군요. 따라서 앞으로 10년을 예상하는건 매우 힘들지만, 최대한 레고 블럭과 같이 조립 가능하고 유연한 OS가 되어야 하지 않을까 하는 아이디어들을 몇 이야기 했습니다. 그 중의 하나가 시스템을 정의할 수 있는 하나의 설정 파일인데, 이런 아이디어들이 대부분 OS X에서 구현되어 있다는 건 재미있는 일이더군요 (launchd 나 plist 구조 등).

사실 유닉스(의 변종)이 현재의 모바일 기기를 지배하고 있는 것이 현실이므로 (안드로이드나 iOS나 모두 유닉스 기반 입니다) FreeBSD도 그것에 맞추어 변화 하는 것이 맞겠죠.

Alex Rosenberg, "Meet PlayStation 4" 

SCE에서 나와서 발표 하였는데, PS4는 FreeBSD커널 기반으로 만들어져 있습니다. 하드웨어가 x86 기반이기도 하고요. 물론 FreeBSD가 그대로 부팅하는 것은 아니고, 커널 부팅 이후에는 일반적인 유닉스 부팅 순서를 따르는게 아니라 그 이후에는 매우 독자적인 방식이라고 합니다. 게임콘솔에서 필요한 기능을 맞추기 위해서 CPU스케줄러 등도 일부 변경 하였다고 하네요. 개발 환경도 clang 등을 사용할 수 있게 되어서 개발자 들에게 호평이라고 하는데... 게임개발자들은 대부분 윈도우 기반 개발자들이라, 비주얼스튜디오용 clang 플러그 인 등 개발자를 위한 배려가 상당히 되어 있는 것으로 보입니다. 영상을 몇 틀어 주었는데 언차티드4는 그렇다 치고 테슬라가 주인공인 게임은 좀 재미있어 보이더군요 :) (찾아보니 The Order: 1886 이군요) PS3시대와는 달리 모두 실기에서 바로 캡처하였다는 걸 강조하는 점이 재미 있었습니다. 그리고 이런류의 하드웨어는 기본적으로 10년을 보고 만들기 때문에 게임기 수명의 후반이 되면 게임개발자들이 기계를 철저하게 분석해서 생각도 못해본 품질의 게임을 만들어 낸다고 합니다. 가령 지금의 PS3같은 상황이겠죠.

디스크 뽀개기(?) 행사

FreeBSD 기반의 FreeNAS 스토리지를 만드는 iXsystems에서 나와서 하드 4개 x NAS 두개가 연결된 디스크에서 직접 FreeBSD를 빌드 하면서 디스크를 하나씩 빼보는 (8개 있으니까 구성에 따라 다르지만 7개까지는 뺄 수 있겠죠) 행사를 하였습니다. 빼낸 디스크는 망치로 깨는 퍼포먼스도... (아 회장이 Western Digital 이어서 그런지 디스크는 Seagate...)


역시 하드 8개를 다 제거 하니 빌드가 멈추더군요. :)

언컨퍼런스

여러가지 주제가 있었는데 zfs 이야기하는데 가 봤습니다. lz4 compression 에 대해서 물어 봤는데 그냥 켜 두어도 별 문제 없다고 하네요. 어차피 early abort가 있어서 압축이 안될것 같으면 그냥 저장한다고 하고, 최근 버전인지 모르겠는데 두번 이상 압축하면 더 줄어드는 효과가 있어서 한번 지정해 보아도 좋을 거라고 합니다.

Kirk McKusick, “A Narrative History of BSD”


BSD와 UFS 등으로 유명한 Kirk McKusick (사실 BSD행사의 단골 손님입니다) 이 BSD의 역사에 대해서 슬라이드 없이 (손에 들고 있는건 노트...) 옛날 이야기를 하시는 자리. 오늘의 주제는 TCP구현에 관한 BSD vs BBN 및 기타 에피소드였습니다. 자세한 내용은 "오픈 소스" 이북 (무료로 볼 수 있습니다)의 2장을 참고 하시면 되겠습니다. 이분은 이런 무용담(?) 계열을 이야기하길 꽤 좋아하시는 것 같네요. :) (vs AT&T를 다음에 듣고 싶네요. 육성으로)


둘째날 - 11/2/2014

이틀째는 아무래도 첫째날보다는 좀 루즈한 분위기인듯.

Brendan Gregg, "Performance Analysis"

각종 성능측정에 대한 이야기였는데, FreeBSD도 dtrace 등의 여러가지 다양한 측정 도구를 제공하고 있지요. 이분의 홈페이지와 블로그를 잘 읽어보면 좋은 정보를 많이 얻을 수 있습니다. 발표 중에 나왔던 이 페이지에 정리가 잘 되어 있습니다.

Corey Vixie, "Web Apps on Embedded BSD..."

사실 BSD와 직접 관련 없어 보이기는 한데 FreeNAS상에서의 웹 UI개발에 대한 이야기 입니다. 상당히 최근에 유행하는 각종 UI 라이브러리를 써서 확장 가능한 UI를 만들어 보려고 하는 것 같더군요. Facebook 의 React 를 쓰고 있다고 합니다. 특이한 점은 이러한 라이브러리도 대부분 BSD라이센스를 채용하고 있다는 것 입니다.

BSD보급을 위해 필요한 것들: 브레인스토밍

BSD보급을 위해서 각자 생각하는 의견을 교환하는 시간이 있었습니다. 그중에 마음에 드는 것은 Coursera 에 강의 올리기..

Kip Macy, Iflib, libukern

iflib는 네트워크 드라이버에 들어가는 공통 기능의 라이브러리입니다. 각종 드라이버에 들어가는 라인 수를 크게줄일 수 있다고 하네요. libukern은 사용자 모드에서 BSD커널을 돌리기 위한 라이브러리입니다. User Mode Linux나 NetBSD RUMP같은 것을 생각하면 됩니다.

Allan Jude, UCL as a system configuration language


UCL(libucl에서 상세한 문법을 볼 수 있습니다)은 pkg(8)의 설정파일 등을 지정하는 언어인데 이것을 이용하여 첫날 jkh@가 이야기 하였던 공통 설정 파일을 만들고자 하는 시도 입니다. 이런 용도면 JSON, YAML, XML등이 있는데 이런것 보다 사람이 다루기 쉽고, JSON으로 변경하기도 쉽다는 장점이 있습니다. 현재 nginx 등에서 사용되는 설정 파일 형식을 생각해 보면 쉽습니다. bhyveucl 이나 uclcmd 등을 참조해 보시면 됩니다.


끝으로

전반적으로 매우 BSD스러운 행사였습니다. BSD스럽다는건... 이쪽에서 하는 모임의 경우 나이 많은 분들도 많고, 아무래도 OS라는게 신규로 이 커뮤니티에 들어오려는 사람들이 접근하기에는 쉽지 않은 주제이다 보니 점점 커뮤니티 자체가 그대로 나이를 먹고 있다는 문제점이 있지요. 그래서 이런저런 대외 활동을 하려고 하는 것 같습니다만 이 사람들 자체가 그런 성향이 아닌지라... 그리 효과적이지 않아 보입니다.

제가 처음에 FreeBSD를 접할 때 에는 집에서 쓸만한 Unix 가 필요하다는 것 때문이었고 이후에 써야 되니 X윈도우도 설정해야 하고 한글 입출력도 해야 하고 기타 등등을 하다가 나중에 논문도 쓰고 졸업하고서는 회사 일에도 쓰게 되고 등등이었는데, 지금은 사실 집에서 쓸만한 Unix가 필요하면 그냥 맥북 쓰면 그만이고 고민할 것도 거의 없죠. 회사나 서비스에 쓸 경우에도 대부분의 경우 Linux 만 쓰면 되기 때문에 선택에 대해서 굳이 고민할 필요가 없고 주위의 사람들도 대부분 Linux면 만족하고 있고 사실 Linux 인지도 이제는 거의 중요하지 않는 상황이 되었습니다. 즉 이전보다는 OS자체에 대해 고민을 덜 하고 있고 그 위에서 어떤 어플리케이션이, 어떤 언어가, 어떤 프레임웍이 올라가야 하는지에 대한 이야기가 더 많은 것이 사실이죠.

하지만 우리가 잘 보이지 않는 곳에서 BSD가 많이 쓰이고 있다는 것도 사실이고 (Netflix OpenConnect 라든가 Sony PS4 라든가 Apple iOS 이라든가) 라이센스 등의 면에서 이전보다 눈에 덜 뜨일 뿐이지 사용이 줄었다고는 보지 않습니다. OS 자체 보다는 기술을 이용하여 만든 여러가지 제품이 있다는 것이죠. 따라서 기존에 하던 것과는 다른 방향의 마케팅이 필요하지 않을까요. 둘째날에 이에 대해 좋은 제안들이 많이 있었으니 어떤 형태로든 실현 되기를 바랍니다.

2014년 9월 11일 목요일

moto360 사용기

Google I/O 2014 에 참가한 사람 대상으로 구글이 두개의 스마트워치를 무료로 주었습니다. 하나는 행사장에서 바로 주었던 LG G Watch 와 삼성 기어 였고, (저는 LG것을 받았으나 그냥 다른 사람 줌) 또 하나 나중에 발송해 준 것이 지난주에 발매가 된 모토롤라의 moto360 입니다. 이건 좀 관심이 있었는지라 어제 도착한 후에 설정해서 착용해 보고 있습니다.

원형 시계라는 것을 강조하듯이 케이스도 원형 박스 안에 들어 있습니다. 내용물은 시계, 충전기, 케이블 정도로 매우 단촐하고요. 매뉴얼은 그냥 켜고 끄는 정도의 간단한 동작만 써 있어서 안드로이드웨어 자체에 대한 설명은 없습니다.






일단 켜 놓고 충전을 하면 다음과 같습니다. 충전 케이블을 꼽는 구멍 자체가 없고 아래 사진과 같이 전용 충전기를 써야 합니다. 충전기 자체는 마이크로 USB를 연결하도록 되어 있으므로 반드시 전원에 연결할 필요는 없고 PC에서 USB케이블로도 충전 가능하도록 되어 있습니다.


전원이 들어오면 충전기 앞쪽 바닥쪽에 조그만 불이 들어 오는데 그건 있는 줄도 몰랐으니... 충전 여부는 시계를 위와 같이 연결해 두면 시계에 충전율이 표시가 됩니다.

나머지는.. 설정은 그냥 켠 다음에 언어 정도 설정 하면 결국 폰과 연결을 해야 하고, 안드로이드폰에서 구글 플레이에서 다운로드 받을 수 있는 Android Wear 앱을 설치하고 (따라서 연결 가능한 폰은 이 앱이 동작 가능한 폰으로 제한이 됩니다. Wifi 만 되는 태블릿 등도 블루투스만 되면 연결 가능할 것 같은데 어느정도 제약이 있는지는 모르겠군요) 블루투스로 페어링해서 연결하고, 업데이트를 몇번 거치면 드디어 시계를 볼 수 있습니다.

달리 말하면 페어링 하지 않은 상태에서는 아무것도 할 게 없습니다. 시계 용도로조차 사용할 수 없고요.

기본 화면은 시계이고, 화면은 보통 꺼져 있는데 (always on 을 옵션에서 설정할 수 있습니다) 움직임을 감지 하는지 시계를 보기 위해 손을 가까이 대면 화면이 켜지고, "Ok Google" 이라고 말하면 Speak Now 라고 음성입력을 받는 모드로 전환 합니다. 아니면 단순히 시계 화면을 두번 두드려도 메뉴 화면이 나오는 심플한 구조로 되어 있습니다.

사실 안드로이드웨어 쓰는 폰은 대부분 차별점이 없는 것으로 생각이 되므로... 뭐 현재까지는 이것저것 나오기는 하는데 큰 용도는 눈에 띄지 않는군요.

기본적으로 만보기 이외에 심장박동 탐지가 들어 있는데, 뒷면 가운데 쯤에 센서가 들어 있고 측정시에 시계를 들어 보면 초록색으로 센서가 빛나는게 보이네요. 감지한 값은 아이폰의 Runtastic Heart Rate 로 비교해 보면 거의 같은 걸로 보아서 정확도는 꽤 있어 보입니다. 센서 없이 카메라+조명으로만 동작하는 Runtastic Heart Rate 가 더 뛰어난 건지도 모르겠지만...

원형인 만큼 차고 있을 때 딱히 부담은 없고 자연스러운 편입니다. 딱히 무겁다는 생각도 들지 않고요. 약간 두꺼운 듯 싶지만 패션시계 중에 이정도 두꺼운 것도 있으므로 별 무리는 없습니다. 꺼져 있는 동안은 그냥 검은색이라 별로 티도 안나고요. 다만 배터리가 1일 좀 넘게 가는 걸로 알고 있으니 매일 충전이 필요 한데, 아무것도 안하고 있으면 꽤 오래 가는 것으로 보입니다.

불만족스러운 점은.. 기본 스트랩이 인조가죽 같은데 좀 싼티가 난다는 거랑 (이건 표준 시계줄이니까 원하는 것으로 바꾸어 끼면 됩니다. 단 본체가 검은색 단색이니 이에 맞출 필요는 있겠죠) 시계가 발열이 있어 좀 따뜻합니다. 특히 충전 직후에 차면 따뜻함을 느낄 수 있는데 이는 시간이 지나면 온도가 낮아 집니다.. 차고 있어 보면 크게 거슬릴 수준은 아니고 더운데서 계속 차고 있으면 땀이 차거나 뜨거운 느낌이 싫은 분에게는 단점이 될 수 있겠네요. 물론 페어링 할 폰이 없으면 시계조차 되지 못하므로 이점도 단점이라면 단점. 물론 일단 페어링 한 후에는 폰과 떨어져 있어도 시계는 나옵니다.

이상 처음 차본 안드로이드웨어 스마트워치였습니다. 애플워치가 나오려면 한참 걸릴 거고 iOS 8에서 연동 문제가 해결 되면 페블로 다시 돌아가지 않을까 싶네요. 밧데리는 역시 페블이 타의 추종을 불허하는지라...