구루의 기술뉴스 : 트위터와 핀터레스트의 빠른 변화뒤엔 DevOps가 있다 외 18건

구루의 기술뉴스 ( GuruNews ) 77회차 입니다.

이번 회차에는 DevOps 가 빠르게 변화하는 회사들을 뒷받침해준다는 인포그래픽을 메인으로 선정했습니다. DevOps 가 뭔지는 ‘DevOps, 개발과 운영의 새로운 문화‘ 글을 참고하세요. 그리고 개발관련해서는 구글이 만든 웹 프레임워크인 AngularJS 가 최근에 많이 거론되고 있네요.

[ DB,DevOps,클라우드,웹서버 기술 ]

[ 프로그래밍/HTML5/CSS/Javascript ]

  • Adobe 개발자 사이트에 올라온 AngularJS 시작하기 대세는 대세인듯. AngularJS 추가강좌 하나 더 AngularJS Directives and The Computer Science of JavaScript
  • jQuery 개발자를 위한 AngularJS jQuery는 라이브러리, AngularJS는 프레임워크
  • mqa.js – 540바이트 짜리 초경량 미디어쿼리 라이브러리. CSS에 커스텀신택스 사용한후 JS에서 연결하는 방식
  • O’reilly 가 개최하는 무료 자바스크립트 온라인 컨퍼런스 Fluent 2013 한국시간으로 4월 5일 새벽 2시. JS의 “this”/Node 와 Express/AngularJS의 기본 등 2시간
  • Dashing – Shopify가 공개한 Sinatra 기반의 오픈소스 Dashboard 프레임워크. 서비스 모니터링에 있어서 이쁜 대쉬보드를 만드는건 필수. 1080p 스크린에 최적화 됨
  • Web App 개발자를 위한 크롬 DevTools 확장 Ember/Backbone/Angular/KnockoutJS/Rails/CoffeeScript/Grunt 등 자신이 쓰는 라이브러리에 맞게
  • 자바스크립트 어플리케이션 배포하기 퍼포먼스 관련 다양한 팁들을 정리. Module Server/Pictos Server/Grunt 관련 등, 내부의 링크들 모두 세심히 살펴볼만
  • TAL ( TV Application Layer ) – BBC가 HTML 기반 TV앱 개발을 위해 만든 오픈소스 라이브러리. 문서/위젯/샘플/튜토리얼 까지 포함. 정리 깔끔하네요
  • Formula.js – Excel에서 사용하는 각종 수식들을 구현한 자바스크립트 라이브러리. 데이터분석툴이나 어드민툴 제작시 기능확장용등으로 사용가능할 듯
  • Huginn – 야후 Pipes + IFTTT의 오픈소스 버전. 다양한 Agent를 이용해서 자신만의 자동화 작업을 구현가능. Ruby/Capistrano/Unicorn/Nginx로 구성

[ 추천글 ]

  • 개발자들과 대화하는 법 개발자들은 개발자들과 대화하기를 좋아합니다. 경험 있는 SW 매니저라면 개발자처럼 생각하고 대화를 시작해 주시면 좋겠죠.
  • Tesla is The New Apple 2005년 아이폰 출시전의 애플과 비슷하다는데 한표. 애플이 Tesla 를 사면 더 재미난 그림이 될것 같은데..

피드백 환영합니다!
제 블로그를 RSS리더에서 구독하시거나 , 제 블로그를 이메일로 구독하실수 있습니다

구루의 기술뉴스 : 구글 생산성의 비밀 Snippets 외 32건

구루의 기술뉴스 ( GuruNews ) 76회차 입니다.

제 신변에 변화가 있고나서 첫번째 기술뉴스네요. 앞으로도 계속 제 블로그를 통해서 기술뉴스를 전해드리겠습니다.

[ 추천글 ]

[ 웹사이트, 웹서비스, 웹기술 ]

[ 모바일 – 아이폰/안드로이드 ]

[ 프로그래밍/HTML5/CSS/Javascript ]

[ DB,DevOps,클라우드,서버 기술 ]

[ 하드웨어/Gadget ]

피드백 환영합니다!
제 블로그를 RSS리더에서 구독하시거나 , 제 블로그를 이메일로 구독하실수 있습니다

CEO는 편집장이다 – 모든 작은 디테일 하나에도 완벽을 기하되, 디테일의 개수를 제한해라

The CEO as Chief Editor

