기본 콘텐츠로 건너뛰기

2014의 게시물 표시

Android Weekly #3

2014년 12월 4주
안드로이드스튜디오에 구글 클라우드 결합
얼마전 1.0 버전이 발표된 Android Studio에 Google App Engine 개발 환경을 제공한다는 뉴스입니다. 이를 이용하여 모바일 어플리케이션의 백엔드 개발을 손쉽게 할 수 있습니다. 자세한 내용은 Google 블로그 글(영문)을 참조하세요.내차에 구글 안드로이드가 들어간다고?
다음 버전(M)에서는 Android Auto가 자동차에 내장된 형태로 제공될 것이라는 예측성 기사입니다. 당연한 수순일까요? 구글, '안드로이드원' 출시국 확대
인도에서 첫선을 보인 Android One 디바이스가 스리랑카, 방글라데시, 네팔 등으로 출시국을 확대한다는 소식입니다.2015년 안드로이드에 던져진 5가지 숙제
파편화, 차별화, 웨어러블 시장 전망, 기업시장,  앱 수익률 등의 문제점을 지적하고 있습니다.영국 가디언지가 선정한 2014년 최고의 안드로이드 앱 (영문)앱 목록게임 목록애플-안드로이드, 특허전쟁 모두 끝냈다구글 플레이스토어는 불공정한 플랫폼인가?안드로이드 테스트 킷 Espresso 2.0 릴리즈 (영문)
Wish your happy new year!

Android Weekly #2

2014년 12월 3주

구글 '넥서스5' 안드로이드 5.0.1 롤리팝 업데이트 돌입
모든 Nexus 디바이스의 factory image는 구글 사이트에서 다운로드 받을 수 있습니다.Android Wear 해커톤 지원 소식
구글이 Android Wear 해커톤 행사를 지원합니다.  안드로이드 5.1 내년 2월말 공개 (소문)
확인되지 않은 소문이랍니다. 카드보드 SDK for Android 공개
값싼 VR (virtual reality) 구현을 위한 카드보드 SDK가 안드로이드용으로 공개되었습니다.  몇 종류의 카드보드도 구매 가능하네요. 구글플레이 기프트 카드 프로모션
기프트카드 구매하고 게임 캐릭터도 공짜로 받고. 2주간 진행되는 프로모션입니다. 구글 게임 플레이 서비스
에 publishing API가 새로이 추가되었네요.  Project ARA DevCon 2
모듈기반 스마트폰 ARA의 두번째 developer conference가 열린답니다. Hangout으로 remote로 참석도 가능합니다. 이곳에서 등록하세요.중국 Coolpad 안드로이드 테블릿에서 백도어 발견
중국 Coolpad의 저가 안드로이드 테블릿에서 백도어가 발견되었다고 Palo Alto Networks사가 밝혔습니다.Watch Face의 성능을 높이는 방법
+Hoi Lam의 블로그 글 입니다.

Android Weekly #1

안드로이드 관련 뉴스를 주 별로 모아 정리해볼까 합니다.

2014년 12월 2주
Android Studio 1.0 정식버전 출시 Android 개발자 사이트의 Tool 메뉴를 선택하면 Eclipse ADT 대신 Android Studio 1.0이 메인 페이지를 장식합니다.

Jack (Java Android Compiler Kit) and Jill (Jack Intermediate Library Linker) Android 1.0에 포함되어 발표되었습니다. Android 빌드 시간을 단축 시키고 다른 툴에 대한 의존을 줄일 수 있다는 군요. 아직은 베타 버전입니다. 자세한 내용은 블로그(영문)를 참조하세요.

Android 5.0을 위한 새로운 샘플 코드 20개의 새로운 샘플 코드가 제공됩니다. 개발자 사이트에서 확인하세요.

Nexus 9 LTE 출시 미국 T-Mobile용 32G 모델이 600 달러에 구매가능합니다. 한국에서는 아직 출시 예정이네요.

