Up again

드디어 다시 블로그 서버를 살렸다.

블로그를 위해 http, mysql, php 서버 용으로 사용하고 있는 MAMP를 업데이트 한 이후 제대로 동작하지 않는 듯 해서 며칠 간 골치 아팠는데 원인은 그게 아니라 OSX server랑 http port 가 충돌나서 그랬다는.
OSX server 앱에서 확인했을 때 분명히 web service가 꺼져있었는데도 여전히 아파치 서버가 떠 있어서 80번 포트를 점유하고 있었다는 점. 문제(?)는 간단한 관리를 추구하는 MAMP 특성 상 그냥 웹 서버 “안 떠요~” 라고만 표시하고 끝이라는 거. 웹 서버 안 뜨는 거야 이유가 뻔하긴 했지만 그래도….

참고로 OSX 에서 특정 포트를 사용하는 프로세스를 찾으려면 리눅스에서의 netstat -atp |grep XX 와가 아니라 lsof 명령을 사용해야 한다고

sudo lsof -i :80  

구글링을 해서 OSX 서버의 내장 httpd 를 동작하지 않도록 하는 명령을 찾아 사용했더니 다행히 MAMP의 웹 서버가 뜬다.

sudo launchctl unload -w /Applications/Server.app/Contents/ServerRoot/System/Library/LaunchDaemons/com.apple.serviceproxy.plist

출처 : How do I stop httpd

그런데 여전히 안되네..

또 한참(?)을 고민 끝에 DNS 정보를 찾아보니 그새(?) 집 WAN 포트에 할당된 IP가 바뀐 듯 하다. 새로 받은 IP 정보를 업데이트하도록 DNSever 사이트의 정보를 변경하니 이제 제대로 블로그까지 접속되네.

Disk 1 failed

요 며칠 NAS가 혼자 꺼지는 경우가 2번 있었는데 지난 번 처럼 정전으로 꺼졌나 생각했는데 그게 아니었나보다. 오랜만에 관리자 창에 들어가 보니 2개 DISK중 disk 1에 접근하는데 에러가 발생했다고

며칠 껐다 다시 켜서 백업을 하려고 보니 또 괜찮아 보인다.

그래서 또 며칠 그냥 썼는데 다시 혼자 꺼지길래 켰더니 이젠 아예 disk 1이 인식이 안된다.

아주 갔나 보다. 영영 -_-;;;

두 개의 하드를 지원하는 2 bay NAS라서 첫번째 하드에는 데이터를 담고(주로 사진들) 두 번째 하드에는 첫번째 하드의 사진 등을 백업하는 용도로 사용했는데 첫번째 하드가 맛이 가버린 거다.
사진은 미리 다른 2TB 외장하드를 원본으로 삼아서 NAS의 disk 1에 주기적으로 복사를 하고, NAS 내부 백업 기능을 이용해서 disk 2에 주기적으로 자동 백업이 되게 해 놨다. 그래서 가장 중요한 사진 자료만 보면 3군데의 데이터 저장소 중에 한 곳이 망가져버렸지만 나머지 2군데에 아직 데이터가 남아있다. 하지만 두 군데 모두 물리적인 하드디스크라 동시에 3군데가 모두 망가져 버리는 경우도 배제할 수가 없다.

사진의 경우 Amazon Prime 멤버십을 사용하면 주어진 사진 저장 공간을 이용해서 백업을 해 놨는데 이 서비스가 사진에 대해서는 무한대 공간을 제공하지만, 동영상은 그렇지 않다. 최근에 사진 찍는 패턴은 사진과 함께 동영상도 찍는 거라 이 경우 백업이 안되는 거다(물론 사진은 계속 업로그가 허용되지만)

아무래도 Amazon Drive를 신청해서 마음의 안정을 얻어야겠다는 생각이 든다. 1년에 60불인데 휴… Amazon Prime 멤버는 좀 싸게 해주는 거 없니?

Access is denied

윈도를 쓰려고 전용 머신을 마련했지만, 정작 윈도를 사용해야 하는 은행에 원격 데스크톱으로 접속하면 은행 에서 설치한 보안 프로그램이 원격 접속을 끊어 버린다.
문제는 그 다음에 다시 접속해도 여전히 그 보안 프로그램이 떠 있어 다시 끊긴다는 사실. 결국 윈도 머신을 리붓하거나, 원격이 아니라 직접 연결해서 작업을 해야 하고 보안 프로그램을 종료시켜야 한다는 점.

