UM2 GAN 65W 고속PD충전기

일전에 5포트짜리 충전기를 사서 잘 쓰고 있습니다만, 최근에, 휴대용 충전기가 새로 나왔다고 해서 사보았습니다.
기존의 5포트짜리가 집에 놓고 쓰기에는 좋지만, 어디 움직이거나 할때는 크기 때문에 부담이 되었고
무엇보다 지난번 중국에서 사온 샤오미북 프로를 쓸때 돼지코 때문에 참 힘들었기 때문에, 목적은 샤오미북 충전만으로 족했습니다.
가격은 3만원 후반대여서 1포트짜리 치고는 약간 비싼 느낌은 있지만. 불편함을 줄여줄 수 있다면 그걸로 만족하기로 헸습니다.
결론은, 노트북 충전 잘 된다 입니다.
사진은 아래에 있듯이, 기존 샤오미노트북용 보다 전체적으로 작지만, 플러그쪽이 좀 튀어나와서 약간 좀 아쉽습니다. 접거라 분리형식이었다면 좋았을텐데요.
일반 휴대폰 충전기 두개적도의 크기로 보면 됩니다.

아이디어노트 : Jupyter Notebook형식을 이용한 즉시 환경 구성 InteractiveGuide 시스템

현재 Android Test Station을 설치하고 있고, 동시에 Python으로 자동화 스크립트를 만들면서 불현듯 떠오른 아이디어입니다. 한쪽에는 쉘을 열어두고, 스크립트를 만드는데, 대부분의 내용은 이미 설명이 나와있는 웹페이지에서 커맨드들을 발췌해서 넣고 있습니다. 가만히 생각해보니, DeepLearning등에서 유용하게 사용했던 Juptyer Notebook에서 강의자료의 설명들을 보고, Python Command들을 바로바로쳐서 결과를 보고 한게 떠올랐습니다. 어차피 무엇인가 설명을 얻기 위해서는 텍스트가 필요하고, 대부분은 웹에 보기 좋게 정렬되어 있고, 시스템 설치 명령어들이 예제처럼 들어 있습니다. 그걸 그냥 바로 내 시스템에서 실행할 수 있도록 하면 어떨까요? 한줄 한줄 따라가면서 실행하고, 결과도 보여주면서, 설치가 어느정도 진행되었는지 확인도 하고, 바로 Trouble Shooting등으로 선택지등을 골라서 페이지를 넘기는 식으로 한다면 편리하지 않을까요? 물론 보안상 위험하긴 할겁니다. 하지만 모든 주도권을 해당 가이드 페이지에 접속한 사용자가 가지게 된다면, 그리 썩 위험해보이지는 않아보입니다.

현재도 대개는 예제 커맨드들을 바로 복사해서 쉘에서 바로 실행할 수 있는 형태로 무가공으로 할 수 있게 해주고 있으니, 실행후의 Interaction과 여러 명령어들의 순차적인 확인등이 되겠습니다. 대개 훌륭하고 미려한 어플리케이션 Installer들이 많고, 이와 유사하나, 오픈소스들 특히나, 리눅스 계통은 브라우저에서 설명 문서들이 있고, 쉘에서 직접하는것들이 많으니까요. 인스톨 패키지를 만든다면 더 없이 좋겠지만. 환경 설정이 들어가는 부분에서는 여러가지 변수가 많다보니 하기 힘든것도 사실입니다. 윈도우는 버전별이나 여러 환경이 거의 100%통제가 되는 상황이니 대개 Installer정도로 가능하지만, Java환경으로만 가도 윈도우상의 어플리케이션도 이런 문제들에 봉착하는 경우가 다분히 많으므로, 브라우저의 문서표현형식으로 확인하고 진행하는 형태도 나름 나쁘지는 않을 것 같습니다.

Android Test Station설치기(~ing)

업무상 Android Test Suite들인 CTS, VTS, GTS등을 실행할 일이 생깁니다. 이번 Q버전출시와 함께 구글에서 새로운 Android Test Station이라는 Web UI형식의 ‘편리한’!? 툴을 오픈소스로 공개했습니다. 하지만 설치 작업이 마냥 편리하지만 않네요. 기본적으로 Docker와 Google Cloud에 의존성이 있는 터라서, 방화벽등의 Proxy뒤쪽의 환경에서 설치하는 것은 매우 곤욕입니다. 이번에 저도 그러한 고통의 시간을 겪다가, 도저히 평범한 환경에서는 어찌 되나 싶어 집에서 설치를 해보고 있는데요. 그마저도 역시 개발자스러운 설치 절차를 통과해야하기 때문에, 성격상, 귀찮아서, 스크립트 짜고 있습니다.