Android Wear 시계 모드 및 Watch Face API 공개 Android Wear 시계 모양을 API로 개발하고 사용자가 이를 이용하여 개성을 뽐낼수 있는 시계 모드가 공개되었습니다. 구글 코리아 블로그 글 참조.

Android에서는 책도 대여해서 읽는다Google Play를 통해 책을 대여해서 읽을 수 있습니다. 착한 가격으로 많은 책들을 읽어볼까요?

Newsstand 출시 이제 뉴스와 잡지도 Android에서 즐길 수 있습니다.  2000개 이상의 매체를 무료로 제공하고 있네요.

Google Keep 추천합니다.

업무 및 개인 할일을 관리하기 위해 여러가지 방법을 사용해 봤습니다. Google에 입사하고 나서는 Google의 제품을 사용하기 위해 Keep으로 할 일 관리를 시작했는데 꽤 쓸만합니다. 웹 UI 및 Android용 application도 있습니다.


근황 소개 및 블로깅 방향 정립

3개월 전에 Google Korea Android팀에 합류하였습니다.  처음 이 블로그를 개설할 때 목적이 Android SDK 및 오픈소스에 대한 기술적인 글을 작성하는 것 이었는데 (블로그 주소를 보시면 짐작하실 수 있죠) 다시 원점으로 돌아가 Android에 대한 블로깅에 집중 해야겠네요.
Android SDK API에 대한 정리Android Google Play Services의 새로운 기능 소개Android open source에 대한 정리Android 운영체제의 새로운 기능새로운 Android 기기에 대한 소개 에 관한 글을 써보려 합니다.

홋카이도 여행 (삿포로, 노보리베츠, 하코다테, 후라노)

5박 6일간 홋카이도에 다녀왔습니다. 여행책에서 소개한 코스를 답습한 평범한 여행이었지만 개인적인 기록 및 소소한 여행 tip을 정리해 두도록 하겠습니다.
전체 일정 5박 6일의 긴 시간이었지만 홋카이도의 유명 관광지를 모두 둘러보기에는 빠듯한 일정이었습니다. 쇼핑, 관광 및 온천 등을 섞어서 아래와 같은 일정으로 여행을 다녀왔습니다.
1일 - 삿포르 도착 및 관광2일 - 노보리베츠로 이동. 관광 및 온천3일 - 하코다테로 이동. 관광 및 유노카와 온천4일 - 삿포르로 이동. 타누키코지 시장 쇼핑5일 - 후라노 관광6일 - 귀국 교통편 모든 지역을 이동 시 JR 홋카이도 5일권 패스를 사용하였습니다. 단, 지정석을 예약하셔야 편안히 이동할 수 있으므로 신치토세 공항내 JR information 센터에서 JR pass를 받으시고 바로 일정에 맞추어 지정석을 모두 예약해두시는 편이 좋습니다. 또한, 후라노에서 노루콧 열차도 지정석을 미리 예약해두시면 편리합니다.

삿포르 시내 관광 시에는 모든 관광지를 걸어서 이동하기에는 좀 힘든감이 있습니다. (불가능하지는 않고요) 지하철 1일권 pass를 구매하셔서 지하철로 이동하는 것이 편리할 것 같네요. 외국인도 가능한지는 모르겠습니다만 일본어가 가능한 동행이 있다면 삿포로 포루쿠루 자전거 1일 대여권을 이용하는 것도 좋은 방법일 것 같습니다.

하코다테에서는 tram 1일권을 사시면 하코다테 명소 및 유노카와 온천까지 다 이동이 가능합니다. 만일, 숙소를 유노카와 온천으로 잡으신 경우에는 하코다테 역에서 40분 정도 tram을 타고 이동해야 하므로 하코다테역 2층에 있는 수화물 보관소에 짐을 보관해두고 (500~700 Yen) 하코다테를 관광하고 저녁시간에 숙소로 이동하는 방법도 있습니다.