정말 귀찮다.
전용 윈도 머신을 사용하면 맥을 좀 더 가볍게 사용할 수 있을 줄 알았는데(그래서 패퍼렐즈도 삭제했는데) 오히려 KVM을 알아봐야 하는 신세가 되었다는.

내 패턴으로는 맥북이 딱 적당한데, 그게 가능하려면 윈도를 해결할 수 있어야 하고 이를 위해서는 맥미니보다 빠른 데스크톱 형태의 맥에서 패러렐즈를 사용해서 윈도를 돌리거나, 전용 원도 머신을 KVM이나 원격 접속으로 실행할 수 있어야 하는데. 지금 가지고 있는 맥미니는 그럴 성능이 안되고,

My favourite iOS apps in 2016

매일 매일 사용하는 앱들

  • Tweetbot (X)
  • Omnifocus (X)
  • Pocket (O)
  • Fantastical 2 (X)
  • 1password (O???)
  • facebook (O)

그래도 자주 사용하는 앱들은
* day one (X)
* drafts (X)
* synoDS (X)
* T map (O)
* Apple news (X)
* 네이버/다음 지도 O)

2013년에 비해 크게 달라진 게 없네. 그때나 지금이나 여전히 Tweetbot, Pocket 그리고 Omnifocus가 최상위권. 여전히 내가 휴대폰을 사용하는 형태는 새로운 소식 모으고, 할일 관리하는 용도가 주라는. 하지만 그때나 지금이나 정보를 모으는 대에만 주력하고, 정리는 잘 못한다는. 폰은 화면에 작아서 라기 보다는 두 개 창을 띄울 수 없어서 아무래도 정리하는 용도로는 효율적이지 않네.

참고로 2013 년에는 이랬다.

요즘 내가 주로 쓰는 iPhone 앱은

Tweetbot
pocket
zite
omnifocus
facebook
drafts
Day one
synoDS
evernote
olleh navi
music
tumblr
Seoul bus
다음 지도

점점 애플이 만드는 제품이 매력적이지 않다. 무게를 줄이기 위해서라지만, 모양을 위해서라지만 맥북의 키보드는 정말 적응이 안되고, 나도 그런 소리를 들을 지 모르는 회사원 개발자지만, 애플 SW 개발자 들이 1년 동안 뭐 하는 지 모르겠다. 정말 가슴에 손을 얹고 Awesome!!!을 외칠 수 있는 제품이 요즘 나온적이 있는지. 제품을 구입하는 소비자 입장에서 보면 너무나 아쉽기만 하다. 고만고만한 제품만 보이니

굳이 몇 배의 돈을 들여가며 애플 디바이스를 사야 할 이유를 점점 찾기 힘들어 진다.

미니 PC 형태의 윈도 전용 머신을 하나 마련하니 이젠 랩탑도 굳이 맥북일 필요가 있나 싶지만 OS X에만 존재하는 앱 때문에 아직은 lock-in되어야 한다는

Standing desk

이상하게 집에서 책상에 앉으면 집중이 안된다. 집중도 안되지만 앉아있는 거 자체가 어색하고 불편하다.

뭐가 문제인지 모르겠지만 혹시나 하고 예전부터 생각하던 standing desk를 한번 시도해 보기로 했다.

모니터 높이를 높여야 하니 일단 책상 위에 대충 책당 상자를 올렸다. 하나를 올리고 그 위에 모니터를 두니 대충 높이가 맞는다. 다행히 모니터 높이가 조절되는 모델이라 적당한 크기로 화면 위치를 맞출 수 있었다. 그 옆에 똑같은 상자를 하나 올려놓고 그 위에 노트북을 올려놨다. 음 이것도 높이가 적당하다.

남은 문제는 맥미니용 키보드와 마우스인데 일단 키보드는 대충 남는 공간에 놨는데 모니터는 마땅한 장소가 없다. 모니터 옆에 두려 했는데 모니터 전원 길이때문에 그렇게 하기도 어렵고.

image

잠깐 사용해 보니 다리가 아프긴 하다. 그래도 요즘은 책상에 앉아있는 시간이 길지 않으니 다리 아플 때까지의 시간이나 별반 차이가 없을 듯 하니 일단 진행해 볼란다.

(책) 어떻게 읽을 것인가

얼마전에 읽은 고영성의 “어떻게 읽을 것인가”

고정형 – 지능은 변하지 않는다
성장형 – 지능은 좋아질 수 있다

생각을 바꾼다는 것이 쉬운 일은 아니지만 인식의 변화가 주는 효과는 크다