일단 사이트는 아래이고요.
https://source.android.com/compatibility/tests/development/android-test-station

스크립트는 아래에 업데이트 중입니다. 요새는 연습삼아 파이썬 스크립트로 Bash쉘스크립트를 다 바꾸고 있는 터이고, 인터넷 여기저기서 긁어모은것은 나중에 쓰기 편하게 덕지덕지 붙여가면서 만들고 있는 터라 좀 지저분하긴 하지만, 나름 다시 찾기 시간 아깝고, 나중에 다른 시스템에 다시 설치시에 참고하기도 좋아서 하고 있습니다. 물론 Docker와 Google Cloud가 제대로 환경이 갖추어 진다면, 다음부터는 위 두가지 플랫폼으로 여기저기 환경 옮기기에는 좋겠지요. 네, 그마저도 귀찮은 겁니다. ;). 아근데 저번에는 파일 첨부가 워드프레스 UI상에서 바로 되도록 쉬웠던것 같은데, 업그레이드 되면서 뭔가… 또 어렵네요.. 다음에 올려야겠습니다. 미디어 항목에서 따로 올려야했건전지, 라이브러리로 업로드를 따로 하니 되는것 같습니다. 근데 ‘링크복사하기’ 메뉴가 제대로 동작은 안하나보네요. 흐음.. 첨부 버튼에서 검색으로 일반 파일명도 검색해서 링크로 찾아주면 좋은데, 왠지 있을 것 같은 Plugin인데, 그것도 한번 찾아봐야겠네요.
https://onecoinsoft.co.kr/wp-content/uploads/2020/01/install_docker.zip

Docker와 Google Cloud를 모두 설치하고 초기화를 하고 나면, 본격적으로 실행을 시켜보게되는데요. 명령어는 mtt입니다.. 왜 mtt인지는 잘 모르겠습니다. 그런데 초반에 실행해보면. 멍대리고 있는 것처럼 보이게 되는데, 이유인즉슨 android-mtt/mtt에서 pulling/Download중인 것을 따로 화면로그로는 출력안하고, 대기한다는 문구도 없이 그냥 파일로만 출력하며 진행하고 있어서입니다. 인내심이 뛰어나신분들은 그냥 기다리시면 되겠고요. 아니면 저처럼 왜이래 하고 못 참으시는 분은 아래처럼 첫 실행에는 verbose옵션을 주거나 stderr로 출력시켜서 보는것이 더 낫겠습니다.

(base) jiwon@jiwon-u16:~$ ./mtt –logtostderr -v start
WARNING:root:config file does not exist: /home/jiwon/.config/mtt/mtt.ini
2020-01-07 22:02:39,689 |DEBUG| cli:619| Command auto update enabled, but there is no cli_update_url set. Using the default: gs://android-mtt.appspot.com/prod/mtt.
2020-01-07 22:02:39,697 |DEBUG| command_util:137| stdout: /home/jiwon/google-cloud-sdk/bin/gcloud
2020-01-07 22:02:39,708 |DEBUG| google_auth_util:61| Get credential from gcloud auth print-access-token.
2020-01-07 22:02:40,446 |DEBUG| command_util:137| stdout: ya29.Ima4B2bnfClxgZM2TG4iyGB8yBUsjIBKZQCqri6ucXC3rT9WvHiUevCrAt_U48-9QHK7FNh34tXRua13gtZz4d5NnkRPzDXuDX38tfeGgEhnNpIY3t4VioFN_x3e-XuxhC_Riuujg8k
2020-01-07 22:02:41,036 |WARNING| cli:635| No access to android-mtt.appspot.com.
2020-01-07 22:02:41,036 |DEBUG| host_util:116| No lab config path set.
2020-01-07 22:02:41,038 |INFO| cli:193| Using image gcr.io/android-mtt/mtt:prod.
2020-01-07 22:02:41,103 |DEBUG| command_util:137| stdout: Docker version 19.03.5, build 633a0ea838
2020-01-07 22:02:41,120 |DEBUG| command_util:137| stdout: /home/jiwon/google-cloud-sdk/bin/gcloud
2020-01-07 22:02:41,498 |DEBUG| command_util:137| stderr: gcloud credential helpers already registered correctly.
2020-01-07 22:02:41,557 |INFO| command_util:444| gcloud auth configure-docker
2020-01-07 22:02:41,650 |DEBUG| command_util:137| stdout:
2020-01-07 22:02:41,650 |DEBUG| command_util:137| stderr: Error: No such object: mtt
2020-01-07 22:02:41,667 |DEBUG| command_util:693| No container mtt.
2020-01-07 22:02:41,667 |INFO| cli:209| mtt_master_url is not set; starting a standalone node.
2020-01-07 22:02:41,733 |DEBUG| command_util:137| stderr: Error: No such volume: mtt-temp
2020-01-07 22:02:41,822 |DEBUG| command_util:137| stderr: Error: No such container: mtt
2020-01-07 22:02:41,913 |DEBUG| command_util:137| stderr: Unable to find image ‘gcr.io/android-mtt/mtt:prod’ locally
2020-01-07 22:02:43,618 |DEBUG| command_util:137| stderr: prod: Pulling from android-mtt/mtt
2020-01-07 22:02:43,619 |DEBUG| command_util:137| stderr: 3386e6af03b0: Pulling fs layer
2020-01-07 22:02:43,619 |DEBUG| command_util:137| stderr: 49ac0bbe6c8e: Pulling fs layer
2020-01-07 22:02:43,620 |DEBUG| command_util:137| stderr: d1983a67e104: Pulling fs layer

