Outsider's Dev Story

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

기술 뉴스 #119 : 19-02-01

웹개발 관련

  • HTTP/3: From root to tip : 1991년에 나온 HTTP/0.9부터 QUIC 기반의 HTTP/3까지 어떻게 발전해 왔는지를 그 역사를 정말 자세하게 설명하는 글이다. 표준을 제정하는 IETF가 어떤 프로세스로 RFC를 만드는지 설명하고 HTTP/0.9, HTTP/1.0, HTTP/1.1, SSL, TLS와 최근에 나온 HTTP/2의 역사를 설명하고 앞으로 나올 HTTP/3의 배경을 설명하고 이를 한눈에 볼 수 있는 타임라인을 제공하고 있다. HTTP의 역사를 총정리해 놓은 글이나 다름없어서 HTTP에 대해서 궁금할 때 두고두고 봐도 좋을 글이다.(영어)
  • React-cache, time slicing, and fetching with a synchronous API : 비동기 동작을 동기 API로 사용할 수 있게 하는 react-cache를 설명하는 글이다. 글만으로는 완전히 이해하지 못했는데 React의 fiber 아키텍처에서 동기로 보이는 코드가 어떻게 비동기 작업이 실행되는지 설명하기 위해서 Algebraic effects의 개념과 실제로 어떻게 동작하는지 보여주고 있다. 그리고 이 방식이 React에서 컴포넌트 렌더링에 어떻게 영향을 주는지 설명하는데 React를 별로 안 해봐서 완전히 이해하진 못했지만, 시간을 들여서 자세히 볼만한 가치가 있어 보인다.(영어)
  • How I built an async form validation library in ~100 lines of code with React Hooks : form의 유효성 검사는 다른 필드와의 검사 타이밍이나 동기/비동기 검사, 폼 제출 전에 검사 등 신경 쓸 요소가 많은데 아직 실험적인 API이지만 React Hook을 이용해서 이를 쉽게 처리하는 방법을 설명하는 글이다. 코드가 많지 않으면서도 깔끔하게 폼 처리를 하고 있어서 React Hook에 관심 있다면 살펴볼 만하다.(영어)
  • 코딩 없이 10분 만에 REST API/Graphql 서버 개발하기 : 최근 Headless CMS에 관심이 많은데 그중 하나인 strapi로 API 서버를 만드는 방법을 설명한 글이다. 백엔드 서버를 코딩하지 않고도 UI 상에서 간단하게 데이터베이스 스키마를 구성해서 RESTful API와 GraphQL로 제공하는 방법을 설명한다. 아주 복잡한 백엔드는 힘들겠지만 간단한 기능은 strapi로 쉽게 만들 수 있을 것 같다.(한국어)

그 밖의 프로그래밍 관련

  • 타다 시스템 아키텍처 : VCNC에선 만든 모빌리티 플랫폼인 타다의 전체 시스템 아키텍처를 설명한 글이다. Kotlin, k8s, gRPC, Terraform 등 선택한 기술과 서비스를 설명하고 전체 구조부터 차량 위치를 업데이트하거나 배차할 때 시스템에서 어떻게 처리하고 있는지를 설명하고 있다. 전체 구조를 파악해 볼 수 있는 좋은 글이다.(한국어)
  • AWS Lambda@Edge에서 실시간 이미지 리사이즈 & WebP 형식으로 변환 : 당근마켓에서 이미지를 AWS Lambda로 리사이징 처리하던 기존 방식을 Lambda@Edge를 이용해서 첫 요청 시 동적으로 리사이징하도록 개선한 과정을 설명하고 있다. 모든 리사이징 이미지를 저장해 두어야 하고 이미지 크기나 형식을 바꾸기 어려운 문제점을 바꾸기 위해서 요청 시 리사이징해서 CDN에 캐시 하도록 개선했으며 Lambda@Edge의 제약사항을 포함해서 사용한 코드까지 나와 있어서 Lambda@Edge를 어떻게 사용하면 되는지 이해하기 좋다.(한국어)
  • 오픈소스 프로젝트를 운영하며.. : TOAST UI 시리즈를 오픈소스로 공개하면서 인기를 많이 얻고 있는 NHN엔터테인먼트의 FE 개발 랩에서 그동안 TOAST 프로젝트를 오픈소스로 공개한 과정과 그 성과를 정리한 글이다. ui.jsdoc-template를 시작으로 오픈소스로 공개하기 시작하면서 GitHub에서 인기를 얻기 시작해서 얻은 결과와 이를 통해서 채용에서 효과를 본 내용을 설명하고 있다. 국내 회사에서 오픈소스를 하는 회사가 많지 않고 하더라도 대부분 국내용 오픈소스 프로젝트를 많이 하는데 전 세계에서 인기를 얻는 프로젝트를 여럿 진행하고 있다는 점에서 고무적이다.(한국어)
  • Flutter란? : Eric Windmill의 글을 번역한 글이다. Dart로 iOS/Android 모바일 앱을 만들 수 있는 Flutter가 왜 좋은지 설명하는 글이다. Flutter로 만드는 방법 자체보다는 핫 리 로딩을 지원해서 빠르게 개발할 수 있고 React Native가 사용하는 JavaScript Bridge 대비 네이티브로 컴파일되기 때문에 성능이 좋다는 점을 강조하고 있다.(한국어)
  • I-want-to-study-Data-Science : 데이터 사이언스 공부에 도움이 될 내용을 정리한 저장소이다. 직군 설명부터 공부해야 할 내용뿐 아니라 취업까지 데이터 사이언스를 어떻게 공부하면 좋을지 어려운 사람들이 참고하기 좋은 자료를 정리해 놓았다.(한국어)

