tag: 개발 잡동사니

안정적이고 편리한 웹기반 네임서버 관리 DNSever

2014년 3월 26일

DNSever

오랜 시간 무료로 좋은 서비스를 제공해오던 DNSever의 유료화 소식을 접하게 되었다. 이전에 회사 다니며 직접 네임서버를 구축해서 운영해본 경험으로는 정말 자잘하게 손도 많이 가고, 알아야 할 것도 많고 번거로운 부분이 한둘이 아니다. 특히 BIND는 테스트 해보기도 어렵고 책도 어렵고… 그렇다고 웹호스팅 업체에서 기본적으로 제공하는 네임서버를 사용하기엔 서브 도메인 제한이라든가 나름 불편한 구석이 많았었다.

하지만 DNSever를 알게 된 이후, 회사에서도 DNSever의 서비스를 적극적으로 사용했을 정도로 항상 애정해오던 웹서비스였다. 이 굉장한 서비스를 200대가 넘는 서버를 통해 무료로 제공해왔다는 사실에 많이 놀랐고, 이번 유료화를 통해 더욱 신뢰도 높은 서비스로 잘 자리 잡을 수 있었으면 좋겠다.

월 10,000 쿼리 미만은 계속 무료로 서비스되며 기존 사용하던 회원들 중 개인과 비영리 단체를 위해 서포터즈 프로그램 신청을 받고 있다.

부트캠프로 thunderbolt 외장 하드에 Windows 8 설치하기

2013년 12월 19일

포스트를 작성한지 시간이 꽤 지났고 더이상 부트캠프를 사용하고 있지 않아 질문을 하셔도 답변 드리기 어렵습니다. 이 모든 과정은 글에 있는 다른 블로그 포스트 링크와 구글 검색으로 해결할 수 있는 부분이니 참고하시기 바랍니다.

부트캠프를 통해 Thunderbolt 외장 하드에 Windows 8을 설치한 과정을 기록한 포스트다. 관련 글이 많은데 windows에서의 작업 없이 설치한 경우의 글은 없는 것 같아 정리해봤다.

이 글은 상당히 불친절하다. 아래의 준비물과 순서를 보고 이해가 되지 않는다면 끝없는 인내심이 필요하다. 무슨 이야기인지 조금이라도 모르겠다 싶으면 이 글 말고 부트 캠프 없이 외장 하드로 맥에서 윈도우 설치/부팅하기 또는 맥북에어13(2013 하스웰) 부트캠프 윈도우8 설치 포스트를 참고하자.

동기

맥북에어 2012 모델인데 Windows는 딱히 필요 없을 것이란 생각에 128GB SSD로 구입했다. 그러던 중 닷넷 스터디로 인해 Windows가 필요하게 되었는데 VMWare를 통해 Windows를 외부 하드에서 구동하니 실제 사용하기 어려울 정도로 느렸다. 훨씬 빠른 속도의 thunderbolt를 이용한 외장하드를 쓴다면, 거기다 저장 매체를 SSD를 쓴다면 쾌적하게 쓸 수 있지 않을까 하는 생각에 LaCie thunderbolt SSD 256GB를 구입해 Windows를 설치하게 되었다.

삽질의 주된 원인

가장 큰 문제는 Windows 설치 시 하드로 인식하느냐, usb로 인식하느냐의 차이가 있다. 부트캠프에서 windows를 usb에 옮겨 담아 실질적으로 windows의 설치 흐름을 따라서 진행하게 되는데 설치를 진행하다보면 파티션을 선택하는 부분에서 USB 또는 firewire로 연결된 장비에는 Windows를 설치할 수 없다는 메시지와 함께 더이상 진행할 수 없게 된다.

또한 Windows 콘솔 환경에서 diskpart를 이용해 파티션을 설정해야 한다. 맥에서 포맷해봐야 해당 파티션을 윈도우 설치 시 제대로 포맷되지 않는다.

준비물

  • 선더볼트 지원 외장하드 : 이 하드에 Windows를 설치 할 예정
  • 4GB 이상의 USB 메모리 : 부트캠프를 통해 Windows 이미지를 메모리에 설치
  • 설치할 Windows DVD 또는 ISO 파일 : 부트캠프에서 이미지를 설치할 때 사용
  • Windows Command Prompt에 대한 얕은 이해 (도스 명령어 정도)
  • 강인한 정신 등등