후라노의 팜 도미타로 가시는 방법으로는 노루콧 열차를 이용하여 라벤더 역에서 내려 걸어가시거나 나카후라노 역에서 택시 혹은 자전거를 대여 (역 앞 파출소 근처)하는 방법도 있습니다.  후라노 특급을 아침 7시 기차로 가시는 경우에는 11시…

한국어로 된 Stack Overflow Q&A 사이트 청원

http://area51.stackexchange.com/proposals/68765/stack-overflow-in-korean?referrer=gAbdEVJnSdQg5-7J4WPUiA2

현재 위 링크에서 한국어로 질문과 답변을 할 수 있는 Stackoverflow 사이트를 만들어달라는 청원을 진행 중 입니다. (이미 포루투칼어 같은 경우는 베타 사이트가 있습니다.)

언제까지 구글에서 검색도 안되는 네이버 까페에서 질문과 답변을 주고 받아야 겠습니까? 물론, 코드관련 질문을 주고 받기에도 정말 불편합니다.

이 글 읽고 계신 개발자분들 위 사이트로 가셔서 follow해 주시고 예제 질문들에 upvote 많이 해 주시면 고맙겠습니다. 영어의 한계로 정말 훌륭한 Stackoverflow의 인프라를 사용하지 못하고 있는 많은 한국 개발자분들을 위해 도와주세요.

Thank You!
Wonil Kim.

WWDC 2014 간단 키노트 정리

개발자에 의한 개발자를 위한 키노트였다. 진부한 예언들과 달리 Apple은 생각치 못했던 것들을 또 다시 보여준 WWDC 2014 키노트였다.

동영상은 이곳에서: http://www.apple.com/apple-events/june-2014/

많은 내용을 쏟아냈지만 개인적으로 인상 깊었던 것을 간단히 정리해본다.

1. Mac OS X에서 새로이 제공하는 서비스들

서비스들을 운영체제 플랫폼의 기능으로 통합시켰다. iCloud Drive가 대표적이다. Mac OS X 및 iOS 기기만 사용한다면 굳이 Dropbox 등의 추가적인 Cloud Storage 서비스를 사용할 필요가 없어질 듯. iCloud는 무료로 5GB 공간을 제공하므로 Dropbox 보다는 일단 크다. Apple의 iCloud 가격 정책이 변경될지 여부는 지켜봐야하겠다.

Mail Drop 기능은 iCloud Storage를 이용하여 최대 5GB 크기 파일을 메일로 보낼 수 있다. 실제 파일은 메일에 첨부되지 않고 iCloud Storage에 저장되고 이에 대한 링크만 메일로 전송되는 방법이다. (네이버의 대용량 이메일과 비슷) Mac이나 iOS 기기에서는 링크로 보이지 않고 실제 파일 컨텐츠가 첨부되어 있는 것처럼 보여진다.

2. 강화된 Communication 기능과 iPhone과 Mac과의 연동

iPhone을 거실 식탁위에 두고 서재 방에서 Mac 컴퓨터로 인터넷을 보고 있는데 전화가 온다면 거실까지 걸어가서 전화를 받아야 한다. 앞으로 OS X Yosemite에서는 Mac 컴퓨터 화면에서 바로 전화를 받을 수 있다. 또한, 전화도 걸고 SMS 메시지도 보낼 수 있다. 이거 정말 편리한 기능이라 생각된다. 또한, iPhone만 가지고 있는 사용자들에게 Mac 컴퓨터를 지르고 싶게 만드는 Apple의 묘안으로 보인다.



























Bluetooth의 Handsfree Profile을 사용하는 것이 아닐까 싶은데 Bluetooth의 거리 제약이 있기 때문에 어느 정도 거리에서 사용이 가능할지 궁굼하다.

무제한 통…

스타트업 아이디어를 얻는 법 - Paul Graham의 블로그 글에서

Source Link: http://paulgraham.com/startupideas.html

Paul Graham의 블로그에서 좋은 글을 발견하여  간단히 정리해 둔다. 윈문은 위 링크를 참고.