한참을 download하고 난뒤에, 아래줄까지 출력이 되고 나서야 비로소 로컬에 시스템이 구동되기 시작합니다.

2020-01-07 22:05:53,663 |INFO| cli:299| MTT is serving at http://localhost:8000

(Obsolete)아이디어노트 : Gmail visualization –> IMMERSION, OpenTeam

예전 PDA를 사용하던 시절, Windows CE, Mobile로 대변되는 HP IPAQ을 사용하던 시절 자주 사용하는 노트 툴은 포켓워드였습니다. 확장자는 doc비스므레한데, 정작 MS Word와는 파일 포맷이 전혀호환이 안되는 독자 형태의 바이너리라서 나중에 전에 쓰던 IPAQ에서 노트를 꺼내는데 한참 애를 먹었었는데요, 요새는 노트용도로 GoogleTasks에 거의 정착한 편입니다. 할일관리 뿐만 아니라 단순 노트용도로도 나쁘지는 않고, 나름 카테고리 관리도 Tree구조로 작성하면 관리도 쉬운 편이어서 자주 씁니다. 속도와 접근성은 물론 인터넷이 필수라는 것 하나만 빼면, 나무랄데가 없고, 오프라인 엑세스도 브라우저나, 안드로이드 오에스의 앱, 혹은 다른 일정관리 툴과 살짝만 연동시켜도 문제가 없으니 참 편리합니다. 이 블로그에도 이전부터 나름 아이디어라 생각했던것들을 노트로 남겨놓은 것들을 적고 있긴한데요. 최근에 다시 목록을 정리하면서, 이미 다른 이들에 의해서 같은 아이디어가 구현되어 세상에 나온것들이 있어서 오늘 그중 하나를 정리해서 적어보려합니다.