블록체인 관련

  • 이더리움 콘스탄티노플 하드포크 무기한 연기 : 1월에 예정되어 있던 이더리움의 콘스탄티노플 업데이트에서 문제점이 발견되어 무기한 연기되었다.(한국어)
  • 왜 우리는 지금 EOS인가? : EOS를 왜 주목해야 하는지 설명하는 글이다. 사용할 때 Gas를 지불해야 해서 사용자에게 큰 장벽이 되는 Ethereum과 달리 서비스 제공자가 EOS를 스테이킹 해 두어야 하므로 사용자는 무료로 이용할 수 있고 높은 가용성을 제공하고 있다고 설명하고 있다. 추가로 EOS의 헌법을 통해서 스마트 컨트랙트의 의도를 확인하고 중재할 수 있으므로 다른 블록체인과 차별점을 가지고 있다.(한국어)

볼만한 링크

  • 발표의 정석 : 발표를 잘하시는 하용호 님이 그동안의 발표 경험을 정리한 글이다. 발표를 통해서 하용호 님이 어떤 기회를 얻었는지를 설명하고 발표를 할 때 어떻게 준비하는지를 정리한 자료이다. 하용호 님의 발표를 들으면 정말 재미있으면서도 핵심 내용이 모르는 사람도 이해하기 쉽게 잘 전달된다는 느낌이 강한데 이 자료를 보면 그런 발표를 만들기 위해서 얼마나 노력하셨는지를 알 수 있다. 120 장이 넘는 자료지만 꼭 읽어봐야 할 정도로 알차다.(한국어)
  • 왕년의 마이크로소프트가 아니다. (번역) : This is not your father's Microsoft의 번역 글로 현재 Microsoft의 사티아 나델라(Satya Nadella)가 Microsoft를 어떻게 바꾸고 있는지를 설명한 글이다. 최근 몇 년간 MS가 달라지는 모습은 놀라울 정도인데 나델라가 CEO가 되면서부터 "마이크로소프트를 좀 더 트렌디하게, 좀 더 요즘 느낌으로 리브랜딩하는 것"을 목표로 하면서 어떻게 바꿔왔는지가 잘 나와 있어서 재미있게 읽었다. MS 정도의 공룡 기업이 이렇게 단기간에 변화하는 것은 놀라울 정도다.(한국어)
  • ‘스타2’ 프로게이머 이긴 ‘알파스타’가 의미하는 것 : 지난 25일 딥마인드의 AlphaStar가 Starcraft 2로 사람과 대결을 하고 10:1로 승리했다.(한국어)
  • 2018년, 내가 모르는 기술들 : Redux를 만들고 현재 React 프로젝트에 참여하고 있는 Dan Abramov의 Things I Don’t Know as of 2018를 번역한 글이다. Redux와 React에 참여하고 있는 유명한 개발자인 만큼 사람들이 개발 관련한 모든 기술을 다 알고 있을 거라고 생각하는데 자신이 모르는 기술들을 솔직하게 정리한 글이다. 이런 사람도 다 아는 건 아니구나 싶은 생각이 드는 글이다.(한국어)
  • 파이썬 코어 개발자가 되기까지 : Emily Morehouse가 파이썬 코어 개발자가 된 과정을 쓴 MY PATH TO BECOMING A PYTHON CORE DEVELOPER를 번역한 글이다. 파이콘에서 귀도 반 로섬의 얘기를 듣고 코어 개발자가 되려고 노력해서 3년이나 걸려서 코어 개발자가 된 얘기인데 오래되고 인기 있는 프로젝트에 새로 들어갔을 때의 어려움과 고민까지 잘 나와 있다.(한국어)
  • 좋은 기술 블로그를 만들어나가기 위한 8가지 제언 : 좋은 블로그를 만든다는 관점에서 좋은 글을 쓰는 것 부터 블로그 도구와 독자와 나중을 위한 콘텐츠 보존 및 수익 등 전체적인 운영에 대해서 정리한 글이다. 블로그를 만들 생각이 있거나 운영을 시작한 사람들이 중요하게 생각하는 부분을 잘 지적하고 있다.(한국어)

IT 업계 뉴스

프로젝트

  • CloudQuery : 웹사이트에서 선택한 콘텐츠를 CSS 셀렉터로 필터링해서 API로 만들어주는 프로젝트.
  • GitHub Actions Toolkit : GitHub 액션에 필요한 파일을 만들어주고 Node.js 환경에서 액션에 필요한 Octokit SDK와 함수를 제공하는 npm 모듈.
  • Docker Traffic Control : 컨테이너 레이블에 따라 네트워크 제한을 걸거나 지연시간, 손실, 복제 등을 에뮬레이트할 수 있는 프로젝트.
  • Lighthouse Bot : GitHub 풀리퀘스트와 통합해서 Lighthouse 검사를 해주는 봇.
  • websocketd : STDIN/STDOUT을 쓰는 프로그램을 WebSocket 서버로 만들어주는 명령행 도구.

버전 업데이트

2019/02/01 04:25 2019/02/01 04:25