2014년 6월 29일 일요일

Hadoop, Docker, OpenStack, CoreOS?

실습해보려는데 내 노트북 10GB 메모리로 리소스가 충분하려나...

http://www.meetup.com/OpenStack-Docker-Meetup-Cologne/about/
http://foogeee.blogspot.kr/2013/10/try-coreos-and-docker-on-openstack.html
http://blog.sequenceiq.com/blog/2014/06/25/hadoop-2-4-0-docker/

2014년 6월 21일 토요일

Google Drive 클라이언트 개발 관련 조사 2

Python, Google App Engine, Google Drive

https://developers.google.com/appengine/docs/python/
https://developers.google.com/api-client-library/python/guide/google_app_engine
https://code.google.com/p/google-api-python-client/downloads/list

https://developers.google.com/drive/web/quickstart/quickstart-python
https://google-api-client-libraries.appspot.com/documentation/drive/v2/python/latest/

https://developers.google.com/appengine/docs/python/endpoints/


Google API, Authentication

https://developers.google.com/accounts/docs/OAuth2
https://developers.google.com/drive/web/auth/web-server
https://developers.google.com/api-client-library/python/guide/aaa_client_secrets
https://developers.google.com/api-client-library/python/guide/aaa_oauth

https://developers.google.com/youtube/v3/guides/authentication?hl=ko-kr



GAE Modules, Task Queue

https://developers.google.com/appengine/docs/python/modules/
https://developers.google.com/appengine/docs/python/taskqueue/
https://developers.google.com/appengine/docs/python/config/queue
http://blog.gregtracy.com/2010/03/using-app-engine-task-queue-to-break.html

Task Queue + OAuth
http://stackoverflow.com/questions/16842433/how-to-do-oauth-requiring-operations-in-a-gae-task-queue



GAE / GDrive Auth Error Checkpoint


  • Google Developer Console - Project
    • Credential (인증 정보) - OAuth - Web App Client ID - URI Redirection
    • API - 개별 API 설정 (Drive API 등은 별도설정 필요)
    • Consent Screen (동의 화면)
  • Google Drive  API - API Access Key?










GIS 데이터 다루기, 라우팅(경로) 구하기 관련 링크


예전에 끄적이려다가 링크만 남은 글을 게시함.


pgRouting, pyqgis - qgis plugin
http://planet.qgis.org/planet/tag/routing/


http://www.youtube.com/watch?v=T2JTuQOBXz0


http://jmapping-maplabs.rhcloud.com/mapping-traffic-volume-in-the-denver-region-with-leaflet-js/

http://rjw57.github.io/blog/2013/06/19/real-time-traffic-data/

20140621SAT - Google Drive 클라이언트 프로젝트 작업을 하다가 쓰는 넋두리?

나중에 이 글을 보면 고치고 싶은 부분이 많을 것 같다. 조금 정신없는 상태로 일단 쭉 써내려가는 
글이기 때문에...
---


1.
Go 언어가 나온지 좀 되었고 꽤 괜찮은 언어지만, 의외로 이 언어를 만든 회사인 Google의 App Engine에 서비스용으로 쓰인 사례나, 사용하려는 시도 자체가 적었던 것 같다.

Google API Client 라이브러리도 나온지 3년 이상 되었음에도 여전히 considered as alpha 이고 도움말 역시 Python에 비하면 거의 가뭄 수준이다.

Go 언어나 관련 라이브러리들은 괜찮은데, Google에서 만든 언어임에도 불구하고 GAE에서 사용하기에는 불편했다.

아직은 Python이 수천 수만 배 나은 것 같다. (성능은 제외)

결국 내가 직접 만든 GDrive 써드파티 API는 Python으로 구동되는 것으로...




2.
만들고 있는 프로그램을 cURL을 가지고 테스트하다가, Content-length가 포함되지 않았다는 에러가 발생했다. GAE에서 운영되는 서비스에 HTTP 요청을 보낼 때, POST/PUT 등 Body를 포함하는 요청을 보낼 때는 *반드시* Content-length가 제대로 포함되어야한다고.

Content-length 에러와 관련해서 구글링을 하다 보니 cURL 라이브러리를 이용해서 프로그램을 구현할 때에도 같은 사례가 있었고, 옵션 설정을 해 주어야한다는 답변을 보았다.

cURL '프로그램'도 Content-length를 제대로 안 보낸다. 심지어 옵션 자체가 존재하지 않는 듯.

결론: Python + httplib 로 간단하게 클라이언트 더미를 만들어서 테스트했다.



3.
Google OAuth 인증 관련해서 더 간단하게 사용할 수 있는 라이브러리는 없나 싶다. 음... 그냥 그러하다.



4.
golang에 go get이 있다면 python에는 pip install이 있다



5.
python2와 python3는 문법 차이보다도 라이브러리들이 많이 바뀐 듯.