중학교에서는 고정형 아이들의 성적이 급속히 떨어지고 지속적으로 하양곡선을 그림. 중학생이 되면 초등학교 과정과 질적으로 더 어려운 학과 공부에 직면하므로 실패와 좌절을 할 가능성이 더 많은데 고정형 학생들은 실패와 좌절에 더 큰 영향을 받기 때문

힘든 상황에서 더 큰 영향을 준다.

두뇌는 근육과 같이 운동을 통해 근육을 키우듯 두뇌 능력을 키울 수 있다. 필요한 건 시간과 노력이다.

일단 믿어 보자.

당신이 할 수 있다고 생각하든, 할 수 없다고 생각하든 생각하는 대로 될 것이다.

명언

다독을 하려면 성장형 사고방식을 갖다. 처음에는 힘들지만 뇌는 책 읽는 뇌로 변할 수 있다.

“난 책하고 안 맞아”라는 생각이 들때 성장형 사고방식으로 한번 시도해 보자.

내 편견을 자극하고 그럴듯 해 보이면 명저로 생각하기 쉽다.

내가 미처 생각하지 못했던 걸 알려준다고 다 명저는 아니다.

수용적 사고, 비판적 사고, 창의적 사고

수렴성 지능과 발산성 지능.

수렴적 사고는 위기가 없으며 일상적이고 반복적인 세계에서는 유용할지 모르지만, 예기치 못한 위기가 닥쳐오고 변칙적인 상황이 되면 오히려 역효과를 낼 수 있다. 새로운 상황에서는 새로운 생각, 곧 창의적인 생각이 필요하며, 실제로 급변하는 세상에서 최고의 부가가치를 내고 있는 것들은 모두 창의적 사고의 부산물을 통해서다.

위기의 시절에는 좀 나내는 사람이 필요하다.

책을 선정했으면 챕터별로 정리를 하되, 그냥 요약하지 말고 관련 주제를 담은 책이나 인터넷에서 자료를 토대로 자신의 견해를 덧붙여 완성된 글로 만들어라.

내 생각을 곁들이고, 책에 없는 내용을 “찾아서” 함께 정리하면 더 오래 기억에 남는다.

Seeing is believing. But sometimes not
‘본다’는 것은 철저히 주관적 행위이다. 객관적 시선이란 허상이며, 우리에게는 오직 주관적 관점만이 있을 뿐이다.

분명히 ‘본 것’이라고 다 사실은 아니다. ‘본 것’이라고 착각할 수도 있고, 맥락을 모른 체 본 것은 ‘주관적 판단’에 의해 ‘사실’과 다른 기억을 갖게 할 수 있다.

‘생각의 탄생’에서는 ‘명백히 달라 보이는 두 개의 사물이 중요한 특질과 기능을 공유하고 있음을 깨닫는 일이야말로, 세계에서 가장 위대한 학문과 예술작품, 불후의 과학이론, 공학적 발명을 이루어내는 일의 중심에 놓여 있는 것이다’

‘좋은 부모는 아이에게 안정적인 기지를 마련해 주고, 아이가 그 기지를 거점 삼아 마음껏 세상을 탐구할 수 있도록 격려한다’라고 말했다.

부모의 의무

고통의 경중보다 고통에 대한 대응이 행복과 불행을 갈라 놓는 가장 중요한 키워드임을 밝혀냈다. ‘성숙한 방어기제’를 갖고 있는 사람일수록 행복을 빼앗기지 않는다.

상황보다 상황에 대한 대응이 그 ‘상황’으로 인한 결과를 만들어낸다.

헤르만 에빙하우스.

  • 학습 후 10분 후부터 망각 시작
  • 한 시간 뒤에는 50%
  • 하루 뒤에는 70%
  • 한달 뒤에는 80%를 망각

단순히 읽는 것이 아니라 열심히 학습을 하더라도 하루가 지나면 열에 일곱은 사라진다.

잊는 게 자연스러운 거다. 자신의 기억력을 탓하지 말고 반복해서 읽거나 적어서 보완하자

글은 자신이 제기하고자 하는 주제의 근거를 제시하고 그 타당성을 입증해 보이는 싸움이다. 이 싸움은 좋은 자료를 얼마나 많이 모으느냐에 성패가 좌우된다. 자료가 충분하면 그 안에 반드시 길이 있다. 자료를 찾다보면 새로운 생각이 떠오른다.

논리 싸움. 근거는 곧 총알

퓰리처. “무엇이든 짧게 써라. 그러면 읽힐 것이다”

일단 짧아야 눈이 간다

Contribution to Open source

