내 맘대로 월간(月刊) 뉴스 - 2017년 05월

Vue를 만드는 여정은 개발자로 성장하는 여정이었다 - 비전공자가 Vue.js를 창작하기까지
* Vue 개발자 인터뷰를 통해 오픈소스 프로젝트를 알아볼 수 있는 기산
> 이 최소한의 특징 셋을 복제하는 방식으로 이 실험을 시작했다. 예를 들면 declarative 데이터 바인딩 같은 것 말이다. 그게 바로 Vue가 기본적으로 시작한 방식이었다. 작업을 해나갔고, 그게 잠재력이 있다는 것을 느꼈다.

  • 아재가 젊은이에게 사랑받는 마크업을 하는 방법

    • Markup?! 이라니!
  • 이미지처리를 위한 opencv 설명

    • OpenCV를 예제로 배워볼 수 있는 좋은 기회임!
  • 프래그먼트: 안드로이드의 모든 문제의 해결책이자 원인

    • 효과적인 프래그먼트 사용법을 고민하는 분들에게 소개하는 기사
  • Twitter Lite and High Performance React Progressive Web Apps at Scale

    • Twitter의 본격 React 사용기
  • 이상적인 회사의 개발과정은 어떻게 되는가?

    • 회사의 개발과정을 손보고 싶으신 분들에게 좋은 슬라이드
  • The past and the future of OP.GG

    • OP.GG 개발 과정을 엿볼 수 있는 기사
  • 젠킨스 사용하여 자동 배포환경 만들어보기

    • 젠킨스를 사용하는 방법을 가볍게 소개하는 튜토리얼 기사
  • 비주얼 러너의 영어 원서 읽기

    • 원서를 어쩔 수 없이 읽어야 하는 분들을 위한 좋은 기사
  • Nginx configuration static analyzer

    • Nginx 올바른 설정을 위한 훌륭한 도구
    • 2번써보자!
  • 머신 러닝과정을 움직이는 gif 로 보여주기

    • 머신 러닝 과정을 눈으로 확인하는 과정을 소개하는 튜토리얼 기사
  • 파이썬의 미래는 밝다?

    • 어둡기는 힘든 파이썬의 밝은 미래를 들어보는 시간

    Even though Python doesn’t have the lion’s share at the moment, it’s pretty obvious that the future for our beloved language is extremely bright. That’s not really a surprise to anybody that has used Python even briefly. It really is the one ring to rule them all. It does almost everything in the software development world. You want to create a web app? Python. You want to write a CLI app? Python. You want to analyze data or do data science-y things? Python. You want to do system automation/scription? Python. You want to create a GUI app? Python. … and many many more. Not to mention it is a great developer exerience at that.

  • 쿠베르네츠 로 파이썬 어플 스케일링하기

    • 마이크로서비스를 위해 Kubernetes를 사용하는 방법을 소개하는 튜토리얼 기사
  • Chrome Dev and Canary builds include a way to move address bar to the bottom of your display

    • 주소(URL)을 표시하는 부분이 아랫부분으로 이동한다는 혁신적인 사실을 알려주는 기사
  • 4 Python libraries for building great command-line user interfaces

    • 파이썬을 사용해서 커맨드 라인 프로그램을 도와주는 4가지 추천 라이브러리
  • Zero to hero with Python

    • 11시간 정도 되는 {짧은?!} 강의를 통해서 파이썬 영웅이 되어보려는 시도
    • 11시간... 뭔가 비현실적인 시간 같음
  • 안드로이드 앱을 빠르고 지속적으로 전달하기

    • CI에 대해서 고민하고 있다면 이것을 읽어보면 좋을 듯
    1. 최종적으로 저희가 만들고자 하는 모습은 위 그림과 같습니다. 안드로이드 스튜디오에서 체크인해서 커밋하면 Github에 저장되고, 훅을 받아서 bitrise가 일련의 과정을 거쳐서 빌드하면 디플로이가 되는 모습입니다. 하지만 테스트와 배포가 빠져 있기 때문에 이를 위해 여러 툴을 지정하고 있습니다. 유닛과 통합 테스트를 위해서는 Robolectric을 사용하고 있고 acceptance test에는 calaba.sh를 사용하고 있습니다. 배포는 fabric의 beta를 적용하고 있습니다.
    2. CI의 목적은 자동화 자체가 아니라 자동화된 테스트와 배포로 짧은 주기의 피드백과 개선을 반복하여 빠르고 지속적인 제품, 즉 가치를 전달한다는 것입니다. 그러기 위해 갖춘 시스템을 만드는 과정을 설명했는데, 이런 것을 통해 좀 더 빠른 개발과 배포가 가능해졌습니다. 앞으로는 인수 테스트를 클라우드로 도구를 사용해서 기기 테스트를 하고, AAR과 같은 라이브러리는 bintray를 사용하려고 하고 있습니다. 클라우드가 도입되면서 서비스로 접근할 수 있는 도구들이 많아졌으므로 이런 것을 잘 활용해서 보다 핵심적인 기능 개발에 집중할 수 있는 환경을 만들 수 있다는 점을 마지막으로 말씀드리며 마칩니다.
  • CPU Utilization is Wrong

    • CPU가 일하지 않는 이유에 대해서 설명하는 기사

    This has been getting worse. For a long time processor manufacturers were scaling their clockspeed quicker than DRAM was scaling its access latency (the "CPU DRAM gap"). That levelled out around 2005 with 3 GHz processors, and since then processors have scaled using more cores and hyperthreads, plus multi-socket configurations, all putting more demand on the memory subsystem. Processor manufacturers have tried to reduce this memory bottleneck with larger and smarter CPU caches, and faster memory busses and interconnects. But we're still usually stalled.

  • HTTPS는 HTTP보다 빠르다

    • HTTPS를 사용해야 함, 빠르고 느리고의 문제는 아닌 듯!

    In January this year (2010), Gmail switched to using HTTPS for everything by default. Previously it had been introduced as an option, but now all of our users use HTTPS to secure their email between their browsers and Google, all the time. In order to do this we had to deploy no additional machines and no special hardware. "2010년 1월, Gmail은 HTTPS를 기본 프로토콜로 변경했습니다. 전에는 옵션이었는데 지금은 모든 사용자들이 브라우저와 구글간의 통신에서 항상 안전을 보장받을 수 있도록 HTTPS를 제공합니다. 우리는 이것을 실현하기 위해 그 어떠한 추가적인 서버나 특별한 하드웨어도 필요하지 않았습니다.", Overclocking SSL, 25 Jun 2010, Google

  • Death Valley

    • lenth(works)works.item의 관계에 대한 짧은 생각을 엿볼 수 있음

    그래서 A - B - C 가 A - B - C - ... - Y - Z 가 되지 않도록 적절히 짧은 목표를 설정하는 것이 필요한데, 이 또한 일의 종류에 따라서 각 단계의 격차가 너무 벌어질 수 밖에 없거나, 길고 긴 단계를 가질 수 밖에 없기도 하다.

  • Sorting 2 Tons of Lego, The software Side

    • 머신러닝 기술을 사용해서 레고를 정리하는 경험을 공유하는 기사
    • 레고의 세계는 넓고 깊은 듯
  • 한글을 지은 이유를 새겨 듣기를

    • 이도 형님이 만든 한글의 공간성에 대한 기사
    1. 음소의 개념을 발견해내고도 굳이 모아쓰기를 해서 음절문자로 돌아간 것은 한자의 영향이라거나 언어학적 이유에서만은 아니었습니다. [...] 조선에서는 2차원 정사각형을 공간의 기본 단위로 인식했습니다. 이런 공간 관념으로부터 조선의 토지와 마을, 도시와 가옥, 그리고 일상의 여러 공간들이 사각형 단위로 구획되었습니다. 한글은 바로 이런 환경 속에서 발명된 글자입니다
    2. 便於日用耳(날마다 쓰기에 편하도록 할 따름이다)
  • Refactoring a Python codebase using the Single Responsibility Principle

    • 누구나 사랑하는 SRP를 기반으로 한 파이썬 코드 리팩토링 원칙을 소개하는 기사
  • How we Upgraded a 22TB MySQL Cluster from 5.6 to 5.7 (in 9 months)

    • Percona 5.6에서 Percona 5.7로 22TB 크기의 DB를 마이그레이션 하는데 9개월이 걸릴꺼라고 누구도 예상하지 못했던 경험을 공유하는 기사
    • 다음 번에는 6TB Galera 클러스터를 MySQL 5.5에서 MySQL 5.7로 마이그레이션하는 방법도 소개한다고 함.
    • 마이그레이션 장인들 같음

    My old Chinese master had a proverb for every migration: A good migration goes well but a great migration expects a rollback.

  • Node.js 8.0.0 has been delayed and will ship on or around May 30th

    • Node.js 최시버전이 출시 '될' 것이며, 이후의 행보에 대해서 알려주는 기사

    We would land a version of V8 with the TurboFan + Ignition enable into Node.js 9.0.0. There were two primary reasons for this decision: 1. Give the V8 team time to improve performance and bugs in the pipeline, 2. Offer a known and stable experience for an LTS release line

  • 네이버 실시간 급상승 크롤링

    • 딱 1줄로 네이버 실시간 급상승 자료를 크롤링 할 수 있음
    • 코드를 기반으로 데이터를 저장하는 코드를 만들어서 분석하면 재미있을 듯!
  • 스트라입스의 문제점

    • 꼭 스트라입스에 집중하지 않더라도 훌륭한 조언이 많은 기사
  • 협상가 문재인 : 타임지 기사(2017년 5월 4일)(번역)

    • 외국에서 바라본 한국의 대선주자에 대한 견해를 엿볼 수 있는 기사

    유엔군사령관 스틸웰(Richard G. Stilwell) 대장은 유엔군의 결의를 보여주는 상징적인 조치로 이 나무의 완벽한 절단을 명령했다. 이 나무 절단을 지원할 목적으로 파견된 병사 가운데에는 문재인이란 이름의 나이 어린 한국군 병사가 있었다. 당시 긴장이 매우 높은 수준이었다며 문재인은 다음과 같이 말하고 있다. "북한군이 당시의 미루나무 절단 작업을 방해했더라면 곧바로 전쟁이 발발했을 것입니다."

  • 내부고발자 법적 대응한다는 정의당

    • 내부고발자를 법적 대응하는건 정의로운 일이 아닌 듯 하다.