트위터 창업자이며, 현재는 모바일 결제 서비스 Square의 CEO인 Jack Dorsey가 자신은 Chief Editor(편집장) 이라고 생각한다고 하면서 발표한 내용을 발췌한 짧은 동영상입니다. 제가 요즘 가장 중요하게 생각하는 단어인 “디테일” 에 관한 내용이 있어 이 내용을 정리한걸 공유합니다.

“모든 작은 디테일 하나에도 완벽을 기하되, 디테일의 개수를 제한해라.”

편집장으로써, 할일이 매우 많지만 보통 그일들중에서 한두가지만 중요하다.

사용자/엔지니어/지원인력/디자이너들로부터 오는 아이디어와 이야기들은 계속 넘쳐난다.
우리는 이중에서 네트웍,서비스,제품을 유지하고 이끌어 갈수 있는 한두가지만 선택을 해야한다.
편집장으로써 난 회사의 최고 편집자이며, 이런 모든 인풋들로부터 이중 하나 또는 몇가지들을 교차시켜 우리가 하는 일들과 잘 맞는것을 선택해야 한다.

특별히 내가 신경쓰는 세가지가 있다.

첫째는 Team 이다.

우리는 최고의 사람들을 뽑아야 하고,
최고의 사람들로 구성할수 있도록 조정해야 하고,
모든 부정적인 요소들을 제거해야한다.

우리는 결국 한 그룹의 사람들이 한개의 목표를 향해 같이 일하고 있는 것이며,
우리가 하나로 뭉쳐 같이 나아가지 않는다면, 우린 여기저기 돌아다니게 될것이다.
이런 난잡한 회사가 만든 제품은 아무도 쓰지 않게 된다.
그래서 구인(recruting)이 첫번째다.

두번째는 내부/외부의 커뮤니케이션 이다.

내부 커뮤니케이션은 우리가 뭘하고 있고, 왜 이걸 하고 있고, 우리의 목표가 뭐고,
우리의 목표가 왜 그런지에 대해서 일치하는 의견을 가지도록 얘기하는 것이다.

만약 여러분이 “이곳이 우리가 가는곳이고, 다음 30일은 이렇고, 다음 3달간은, 다음 6개월, 다음 1년은 어떨것이다” 와 같은 것을 가지고 있다면 이게 비젼이며, 이런 하이레벨의 비젼이 있다면 회사의 모든 결정요소들에 대해 올바른 우선순위 지정이 쉽게 될것이다.

외부 커뮤니케이션은 제품(Product)이다.
제품은 우리가 세상에 대해서 말하는 이야기(Story)이다.
우리는 모든 것을 이 제품을 통해서 커뮤니케이션 하길 바란다.

이 이야기는 특정한 사람에 대한 것이 아니라, 사람들이 이 제품을 어떻게 사용하고, 사람들이 이 제품을 어떻게 자신들의 삶에 집어넣고, 그들이 이 제품으로 무엇을 하는지에 대한 이야기이고 싶어한다.

세번째는 돈을 조정하는 것이다.

이건 투자와 매출 두가지로 얘기가 된다. 투자자로부터 돈을 받거나, 매출을 내거나.
운좋게도, Square의 경우는 첫번째 날부터 매출이 있었으므로, 우린 계속 제품을 만드는데만 집중하고 투자에는 별로 신경쓰지 않았다. 우린 매출에만 집중할수 있었다.

이 세가지가 내가 CEO로서 계속 하는 일이다.

성장하고 빠르게 움직이는 회사를 쉽게 관리하는 방법은 기본적으로 딱 한가지가 있다.

“모든 작은 디테일 하나에도 완벽을 기하되, 디테일의 개수를 제한해라.”

이걸 잘할수 있다면 어떤 조직구조에 있거나, 어떤 회사나 조직에 있더라도, 성공할수 있게된다.
바로 당신이 가장 작은일에도 신경을 쓰고 있기 때문이다.
그리고 만약 당신이 중요하다고 생각하는 가장 작은일에도 신경을 쓴다면, 다른 모든것들은 알아서 처리될것이다.



앞서 말씀드렸듯이 제가 요 몇년간 가장 중요하게 생각하는 단어는 디테일입니다.
좀 강력히 얘기하면, 무한 경쟁의 시대에서는 디테일 밖에 경쟁할게 없다고 생각합니다.
그래서.. 한참동안 무미건조한 기술뉴스만 올렸던 제 블로그에 이 디테일에 관한 얘기들을 좀 올려볼까 합니다.

