토요일, 2월 28, 2015

[일상다반사] (Quora) 뭔가를 배우는 가장 좋은 방법은?

Quora를 읽다보니 What's the best way to learn something?라는 흥미로운 글이 올라와서 독자 여러분들께 소개해드리겠다.

제 기억 속에서 떠나지 않는 제 은사가 들려준 이야기가 하나 있습니다.

도자기 선생님이 반을 둘로 나눴습니다.

한쪽 그룹에 선생님이 말했습니다. "이번 학기 동안 도자기 이론을 배우고, 완벽한 도자기를 계획하고, 설계하고, 만들 것입니다. 학기 말에 누가 만든 도자기가 가장 훌륭한지 품평회를 열 것입니다."

다른 그룹에 선생님이 말했습니다. "이번 학기 동안 엄청나게 많은 도자기를 만들 것입니다. 학점은 학기가 끝날 때까지 완성한 도자기 수로 매깁니다. 학기 말에, 가장 잘 만든 작품을 품평회에 낼 기회가 주어집니다."

도자기 하나만 만드는 그룹은 연구와 계획과 설계에 매진했습니다. 그리고 경쟁을 위해 완벽한 도자기 하나를 만들었습니다.

도자기를 여러 개 만드는 그룹은 즉시 찰흙을 빚어 도자기를 대량으로 만들기 시작했습니다. 큰 도자기, 작은 도자기, 간단한 도자기, 복잡한 도자기를 만들었습니다. 엄청나게 많은 도자기를 만들기 위해 체력을 소비했고 여러 주 동안 근육통으로 고생했습니다.

학기가 끝날 무렵, 양쪽 그룹은 경쟁을 위해 가장 잘 만든 도자기를 제출했습니다. 투표를 시작하자, 거의 모든 최고 작품상은 도자기를 여러 개 만든 학생들이 차지했습니다. 쌓은 경험을 바탕으로 완벽한 도자기 하나를 만드는 계획가들에 비해 실천가들은 엄청나게 좋은 도자기를 만들었습니다.

인생에서, 기술을 익히려면 도자기를 여러 개 만드는 방법이 가장 좋습니다.

EOB

토요일, 2월 21, 2015

[B급 프로그래머] 2월 3주 소식

설 연휴 모두 잘 보내고 계신지? 2월 3주 소식을 정리해보았다.

  1. 웹/앱 소식
  2. 개발/관리도구 소식
  3. 고성능 서버/데이터베이스 소식
  4. 기타 읽을거리
EOB

토요일, 2월 14, 2015

[일상다반사] (풀 스택 엔지니어로 이끌어주는) MEAN 스택을 사용한 모던 웹 개발 입문

지난번 일래스틱서치 관련 서적 출간 소식을 전한지도 한참 지난 느낌이다. 오늘은 요즘 관심이 집중되고 있는 풀 스택 엔지니어를 위한 멋진 도구인 MEAN(MongoDB, Express, AngularJS, Node.js) 스택 관련 번역서인 'MEAN 스택을 사용한 모던 웹 개발 입문'을 소개드린다. 현재 Yes 24에서 절찬 예약 판매 중이며, 내주 출간 예정이지만 설 연휴가 겹쳐 배송이 조금 지연되고 있다는 점을 양해해주시기 바란다.

이 책은 얇은 책 한 권에 MEAN 스택을 사용한 개발에 필요한 거의 모든 내용이 담겨 있기 때문에 늘 바쁜 업무로 인해 시간에 쫓기는 국내 개발자들이 부담없이 접근할 수 있다는 특징이 있다. 목차를 보면 알겠지만, 익스프레스를 사용한 노드 API 서버 구축(CRUD 중심), 바우어를 사용한 프론트엔드 의존성 관리와 AngularJS 앱 제작, 걸프를 사용한 빌드 자동화, 웹소켓을 사용한 푸시 통지, 종단간 테스트, 노드 서버 테스트, AngularJS 테스트에 이르기까지 풀 스택 엔지니어를 이끌어주는 주제를 망라하고 있다. 게다가 현업 Devops 개발자를 위해 PaaS 서버인 허로쿠와 (국내 개발자들 사이에 뜨고 있는) 디지털 오션에 배포하고 확장성을 높이는 방법까지 소개한다. 일단 이 책 한 권이면 MEAN을 맛보기에 전혀 무리가 없다는 생각이다. 물론 개별 주제에 대한 세부 지식이 필요할 경우 시중에 번역서와 저서가 꾸준하게 나오고 있으므로 부족한 부분을 채워나가면 된다.

저자가 상당히 꼼꼼하므로 깃허브 dickeyxxx/mean-sample에 본문에 나오는 모든 예제를 장별로 브랜치를 따서 제공하고(상당히 신선한 시도였다), 아예 허로쿠에 최종 예제를 배포했기에 책을 읽기 전에 미리 예습(?)하고 책을 읽으면서 복습할 수 있게 도와준다.

