[GN#19] 프로젝트 기반으로 프로그래밍 언어 배우기

2019-11-11 ~ 2019-11-17 사이의 주요 뉴스들
프로그래밍을 쉽게 배우는 방법중 하나는 바로 뭔가를 직접 만들어 보는 것입니다. 다양한 프로젝트들을 통해 언어를 배우는 튜토리얼 모음을 추천합니다.
"나만의 React 만들기" 는 공개후 꽤 반응이 좋았던 글로, 내용도 좋고 그 페이지 자체도 분석해서 볼만큼 멋지게 구현되어 있습니다.

매주 월요일 아침, 지난 일주일간의 GeekNews 중 엄선한 뉴스들을 이메일로 보내드립니다.


프로젝트 기반으로 프로그래밍 언어 배우기

C/C++/C#/Go/Haskell/Java/JS/Lua/Python/R/Rust/Web(React,Angular,Node)등을 프로젝트 수행하며 배우는 튜토리얼들의 모음

 
데이터베이스의 다음 50년 [2015]

CMU DB교수 Andy Pavlo의 에세이
지난 50년간 DB가 많이 발전했지만, 아직도 사람이 많이 관여해야한다. (설치,설정,관리 등)
앞으로 50년간 DB는..
- 관계형 모델이 주이긴 하지만, 점점 개발자는 데이터 모델에 대해 신경 쓸일이 없어질 것이다.
- SQL이 표준 언어이긴 하지만, 사람이 직접 SQL 쓰는 일이 줄어들고, 자연언어로 질문하게 될것
- 이를 통해서 우리가 프로그램을 개발하는 것이 많이 바뀔것. 예를 들어 개발자가 보기 편한 형태로 데이터 모델을 만들면, 프레임워크가 DBMS와 연동하여 적정한 저장 스킴을 생성하게 될것
- 모든 프로그램들은 ACID 트랜잭션 기반하에 수행될 것.
- 비정형 데이터들을 저장하는 프로그램이 많아 지면서, 이를 쉽게 관리하고 인덱싱하는 기술이 발전할것.
- 또한 비디오 처럼 시간이 지남에 따라 변화하는 데이터들이 중요해지면서, Temporality (이력)도 중요한 기술이 될것
- 수많은 IOT 기기가 환경에서 데이터를 수집하고 다양한 디바이스에도 DB가 내장하게 되면, 이런 DB들이 쉽게 연합/연동 될 수 있는 API 들이 생겨 날것(SQL 기반일수도 있겠지만 )
- 이런 다양한 DB들 간에 매핑을 위해 AI/머신 러닝을 이용하는 툴킷이 생겨날수도
- DB를 위한 새로운 하드웨어 가속기 들이 나오고, 더 빠르고 안정적인 대용량 메모리들이 가용해 질것.
- DB관리자 로서의 인간의 역할은 점점 없어질 것. 미래의 DB는 사람이 관리하기에 너무 복잡.
- DBMS 는 점차 자동화되고 혼자 고치는 시스템이 될 것
- 프로그래밍 프레임워크 들과 DBMS의 강한 결합을 통해, 사람이 계획하는 것들보다 더 데이터를 효율적으로 구조화 하고, 자원을 계획하고, 실행을 최적화 하게 될것.
- 행성간 떨어져 있는 기기들간의 DB 트랜잭션도 보게 될것이고, 이런 경우 몇분 또는 몇시간의 레이턴시가 걸리는 경우도 생겨날 것. 그래서 지금 웹기반 기술에서 사용되는 Weak Consistency 기법이 이에 적용될 수 있을 것임

 
macOS 초심자를 위한 터미널 공부 가이드

"편안하고 즐거운 터미널 생활"을 위해 단축키부터 pipe/리다이렉션 등 주요 사용법들과 관련해서 배울수 있는 링크들을 정리

 
나만의 React 만들기

React 코드를 바닐라JS로 밑바닥부터 만들어 보기.
한줄한줄 설명하며 만들기 때문에 React와 JS 둘다 공부하기에 좋은 글.

이 슬라이드 웹페이지가 굉장히 멋진데.. 관련해서 쓰인 기술들

MDX Deck : React + MDX ( JSX embedded in Markdown ) https://github.com/jxnblk/mdx-deck

CodeSurfer : MDX Deck 에 코드하이라이팅, 확대, 스크롤등을 추가 https://codesurfer.pomb.us/

Gatsby Waves : MDX + Scrollytelling (스크롤에 따라 코드 애니메이션 ) https://github.com/pomber/gatsby-waves

웹에서 튜토리얼이나 가이드등 코드를 설명하기에는 최적의 슬라이드 도구인듯.

 
프론트엔드 도구 (CSS/JS) 설문조사 2019

3천명 대상 27개 질문결과,
JS는 React가 가장 대세, 그다음으로 Vue, 하지만 순수 JS도 매년 늘어나는중.
CSS는 Saas가 가장 많이 쓰임. Bootstrap은 하락중, 점점 아무런 CSS 프레임워크도 선택하지 않는 추세.
CSS-in-JS 도 약 50%가 사용중으로 점차 늘어나는 중.

눈여겨 볼만한 숫자들

CSS
- 처리기 : Sass 77%
- 프레임웍 : 안씀35%/부트스트랩28%
- 도구 : Autoprefixer 56%/BEM 45%
JS
-프레임웍 : React 52%/jQuery 36%/Lodash 32%/Vue 27%/Angular 15%
-모듈번들러 : Webpack 73%
-트랜스파일러 : 사용중 81%
-테스팅 : Jest 44%/안씀 35%/Mocha 26%/Jasmine 20%
-Linting : ESLint 76% / 안씀 12%
-퍼포먼스 테스트 : Lighthouse 52%
-패키지매니저 : NPM 65% / Yarn 30%
-접근성 테스트 : 안함 63%/컬러 콘트라스트 체커 22%/스크린리더 15%

 
구글 크롬, 느리게 뜨는 웹사이트에 뱃지 부착 예정

로딩스크린에 "이 사이트는 보통 늦게 떠요" 라고 보여주고,
빠른 사이트에는 녹색 상태 표시줄을 보여줄 예정.

다양한 테스트를 통해서 단계별로 할 것이라고.

PageSpeed Insights 로 자신의 페이지를 테스트 해 보고.. 느리면 개선하라는 얘기
https://developers.google.com/speed/pagespeed/insights/

관련해 Apache와 NGINX 에 적용할 수 있는 모듈도 공개되어 있습니다.
https://developers.google.com/speed/pagespeed/module/

 
시스템 모니터 htop 의 모든것

htop으로 할 수 있는/알 수 있는 모든 일을 정리한 문서. 관리중인 리눅스 서버가 있다면 필독.
화면 모든 부분을 하나하나 설명해줍니다.

 
Play Academy, Google Play 비즈니스 및 개발자들을 위한 무료 교육 플랫폼

한국어 강의 80개 이상

초보자를 위한 강의, 정책 강의, 데이터 분석 및 비즈니스 성장 시키기 계정관리, 앱에서 수익 올리기, 잠재 고객 지원 및 참여 유도, Google Play의 개발자 지원 방법 알아보기, 앱 크기 줄이기, 앱 출시 관리, 타게팅 및 배포, 스토어 등록정보 관리, 출시 전 앱 테스트, 앱의 기술적 성능 확인 등 (강의 주제는 지속적으로 추가 예정)

 
linkinator - 웹사이트/폴더에서 깨진 링크를 모두 찾아주는 CLI 도구

시작위치를 지정하면, 병렬 재귀 호출로 하부에 깨진 링크들이 있는지 검사하고 JSON/CSV 로 결과를 만들어줌.

API 형태로 호출도 가능.

 
2019 Web Almanac - 웹의 현재 보고서

분야별로 엄청 방대함
1 페이지 콘텐츠: JS,CSS,마크업,미디어,써드파티,폰트
2 UX: 퍼포먼스,보안,접근성,SEO,PWA,모바일웹
3 콘텐츠 퍼블리싱: 이커머스,CMS
4 전송: 압축,캐슁,CDN,페이지 크기,리소스 힌트, HTTP/2

 
.org TLD를 관리하는 비영리단체 PIR이 사모펀드에 매각됨

ICANN 이 org 도메인의 가격상한을 없애버려서, 이제 org 가격 도메인이 오르게 될수도.

PIR(Public Internet Registry)은 .org 도메인에 대한 가격인상 계획은 없다고 했지만, 사모펀드인 Ethos Capital 이 인수한 이상 그대로 두지는 않을듯.
PIR의 2018년 매출은 천이백억원 정도이며, 이중 절반인 600억원을 원래 소유였던 ISOC(Internet Society) 쪽에 주고 있었음.

1985년 시작된 최초의 TLD(Top Level Domain) 은 모두 7개
.com, .int, .edu, .gov, .mil, .net, .org

1998년부터 비영리 단체인 ICANN(Internet Corporation for Assigned Names and Numbers,국제인터넷주소관리기구) 가 이를 관리중.

.com 도메인은 영리단체인 Network Solutions 가 관리했으나 현재 Verisign 이 인수.
그래서 .com 도메인은 마치 가상의 부동산 처럼 사고 파는 애셋이 되었음.

하지만 .org 는 비영리기관인 PIR 이 관리했고, $9.05 의 가격상한을 두어서 애초에 비영리기관용 도메인이었던 .org 가 예산이 빠듯한 단체들이 쉽게 이용할수 있도록 했었음.

하지만 올해 6월 ICANN 이 .org 도메인의 가격상한을 없애 버렸음 ( .biz 와 .info 상한 없어짐 )

그러자, 천만개의 .org 도메인을 관리하는 PIR 이 핫한 인수대상으로 등극.

Ethos Capital 이 최종 인수자가 되었음.

가격 안올리겠다는 얘기 및 각종 단체들을 지원하겠다는 대담한 계획들을 같이 하고 있는데 과연 어떻게 될지..

PIR 쪽의 공식 보도자료 링크

The Internet Society & Public Interest Registry: A New Era of Opportunity
https://thenew.org/the-internet-society-public-interest-registry-a-new…

 
Brave 브라우저 1.0 출시

프라이버시를 보호에 중점. 블록체인 기반 광고플랫폼과 묶어서 광고를 보면 사용자와 사이트가 리워드를 받는 Rewards 프로그램을 운영

광고주, 사이트, 사용자 모두 윈윈하는 구조내요.

 
아마존 Alexa 의 미래계획

계획의 핵심은 수동적에서 능동적 상호작용으로 변화하는 것.
요청에 응답하는것 보다 사용자가 원하는 것을 예상하게 될것.

AI를 적극 활용 하여 음성/비디오 인식에서 자연언어 해석, 예측및 의사결정부터 높은 수준의 추론능력을 가지게 되면..

영화예약을 하면, 음식점 예약과 우버 부르는 것까지 물어보고,
현재 위치에서 극장까지의 거리와 트래픽, 영화 시작시간을 계산해서 우버를 불러줌.

Echo Buds(알렉사가 내장된 이어폰)를 끼고 있을때 Whole Foods 안에서 토마토가 어디있는지 물어보면, 7번 매대에 있다는 것을 알려주는 것.

이 외에도 몇가지 예제를 들어서 설명한 MIT Technology Review의 인터뷰 기사.

Alexa 가 삶의 모든 분야를 도와주고 "생산성을 향상시키게" 될 것.

 
First-Contributions : 첫 기여

오픈소스에 참여하는 방식을 배우기 위해 따라해보기.
포크-클론-브랜치생성-커밋-푸시-풀리퀘스트

컨트리뷰터가 만명이 넘는 샘플 저장소.
지금 따라해보세요.

 
GitHub의 Octoverse 2019 리포트

개발자 4천만명
파이썬이 자바를 제치고 2등으로(1등은 JS)
빠른 성장중인 언어 1등 Dart(532%) 2등 Rust(235%)
오픈소스 성장률-한국이 40%로 8위
컨트리뷰터 증가율-한국이 46%로 4위
최다 컨트리뷰터 : VS Code