당신이 직면한 문제를 해결하라. 진짜 당장 해결해야 할 문제에 집중하라. 억지로 만들어낸 그럴듯한 문제 말고.

Why is it so important to work on a problem you have? Among other things, it ensures the problem really exists.

많은 사람이 살짝 필요로 하는 문제보다는 적은 수의 사용자라도 정말로 해결하고 싶어하는 문제에 집중하라. (e.g. Microsoft Altair Basic - 알테어 베이직은 소수의 알테어 컴퓨터 사용자에게는 정말 필요한 제품이었다.)

"When you have an idea for a startup, ask yourself: who wants this right now? Who wants this so much that they'll use it even when it's a crappy version one made by a two-person startup they've never heard of? If you can't answer that, the idea is probably bad."

내가 생각한 문제가 가치있는 것인지 어떻게 확신할 수 있나? 특별한 방법은 없다. 단, 본인 스스로가 제대로 된 사고를 하는 사람이라면 자신이 생각한 문제가 해결할 가치가 높을 것이다. 자기 자신을 알라. 소크라테스의 말이 역시 옳다!

You want to know how to paint a perfect painting? It's easy. Make yourself perfect and then just paint naturally.

스타트업에 필요한 아이디어를 얻기 위해서는 실생활에서 아이디어를 잡아낼 수 있는…

Facebook의 새로운 서비스 - 음악, TV 프로그램 자동 인식 공유

음악과 동영상 TV 프로그램을 공유하는 새로운 방법. Facebook이 선보일 새로운 서비스를 이용하면 듣고 있는 음악, 보고 있는 TV, 동영상 등을 자동으로 Facebook Application이 인식하여 해당 컨텐츠에 대한 링크를 제공한다. (당장은 미국 사용자에게만 서비스를 제공한다고 함.)

내가 좋아하는 음악, 영화, TV 방송 등을 손쉽게 친구들과 공유할 수 있고 기억해두고 싶은 컨텐츠를 쉽게 보관하는 방법으로 활용할 수 있다.

http://newsroom.fb.com/news/2014/05/a-new-optional-way-to-share-and-discover-music-tv-and-movies/

이왕이면 나처럼 그림 감상을 좋아하는 사람들을 위해 그림을 인식해서 공유하는 기능도 추가되면 좋을 텐데...

Sharing Economy (나눔 경제?)와 잡화 배달 서비스

Source:
http://www.nytimes.com/2014/05/22/technology/personaltech/online-grocery-start-up-takes-page-from-sharing-services.html?src=mv&_r=0

당신이 중년의 주부이고 시간이 많이 남으며 돈이 더 필요하다면 이 뉴스가 꽤나 솔깃할 것이다. 남을 위해 대신 장을 봐주고 시간당 $15 ~ $30 (한화 1만 5천원 ~ 3만원)을 벌 수 있다면 어떤가? 학력도 필요 없고 어떤 경력도 필요없다. 단지, 장만 잘 보면 된다.


Amazon에서 2년간 일했던 Apoorva Mehta가 창업한 Instacart라는 업체는 돈은 넘치는데 시간이 없는 고객과 그 반대의 노동자를 연결하여 고객이 원하는 식료품을 구입하여 배달해주는 서비스를 제공한다. 장을 보는 노동자는 Instacart와 계약을 맺고 자신이 원할 때 원하는 장소에서 잡화를 구입하여 배달해주면 된다.

남는 시간과 노동력을 돈을 받고 공유하는 Sharing Economy의 한 형태라 할 수 있겠다. IT 기술의 발전에 의해 Sharing Economy의 다양한 실험이 진행되고 있다. 예를 들면, Airbnb나 Uber와 같은 업체들이 대표적이라 하겠다. 과연, 이러한 실험들이 미래의 노동 형태를 새롭게 바꿀 수 있을 것인가?