출간 기념으로 독자 여러분들께 드릴 선물을 하나 준비했다. 지난번 클린코드 복간 기념 발표 자료에 엄청난 성원을 보내주신 독자 여러분들께 다시 한번 감사하는 의미에서 지난 KELP 세미나 때 'MEAN 스택을 사용한 IoT 개발'이라는 주제로 발표한 자료를 슬라이드 셰어에 올려 공유해드린다. 올 겨울 4회에 걸친 숙명여자대학교/서일대학교 특강에서도 세미나 교재로 사용한 이 자료는 MEAN 설명과 함께 MEAN 스택을 사용해 최소한의 CRUD RESTful API 서버와 AngularJS 관리 프로그램을 만드는 예제(node-collector와 angular-lamp-app 참조)까지 제공하므로 오늘 소개하는 번역서와 더불어 함께 읽어보면 MEAN 입문에 많은 도움이 될 것이다.

그리고 보너스 소식 한 가지 더! 팩트 출판사에서 나온 'MEAN Web Development' 서적도 지금 한창 번역을 진행 중이므로 조만간 독자 여러분을 찾아뵐 예정이다. 'MEAN 스택을 사용한 모던 웹 개발 입문'을 읽고 나서 MEAN에 대해 더 깊은 내용을 알고 싶은 독자에게 적합하므로 기대하셔도 좋다(아마존 별 넷 반!).

아무쪼록 2015년 한 해도 많은 성원 부탁드리겠다. 설 연휴 모두 즐겁게 보내시기를 기원한다.

EOB

[일상다반사] FALinux' Docker 의 원리 해부' 세미나 소개

작년부터 Docker에 대한 관심이 집중되고 있다. 클라우드의 열풍이 불면서 가상화 기술이 상당한 인기를 끌고 난 다음이라 새롭게 등장한 Docker에 대한 차별성이 무엇인지에 대한 궁금증도 더불어 커지고 있다.

Docker를 간단하게 설명하자면 애플리케이션 빌드, 배포, 실행을 위한 개발자와 시스템 관리자를 위한 개방형 플랫폼이다. Docker는 게스트 운영체제와 운영체제 구동을 위한 바이너리/라이브러리를 모두 포함하는 가상 기계와는 달리 단지 실제 필요한 애플리케이션과 라이브러리만 포함한다. 컨테이너 기술을 사용해 호스트 운영체제의 사용자 영역에서 격리된 프로세스 형태로 구동하며, 다른 컨테이너와 커널을 공유한다. 따라서 가상 기계의 자원 격리와 할당이라는 장점을 누리면서도 이동성과 효율성을 보장하므로 두 마리 토끼를 모두 잡는 효과가 있다.

What is Docker?에서 가져옴)

Docker가 개발자와 시스템 관리자 모두에게 인기를 끄는 이유는 완전히 이동한 앱을 어디서나 실행 가능하게 만들어 배포할 수 있기 때문이다. 개발자는 Docker Hub에 올라온 13,000 가지가 넘는 앱 중 하나로 시작할 수 있으며, 시스템 관리자는 개발자가 만든 앱이 동작하는 환경을 쉽게 이해하고 적극적으로 제어할 수 있다. 표준화된 개발/배포 환경을 제공하기 때문에 개발/테스트/운영 환경의 간극을 좁힐 수 있다. 게다가 베어메탈은 물론이고 사설/공개 클라우드 위에서 자유롭게 사용 가능한 Docker의 경량화된 런타임 엔진 덕분에 요구에 대응해 빠른 확장이 가능하다.

그렇다면 Docker의 동작 원리는 어떨까? 일반적인 경우라면 내부 구조까지 속속들이 알고 있을 필요는 없지만 별도의 가상화나 반가상화 기술을 사용하지 않고 커널 위에서 동작하기 때문에 Docker를 제대로 활용하기 위해서는 커널의 어떤 특성을 십분 활용하는지 탐험할 필요가 있다. 이에 개발자와 관리자 여러분을 위해 Docker의 원리를 커널 저장소, 커널 이름공간, 커널 컨트롤그룹, 커널 네트워크라는 네 가지 측면에서 해부하는 FALinux 2015년 첫 공개 세미나 소식을 접했다.

Docker 자체에 대한 관심 많은 개발자, Docker를 한 단계 더 높은 수준으로 활용하고 싶은 개발자, 단순 시스템 관리를 떠나 Devops에 관심이 많은 시스템 관리자라면 이번 세미나를 통해 Docker에 대한 이해 수준을 한 단계 더 높일 수 있으리라 기대한다.

행사 소개 내용은 다음과 같으며, FALinux 세미나 소개 페이지에서에서 등록 가능하다.

Docker가 무엇이며 동작 원리를 파악했다면 직접 실무에 적용할 일만 남았다. 아무쪼록 Docker를 활용해 개발과 서비스 생산성을 높여 기업과 개인의 경쟁력을 한층 더 강화하는 데 많은 도움이 되면 좋겠다.

EOB

토요일, 2월 07, 2015

[B급 프로그래머] 2월 1주 소식

오늘은 흥미로운 읽을거리를 잔뜩 정리해보았다.

  1. 웹/앱 소식
  2. 개발/관리도구 소식
  3. 고성능 서버/데이터베이스 소식
  4. 기타 읽을거리
EOB