How Concurrent React changes the game for data-heavy UI : React에 실험적 기능으로 들어가 있는 Suspense와 Concurrent 모드를 사용하면 어떻게 컴포넌트 로직에서 데이터 로딩을 분리할 수 있는지를 설명하는 글이다. 설명하는 예제도 Suspense와 Concurrent 모드를 어떻게 사용하면 좋을지 이해하기 쉽게 구성해서 보여주고 있다. 다만 이 기능을 아직 초기 실험 기능이라서 많이 바뀔 것이므로 실제로 사용할 수는 없지만, 글쓴이는 이 기능이 아주 강력할 것이라고 기대감을 표현하고 있다.(영어)
The Maturing of QUIC : 지금은 HTTP/3가 된 QUIC이 어떻게 발전해 왔는지를 설명한 글이다. Google이 만들어서 자사 서비스에 적용했던 gQUIC에 기반해서 IETF 내에서 Bar-BoF라는 이름으로 공개 토론을 시작하고 이후에 공식 워킹그룹으로 발전하게 된다. Google이 했던 실험 결과를 바탕으로 많은 토론이 오간 후 핸드쉐이크, 패킷 넘버 암호화, 패킷 헤더, 커넥션 ID 등이 어떤 논의를 통해 지금의 모양이 되었는지를 설명하고 있다.(영어)
Get started with Web Bundles : 웹사이트 전체를 하나의 바이너리 파일로 만들 수 있는 Web Bundles를 소개하고 있다. .wbn 확장자를 가지는 이 파일은 HTML, CSS, 이미지, JavaScript를 모두 하나의 파일에 넣을 수 있고 오프라인에서도 실행할 수 있다. 아직 크롬에서 해결되지 않은 이슈들이 있지만 오프라인 상태에서 친구와 웹번들 게임을 하는 시나리오를 설명하고 go/bundle CLI로 웹번들을 만드는 방법을 설명하고 있다.(영어)
Using the Chrome UX Report to look at performance in the field : 보통 CrUX로 알려진 Chrome UX Report를 활용하는 방법을 설명한 글이다. 이 데이터는 동의한 실제 사용자의 데이터를 모은 것으로 최소 입력 지연시간, DOM 콘텐츠 로딩시간 등 성능과 관련된 많은 데이터가 있고 전세계 사용자의 이런 데이터가 궁금하다면 Google Data Studio로 볼 수 있는 CrUX Dashboard나 PageSpeed Insights 혹은 BigQuery로 조회해서 볼 수 있다.(영어)
The state of JavaScript frameworks security report 2019 : 오픈소스 보안 업체인 Snyk에서 JavaScript 프레임워크의 보안 보고서를 공개했다. Angular와 React에서 보안취약점이 얼마나 발견되었고 각 프로젝트가 어떻게 다루고 있는지를 정리했고 뒷부분에는 Vue.js, Bootstrap, jQuery의 보안 상태도 정리되어 있다.(영어)
Announcing Gatsby Cloud : 웹사이트 프레임워크인 Gatsby에서 클라우드 서비스를 공개했다. Gatsby Cloud에서는 쉽게 사이트를 생성할 수 있는 Quickstart와 실시간 미리 보기, 300여 개의 CMS와 연동 기능을 제공하고 있다.(영어)
그 밖의 개발 관련
Let's Create a Simple Load Balancer With Go : Go 언어로 직접 라운드 로빈으로 동작하는 로드 밸런서를 만드는 방법을 설명하는 글이다. 라운드 로빈으로 리버스 프록시를 구현하면서 살아있는 서버에만 요청을 보낼 수 있도록 작성하면서 Atomic 오퍼레이션, Mutex 등 Go 언어에 관해 설명하고 있다.(영어)
GitHub Action을 사용해 새로 올라온 전월세 방 목록 받아보기 : 전월세 방을 알아보기 위해서 "피터팬의 좋은방 구하기"라는 사이트를 매일 들어가 보는 번거로움을 줄이기 위해 사이트를 크롤링할 수 있는 스크립트에 조건을 넣고 GitHub Action으로 원하는 조건의 매물을 메일로 받아보게 만드는 과정과 코드가 나와 있다. 현실적인 문제를 적절한 기술해 해결한 부분이 재미있다.(한국어)
LINE에서 Kafka를 사용하는 방법 - 1편, 2편 : Line에서 Kafka를 적극적으로 도입해서 지금은 데이터 허브의 역할을 하고 있다고 한다. 이렇게 시스템의 핵심적인 역할로 Kafka를 운영하면서 겪은 장애의 원인을 찾아가는 과정을 설명하고 있고 아직 3편은 올라오지 않았다.(한국어)
EC2, Fargate 약정 할인 AWS Savings Plans 발표 : AWS에서 비용을 아낄 수 있는 Reserved Instances 외에 더 간단한 조건으로 비용을 아낄 수 있는 Savings Plans이 발표되었다. 여기에는 Copmute Savings Plans와 EC2 Instance Savings Plans가 있는데 시간당 사용금액과 약정 기간에 따라 할인율이 달라지는 방식이다.(한국어)
The State of the Octoverse : GitHub에서 사용자들의 활동을 분석해서 작년부터 공유하는 Octoverse가 새로 업데이트되었다. 2019년에 GitHub 기준으로 사용자, 학생, 기업의 사용이 얼마나 증가했고 어느 나라가 많이 성장하고 있는지 등 다양한 통계를 볼 수 있다.(영어)
웹 푸시 알림 서비스, 샌디 : 8개월간 웹 푸시 알림 서비스 창업을 하고 그만두는 과정을 정리한 글이다. 웹 푸시의 가능성을 믿고 시작해서 열심히 개발해서 다양한 플랫폼 지원 및 부가 기능을 개발하였지만, 너무 좋은 제품에 집착해서 고객의 목소리를 신경 쓰지 못하고 제품 완성에만 집중하다가 결국 타이밍과 고객을 놓쳐서 정리하게 되었다고 얘기하고 있다.(한국어)
창업 3주년 회고 : 소프트웨어 교육 업체인 코드스쿼드가 창업 3주년을 정리했다. 그동안 참여한 지원자/수강생, 커밋, PR 수 등을 시각화하고 NEXT에 이어서 코드스쿼드에서 교육 커리큘럼을 만들면서 어떤 교육을 해야 하는지 목표가 무엇인지 등에 대한 고민이 담겨있다.(한국어)
IT 업계 뉴스
GitHub for mobile : GitHub에서 모바일 앱을 내년 초에 릴리스할 것이라고 밝혔다. 이 사이트에서 iOS/Android 앱의 베타 신청을 할 수 있다.(영어)
Re-Licensing Sentry : Sentry BSD-3 라이센스에서 BSL(Business Source License)로 바꾼다고 발표했다. 이 라이센스는 Sentry 서비스를 상업적으로 제공할 수 없고 코드는 36개월 뒤에는 Apache 2.0으로 바뀐다. Sentry를 오픈소스로 개발된 제품으로 사용자가 자유롭게 사용하도록 하고는 싶지만, Sentry를 가져다가 Sentry와 같은 서비스를 제공하는 것은 막고 싶었기 때문에 이 라이센스를 선택했다고 한다. 여전히 회사에서 센트리를 사용하는 데는 아무런 제약이 없다.(영어)
GitHub Archive Program : GitHub이 후세에 남기기 위해 2020년 2월 2일 모든 공개 저장소의 스냅숏을 북극 땅 250m 아래 저장한다는 프로그램을 공개했다.(영어)
Comments