Code

Python의 Generator와 yield 키워드

May 9, 2016 Code

Python의 반복문 보통 for 구문을 사용해서 0부터 99까지 반복한다고 하면 다른 프로그래밍 언어에선 이런 느낌이 됩니다. for (let i = 0; i < 99; ++i) { do_something(i); }...

Assert: Node.js 테스트 모듈

May 9, 2016 Code

요즘은 TDD니, BDD니 해서 테스트의 중요성이 더 없이 강조되고 있다. 워낙 많이 언급되다 보니 여지껏 테스트 코드를 작성할 일이 없었던 나도 조금은 공부해야겠다는 생각이 들었다. 방대한 라이브러리를 품고...

[ReactiveX][RxSwift]flatMap, flatMapFirst, flatMapLatest

May 7, 2016 Code

flatMap Rx에서 Observable에서 발행한 아이템을 다른 Observable로 만들며, 만들어진 Observable에서 아이템을 발행합니다. RxSwift에서 제공하는 예제를 살펴보면 좀 더 쉽게 이해할 수 있습니다. let sequenceInt = Observable.of(1, 2, 3)...

lubuntu 환경 설정 변경 기록

May 4, 2016 Code

이전까지는 lubuntu에 있던 xterm을 비트맵이 정겨워서 그냥 사용했는데 특수 기호를 표시하는데 불편함이 있어서 터미널을 변경하며 손 본 기록을 남긴다. 지금 사용하는 환경은 별 특별한 내용 없이 기본 lubuntu...

git 한글 파일명 사용 문제 고치기 core.quotepath

May 4, 2016 Code

지금까지 git을 숱하게 사용했지만 한글 파일명은 문제가 생긴다는 사실을 이제야 알았다. 다음처럼 core.quotepath를 끄면 commit, status 등에서 한글 출력이 정상으로 돌아온다. 이 설정은 일반적이지 않은 문자를 탈출문자로 처리하는...

Azure 웹 앱 staging 환경 설정하기

April 26, 2016 Code

들어가는 말 웹 앱(Web Apps)를 사용하여 서비스를 운영하면 배포될 때 서비스가 중단되는 불편함이 있다. 아래 이미지에서 보는 것처럼 배포가 될 때마다 회색영역처럼 응답이 없는 시점이 발생한다. 중단되어도 무관한...

모듈화 Webpack 관련 정리

April 26, 2016 Code

주의 - 본 글은 타링크에 대한 개인적인 정리글입니다. CommonJS JS를 여러곳에서 쓰자는 워킹그룹 브라우저 밖에서의 실행, 서버사이드에서 js를 쓰자. 주요 명세 : 모듈화(모듈에 대한 정의와 사용) 스코프(scope) :...

SCSS 최적화 전략

April 26, 2016 Code

최근 개발작업에서 Webpack, ES2015, SCSS를 사용했는데, 협업하는분이 빌드가 너무 오래걸린다고 하여 분석해보았습니다. 그 결과 SCSS가 대부분의 빌드시간을 차지하고 있었죠. SCSS가 느리다? 가장 먼저 해본 추측은 SCSS 자체가 느리다는...

두 번째 자작 앱 OhMyPlane #4

April 25, 2016 App Code

  OhMyPlane 자작 앱 개발 네 번째 이야기. 이번에는 App Store에 iOS 버전을 올릴 때와 tvOS 대응 작업 시의 이야기다. 동작 화면 찍기 UI Kit으로 만든 앱의 경우,...

Azure 컨테이너 서비스로 Node.js 앱 배포하기

April 25, 2016 Code

  사건의 발단 지난 2016년 4월 20일, Azure 컨테이너 서비스(ACS:Azure Container Service, 이하 ACS) Microsoft Azure 블로그에 공개되었다. 이 소식을 Microsoft Azure MVP인 남정현님의 글을 통해서 접했다. 그리고...

[lodash/underscore] throttle과 debounce

April 24, 2016 Code

throttle 매 밀리세컨드마다 최대 한 번만 호출될 수 있도록 Throttle된 함수를 만듭니다. – throttle by lodash throttle - lodash throttle - underscore DOM API 중 onmousemove, onmouseover, onscroll...

#jekyll emoji 플러그인 설치