자동 업데이트 되는 나만의 트위터 백업 ( Twitter Archive ) 사이트 만들기

2012년 말부터 Twitter가 오랫동안 사용자들이 기다려왔던 자신의 모든 트윗들을 내려 받을 수 있도록 하는 기능(Twitter Archive)을 오픈하였습니다. 특정 계정들에만 오픈되다가 지금은 많은 계정들에 이 기능이 지원되기 시작했습니다. 다운받는 방법은 자신의 트위터->설정 페이지에 가보시면 하단에 “Your Twitter Archive” 라고 써있는곳에 내려받기 버튼이 보입니다. 이 버튼을 누르면 처음엔 받을수 있는 링크가 메일로 오구요. 그 메일을 누르면 다운 받을수 있는곳으로 이동합니다. 이 버튼이 안보이면 언어 설정을 영어로 바꿔보시기 바랍니다. 저도 계속 안보여서 안생겼나 하고 기다렸는데, 혹시나 해서 영어로 바꾸니 바로 보이더군요. ( 물론 이걸로 해도 아직 안보이는 분들도 있습니다. 조금 더 기다리셔야 ㅠㅠ )

이렇게 받은 파일을 압축을 풀면, 로컬에서도 완벽하게 브라우징 할수 있는 웹사이트 하나가 생성됩니다. 월별로 조회가 가능하고 검색도 됩니다.

twitter_archive_local

깔끔해서 다른 트위터 백업 사이트나 기능들이 필요없을 정도입니다. ( 전 워드프레스 + 트위터 백업 플러그인으로 개인적으로 만들어 사용중이었습니다. ) 이걸 그냥 자신의 웹서버에 업로드만 하면 언제라도 편하게 검색해 볼수 있지만, 문제가 한가지 있습니다. 항상 최종본이 아니라는 거죠. 매일 새로 트윗은 할테고, 그럴때마다 다운받아서 업데이트를 해야합니다. 그래서 자동으로 새 버전으로 업데이트 하도록 하는 방법이 분명 나올거라고 생각했는데, Martin Hawksey 라는 친구가 Google Drive 와 Google Apps Script 를 이용해서 이걸 자동으로 업데이트 하는 방법 을 공개했습니다.

설명이 좀 복잡하길래, 따라하면서 간단히 정리해봤습니다.

  1. 트위터에서 자신의 archive 를 다운받습니다. 보통은 tweets.zip 이라는 파일로 다운로드 됩니다.
  2. 로컬 드라이브에 압축을 풀고, Google Drive에 해당 폴더를 업로드 합니다.

    이때 conversion : off ( 업로드하는 파일을 구글 드라이브 형식으로 변환기능 : 끔 ) 라고 되어있는지 꼭 확인하셔야 합니다.
  3. 업로드된 폴더의 공유(Sharing) 설정을 열어서 “Public on the web” 으로 지정합니다.
    그러면 해당 폴더가 “https://docs.google.com/folder/d/0B7SMn58mVGhSZE5xVkhNbkg0MmM” 같은 형태로 보이게 되는데 이걸로는 웹사이트 형태로 보이지가 않습니다. 뒤의 0B7SMn58mVGhSZE5xVkhNbkg0MmM 주소를 복사해서 “https://googledrive.com/host/” 뒤에다 붙여넣습니다. 이제 이런 형태의 주소가 완성됩니다. “https://googledrive.com/host/0B7SMn58mVGhSZE5xVkhNbkg0MmM” 이제 여러분의 만든 링크를 눌러보시면 방금 업로드한 자신의 트위터 백업 사이트가 구글 드라이브를 통해서 보이게 됩니다. ( 이 링크는 제 사이트로 갑니다 )
  4. 이제 Martin이 만든 “Update Twitter Archive with Google Drive” Google Spreadsheet 를 열어서 File > Make a Copy 해서 자신의 구글 드라이브로 복사합니다.
  5. 2014.03.14 추가오류가 수정된 코드버전이 GitHub에 따로 있습니다. 댓글에 연와님 제보
  6. Authorize/Add Sync Menu 버튼을 두번 누릅니다. 한번은 권한부여, 두번째는 우리가 사용할 메뉴를 추가하는 것입니다.
  7. 상단에 보면 “Sync Twitter Setup” 메뉴가 추가되었습니다.
  8. 첫번째 메뉴 아이템인 Set Archive Path 를 눌러서 방금 업로드한 자신의 Folder ID ( 제경우는 0B7SMn58mVGhSZE5xVkhNbkg0MmM ) 를 입력합니다.
  9. 두번째 메뉴 아이템인 Twitter API Authentication 을 눌러서 자신의 트위터 계정설정을 합니다. 이경우 트위터 API키를 얻기 위해 새로운 트위터 앱을 추가해줘야 합니다. http://dev.twitter.com/apps/new 로 가서 새 트위터 앱을 만듭니다. Callback URL만 설명에 나온대로 https://spreadsheets.google.com/macros 로 지정하면 큰 문제 없습니다. 설정하고 나서 Consumer key 와 Consumer Secret 을 넣어줍니다.
  10. 그리고 나서 Tools->Script Editor 를 클릭해서 스크립트 에디터를 열고, Run->Authorize 를 누르면 Authorize 버튼이 팝업되고 이걸 누르면 트위터 사이트를 통한 내 트위터 앱 인증이 진행됩니다.
  11. 이제 설정이 완료되었습니다. “Update Archive Now” 를 누르면 바로 업데이트 하며, “Turn Auto-Refresh On” 을 누르면 매일 한번씩 자동으로 업데이트 됩니다.

