웹개발 관련
- Google AMP — A 70% drop in our conversion rate. : 자사의 웹사이트에 AMP를 도입한 후 문제점을 지적한 글이다. 초기 의욕적으로 빠른 웹사이트를 위해 AMP를 도입했지만 Google의 프레임 속에 나오기 때문에 피싱 사이트처럼 보이고 구글 CDN을 통해서 제공되기 때문에 문제점을 찾기위한 디버깅이 쉽지 않으며 전환율을 올리기 위한 노력도 웹사이트와 따로 AMP를 위해서 새로 해야 한다고 하고 있다. 모두 AMP 때문은 아니겠지만 전환율이 70% 줄어들었다고 한다.(영어)
- The Cost Of JavaScript In 2018 : 웹사이트에서 자바스크립트 용량이 크면 비용이 얼마나 많이 드는지 설명한 글이다. 브라우저가 자바스크립트를 어떻게 처리하고 있고 평균 모바일 디바이스와 네트워크 속도를 고려했을 때의 영향을 생각하면 사용자가 실제로 웹사이트를 사용하는데 걸리는 시간(Time to Interactive)이 얼마나 중요한지 설명하고 있다. 마지막으로 Code Sptting을 이용하고 Lighthouse 등을 이용해서 어떻게 JavaScript 파일의 용량을 줄 일 수 있는지 설명하고 있다. 글이 상당히 길지만, 전체적으로 파악하기 좋은 내용이다.(영어)
- 난 React와 Vue에서 완전히 똑같은 앱(todo)을 만들었다. 여기 그 차이점이 있다.(번역글) : 얼마전 소개한 I created the exact same app in React and Vue. Here are the differences.의 번역 글로 React와 Vue로 todo앱을 만들면서 차이점을 비교한 글이다.(한국어)
- 타입스크립트, 써야 할까? : 타입스크립트를 써야 하는 이유를 정리한 글로 러닝 커브, 생산성, 안정성, 커뮤니티 등의 관점으로 설명하고 있다. 개인적으로 타입스크립트를 좋아하진 않는 편이지만 타입스크립트가 줄 수 있는 장점과 부족한 점이 잘 정리되어 있다.(한국어)
- Introducing Electron Fiddle : 코드스니펫을 쉽게 공유하는 Fiddle 서비스처럼 쉽게 코드를 테스트해볼 수 있도록 Electron Fiddle의 초기 버전이 공개되었다. 아직 개발 중이다.(영어)
그 밖의 프로그래밍 관련
- The Transport Layer Security (TLS) Protocol Version 1.3 : TLS 1.3 명세인 RFC 8446이 발행되었다.(영어)
- Java 유료 논쟁, Oracle JDK와 OpenJDK의 차이 정리 : Java가 유료화된다고 자극적인 기사가 많이 돌아다니는데 Oracle JDK를 상업적으로 사용할 때는 유료 구독을 해야 하고 그 외에 경우는 OpenJDK를 사용하면 된다. 요즘 Java를 하지 않아서 자세한 내용은 잘 모르고 있었는데 이 글에서 상황정리가 잘 되어 있다. 내용도 정확지 않으면서 선정적인 뉴스보다 훨씬 도움 되는 글이다.(한국어)
- 기술 블로그 구독서비스 개발 후기 : Awesome Devblog의 피드를 모아서 매일 아침 새 글을 메일로 알려주는 구독 서비스를 개발한 과정을 정리한 글이다. 왜 이런 서비스를 시작했는지부터 적용하면서 속도 문제, 비용 문제, 서비스 개선 등에 대한 과정이 생생하게 나와 있다.(한국어)
- A quick and complete guide to Mocha testing : Mocha롤 테스트를 작성하는 방법을 안내 문서 수준으로 자세하게 정리한 글이다. Mocha 사용법을 알고 싶다면 참고하기 좋은 글이다.(영어)
- GraphQL Schema Design: Building Evolvable Schemas : 최근 GitHub의 GraphQL API에서 호환성을 깨뜨리는 변경사항을 진행한 경험으로 유연한 GraphQL 스키마 설계를 하려면 어떻게 해야 하는지 설명한 글이다. 간단한 구조보다 객체 타입을 사용하고 고민된다면 구체적인 이름을 사용하고 Scalar보다는 필드와 타입을 사용하라고 권하고 있다.(영어)
- direnv로 디렉토리(프로젝트) 별 개발환경 구축하기 : 개발할 때 디렉터리별로 다른 환경을 관리하는 데 도움이 되는
direnv
의 사용법을 정리한 글이다. Docker나 클라우드를 많이 쓰면서 프로젝트별로 다른 환경변수가 많이 필요해서 전역으로 관리하기 어려운 부분은direnv
를 사용하고 있는데 사용방법이 아주 자세하게 나와 있다.(한국어) - 깃허브(GitHub), L4 로드 밸런서 GLB 디렉터 오픈소스로 공개 : GitHub에서 오픈소스로 공개한 로드밸런서 GLB가 로드밸런싱을 기존에 비해 어떻게 개선했는지 설명한 글이다.(한국어)
블록체인 관련
- ERC Token Standards for Dummies, Like Me : 이더리움을 이용해서 토큰을 만들 때 많이 사용하는 ERC 20를 설명하는 글이다. ERC(Ethereum Request for Comment) 20가 어떤 구조로 되어있고 솔리디티로 어떻게 사용하는지를 설명하고 ERC 20에서 잘못 트랜잭션을 만들었을 때 묶여버려서 토큰을 사용할 수 없게 되는 문제를 해결하는 ERC 223와 ERC 827이 각각 어떻게 다른지를 설명하고 있다. ERC 20를 보기만 하다가 그 기본 내용에 대해 이해하기 좋은 글이다.(영어)
- What we learned building our first Ethereum Dapp : Ethereum과 Solidity 개발을 배우려고 사이드 프로젝트로 Ethereum Dapp을 만든 경험을 공유한 글이다. 학습 용도에 맞는 요구사항에 따라 픽셀을 광고판처럼 파는 Eth Plot을 만들고 이때 사용한 스마트 콘트랙트, IFPS, Truffle, Ganache, MetaMask 등의 스택을 설명하고 가장 중요한 부분인 스마트 콘트랙트를 어떻게 개발했는지 자세히 설명하고 있다.(영어)
- Dweb 소개 : 중앙화된 웹이 아니라 분산화된 웹이라는 개념으로 Dweb을 소개한 글로 현재 2편까지 공개되어 있다. 블록체인을 얘기하고 있진 않은데 원래의 웹은 분산화하려고 나왔지만, 지금은 중앙화되었다는 점에서 관심 있는 접근방법이다.(한국어)
볼만한 링크
- 하스스톤x프로듀스48 사건으로 보는 마케팅이야기 : 프로듀스48에서 자신이 응원하는 아이돌에 투표하도록 여러 가지 마케팅을 하다가 하스스톤 사용자에게 팩을 사주고 투표 인증을 요구하면서 진행된 과정을 설명한 글이다. 이런 일이 있었는지 몰랐지만 이런 식의 재치있는 마케팅을 좋아하는지라 재미있게 보았다.(한국어)
- Pseudo Localization @ Netflix : 하면서 영어로 작성된 메뉴나 문구 등이 다른 언어로 번역되면서 40% 이상 길어져서 레이아웃이 깨지는 문제를 Netflix가 어떻게 개선했는지 설명한 글이다. Pseudo Localization라고
Find Help Online
라는 문구를 영어처럼 읽을 수 있는 ASCII 문자[ƒîกี้ð Ĥéļþ Öกี้ļîกี้é one two]
로 변환해서 실제 번역문은 아니지만 길어진 텍스트를 바로 테스트해 볼 수 있도록 개선한 애기이다. 마지막에는 이렇게 만든 시스템을 각 조직에 적용할 수 있도록 홍보하고 교육하는 부분도 중요하다고 강조하고 있다.(영어)
IT 업계 뉴스
- Gerald M. Weinberg has died : "프로그래밍 심리학", "대체 뭐가 문제야?", "테크니컬 리더" 등의 책을 쓴 제럴드 M. 와인버그가 8월 7일 86세의 나이로 별세했다. 삼가 고인의 명복을 빕니다.(영어)
프로젝트
- The Open Guide to Amazon Web Services : AWS의 각 서비스의 사용방법과 팁을 모아놓은 저장소.
- lazygit : 터미널에서 UI로 Git을 사용할 수 있는 도구.
- Filament : 안드로이드, 리눅스, macOS, 윈도우즈에서 사용할 수 있는 렌더링 엔진으로 구글이 만들었다.
버전 업데이트
- Android v9.0 Pie : 모바일 운영체제, 릴리스 공지
- Django v2.1 : Python 웹 프레임워크, 릴리스 공지
- Vue CLI v3.0.0 : Vue.js 개발을 위한 CLI, 릴리스 공지
- pino v5.0.0 : Node.js 로거, 변경사항
- npm v6.3.0 : Node.js 패키지 매니저, 릴리스 공지
- ESLint v5.3.0 : JavaScript 코드 분석 도구, 릴리스 공지
- Preact v8.3.0 : React 호환 경량 UI 라이브러리, 릴리스 공지
- Dojo v3.0 : JavaScript 웹앱 프레임워크, 릴리스 공지
- Rust v1.28 : 프로그래밍 언어, 릴리스 공지
- julia v1.0 : 프로그래밍 언어, 릴리스 공지
- Apache kafka v2.0 : 분산 스트리밍 플랫폼, 릴리스 공지
- RSpec v3.8 : Ruby BDD 테스트 프레임워크, 릴리스 공지
Comments