Outsider's Dev Story

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

기술 뉴스 #89 : 17-11-01

웹개발 관련

  • 그런 REST API로 괜찮은가 : Deview에서 발표된 발표자료로 API를 개발할 때 REST API라는 용어를 많이 사용하는데 로이 필딩이 만든 REST API라는 개념이 실제로 어떤가를 아주 잘 설명하고 있다. 이응준 님의 발표는 믿고 보는 편인데 여기서도 Spec에 나온 REST API의 정의와 실제 현실에서 구현하고 있는 REST API의 차이점을 제대로 보여주고 Spec에 맞게 구현하려면 어떻게 해야 하는 지도 나와 있어서 우리가 REST API라고 불러야 할지에 대한 질문을 던져주고 있다.(한국어)
  • TLTR; Redux : Redux의 사용법과 구조를 정리한 글인데 아주 간결한 설명으로 모든 사용방법이 다 나와 있다. 간단한 코드로 Redux가 동작하는 방식을 설명하고 React 컴포넌트와 연결해서 사용하는 방법과 Redux를 비동기로 사용하는 방법까지 나와 있다. Redux를 아직 잘 모르는데 제대로 쓸 때 이 글을 다시 보면 Redux를 이해하는 데 도움이 많이 될 것 같다.(영어)
  • (번역) CSS에 대한 깊은 이해: 폰트 매트릭스, line-height와 vertical-align : Deep dive CSS: font metrics, line-height and vertical-align의 번역 글로 CSS로 line-hight와 vertical-align을 제대로 다루는 것이 왜 어려운지를 설명하기 위해서 CSS가 각 폰트에서 line-height를 결정하는 기준과 vertical-align의 기준을 잡는 원리를 아주 상세하게 설명하고 있다. 이 글만 읽어도 얼마나 복잡한지를 알 수 있을 정도고 다 읽고도 실제로 사용할 때 제대로 쓸 수 있을지 걱정되긴 하지만 항상 디자이너와 협업해서 CSS에서 간격을 맞출 때 고생하는 부분이라서 두고두고 보기에 좋은 글이다.(한국어)
  • Saying Goodbye to Firebug : 2005년부터 파이어폭스의 개발자도구로 만들어진 Firebug가 이제 Firefox Quantum 릴리스를 앞두고 종료를 선언했다. 이글에는 그간 Firebug의 12년의 히스토리가 담겨있다. 지금은 안 쓰지만 예전에는 Firebug가 없으면 웹 개발을 못할 정도로 잘 쓰고 있었고 지금의 개발자도구에 Firebug가 준 영향이 크다고 생각하기 때문에 종료가 맞는다고 생각하면서도 애잔하게 느껴진다.(영어)
  • sonar: Linting the web forward : 웹사이트를 검사해서 접근성, 성능, PWA, 보안등을 검사하는 도구를 Microsoft에서 공개했다. Sonar는 온라인으로 이용할 수도 있고 npm으로 설치해서 커맨드라인으로도 사용할 수 있다.(영어)
  • Mozilla brings Microsoft, Google, the W3C, Samsung together to create cross-browser documentation on MDN : MDN 문서화에 Mozilla뿐만 아니라 Microsoft, Google, W3c, 삼성도 참여하기로 했다.(영어)

그 밖의 프로그래밍 관련

  • 책 읽어주는 딥러닝: 배우 유인나가 해리포터를 읽어준다면 : 특정 사람의 음성을 딥러닝으로 학습시켜서 임의의 텍스트를 읽게 하는 내용이다. 딥러닝을 잘 몰라서 발표내용을 다 이해는 못 했지만 데모 페이지에서 음성을 들어보면 완벽하진 않아도 꽤 흥미롭고 해당 소스가 공개되어 있어서 실제로 사용해 볼 수 있다.(한국어)
  • DOCKER PLATFORM AND MOBY PROJECT ADD KUBERNETES : Docker가 Swarm뿐 아니라 Kubernetes도 네이티브로 지원하게 되었다.(영어)
  • AWS VPC with Terraform Modules : Terraform의 모듈을 이용해서 VPC를 정의하는 방법을 설명한 글이다. VPC 자체가 꽤 복잡해서 VPC에 대해서 자세히 알지 못하면 글이 좀 어려울 수도 있는데 이 글을 통해서 모듈에서 사용할만한 많은 인터폴레이션 팁이나 모듈의 관리 부분이 잘 정리되어 있다.(한국어)
  • VIM AFTER 15 YEARS : Vim을 사용할 때 유용한 플러그인 및 tmux와 함께 터미널에서 사용하면서 유용한 사용방법을 꽤 자세하게 설명하고 있다. Vim을 헤비하게 사용하는 편은 아니고 플러그인 등을 너무 잘 갖춰놓으면 다른 곳에서 개발하기가 어려우므로 적당히만 쓰는 편이지만 이 글을 보니 하나하나 적용해보면서 나에게 맞는 플러그인을 찾아볼까 하는 생각이 들었다. 글이 길지만, 기본 사용법 외에 플러그인 위주로 좋은 사용방법을 알기 좋은 글이다.(영어)
  • Node.js Best Practices : Node.js로 코드를 작성할 때 좋은 사용사례를 모아놓은 저장소이다. 이런 부분을 많이 찾아놨다면 엄청 새로운 내용이 있는 것은 아니지만 구조를 어떻게 나누고 오류를 어떻게 처리할지를 알기 쉽게 잘 정리해 놓았다.(영어)
  • Introducing the Graphcool Framework : Graphcool에서 GraphQL 백엔드를 쉽게 작성해서 배포할 수 있는 프레임워크를 공개했다.(영어)