설치 과정

  1. 먼저 맥에서 Bootcamp Assistant를 실행해 windows 이미지를 usb 메모리에 담는다. usb 메모리의 내용은 초기화되므로 주의하고, 또 다른 외장 하드나 맥OS가 설치되어 있는 드라이브를 선택하지 않도록 신중하게 선택한다.
  2. 이미지를 usb에 담는 과정은 조금 지나면 끝난다. 완료되었으면 맥을 종료하고 다시 켤 때 option키를 눌러 부트로더로 진입한다.
  3. 부트로더로 진입하면 ELI 어쩌고 또는 Windows가 보이는데 뭐가 다른지 모르겠다. ELI로 진입한다.
  4. 그러면 Windows 로고가 나오면서 설치 화면 안내가 나온다. 설치를 바로 하는 것이 아니라 하단의 Repair 버튼을 눌러 command prompt로 진입해야 한다.
  5. 부트 캠프 없이 외장 하드로 맥에서 윈도우 설치/부팅하기 글의 4. 외장 하드 파티션 나누기 부분을 따라서 파티션 작업을 진행하는데 부팅용 파티션이라는 부분을 다음 순서를 위해 4GB 이상으로 설정한다.
  6. 새로 생성한 파티션 중 부팅용 파티션에 메모리에 들어있던 내용을 콘솔을 통해 전부 복사한다. (4GB가 넘음)
  7. 컴퓨터를 종료하고 USB 메모리를 뺀 후에 다시 option키를 눌러 부트로더 진입, 윈도우 시동을 한다.
  8. 외장 하드의 두번째 파티션에 Windows를 설치한다.
  9. 설치를 완료하고 재부팅해 윈도우에 들어가면 멀티부팅 설정이 되어 있는데 Setup이 아닌 Windows를 선택해 진입한다. 윈도우즈 7 멀티부팅 제거 방법 (8도 같은 방법으로 가능)
  10. Boot Camp Support Software를 내려받아 설치한다.

왜 외장 하드에 메모리 내용을 옮겨야 하나

메모리로 부팅하면 일종의 LiveCD와 같이 동작하는 상태인데 이런 경우 외장하드를 USB나 firewire로 연결한 기기라고 뜨거나 윈도우를 설치할 수 없는 상태라고 설치를 진행하지 못하게 막는다. 해당 하드에 설치 이미지를 복사하면 일반 하드로 인식해서 설치가 진행된다.

부트 캠프 없이 외장 하드로 맥에서 윈도우 설치/부팅하기 글과 다른 부분은 무엇인가

Windows 환경을 설치하지 않아도 된다는 점이다. 해당 글에서는 부팅 파티션을 생성해주는 도구를 사용하는데 Windows 환경이 있어야만 한다. 4GB 라는 용량이 낭비 같지만 문제가 생겼을 때 복구용으로 쓸 수 있다는 이점도 있다.

맥의 디스크 관리자(Disk Utility)로는 파티션 분리가 안되나

맥은 ntfs가 지원되지 않고 별도의 프로그램을 설치해야 한다. 내 경우는 ntfs-3g가 설치되어 있는데 디스크 관리자(Disk Utility)에서 ntfs로 포맷이 가능했지만 뭔가 인식이 제대로 안되었다. 그래서 Windows의 command prompt에서 포맷했더니 그때야 제대로 인식이 되었다.

성능 및 호환성

SSD에 선더볼트라서 엄청나게 빠르다. Windows 8.1이라서 성능 점수 표시 부분이 없어져 딱히 인증 할 만한 자료가 없다. 현재 Visual Studio 2012, SQL Server 등 Windows 개발 환경 설정을 모두 했는데 상당히 빠르다.

대부분의 드라이버가 잘 인식되서 정상적으로 동작한다. 화면이 어두워지고 최대 밝기로 올려도 밝아지지 않는 문제가 있었는데 Windows의 절전 모드 설정을 변경해 해결했다.

트랙패드 역방향 문제가 있는데 아직 해결하지 못했다. Registry를 수정해주면 된다고 하는데 수정해도 적용이 안된다.

결론

비싸더라도 큰 SSD가 탑재된 맥북을 구입하자.

속도가 궁금하면 다음 영상을 참고하자.