회사와 계약을 맺고 정해진 시간동안 정해진 업무를 해야하는 것이 아닌 자신이 원할 때 자신이 가진 자원을 타인과 공유하여 돈을 벌 수 있는 노동 모델. 꽤 매력적이긴 하다. 이 기사에서는 새로운 노동 형태에 대한 몇 가지 부정적인 전망도 내놓고 있다. IT 기술이 더 발전하면 결국 이런 노동력 자체가 필요없어질 수도 있고 (드론으로 배달을 대신한다거나) 혹은, Instacart의 서비스가 점점 발전 할 수록 효율화를 추구하여 결국, 한 노동자가 받을 수 있는 시급이 줄어들 수도 있다는 것이다.

앞날이야 어떻게 되든 당장 시간은 넘쳐나고 돈은 더 필요한 사람들에게는 꽤나 흥미로운 비지니…

AT&T의 DirecTV 합병에 관하여

Source:
http://www.nytimes.com/2014/05/20/opinion/what-atts-offer-might-mean.html?hp&rref=opinion&_r=0

AT&T가 위성방송 1위 업체 DirecTV 인수에 나섰다고 한다. 48.5 billion USD (한화 약 50조)의 어마 어마한 금액을 지불한다고. DirecTV는 미국 내 2천만명의 가입자와 남미에 1800만명의 가입자를 가진 세계 최대의 위성방송 사업자이다.



통신사업자들은 최근 무선, 인터넷, TV등 여러 서비스를 동시에 제공하여 가입자의 충성도를 높이는 전략을 취하고 있다. 한국의 경우를 보더라도 3개 통신 사업자 모두 비슷한 서비스 패키지를 제공하고 있다. 다만, 한국과 달리 미국의 광할한 영토에서는 인터넷 연결이 취약한 지역도 있으므로 이를 DirecTV의 위성방송으로 커버하고 기존 AT&T의 인터넷 TV (U-verse)와 연계하여 전국 서비스를 제공하려는 전략으로 보인다.

현재 약 6백만명의 가입자를 가진 AT&T가 DirecTV를 인수하게 되면 단숨에 2천 6백만명의 가입자를 가진 거대 유료 TV 서비스 사업자로 변신하게 된다. Verizon과 같은 다른 통신 사업자들도 비슷한 인수합병을 검토하지 않을 수 없게 될지도 모르겠다.

관련 정보:
현재 논의 중인 Comcast와 Time Warner Cable의 인수합병이 성사되면 약 4천만명의 가입자를 가진 거대 케이블 TV 회사가 된다2013 4Q Netflix의 미국 내 가입자는 3천 3백만명이다. (전 세계는 4천만명)
기사에서 살펴본 단어:
pledge - 약속하다. 공약하다.antitrust - 독점금지의

얼굴인식 기술과 보안 문제

New York Times 기사 링크:
http://www.nytimes.com/2014/05/18/technology/never-forgetting-a-face.html?ref=technology&_r=0

스파이 영화 속 장면. 사진이나 동영상에 찍힌 테러범의 얼굴을 컴퓨터에 저장 된 DB에서 자동으로 검색하여 일치하는 정보를 신속히 찾아서 보여준다. Ney York Time의 기사에 의하면 이미 혹은 가까운 미래에 이러한 일들이 실제로 가능할 것으로 보인다.


얼굴인식 기술은 Apple, Google, Facebook과 같은 거대 IT 기업들에 의해 널리 사용되어 지고 있으며 점점 더 관련 기술과 응용 분야가 발전하고 있다. Google의 경우 영상에서 얼굴인식 방법 및 윙크하는 얼굴 인식을 이용한 컴퓨터 로그인 방법 등의 특허를 제출하였으며 NameTag라는 업체는 구글 글래스 앱을 통해 내가 바라보는 사람의 얼굴을 인식하여 Facebook에 있는 public profile 정보를 보여주는 서비스를 제공한다. 또한, Facebook이 개발한 DeepFace 기술을 이용하면 97.53%의 얼굴 인식률이 가능하다. 이것은 거의 보통 사람들의 인식률과 차이가 없다고 한다.