앞서서 말씀드렸듯이 제가 원래 제 Twitter 백업사이트를 워드프레스 + 트위터 플러그인으로 운영하고 있었는데, 이걸 이용해서 Google Drive를 이용하게 아예 변경했습니다. 이제 http://twitter.xguru.net/ 에서 제 모든 트윗을 확인하실수 있습니다.

기본 코드는 Google Apps Script 의 Trigger 를 이용하여 toggleTrigger() 함수에서 trigger.timeBased().everyDays(1).atHour(0) 의 형태로 매일 0시에 한번 호출되게 되어있는데, 너무 텀이 긴듯해서 trigger.timeBased().everyHours(1) 로 변경해서 한시간 마다 한번씩 업데이트하게 변경했습니다. everyMinutes() 로 1분당 한번씩도 가능하긴 할텐데.. 그러면 구글에서 블록될지도.. ㅡ.ㅡ;

그리고 아쉽게도 아직 구글 Drive 에 있는 파일을 Custom Domain 으로 제공하는 방법은 없는듯 하네요. ( 아마존 S3 는 CNAME 설정을 통해서 스태틱 파일 서빙이 가능합니다 ) 그래서 오래된 방식인 IFRAME 으로 묶어버렸습니다.

[iframe src="https://googledrive.com/host/0B7SMn58mVGhSZE5xVkhNbkg0MmM/#"
style="border: 0; position:fixed; top:0; left:0; right:0; bottom:0; width:100%; height:100%"]

이제 트위터의 트윗 백업을 자동으로 구글드라이브에 남겨보세요.

구루의 기술뉴스 : 스마트폰 이용고객 이제 지갑 열 준비 되었다 외 20건

구루의 기술뉴스 ( GuruNews ) 75회차 입니다.

오늘은 kth 에서 시리즈로 발행하는 아주 유용한 모바일 리포트의 5회차 “스마트폰 이용고객 이제 지갑 열 준비 되었다” 글을 메인 뉴스로 선정했습니다.

[ 모바일 – 아이폰/안드로이드 ]

 

[ 웹사이트, 웹서비스, 웹기술 ]

 

[ 프로그래밍/HTML5/CSS/Javascript ]

 

[ DB,DevOps,클라우드,웹서버 기술 ]

 

[ 추천글 ]

  • 레티나 디스플레이와 디자인의 미래 스큐어모피즘(오리지널 사물을 본떠 만드는 데 충실한 디자인) 에서 탈피하기 시작한 것은 레티나 해상도 디자인 시대의 개막을 의미한다.
  • AirBnB TechTalks – 매주 수요일 저녁에 자사직원들 대상으로 외부강사를 초청해서 진행하는 기술 세션들을 정리해서 올리고 있네요
  • 내가 하는 편이 빠르다 병에 관한 정리 ・「맡긴다」란 「실패할 권리를 주는 것」 ・실패의 경험을 쌓게해주는 것이 상관의 일 ・일은 책임과 함께 맡긴다 ・계획과 검증은 함께 하고, 실행은 혼자서 하게 한다

피드백 환영합니다!
제 블로그를 RSS리더에서 구독하시거나 , 제 블로그를 이메일로 구독하실수 있습니다