DPDK library 코드를 보는 중 이상한 코드를 발견해서 patch를 submit했다. 난생 처음이네.

Git을 이용해서 코드 관리를 하고 있어 패치를 내려고 해도 git을 이용해야 한다. 그리고 coding style도 확인해서 부합되지 않는 내용이 있어도 등록이 안된다고 해서 이것도 확인. 이 과정에서 linux kernel에서 사용하는 checkstyle script라는 것도 알게되고. 이걸 쓰면 codinf style을 맞추기 위해 고생할 일이 많이 줄 듯 하다. 주변에 이걸 신경 쓰는 사람이 거의 없다는 게 함정이지만

Patch 작업은 http://dpdk.org/dev 여기랑 http://dpdk.org/doc/guides/contributing/patches.html에 상세한 절차가 나와있다.

대략적으로 보면 git에서 commit하고 patch 파일 만들어서 coding style 검사한 후 git send mail로 패치 내용을 정해진 양식에 따라 설명을 추가해서 보내면 된다.

간단한 수정이었는데 patch를 진짜 보내기까지 몇 번을 반복했다. checkstyle script를 한번에 통과하지 미 못해서 그랬는데 다시 수정해서 패치를 만든 방법을 잘 몰라서 무식하게 git clone부터 하는 작업을 반복해야 했다는.

그 결과는 여기에.

If any fragment hole is found in ipv4_frag_reassemble() and ipv6_frag_reassemble(),whole ip_frag_pkt mbufs are moved to death-row. Any mbufs already chained to another mbuf are freed multiple times as there are still in ip_frag_pkt array.

Signed-off-by: cychong <cychong at gmail.com>

그리고 이건 내가 수정한 내용에 대해 maintainer(?)가 확인한 내용

Acked-by: Konstantin Ananyev <konstantin.ananyev at intel.com>

그리고 최종적으로 패치가 적용되었다고 추가 메일이 날아왔다.

> > If any fragment hole is found in ipv4_frag_reassemble() and ipv6_frag_reassemble(),
> > whole ip_frag_pkt mbufs are moved to death-row. Any mbufs already chained to
> > another mbuf are freed multiple times as there are still in ip_frag_pkt array.
> > 
> > Signed-off-by: cychong <cychong at gmail.com>
> 
> Acked-by: Konstantin Ananyev <konstantin.ananyev at intel.com>

Applied, thanks

이 과정은 mailing list에서 확인할 수 있다.

아마 다음 버전 16.07이 릴리즈될 때 포함될 듯.

Update

git pull하니 patch가 반영되었네.

$ git log --oneline --graph
...
* 6226aa5 lpm6: fix missing header dependency
* 7cc3f2c lpm: fix freeing in compatibility mode
* 62aaf55 ip_frag: fix double free of chained imbues
…

$ git log
...

commit 62aaf5524c04d030e7c408ba2742829e38aaaaab
Author: Chaeyong Chong <cychong@gmail.com>
Date:   Fri Apr 22 02:28:01 2016 +0900

    ip_frag: fix double free of chained mbufs

    If any fragment hole is found in ipv4_frag_reassemble() and
    ipv6_frag_reassemble(), whole ip_frag_pkt mbufs are moved to death-row.
    Any mbufs already chained to another mbuf are freed multiple times as
    there are still in ip_frag_pkt array.

    Signed-off-by: Chaeyong Chong <cychong@gmail.com>
    Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>

(책) 공간은 어떻게 삶을 바꾸는가

구글은 창의성을 사장님 강조 말씀 따위로 키우려 들지 않았다. 이 회사는 직원들이 언제 어디서나 자유롭게 사고하고 소통을 나눌 수 있는 ‘공간’을 마련하였다.

창의성이 시켜서 발현될 수 있는 거라면 전 세계에서 창의성이 떨어지는 조직은 없을 거다. 반대로 창의성을 죽이는 생각 조직문화(특히 Top을 포함한 경영자/관리자)가 압도적으로 많은 것이 현실이다.

새롭게 사무실을 구하는 과정에서 가장 중요했던 것은 가급적 줄이고 또 줄이는 것이었다.

이사 가기 전에 줄이고 줄이자. 안 쓰는 물건이 모두 추억이라고 생각하지 말고

Doug Dietz, GE, MRI 장비를 아이들이 무서워하지 않도록 디자인.

MRI를 만들어 고통없이 검사받을 수 있게 했지만, 정작 어린 아이들은 ‘징징’ 소리가 나는 기계에 엄마 아빠 없이 혼자 들어가야 한다는 것에 무서워한다는 걸 알게된 Doug Dietz가 아이들의 눈높이에 맞게 만든 의료 장비



