Outsider's Dev Story

Stay Hungry. Stay Foolish. Don't Be Satisfied.
RetroTech 팟캐스트 44BITS 팟캐스트

기술 뉴스 #65 : 16-11-01

웹개발 관련

  • Next.js : Socket.io를 만들었던 Guillermo Rauch가 창업한 스타트업 Zeit에서 React, webpack, Babel로 간단하게 서버사이드 렌더링을 지원하는 유니버설 웹앱을 만들 수 있는 프레임웍을 공개했다.(영어)
  • Service Worker Cookbook : Mozilla에서 공개한 Service Worker 쿡북이다. 캐시 전략, 웹 푸시 등 다양한 사용 사례가 정리되어 있다.(영어)
  • Why We Chose Vue.js : 관심도에서 React.js나 Angular.js 2.0에 비해서 밀리지만 3위 정도는 된다고 생각하는 Vue.js를 GitLab이 왜 선택했는지를 정리한 글이다. Angular나 react보다 사용하기 쉽고 JavaScript를 짜듯이 쉽게 짤 수 있는 점을 선택 이유로 들었다.(영어)
  • WebAssembly Browser Preview : WebAssembly가 내년 1분기 초기 버전의 표준을 내놓기 위해서 Browser Preview 단계에 들어갔다. 이 단계에서 커뮤니티의 다양한 피드백을 받아서 표준에 적용하게 된다.(영어)

그 밖의 프로그래밍 관련

  • 10 Modern Software Over-Engineering Mistakes : 개발을 할 때 오버엔지니어링을 하지 않도록 주의해야 할 부분을 10가지로 정리한 글이다. 글쓴이의 경험을 바탕으로 시스템을 설계할 때 현실에서 사업 요구사항 등에서 이론상의 설계와 현실이 어떻게 다른지를 설명하고 그런 관점에서 주의할 점을 잘 정리해 놓았다.(영어)
  • REDIS 데이터 모델들 : 얼마 전에 가볍게 Redis를 사용하면서 명령어가 익숙하지 않아서 고생한 적이 있는데 카운트 기능, API 호출 횟수 기록, 태그 관리, 로그 수집 등 실제 사용할만한 사례별로 정리해서 Redis 명령어로 이를 어떻게 구현할 수 있는지 설명하고 있다. Redis를 사용하기 적합한 상황을 이해하기가 좋고 각 명령어의 기능을 파악하기도 좋다.(한국어)
  • I don't understand Python's Asyncio : Flask를 만든 Armin Ronacher가 Python 3에서 새로 추가된 asyncio에 대해서 쓴 글이다. asyncio가 지원하는 기능에 대해서 하나씩 설명하면서 어떤 부분이 사용하기 어렵고 어떤 문제가 있는지를 설명하고 있다. Armin이 이해하지 못하겠다니 내가 과연 쓸 수 있나 싶으면서도 각 기능이 어떻게 동작하는지 상세하게 설명된 글이기도 하다.(영어)
  • The 10 Key Features in Node.js v6 LTS Boron After You Upgrade : Node.js의 새 LTS 버전인 v6 "Boron"의 새로운 기능을 정리한 글이다. DevTools 인스펙터, V8 프로파일링부터 새롭게 추가된 경고까지 v6로 갈아타기 전에 읽어볼 만한 글이다.(영어)
  • How we deploy at npm : npm에서 120개의 인스턴스에 서비스를 어떻게 배포하는지를 설명한 글이다. Git에서 배포용 브랜치를 만들어 놓고 특정 브랜치에 푸시를 하면 자동으로 배포되도록 사용하고 있고 Slack으로 알림을 받고 오케스트레이션 도구는 사용하지 않고 있다. etcd에 설정을 넣어놓고 상태관리를 etcd에서 하는 점이 흥미롭다. 배포 자동화를 하면서 만든 GitHub 훅을 관리하는 도구와 etcd 관련 도구도 오픈소스로 공개했다.(영어)
  • LINE LIVE 채팅 기능의 기반이 되는 아키텍처 : LINE의 Line Live 서비스에서 사용한 채팅 기능의 아키텍처를 설명한 글이다. Websocket과 Akka를 통해서 대량의 채팅 메시지를 실시간으로 서비스하기 위해서 어떻게 구축했는지가 잘 나와 있다.(한국어)
  • REACTIVE Summit 2016 세션 영상 : 지난 10월 4, 5일에 미국 텍사스에서 열린 Reactive Summit의 발표 영상이 공개되었다.(영어)
  • Certbot 도입하기 ~ Let's Encrypt 갱신편 ~ : 무료로 SSL 인증서를 발급받을 수 있는 Let’s Encrypt의 인증서를 관리해주는 Certbot을 설치/사용 방법을 설명한 글이다. 초기에 Let’s Encrypt를 쓰다 보니 아직 Certbot을 도입하지 못해서 개인적으로 궁금했던 내용이다.(한국어)

IT 업계 뉴스

  • Font Awesome 5 : CSS 아이콘 툴킷인 Font Awesome이 버전 5를 위해서 킥스타터에서 펀딩을 받고 있다.

볼만한 링크

  • ColorizerJS — My First Hack Project at eBay : 대학을 졸업하고 eBay에 취직한 직원이 첫 해커톤 프로젝트로 상품 이미지의 배경이 회색으로 보이는 걸 방지하려고 색을 추측하는 프로젝트를 진행한 과정을 설명하고 있다. 다른 직원이 평균값으로 뽑아서 이 시도를 했으나 많은 이미지에서 별로 좋아 보이지 않아서 외곽 부분만을 추출해서 자연스러운 배경색을 만든 과정을 설명하고 있다. 기술적인 내용보다는 과정만 설명하고 있어서 기술 배경이 없어서 읽기에 좋다.(영어)
  • 급성장하는 스타트업은 미친 아이디어여야만 한다. : 어떤 아이디어가 스타트업에 적합한 아이디어인가를 설명한 글이다. 좋은 아이디어는 오히려 대기업이 뛰어들 수 있어서 경쟁이 심해지므로 스타트업에게는 좋은 아이디어가 아니고 오히려 남들은 관심 없어 보이는 미친 아이디어가 스타트업에게 적합하다는 이야기의 글이다.(한국어)
  • Airbnb가 앱을 만드는 방식 : Airbnb의 디자인 VP인 Alex Schleifer가 작성한 The Way We Build를 번역한 글로 개발 프로세스가 계속 진화한 데 비해서 디자인 프로세스는 많이 발전하지 못해서 협업에 부족한 부분을 해결하기 위해서 DLS(Design Language System)을 만들어서 협업을 개선한 방법을 설명하고 있다. 그 과정만 있을 뿐 자세한 DLS에 대한 설명이 없는 게 좀 아쉽다.(한국어)
  • 깃허브, ‘커뮤니티 가이드라인’ 공개 : GitHub에서 커뮤니티에서 활동할 때 염두에 두어야 할 가이드라인을 공개했다.(한국어)

프로젝트

  • syntax : node.js로 만들어진 언어 파서, 파싱 자체는 언어에 종속적이지 않고 파싱 과정을 볼 수 있는 교육용 목적이다.
  • flv.js : HTML5로 만들어진 플래시 비디오 플레이어.
  • IGListKit : 인스타그램이 오픈소스로 공개한 iOS UICollectionView 프레임워크.
  • HashiCorp's Best Practices Ops : 해시코프의 Packer, Terraform등의 도구를 AWS, Google 클라우드에서 사용하기 좋은 접근을 정리한 저장소.

버전 업데이트

2016/11/01 22:30 2016/11/01 22:30