아이디어는 수많은 메일 계정에 쌓여가는 메일들을 좀더 눈에 띄기 쉽게 분리하고, 그 안에서의 여러 관계를 추출해서 좀더 나은 메일 확인을 도와주는 도구였는데요. 최근 검색어로 찾아보니, MIT의 프로젝트 중에 IMMERSION( https://immersion.media.mit.edu/ ), 그리고 그 멤버중 한명이 리딩하고 있는 최근의 프로젝트인 OpenTeam이 보였습니다. Immersion은 ‘로제타스톤’이라는 어학프로그램을 해보신 분을 아시겠지만, 뭔가 깊게 빠져들어 그 안에서 경험하며, 확인하게 되는 것을 의미합니다. 초기 프로젝트인 Immersion에서도 자신의 메일들로부터 뭔가 Insight와 편리함을 얻어 생활에 있어 다른 아이디어를 줄 수 있는 것을 목표로 한다고 나와있습니다. 이 주제는 사실 저도 어느정도 익숙한데요. 2004~2005년도 까지 같은 그룹의 다른 팀 멤버가 했던 프로젝트가 바로 이 Immersion을 주제로 과제를 했습니다. 지금은 둘다 잘나가는 나름 스타트업의 유니콘에 가까워진것 같네요. 능력있는 분들과 함께 있었던 때가 그립워지네요.

MIT의 Immersion 프로젝트는 아쉽게도 더이상 지원은 되지 않지만, 그 코드등은 오픈되어 있어 나름 활용해볼 여지는 많겠습니다. 그리고 이후 후속 프로젝트로 일종의 스타트업(맞는지는 모르겠습니다) 프로젝트로 OpenTeam( https://openteam.info/ )을 소개해주고 있습니다. 이쪽은 기존의 Immersion이 개인의 데이터에 관심을 갖고 그것들을 모아서 형상화 해주는 것이 었다면, OpenTeam은 말그대로 Team에 초점이 맞추어져 있어서, 일종의 팀을 이루고 팀들의 메일들을 서로 엮어서, 그 안에서 여러 Insight를 뽑아내는 것이 되겠습니다 .어찌 보면 요즈음의 팀 그룹웨어 등에서 비슷한 기능들을 지원할 것 같지만, 대부분 Visualization을 이정도로 강화하는 툴은 별로 없습니다. 최근의 Github정도나, 근근히 제품 업그레이드를 하고 있는 Atlassian의 제품정도랄까요, 아마도 OpenTeam도 어느날 유명한 회사(MS아니면 구글?) 정도로 들어갈 것 같긴합니다. 페이지의 맨 아래에 보면, 주제로는 “Collective Learning”, MIT Media Lab으로 되어 있으니, 관심 있으신 분들은 Contact을 해보면 함께 아이디어들을 교환하며 연구해볼 수 있지 않을까 합니다.

나누다(Divide)와 공유한다(Share)의 관계에 대한 생각

느닷없이 생각난 것이 하나 있습니다. 식사를 하다가 떠올랐다면 떠오른건데, 음식을 나누는 행위에서 사고가 출발하여, 음식을 공유한다. 숫자를 나눈다로 넘어갔습니다. 그리고 전공분야인 컴퓨터공학 계통에서, 나누기와 공유하기가 떠올랐습니다. 공유의 개념은 꽤나 최근은 컴퓨터 IT계통에서의 유행어입니다. SNS가 흥하기 시작할때 부터라고 볼 수도 있고, 아니면 그 이전 인터넷이 한참 정말 말 그대로 세계적으로 뻗어나가기 시작할때 무렵이었을지도 모르겠고요. 어느것이든 Network의 발달에 의한 일종의 정보의 교류, 공유가 되겠지요. 컴퓨터, 컴퓨터네트워크 이전에는 그 역할은 방송 미디어의 역할이었을 겁니다. 아마도.

나누기를 단순히 숫자를 나눈다는 개념으로만 생각하다가, 한국어의 의미상 정을 나눈다, 무엇인가를 베풀다라는 의미로 넘어가게 되면, 공유한다는 것과 꽤나 유사성을 갖는것처럼 보입니다. 하지만 다시 협소한 의미로 넘어가게 되면, 일단 물질 혹은 물질이 아닌 것이든, 그것은 셀 수 있는 것이 되어야 합니다. 개념적으로 세는것도 세는 것으로 하겠습니다. 그리고 그것을 나누죠. 보통은 2/2 = 1 로 물질적으로 이미 구분이 되어 있거나 한것은 말그대로 나눕니다. 최종적으로 나누어진 숫자는 작아지지만, 나누는 수는 그 의미가 그대로 남아있게 됩니다. 최초의 가진것, 나누려는 양, 그리고 나누어진 결과. 공유한다라는 개념으로 본다면, 등식의 오른쪽이 공유하게 되는 그것이 될 것 같습니다. 2개의 물건을 2명이 나누게 된다면, 결국 두사람은 최초 2개였던것을 하나인 것처럼 공유한다고 볼수 있지 않을까요? 1/2 = 0.5 또한 같은 의미로 해석하되 그양만 반으로 줄었다고 생각할 수도 있겠습니다.

나누기는 일종의 뺄셈의 반복으로 볼수 있겠습니다. 실제로 그렇게 가르치기도 하고, 컴퓨터의 구조가 그렇기도 하고요. 다시 이제 나누기에서 빼기가 서로 교환가능한 개념으로 본다면, 빼기와 공유하기의 관계는 어떻게 될까요? 최초의 양에서 빼기를 수행해서 무엇인가가 계속 줄어듭니다. 여기에 느닷없이, 질량보존의 법칙을 들먹이면서, 빼어 나가는 것은 어디로 가게 되는가를 생각해봅니다. 소유의 여부를 떠나서 특정한 공간을 차지하되, 그 공간은 기존에 속해있던 공간은 아니게 될 것입니다. 여기서 앞서 나누기와 공유하기의 관계를 보고, 빼기에서 각 개념체가 다른 공간으로 분할되어 떨어져나갔을 때, 서로 멀리 떨어지게 된 개념체는 공유되고 있다라고 볼 수 있지 않을까요? 일종의 전파, 통신과도 비슷한 것이 되어가는 것 같습니다.

2020년 해야할일

어느덧 범상치 않은 숫자의 해가 되었습니다. 제 인생에서 태어난해를 제외하고는 1999, 2000 세기말 연도, 2001 세기초 연도를 제외하고는 가장 특이한 구성의 해가 되겠네요. 앞으로는 2040정도가 그나마 좀 특이하다고 볼수 있을까요? 어지쩌찌해서 대충 올해는 인생의 중간쯤 반절, 좀더 산다면 2040이 반절이 되겠지만, 해입니다. 상당히 시간이 빨리 간 것 같으면서도 이런저런 일들이 많은 기억입니다. 최근 몇년은 정말 시간만 빨리 갔다 싶어도, 은근 골똘히 생각해보면, 또 그렇게 멍한 상태에서 시간만 흘려보낸 것은 또 아닌가도 싶지만, 확실히 더 젊었을 적에 비해서는 떠오르는 사건의 수가 적고 임팩트가 약합니다. 그래서!.

다시금 ‘계획’을 시도해 봅니다. 나이가 들 수록 하고 싶은 일, 해야할 일, 하고 있는 일등의 목록이 점차로 많아지는데, 불행인지 다행인지, 하고 있는 일 목록이 최근은 줄었습니다. 아마도 하고싶은일을 반즘 포기하고, 해야할 일을 어느정도 미루거나 피할 수 있게 된 영향인 듯 싶습니다. 이 상태에서 그대로 머무른다면 몸은 좀 편안해지고, 머리가 아플일도 없겠지만, 그 뭔가 알 수 없는 미래에 대한 불안감이 스멀스멀 올라올 것 같다는 생각이 몸 속 깊은 세포들 하나하나가 소근거리 듯 느낌이 듭니다.

당장에 이 블로그도 슬슬 개선 작업을 진행해야할 때가 오고 있습니다. Ubuntu 14.04 LTS로 여차저차 버텨오고 있는데, X86도 아닌터라 패치들이 많이 안들어왔을 거라서 슬슬 불안해지고 있고, 그나마 ARM port도 현재 서버로 돌리고 있는 보드에서는 16.04 LTS도 불안 불안하고, 또 작업해봤자 16.04도 2021년이면 공식지원도 끝인지라, 18.04 LTS가 가능하여 2028년까지 무리없이 사용할 수 있을 만한 시스템으로 작업을 진행하려합니다. 올해는 보안인증서도 만료가 되기에 그것도 갱신해야하겠네요.

해서 목록으로 만들어보면
1. 블로그 서버 이전 및 인증서 갱신 작업
2. 노트북 및 DS학습용 서버 설치 -> 블로그 서버와 분리. 서버 두대?!
3. 컨텐츠 서버 연동 -> 서버 세대?!
4. 백업 서버 가동 -> 서버 네대?!
일단 네개의 프로젝트성 한세트하고,
1. 하루 하나 글쓰기
2. 일주일 한권 책 읽고 독후감 게시하기
3. 토플점수 확보하기
4. 온라인 학위 과정 한달 하나 끝내기.
의 인생의 Periodic Task들을 잡아봅니다.
한해 한번 하는 걸 한해 계획상으로 하나의 이벤트로 보고 목록을 뽑아보면
1. 논문쓰고 회사돈으로 PLoP가기
2. 해외출장가서 한달 이상 있다 오기 <- 요건 왠지 느낌이 그렇습니다. 미리 각오하는거죠.
3. 오픈소스 프로젝트 컨트리뷰터로 이름 올리기 <- 이건 이거대로
4. 세미나/컨퍼런스에서 발표해보기, 그전에 멋지구리한 나만의 자료 만들어보기 <- 한동안 뭔가 만드는 것을 등한시 했는데, 2019년도 얻은 교훈은 그리고 그 이전부터 느낌으로 가지고 있다가 확인을 거쳐 이제 확신이 들게 되는, 나만의 컨텐츠 필수준비 절차가 될 것 같습니다. 생각보다 먼 미래가 아닌 곧 필요해질 것 같은 느낌이 듭니다.