위 기사에서 Dr. Atick은 얼굴인식 기술이 광범위하게 실시간으로 이루어질 수 있는 미래에 대해 경고하고 있다. 나도 모르는 사이에 얼굴인식을 통해 내 일거수 일투족이 감시될 수 있다는 것이다. 물론, 범죄 예방의 목적 등 공익을 위해 사용될 수도 있겠지만 회사의 이윤추구를 위해 사용되거나 정부의 정치적 목적을 위해 악용된다면 위험한 결과를 나을 수도 있을 것이다.

관련 정보:
오픈소스 라이브러리인 OpenCV를 이용한 얼굴인식이 가능하므로 좋은 아이디어가 있다면 직접 구현하여 실험을 해볼 수도 있을 듯.
찾아 본 단어들:
boosterism - 열렬한 지지. 격찬.indeterminate - 확실하지 않은. 애매한.earshot - 목소리가 들리는 곳unfettered - 속박되지 않…

Apple의 Beats 인수에 대한 다른 시각 - The Verge의 기사 정리

The Verge의 뉴스 원문 링크:
http://www.theverge.com/2014/5/10/5700062/why-is-apple-buying-beats-its-the-brand

어제 New York Times 기사 블로그 글을 정리하면서 혹시 하고 생각했던 가정이 The Verge에서 기사로 나왔다. Apple이 Beats를 인수한다면 wearable computing 사업을 위한 것이 아닐까 하는 가정. 어떻게 이런 가정이 가능할까?
과거 사례를 볼 때 Apple은 개발 중이거나 추후 개발할 제품에 도움이 되는 회사만을 인수하였다.Beats의 스트리밍 서비스 가입자는 현재 20만명 수준으로 Apple의 사업에 도움이 될 수준이 아니다. 이 서비스 때문에 Beats를 인수한다는 것은 말이 안된다.iWatch와 같은 wearable computing 기기는 기술과 멋진데라는 느낌만으로는 부족하다. Beats가 Dr. Dre 헤드폰에서 보여준 luxury fashion 감각과 마술같은 마켓팅이 필요하다.Beats의 제품들은 이미 많은 사람들이 사랑하는 패션 소품이 되어있다. 46%의 10대들은 다음 번 헤드폰 구매 시 Beats를 선택하겠다고 한다. 이에 비해 350 달러 수준의 iWatch를 구매하겠다는 10대는 17% 수준이다. 즉, iWatch와 같은 wearable computing 제품에 럭셔리 브랜드를 입히기 위해 Beats를 인수할 가능성이 높다는 것. 기사의 마지막 문장에 이 가설의 핵심이 함축되어 있다.
"It would need the iWatch to be seen as a fashionable luxury product, one worn by influencers. Beats has those in spades.My hunch is that if Apple is buying Beats, it’s because Apple is ready to announce the iWatch. It just needs Dr. Dre and Ji…

Apple의 Beats 인수에 대한 뉴스 정리

New York Times 뉴스 원문 링크:
http://www.nytimes.com/2014/05/10/technology/beats-talks-may-foretell-apple-shift.html?ref=technology&_r=0

빨간색 b자 마크가 인상적인 Dr. Dre 헤드폰을 생산하는 Beats사를 Apple이 거금 3.2 billion USD (약 3조원)에 인수합병 할 수 있다는 소식이다. 만일 성사된다면 Apple의 인수합병 중 가장 금액이 큰 건이라고 한다.


Dr. Dre 헤드폰의 브랜드 가치와 Beats Streaming Service를 통해 Apple도 음악 Streaming 서비스에 본격적으로 뛰어들기 위해 인수합병을 추진한다는 추측이 있지만 정확한 이유는 오리무중? Apple은 이미 막강한 브랜드이며 음악 산업에서도 경쟁력을 갖추고 있는 상황인데 왜 Beats를 거금을 들여 인수하는지 투자자들도 좀 당황한 듯 하다.