April 23, 2016 Code

jekyll 플러그인 jemoji를 설치하면 된다. 문제가 :scream: 생겼다. org-mode를 사용하기 때문. markdown을 사용한다고 가정하고 플러그인이 만들어졌기 때문이다. 찾아보니 Switch from a generator to a converter PR이 있다. 직접...

두 번째 자작 앱 OhMyPlane #3

April 21, 2016 App Code

  OhMyPlane 자작 앱 개발 세 번째 이야기. 프로토타입을 하나의 앱으로 완성(?)할 때, 기억에 남아 있는 것들을 정리해 본다. 전체적인 장면(Scene) 구성 처음에 이런 형태로 생각했던 것은 아니고,...

Flask에서 숫자를 콤마와 함께 출력하기

April 21, 2016 Code

웹 개발을 하다보면 숫자를 출력할 일이 참 많습니다. 그런데, 사람이 읽기에는 콤마(,)가 있는 편이 읽기 편합니다. PHP에는 number_format이란 함수가 있어서 그 역할을 합니다. Django의 경우 humanize contrib에 intcomma라는...

두 번째 자작 앱 OhMyPlane #2

April 20, 2016 App Code

  OhMyPlane 자작 앱 개발 두 번째 이야기. 이번에는 프로토타입 구현할 때 기억에 남는 것들을 끄적여 본다. 이미지 작업 그림을 그리거나, 이미지를 다루는 능력이 많이 부족하므로 난이도가 높게...

터미널에서 gist에 코드 올리기 gist

April 20, 2016 Code

작업을 하다 보면 작은 코드 스니핏을 공유해야 하는 경우가 있다. 간단하게 텍스트 파일을 작성해서 메일이나 메신저를 통해서 공유할 수도 있고 Github의 gist 서비스를 이용해서 공유할 수 있다. 이...

두 번째 자작 앱 OhMyPlane #1

April 19, 2016 App Code

  OhMyPlane 두 번째 자작 앱이 앱스토어에 올라갔다. 개발 시작부터 앱스토어에 올리기까지 대략 4주 정도 걸렸다. 그동안 작업했던 것 중 대략 기억에 남는 것들을 역시 끄적여 본다. Sprite...

터미널에서 실시간으로 관찰하기 watch

April 18, 2016 Code

터미널에서 작업을 하다보면 메모리 사용량이나 스토리지 사용량을 확인하기 위해 free -m 또는 df -h를 사용해본 경험이 있을 것이다. 명령을 입력하고 엔터를 누르는 순간에 명령을 처리하고 그 결과를 반환하기...

Ubuntu-Debian 패키지 매니저 apt 사용해보기

April 17, 2016 Code

기본적으로 apt 패키지가 설치되어있었지만… 사용하지 않았었다. 여기저기서 apt-get 같은 명령어를 알려줬기에… 그리고 얼마안되기도 했고, 그 간단한 사용법에 대해서 남겨두려고 한다. 참고는 15 Examples of How to Use New Advanced...

ONE스토어 반응형 이메일 서명

April 16, 2016 Code

왜 필요한가? [이 사진은 주작 입니다. ] 원스토어로 회사가 바뀐지도 벌써 2달이 지났습니다. 그래서 그런지 사실 있을 것이 없고 없는 것은 없는; 그런 상황입니다. 그러던 중 최근에 업체랑...

아마존 AWS 클라우드에 무료로 워드프레스 설치하기

April 16, 2016 Code

AWS(아마존 웹 서비스:Amazon Web Services)는 웹 서비스에 관련된 사람이라면 한번쯤은 경험해야할 서비스가 되어버렸다. Microsoft Azure가 기업시장을 중심으로 열심히 치고 올라오고 구글도 Google Cloud Platform을 제공하고 있지만 앞으로도 AWS가...

SSH Tunneling

April 14, 2016 Code

SSH란? Secure Shell 네트워크 보안을 위해 만들어진 프로토콜 인증/암호화/무결성/압축 터널링 a.k.a Forwarding A에 SSH클라이언트 설치하고, B에도 설치하고, A의 SSH클라이언트를 통해 SSH서버에 접속. 이 연결 통로를 터널이라 한다. 암호화...