[iframe src=”http://www.youtube.com/embed/KoiaKLWfGto” width=”100%” height=”480″]

Chrome에서 Safari로 갈아타기

2013년 10월 23일

메인 브라우저로 Google Chrome을 상당히 오래 사용해왔다. OS와 상관 없이 일관적으로 제공하는 수많은 핫키들과 특히, 강력한 개발자도구로 편리하게 이용하고 있었다.

하지만 근래들어 불안하다 느껴질 정도로 메모리 사용량도 증가하고 멈추는 경우도 종종 있어서 브라우저를 Apple Safari로 사용해보려고 찾아봤다.

일반 단축키

  • 특정 순서 탭 바로 이동하기 : Cmd + 1,2,3,4확장 설치 필요
  • 바로 전에 닫은 창 다시 열기 : Cmd + Z (크롬서는 Cmd + Shift + T)
  • 앞탭 뒷탭 이동하기 : Ctrl + Tab, Ctrl + Shift + Tab (모든 브라우저 동일)
  • 주소창 바로가기 : Cmd + L (모든 브라우저 동일)
  • Reader 화면 바로보기 : Cmd + Shift + R

개발자도구 단축키

Apple Safari Developer Tools

개발자도구가 더욱 xcode스러워졌다. xcode에서 개발하기 익숙한 사람은 대다수의 UI를 유사하게 차용한 사파리의 개발자도구가 크롬의 도구보다 사용하기 편할 듯 싶다. 이처럼 일관적인 개발 경험을 제공하는 것도 좋은 전략으로 보인다. (이런 면에서 IE의 개발자도구는 개선의 여지가 많다.)

  • 개발자도구 열기 : Alt + Cmd + I
  • 개발자도구 콘솔 바로 열기 : Alt + Cmd + C
  • 인스펙팅 사용하기 : 개발자도구 연 상태에서 Shift + Cmd + C

Pocket extesion 설치

스크랩을 위해 자주 사용하는 Pocket은 Safari를 위한 확장도 제공한다. Pocket 웹사이트에서 확장을 설치할 수 있다.

Safari 확장 관련 사이트

뜻을 가늠하기 어려운 개발언어 용어들

2013년 5월 12일

얼마 전 생활코딩에서 즉시실행 익명함수라는 표현을 보고 깜짝 놀랐다. 근래에 JavaScript로 몇번 개발을 해봤다면 예제를 보면 이게 무슨 의미인지 바로 이해할 수 있겠지만 "이건 아무래도 과하지 않은가" 라고 생각했다. 이렇게까지 거창한(?) 이름이 붙는 내용이었나 하고.

개발을 배우다보면 첫눈에 이해하기 힘든 한자 조어들이 꽤 있다. 함수, 변수와 같은 용어도 프로그래밍 강의 첫시간에 나와서 쉽게 쓰는거지 그 자체로 상당히 어려운 용어다. 객체 생성자, 논리 연산자 정도는 어떤 내용을 정의한 단어인지 쉽게 이해(내지는 유추) 할 수 있지만 대리자, 비동기와 같은 단어는 쉽게 내용을 생각해내기 어렵다. 용어의 정의는 모두가 동의할 수 있고 그 정의한 용어가 해당 용례에 대한 대표성을 띌 수 있어야 한다. 용어 함의적이라면 문제가 생길 수 밖에 없다.

물론 개발에만 국한된 것이 아니라 대다수의 학문에서 사용되는 용어가 과도하게 한자로 조어되는 경향이 있다. 한자문화권이기에 이해도 되고, 서양-일본-한국의 경로로 학문이 들어오는 경우도 적잖은 영향이 있을듯 하다. 배경은 뒤로 밀어두고서 단순히 직역해 한자로 옮겨 조어를 만드는게 올바른가에 대해 좀 생각해볼 필요가 있다.

영어권 환경에서 일을 하다보니 가장 크게 느끼는, 한국과 다른 점은 용어에 대한 설명이 거의 필요 없을 정도로 쉽게 이해한다는 점이다. 디자이너도, 세일즈도, CS담당자도 모두 개발용어를 거침없이 쉽게 사용한다. 영어권이니까. 그 개발용어 자체로도 별다른 설명없이 알 수 있다는 것이 얼마나 큰 장점인지 모른다. 그런 언어적 이점에 명확한 설명을 선호하는 문화적 배경이 영어권 IT기업이 가지는 장점이라고 본다. (이와 관련해서는 적자면 내용이 더 많을 것 같아 여기까지)

단어만으로 더 쉽게 이해할 수 있는 개발언어 용어를 만들 순 없을까. 모두가 쉽게 이해할 수 있는 용어는 위에서 말한 것처럼 충분히 매력적이다. 한자어로 단어를 만들더라도 단순 사전식 직역 말고 보다 정서에 맞게 옮길 순 없을까. 앞서 언급한 즉시실행 익명함수를 예로 해보면, 함수란 원래 호출하면 바로 실행되는건데 즉시실행이란 표현도 좀 재미있는듯 하다. 익명함수는 어딘가에 선언 없이 바로 사용하는거니까, 임시함수 실행, 호출 정도가 되지 않을까. (하루종일 고민한 단어가 이 수준이라 아쉽긴 하지만;)


추가. 작성하고 나니 이전에 SICP 번역서가 생각났는데, 쉽게 풀어쓴 용어가 기존에 조금이라도 알고 있던 사람들에게는 요즘말로 멘붕을 야기했다는 후기. 차라리 한자로 쓴, 이전의 용어체계가 훨씬 이해하기 쉽다는 얘기였다. 쉽게 이해할 수 있는 용어는 매력이 있지만, 그런 용어의 정의는 역시 말처럼 쉽게 되지 않는다.

생활코딩과 ㅋㅋㅋ전략

2013년 4월 16일

생활코딩의 강의 영상이 1,000건에 다달았다는 소식을 접했다. 밥 로스와 같이 담담하고 차분한 어조로 강의하는 내용들은 제목이 말하듯 누구나 생활에서 코딩을 할 수 있도록 쉽게 풀어 보여주고 있다. 이번에 생활코딩 페이스북 그룹을 통해 공유된, 일종의 회고 영상인 ㅋㅋㅋ전략이 참 인상적이라 포스트 하게 되었다. 해당 영상은 아래의 링크를 통해 볼 수 있다.

http://opentutorials.org/course/488/4108

이고잉님의 그간 수고와 노력, 그리고 통찰을 엿볼 수 있는 내용으로 단순히 이 ㅋㅋㅋ 전략은 생활코딩에만 적용되는 것이 아니라 모든 스타트업, 서비스 프로바이더에게 공통적으로 적용되는 전략이다. 세가지가 모두 중요하나 이 세가지가 한번에 얻어지는 것이 아니란 점도 생각해봐야 한다. 각 영역이 나선형으로 상호작용하며 성장한다는 사실을 눈여겨 볼 필요가 있다.

단 한번의 기획으로 끝까지 가는 것이 아니라 끊임없이 보완하고 그 보완 과정에서 과감하게 컨테이너를 개편하는 등의 결단, 그리고 징글징글하게(?) 꾸준하게 만들어지는 컨텐츠, 다양한 사연을 가진 사람들이 모여 구성된 커뮤니티. 단순하게 세가지로 집약되는 ㅋㅋㅋ전략은 가장 쉽고 가장 어려운 전략임에 틀림 없다.

2년이란 기간, 지금까지 달려온 생활코딩에 박수와 찬사를 보내며 앞으로 성장할 그 모습을 힘차게 응원한다.

구글리더의 이별 예고, rss의 종말?

2013년 3월 18일

제목은 거창하지만 그냥 생각나는대로 적어본 글이다.

지난주 트위터를 달궜던 이슈는 역시 구글리더가 아닌가 싶다. 봄청소라는 명목으로 매년 자사의 서비스를 검토하고 정리하는 구글이 이번엔 구글 리더를 정리한다는 글을 올렸다. 덕분에 대체재로 부상된 newsblur나 feedly 등의 서비스가 트래픽 폭탄을 맞이하는 웃는게 웃는게 아니야 같은 상황도 벌어졌다. Feedly는 이 날을 준비했다며 대거 서비스 이주 프로젝트로 노르망디에 대해 알리기도 했다. (노르망디라니 작명 센스가 대단하다.)

Quora에 구글 리더 PM이 내부적인 상황을 공개했기 때문에 단순히 수익이 나지 않아 닫는다는 얘기보다는 다음 두가지 이야기로 대충 결론이 났다. 첫째는 sns 서비스 개발에 대다수 구글리더 인력이 이동했고 둘째는 구글플러스로의 통합이 이루어지고 있기 때문이다. 내가 내부에 있는 사람이 아니지만 외부에서 보고만 있더라도 회사 전체가 구글플러스에 힘을 더하려는 노력이 많이 보일 정도니 내부에서도 분명 난리일듯 싶다.

이 일로 참 다양한 의견이 많이 나왔다. Rss 자체에 대한 회의론, rss 비지니스 무용론이 대표적. 과연 이 서비스로 장사가 되는가에 대한 진지한 접근이 다시 이야기 되었다. (이 얘기는 메타블로그가 블로고스피어를 양분하던 시절을 생각나게 한다. 그때도 결국 문제는 돈이었으니까) 사실 RSS는 무지무지 오랜 역사를 가지고 있기 때문에(벌써 2013년이다) rss 리더 하나쯤 없어진다고 기술규약이 바뀐다거나 뭔가 심각해질만한 그런 기술도 아니었다. 만약 비지니스 로직이 필요한 상황이라면 차라리 주도적으로 하위 호환성과 함께 다음 세대의 rss를 빠르게 만들어 냈어야 했다. 유료 구독(이거 규약에 들어있다고 어디서 봤었는데…) 같은 접근들 말이다.

누구 말처럼 sns가 포괄적으로 rss의 형태를 가져갈 수 있다는 얘기도 있어서 차대 rss는 사실 sns라는 말도 일부 동의한다. 피드를 구독한다는 rss의 속성이 sns에도 충분하게 녹아져 있고 또 구글도 구글플러스를 염두에 두고 대체할 것이 있다 생각한게 분명하다. 하지만 sns와 rss는 소비 컨텐츠가 아직까진 많이 다르다는 생각이 든다. 정보성 글과 사생활의 글이 정제되지 않은 체로 흐르는 트윗을 보다보면 잦은 화제 변화로 생각이 잘 연결되지 않게 되더라. 근황을 보기엔 정말 좋은 구성이지만 블로그스피어에 비해 가벼운 컨텐츠가 소비되기에만 좋은 환경이란 생각이 든다. 비지니스 쪽으로 생각하면 그런 환경이 훨씬 나은 방향이다. 가십이 많을수록 돈이 될테니까. (지저분해지는 것은 늘 두번째 문제다.)

또한 모두가 구글리더의 전지적 독점 시대 속에서 레드오션으로 생각하고만 있었지 폭탄 선언 이후 그 틈에서 조금씩 점유를 가지고 있던 서비스들로 신속하게 (정말 신속하게) 재편되는 시장을 보니 구글이 잘못된 선택을 했다는 이야기도 정말 많이 보였다. 긍정적으로 보자면 구글리더에 가려져 들어나지 않았던 시장이 다시 살아났다는 얘기도 있다. 구글리더의 api에 의해 굴러가던 수많은 리더들이 “사실 우리 구글리더 없어도 잘되요” 커밍아웃과 함께 엄청난 속도로 시장의 판도를 뒤바꿨다. 뭐 여러모로 대기업이 망해야 수많은 중소기업이 살아난다는 이야기가 허상이 아닌게 들어난게 아닌가 싶다.

또한 장기적으로 봤을 때 구글이 버린 사람들 즉, 서비스 난민은 구글이 제공하는 대다수의 서비스를 믿지 않는, 모종의 적대적 관계가 될 수도 있다. 구글리더의 사용자층이 비록 한정적이라 닫아도 서비스 전반에 영향이 없을 것이란 의견도 있었지만 사용자층이 아닌 수많은 사람들이 컴퓨터를 포맷하기 위해 이 사람들을 만나게 되고 컴퓨터와 관련된 수많은 잡담을 나눌텐데 과연 영향이 없을까 싶다. (개발자라고 노트북 포맷하고 윈도 설치해주는 사람이 아닙니다 여러분!)

주섬주섬 글을 정리 해보자면 내 생각은 이렇다. 서비스 하나 닫는다고 해서 세상이 달라지는 아니라고 생각해 왔다. 대다수 닫는 이유가 늘 그 서비스보다 더 나은게 나오고 있기 때문이니까. 하지만 가장 큰 서비스가 닫는 것은 확실히 다르다. 시장에 대해 진지하게 고민하고 더 큰 서비스가 나올 원동력이 되길 기대한다.

그리고 레드오션이라고 안들어가면 좋은 기회가 왔을 때 구경만 해야 하는 상황이 온다. 그렇다고 레드오션에 무작정 뛰어들란 얘기는 아니지만, 노르망디 프로젝트처럼 준비하고 있는 곳만 시장 재편에 참여할 수 있다. 여튼 여러가지 생각해볼만한 사건인듯 하다.