이 기사의 말미에서 Beats사의 공동 창업자인 Mr. Jimmy Iovine을 언급하고 있는데 그의 음악 산업 전반의 뛰어난 능력을 Apple에서도 발휘하여 전체 컨텐츠 비지니스를 지휘하도록 하기 위해 이 회사를 인수했을 수도 있다는 것. 사람 한명 모셔오려고 3조원을 들여 한 회사를 합병 할 수도 있는 것인가?

iPhone 6 출시 발표장에서는 "Apple loves Music! So, we proudly presents Dr. Dre headphone to all iPhone 6 users"와 같은 멘트를 들을 수 있을지도.

이 기사에서 살펴 본 단어들:
Perplexed (형): 당혹한, 갈팡 질팡하는Canny (형): 약싹빠른, 조심스러운Plunge (명): 돌입, 돌진 (동) 뛰어들다Fringe (형): 2차적인Aficionado (명): 열성적인 팬 (스펜인어)Impresario (명): 감독. 지휘자 참고: 애플 역사 상 가장 중요한 인수합병 12선Apple의 Beats 인수에 대한 다른…

AWS ELB health check for Django application

I used AWS Cloud services from my last project. To increase stability of this web application, I used Elastic Load Balancing of AWS. AWS ELB keep checking health status of web application by using TCP or HTTP ping. From this blog article, I will summarize how AWS ELB health check can be used with Django application running on Apache web server with HTTPS enabled.

1. Simple TCP ping
This is easy setting. You can ping 80 port of TCP to check if web server is running.

AWS ELB == PING TCP:80 ==> AWS EC2 web server

2. Simple HTTP ping
To check about HTTP server and it's web application running well, you can ping by using a specific URL.

AWS ELB == PING HTTP:80 /status ==> AWS EC2 web server

3. Ping with HTTPS
What's happened if you're using HTTPS instead of HTTP in your web application? No issue.

AWS ELB == PING HTTPS:80 /status ==> AWS EC2 web server with HTTPS setting

But, wait. we can configure AWS ELB to support HTTPS instead of web server. Such like the below:

Internet &…

AWS EB에 Django 사용 시 Cache 설정 방법

MWC 2014에 선보일 데모 프로그램을 AWS EB에 Django로 개발하였다. 주요 기능 완료 후 페이지 로딩 속도를 개선하기 위해 HTTP cache 설정을 하였다. 생각보다 고생을 해서 어떤 함정이 있었는지 이 블로그에 정리해두고자 한다.

1. AWS EB의 Apache mod_wsgi 설정
Static 파일에 대한 cache 설정은 Apache의 mod_wsgi 설정 파일의 수정이 필요하다. 하지만, mod_wsgi 설정 파일을 직접 수정해봐야 다음 번 application 버전을 AWS EB에 업로드 하면 다시 초기 설정 값으로 바뀌어 버린다. 이 문제를 해결하기 위해서는 AWS EB의 configuration hook 파일을 직접 수정해 주어야 한다. 자세한 방법은 stackoverflow의 다음 Q&A를 참고하시라.

2. S3 Cache 설정
만일, static 파일들을 AWS S3에 저장해두고 사용한다면 AWS S3의 각 object들의 cache 설정이 필요하다. 지정한 bucket의 모든 object에 대해 cache 설정을 하는 Python 예제 코드를 참고하기 바란다.

3. Django storage를 사용하는 경우
Django storage를 사용하여 AWS S3에 파일을 업로드한 경우 이 파일에 대한 URL 링크가 HTTPS이거나 혹은, auth string param이 추가되어 있으면 local cache가 불가능하다. 이 문제를 해결하기 위해서는 아래 두 설정 값을 settings.py 파일에 추가한다.

AWS_QUERYSTRING_AUTH =FalseAWS_S3_SECURE_URLS = False
4. 최종 확인
Safari나 Chrome 브라우저의 developer tool을 사용해서 static file들의 local cache가 정상적으로 동작하는지 확인한다.

NHK Radio News 스크립트 블로그 사이트