출처 : http://www.geglobalresearch.com/blog/inspired-designs-help-kids-get-through-medical-scans

통찰력이란 단순한 관찰을 넘어 연역과 창의의 과정을 거쳐야 비로소 얻을 수 있다. 단순한 관찰은 공간의 효율성 등 기능에만 그치게 된다. 하지만 연역과 창의의 과정은 공간과 사람의 본질을 찾아서 새로운 가치를 창출하는 것이다.

‘1의사 2진료실’.
환자가 불쾌할 때 ‘감정적인 응대’, 즉 친절과 미소로 대하면 된다는 것은 일차원적인 해결방안에 불과하다. 문제의 근원인 긴 대기시간이나 의사와 환자가 겪는 스트레스를 사전에 제거할 수 있는 환경을 만드는 게 본질적인 해결방안이다. 무조건 친절하게 웃으라고 강조하는 것은 또 다른 강요에 불과하다. 의료진에게 추가로 스트레스를 안기는 것 밖에 되지 않는다.

‘고객이 왕이다’ 라는 말은 직원들의 희생을 정당화하는데 사용되기도 한다. 희생만 하는 직원이 진심으로 고객을 왕처럼 대할 수 있을까? 그저 가식적인 친절만 배풀 것이다. 그리고 그런 친절은 결국 드러나게 마련이다. 한쪽에 희생만 강요해서는 오래갈 수 없다.

단지 한우물만 파는 장인에 머물지 안고 다른 분야에 대해서도 깊은 관심을 나타낸다. 그래서 자신이 몸담은 분야에만 국한되지 안고 자유롭게 여러 붕냐를 오가며 사고하는 성향을 보여준다.

호기심

사용자 중심이라는 말이 마치 절대 명제처럼 받아들여지고, 또 사용자의 범위를 서비스를 제공받는 대상만으로 국한시키는 또 다른 편견과 고정관념의 틀은 경계해야 한다.

위 ‘1의사 2진료실’과 같은 맥락

아티스트, 디자이너.
그런데 각각의 고유한 능력을 프로세셔널의 수준으로까지 갖추고 있는지는 따져봐야 하지 않을까?

일단 잘하고 봐야 한다.

대체로 조직이나 작업현장에서 직급이 낮은 사람들의 목소리는 쉽게 무시당할 때가 많다. 시키는 대로 하면 된다는 생각으로 중요한 의사결정에서 배제당하는 게 당연한 것처럼 여겨진다. 그러나 현장에서 사람을 만나고 일을 하는 구성원들이야말로 가장 촉이 발달했다고 볼 수 있다.

늘 이야기하는데 듣지 않는다. 그들이 뭘 원하는 지를 가장 정확하게 아는 사람은 그 물건을 실제로 사용하는 사람이다.

구글은 사내에서 ‘예측시장’이라는 것을 운영한다. 경영진이 간과할 수 있거나 판단착오를 일으킬 수 있는 사안에 대해 현장의 말단직원들로부터 피드백을 받는 것이다.
구글의 경영진은 현장의 목소리에도 통찰력이 충분히 담겨 있다는 것을 인정했다. 직원들을 소모품만으로 생각하지 않고 경영을 디자인하는 파트너로 존중한 것이다.

회사와 직원간 신뢰가 있어야 가능한 이야기. 그리고 그 신뢰는 항상 위에서 아래로 먼저 발현되야 한다.

(책) 한국인은 미쳤다

한국인은 미쳤다

인간은 질책보다 칭찬을 받을 때 더 좋은 성적을 낸다는 것을 한국인은 생각하지 못했다

한국의 기업문하는 달성할 목표와 쌓이는 실적만을 선택하고 나머지는 모두 제외시켰다

모든 것을 세분화하다 보니 그 무엇도 파악할 수 없게 되었다.

스파르타식 교육에서 안정감을 얻는 한국인에게는 두려운 이름 , 바로 미지라는 스트레스였기 때문이다.

임원이 상관의 지시를 따르는 이유는 매우 간단하다. 그들의 상관이기 때문이다. 그저 상관에게 복종하는 것 뿐이었다.

지향점이 사라지자 일상의 무게는 견딜 수 없는 것이 되었다

봄날이 좋다

그걸 즐길 여유는 없지만.

오늘 상원이 어린이집에서 소풍간다고 했는데 다행히 날이 맑았다. 바람은 좀 불었지만…