웹개발 관련
- Faster input events with Facebook’s first browser API contribution : 웹페이지에서 다운받은 JavaScript 파일을 실행할 때는 싱글 스레드라 다른 작업을 못 하게 되는데 큰 파일을 한 번에 처리하면 로딩속도는 빠르지만, 사용자가 인터렉션을 하기까지 시간이 걸리고 여러 파일로 쪼개면 인터렉션은 빠르지만, 로딩 속도가 느린 문제가 있다. 이를 해결하기 위해 Facebook에서
isInputPending
이란 API를 만들어서 W3C에 제안하고 크롬과 협업해서 크롬 74에 포함되었다.isInputPending
를 사용하면 큐에 들어간 이벤트가 있는지 빨리 확인할 수 있어서 로딩속도와 인터렉션 시작이 느린 문제를 둘 다 해결할 수 있다.(영어) - Introducing the Open Source and Full-Featured Seed Dashboard Plans : 브라우저 테스트 플랫폼인 cypress에서 대시보드 기능까지 완전히 사용할 수 있는 오픈소스 플랜을 발표해서 오픈소스 프로젝트에서는 무료로 사용할 수 있게 되었다.(영어)
- Instant-loading AMP pages from your own domain :
google.com/amp
로 제공되던 AMP 페이지를 Signed Exchanges를 통해서 서비스 프로바이더의 도메인에서 직접 제공할 수 있게 되었다.(영어) - JavaScript's new #private class fields : 문법과 기능 모두를 좋아하진 않지만, private 클래스 필드가 최신 크롬과 Node.js v12에 들어왔는데 이 사용법을 설명하는 글이다. 현재 이 기능은 stage 2단계이다.(영어)
그 밖의 프로그래밍 관련
- Open Distro for Elasticsearch Review : Elasticsearch의 상용라이센스를 문제 삼으면서 Amazon이 직접 오픈소스로 배포한 Open Distro for Elasticsearch를 Elasticsearch와 기능 비교를 하고 docker-compose를 이용해서 실행하는 방법 및 Elasticsearch Apache 2.0 라이센스 버전에서 제공하지 않는 기능 위주로 설정하는 방법을 설명하는 글이다.(영어)
- Editor 01. Google Docs 같은 실시간 협업 에디터를 만드는 방법 : 실시간 협업 에디터를 만들 때 각 사용자의 변경 사항을 충돌 없이 합치는 접근 방법을 설명하는 글이다. Git처럼 로컬에서 만들어서 머지하는 방식이 아닌 실시간으로 변경하면서도 각 사용자의 변경내용이 문제없이 합쳐질 때 어떤 문제가 있는지 부터 이를 해결하기 위한 데이터 타입으로 LinkedList, Logical Clock, RGA, RGATreeSplit의 방식을 설명하고 있다.(한국어)
- Kubernetes 03 – Kubernetes Cluster on AWS with kops : kops로 AWS에 Kubernetes 클러스터를 구성하는 방법을 설명하는 글로 기존 VPC 위에 설정하는 방법부터 예제 코드까지 함께 제공하고 있다.(한국어)
- Announcing a new — experimental-modules : Node.js 8.9.0부터
--experimental-modules
플래그를 통해 ES modules를 사용할 수 있었는데 Node.js v12에서는 그동안의 피드백을 통해 완전히 새로 만든 구현체가 포함되었고 기존 코드에서 ES modules를 어떻게 사용할 수 있는지를 설명하는 글이다. 기존처럼.mjs
확장자나 프로젝트package.json
에"type": "module"
를 지정해서 ES modules로 인식할 수 있으며 CJS가 섞여 있는 경우.cjs
확장자를 사용하거나 하위 디렉토리package.json
에"type": "commonjs"
를 지정할 수 있다고 한다. v12가 LTS가 되는 10월 전에--experimental-modules
플래그를 제거하는 것이 목표라고 한다.(영어) - Announcing WAPM: The WebAssembly Package Manager : wasmer에서 WebAssembly를 이용해서 어디서나 실행할 수 있는 유니버설 바이너리를 배포하고 사용할 수 있도록 패키지 매니저인 wapm을 공개했다.(영어)
- Run your GitHub Actions workflow on a schedule : GitHub Actions에 새로 추가된 스케쥴 기능의 사용방법을 설명하는 글이다. 이 기능을 이용하면 크론탭을 쓰듯이 GitHub Actions를 주기적으로 실행할 수 있다.(영어)
볼만한 링크
- Apache Software Foundation joins GitHub open source community : 아파치 재단이 2016년 GitHub 저장소로 통합하기로 하고 작업한 후 2019년 2월 마이그레이션을 완료했다.(영어)
- CNCF, Fluentd 프로젝트 졸업을 발표 : fluentd가 CNCF의 졸업 프로젝트가 되었다. CNCF의 프로젝트 단계는 샌드박스 단계, 인큐베이팅 단계, 졸업 단계로 나누어져 있다.(한국어)
IT 업계 뉴스
- Goodbye Joe : Erlang을 만든 Joe Armstrong이 지난 4월 20일 별세했다. 삼가 고인의 명복을 빕니다.(영어)
- 4월 25일, 도커 허브 계정 정보 유출 : Docker Hub가 해킹당해서 19만 개의 계정이 유출되었고 여기에는 계정명, 해싱된 패스워드, GitHub/BitBucket의 엑세스 토큰 등이 포함되어있다고 한다. 사용자는 비밀번호를 바꿔야 하고 토큰이 리보크되어 자동빌드가 멈추었을 수 있으니까 재연결 등을 해야 한다.(영어)
- MongoDB to Acquire Realm - The Future is Bright : 도큐먼트 데이터베이스를 만드는 MongoDB가 모바일 데이터베이스를 만드는 Realm을 인수했다.(영어)
- Pinterest, the latest unicorn to hit the public market, jumps 25% in its trading debut (PINS) : 지난 18일 Pinterest가 뉴욕 증시에 상장했다. 주식당 $23.75로 시작했으며 100억 달러의 가치평가를 받게 되었다.(영어)
- Slack plans to go public after hitting 10 million daily users : 슬랙이 뉴욕 증시에 상장하기 위해 S1 문서를 제출했다. 이 문서에 따르면 천만 일간 사용자를 기록하고 있고 최근 3년간 1억 달러에서 4억 달러로 수익이 올라갔지만, 아직 적자 상태라고 한다.(영어)
- WeWork Files for I.P.O., Joining Wave of Cash-Burning Start-Ups in Going Public : WeWork가 작년 12월에 비밀리에 상장을 준비해 온 것으로 알려졌다.(영어)
프로젝트
- Accessibility Insights : 웹사이트의 접근성 지원 여부를 검사해주는 크롬 확장으로 Microsoft에서 만들었다.
- Repo Remover : 다수의 GitHub 저장소를 지우거나 아카이빙 할 수 있는 웹 서비스.
버전 업데이트
- Node.js v12.0.0 (Current) : 자바스크립트 런타임, 릴리스 공지, Introducing Node.js 12
- Ubuntu 19.04 Disco Dingo : Linux 배포판, 릴리스 공지
- Terraform v0.12 Beta 2 : 서버 인프라 설정 도구, 릴리스 공지
- Packer v1.4.0 : 머신 이미지 생성 도구, 릴리스 공지
- Electron v5.0.0 : 크로스 플랫폼 데스크탑 애플리케이션 플랫폼, 릴리스 공지
- Android Studio v3.4 : 안드로이드 IDE, 릴리스 공지
- Next.js v8.1 : 서버렌더링 React 애플리케이션 프레임워크, 릴리스 공지
- Create React App v3.0.0 : React 프로젝트 환경 설정 도구, 릴리스 공지
- MDX v1.0.0 : 컴포넌트식 마크다운, 릴리스 공지
- GitLab v11.10 : 오픈소스 설치형 Git 플랫폼, 릴리스 공지
- Puppeteer v1.15.0 : Headless Chrome의 Node.js 라이브러리, 변경사항
- OpenBSD 6.5: 운영체제, 릴리스 공지
- Lagom v1.5.0 : 마이크로서비스 프레임워크, 릴리스 공지
- Flicking v3.0.0 : JavaScript 캐러셀 라이브리러, 릴리스 공지
- Serverless Framework v1.41.0 : AWS Lambda에서 앱을 만드는 프레임워크, 릴리스 공지
- react boilerplate v4.0.0 : React.js 보일러플레이트, 릴리스 공지
- Svelte v3.0.0 : 웹앱 프레임워크, 릴리스 공지
Comments