일본 우익 정치인들은 짜증 나지만 워낙 재미있는 콘텐츠를 많이 가진 일본. 그래서, 몇 개월 전부터 본격적으로 일본어를 공부하기 시작했다.

모든 외국어 공부에서 가장 중요한 듣기 능력 향상을 위해 아침 출근 중에 NHK Radio News podcast를 내려받아 듣기 시작했는데 아직 내 실력이 모자라서 내용 파악이 전혀 되지 않는다.

어딘가 스크립트를 정리해 둔 사이트가 있지 않을까 열심히 검색해 보았지만 찾을 수가 없었다. 어떻게 할까 고민하다 떠오른 아이디어! 일본어 뉴스 정도면 음성인식으로 스크립트를 만들어 볼 수 있지 않을까?

그리하여, http://nhkradio.blogspot.kr 블로그에 일본어 음성인식을 이용해 매일 아침 NHK Radio News를 블로그에 올리는 프로그램을 만들어 보았다. 대략적인 프로그램의 동작 방법은 다음과 같다.
NHK Podcast URL에서 XML 파일을 내려받는다.새로 추가된 Podcast의 MP3 파일을 내려받는다.MP3 파일을 ffmpeg을 이용하여 WAV 파일로 변환한다. 앞 7.5초 정도의 오프닝 음악은 잘라낸다.쿄토 대에서 개발한 Julius 음성 인식하여 text 파일로 만든다.위 블로그에 음성 인식된 결과를 SMTP로 포스팅한다. 음성 인식을 사용하므로 당연히 100% 정확한 결과는 나오지 않지만, 학습에는 도움이 될 정도 수준의 결과는 보여준다. 전체 내용 파악은 가능하고 꽤 정확하게 문장이 만들어진다.
다음 버전에는 음성 인식된 문장 단어에 일본어 사전 링크를 연결 시켜 볼까 한다.  일본어 학습하시는 다른 분들에게도 도움이 되었으면 좋겠다.

UPDATE: 별로 인식률이 좋지않아 현재는 자동인식 블로그 업데이트를 중지하였다. 인식률 문제해결하면 다시 시작할 예정.

개발자의 할 일 목록 관리

일 잘하는 방법? 난 할 일 목록 관리가 첫걸음이라고 본다. 지금까지 다양한 도구로 할 일 목록을 관리해왔는데 이를 간단히 정리해보고 차세대 방법(론?)에 대해 고민해보고자 한다.

1. Remember the Milk 약 2~3년 전까지 가장 많이 사용했던 할 일 관리 web 사이트이다. 특히, 우선순위, 일정 등을 텍스트 입력만으로 간단히 설정할 수 있는 기능이 매우 편리하다. Backlog, Goal, Todo 카데고리로 나누어 당장 처리해야 할 일들은 Todo에 차차 고려해볼 것들은 Backlog에 긴 호흡으로 달성해야 할 일들은 Goal에 따로 관리하였다. iOS나 Android용 App도 제공하는데 돈 주고 사야 한다.
2. Ever Note 요즘 주로 사용하는 프로그램이다. 주 단위로 중요한 목표를 설정하고 매일 아침에 해야 할 일 목록을 만든다. iOS 기기 및 다른 Mac 컴퓨터에서 동기화가 가능하여 수시로 목록을 확인할 수 있다. 또한, (엄청나게 데이터를 많이 올리지 않는다면) 무료이다.

3. 프로젝트 단위의 할 일 관리 Ever Note를 이용해서 모든 프로젝트의 할 일 목록을 관리할 수도 있겠지만, text 파일 포맷으로 프로젝트의 소스 코드와 함께, 할 일 목록을 관리하면 어떨까? 우선 눈에 걸린 도구로는 Todo.txt가 있다. Text 파일에 할 일 목록을 작성하는 간단한 문법을 정의하고 이를 web, iOS 기기, Sublime 편집기 등에서 볼 수 있는 프로그램을 제공한다. Todo.txt를 확장하면 Text 기반의 프로젝트 관리 도구를 만들 수 있지 않을까 고민 중이다.