볼만한 링크

  • 스타벅스 연결러 앱 공개 & 개발 후기 : 예전에 개발기 올리시던 걸 읽은 기억이 있는데 최근에 스타벅스에서 WiFi에 연결할 때 개인정보 동의하는 부분을 자동화한 스타웍스 앱을 공개하고 그 개발 후기를 올린 글이다. 그동안 개발이 멈춘 사정과(사이드 프로젝트를 하는 사람으로서 공감 가는...) ES6와 한글 코딩을 도입한 점, 그리고 기프트웨어로 공개한 관점 등이 꽤 재미있다. 이분은 흥미로운 접근을 많이 하셔서 작업하시는 내용을 공유해 주시는 부분이 재미있다.(한국어)
  • 알파고는 스스로 신의 경지에 올랐다 : 딥마인드가 공개한 네이처 논문을 기반으로 알파고 Fan, Lee, Master, Zero가 어떻게 다르고 이 발표를 어떻게 봐야 하는지 설명한 글이다. 딥러닝 쪽은 잘 몰라서 직접 원문을 읽고 이해하기가 어려운 편이라서 이렇게 깊은 수준으로 해설을 해주는 글은 어느 정도 사전 지식을 쌓는 데 크게 도움이 된다.(한국어)
  • 더 이상 배우려 하지 않는 개발자 : Expert Beginner의 등장 : How Developers Stop Learning: Rise of the Expert Beginner의 번역 글로 기술을 배울 때 Novice, Advanced Beginner, Competent, Proficient, Expert로 발전하게 되는데 Advanced Beginner에서 Competent 단계를 넘어서기가 쉽지 않으므로 이 과정에서 Competent로 가지 않고 Expert Beginner 즉, 자신이 전문가라고 착각하는 상황에 빠지게 되는 개발자들을 설명한 글이다. 이렇게 분석적으로 생각해 본 적은 없어서 처음에는 맥락이 어색하게 느껴졌지만 곰곰이 생각해 보면 소프트웨어 업계에 이런 개발자가 은근히 많이 있고 나도 많이 경험해 봤다는 걸 깨닫게 되었다. 이런 상황에 빠지지 않으려고 오픈소스나 커뮤니티 속에 있는 거긴 하지만 상황을 아주 잘 분석해 놓은 글이라 생각해 볼 여지가 많다.(한국어)
  • 실리콘 밸리의 잘나가는 5개 기업과 인터뷰를 봤는데 다 붙고만 썰 : 실리콘 밸리에 있는 Airbnb, Google, Facebook, LinkedIn, SalesForce에 면접을 보고 다 붙은 과정을 설명하고 있다. 제목을 처음 봤을 때는 가볍게 봤는데 2~3달 준비하면서 문제풀이나 시스템 디자인을 공부하고 각 전화면접이나 온사이트 면접에 대한 준비 자세와 과정이 나와 있어서 정말 많이 준비해서 저런 결과가 나오는 거구나 싶었다. 번역도 재밌게 되어 있어서 편안하게 읽을 수 있다.(한국어)

IT 업계 뉴스

  • Key Reinstallation Attacks : KRACKs로 알려진 WPA2 취약점 공격이 발견되었다. 같은 네트워크 안에 있는 공격자가 이 취약점을 이용하면 안전하다고 여겨지던 민감한 정보를 공격자가 탈취할 수 있다. 이 취약점은 업데이트로 해결할 수 있으며 HTTPS를 이용하는 경우는 안전한 것으로 알려졌습니다.(영어)
  • MongoDB prices its IPO at $24 per share : MongoDB가 나스닥에 상장했다.(영어)

프로젝트

  • PROBOT : GitHub에 연동해서 이슈를 닫거나 댓글을 다는 등 작업 흐름을 자동화할 수 있는 봇.
  • Chatfuel : 코딩 없이 Facebook 봇을 만들 수 있는 서비스.
  • Froala Design Blocks : Bootstrap 4에 기반을 둔 170여 개의 디자인 블록을 모아놓은 프로젝트.
  • minideb : Bitnami에서 만든 Debian 계열로 경량화된 Docker 이미지.
  • Napa.js : V8 위에서 멀티스레드를 구현한 JavaScript 런타임으로 Microsoft에서 오픈소스로 공개했다.
  • VimAwesome : Vim의 인기 플러그인을 볼 수 있는 웹사이트.

버전 업데이트

2017/11/01 04:16 2017/11/01 04:16