6.
GAE에서는 백그라운드 처리 작업 등을 위해 Thread보다는 Task Queue를 사용해야...






2014년 6월 20일 금요일

Google Drive 클라이언트 개발 관련 조사


[Go] Beegae Web Framework (Beego for GAE)


[GAE] Google OAuth 2.0, Google Drive, Google  App Engine, Go







[글과 생각 공유] Quantum Paper by Google, OculusVR + VDesk

Quantum Paper by Google (Leaked?)

http://www.androidpolice.com/2014/06/11/exclusive-quantum-paper-and-googles-upcoming-effort-to-make-consistent-ui-simple/

이건 아마도 Web App 기술이 아닐까 싶다. 기존에 HTML5로부터 한층 추상화해서 만든 Polymer, Angular, Dart 등과 하이브리드 앱 툴킷인 Apache Cordova 등을 기반으로 해서 더 상위 레벨 툴킷을 만든 것이라고 추측해본다.

핵심은 모바일 플랫폼 (Android, iOS, Web) 사이에 온전히 호환될 뿐만 아니라 깔끔한 UI를 가진 앱을 보다 간편하게 개발할 수 있다는 점?

요즘 개발 툴들이 많이 나오는데 흥미진진하다.

#QuantumPaper   #Polymer   #Angular   #Cordova   #CrossPlatform  #Google   #Leaked  


=====================================


Vdesk Prototype demo #1


http://www.youtube.com/watch?v=NukHcdR3B5Y


음... Oculus를 비롯한 HMD (Head-Mount Display, 머리 장착 화면) 들은 해상도가 아직 HD (1280 * 720) 정도 밖에는 되지 않는 것 같은데, 저렇게 사용한다고 했을 때 영상으로도 보다시피 해상도가 낮아서 보는 화면이 많이 흐릴 수밖에 없다. 따라서 아직은 시기상조이고, 아주 고해상도로 HMD 제품이 나와만 준다면 꽤 괜찮을 것 같다.


#Oculus   #OculusVR   #OculusRift   #VR  





2014년 6월 1일 일요일

편리하지만 불편한 Google Drive, 필요한 기능을 내가 직접 만들어야겠다.

구글 드라이브는 여러모로 편리한 점이 많다. 그 중에서도 기기 간, 사용자 간 실시간 연동 기능이 가장 큰 장점일 것이다.

그런데 구글 드라이브 서비스를 쓰다 보면 이래저래 불편하다고 느껴질 때가 있었다. 대강 정리해보자면 첫 번째는 한국어 검색이 잘 안 되는 점, 두 번째는 GMail과 같은 Label 구조로 동작하면서도 이를 마음대로 바꾸기 쉬운 UI를 제공하지 않는다는 점, 세 번째는 문제라기 보다는 그냥 내가 원하는 기능 한 가지가 없다는 점이었다. 내가 따로 원하는 기능은 시간을 기준으로 정리해서 볼 수 있는, 블로그의 아카이브 기능과 같은 것이었다.

여하튼, 그래서 한 번 삽질을 해 보기로 했다.

이야기는 나중에 이어서...




관련해서 지금까지 살펴본 자료(20140531):
Google Apps Script
https://developers.google.com/apps-script/

Google Drive SDK
https://developers.google.com/drive/
https://developers.google.com/drive/android/examples/

WebView-HttpClient Cookie 연동 관련
http://stackoverflow.com/questions/5396965/setting-cookies-in-webview-android/14083806#14083806
http://stackoverflow.com/questions/5802595/using-cookies-across-activities-when-using-httpclient/5989115#5989115
http://stackoverflow.com/questions/9795934/http-session-synchronization-between-webview-and-java-http-client-in-android/9828089#9828089

기존에 개발되어 있고 완성도 좋은 안드로이드용 파일관리자 프로젝트
https://github.com/DF1E/SimpleExplorer
https://github.com/CyanogenMod/android_packages_apps_CMFileManager
https://github.com/ameyms/android-file-explorer
https://github.com/Doctoror/Pure-File-Manager



살펴본 자료 추가 1(20140601):
Android SQLite 1
http://developer.android.com/reference/android/database/sqlite/package-summary.html
http://hmkcode.com/android-simple-sqlite-database-tutorial/

Android SQLite 2
http://mudchobo.tistory.com/515
http://mainia.tistory.com/670
http://pulsebeat.tistory.com/15

Android SQLite 대량 처리시 성능 이슈
http://regularmotion.kr/android-sqlite-bulk-insert/

Android JSON 1
http://developer.android.com/reference/org/json/package-summary.html
http://www.androidhive.info/2012/01/android-json-parsing-tutorial/

Android JSON 2
http://wptrafficanalyzer.in/blog/android-lazy-loading-images-and-text-in-listview-from-http-json-data/
http://coronasdk.tistory.com/706

Database Union + Count
http://stackoverflow.com/questions/11731655/how-to-do-a-count-on-a-union-query