《도시의 승리》 독서 필기

마침내 자동차가 엘리베이터에 승리를 거두자 미국인들 다수가 도시와 자연이 융합된 교외 거주지에 살게 되었다.

샌프란시스코 지역의 아름다운 풍경 속에는 탁 트인 산등성이와 보호받는 해안 조망이 끊임없이 펼쳐진다. 실리콘밸리의 컴퓨터 분야 거물들은 특별한 기후뿐만 아니라 세계에서 가장 엄격한 토지 용도 규제로 인해 개발로부터 보호되는 아름다운 배경을 선사하는 지역에 거주한다.

석탄은 제2차 세계대전이 끝난 뒤까지도 미국 도시들의 하늘을 갈색으로 물들였다.

가정용 난방을 위한 탄소 배출로 인해서 스노 벨트(Snow Belt: 미국 북부와 동북부의 대설 지대)는 온화한 기후의 캘리포니아에 비해서 덜 푸르러 보인다.

캘리포니아 해변 지대는 미국에서 최고의 녹색 지대에 속한다. 샌프란시스코에 있는 가구는 멤피스에 있는 가구에 비해서 탄소 배출량이 60퍼센트 적다.

캘리포니아는 여름철 냉방이나 겨울철 난방이 많이 필요하지 않은 축복받은 기후를 갖고 있다.

성장을 제한함으로써 캘리포니아가 더 푸르게 보일지 몰라도 그런 제한은 미국 전체를 더 갈색으로 만들면서 전 세계 탄소 배출량을 늘리고 있다.

환경보호주의자들이 녹색 지역에서 개발을 중단시키면 갈색 지역에서 개발이 일어날 것이다.

오늘날 중국에서는 주로 산업 분야에서 탄소가 많이 배출된다. 과거 피츠버그나 맨체스터를 뒤덮었던 검은 연기처럼 탄소는 급성장하는 산업 발전의 부산물이다. 지금까지 중국 가정들은 놀라울 정도로 적은 에너지를 사용했다. 워싱턴 D.C. 지역의 일반 가정이 연간 43톤의 이산화탄소를 배출하는 반면 베이징의 일반 가정은 3.997톤의 이산화탄소만을 배출하지만 베이징은 중국에서 손꼽히는 ‘갈색 도시(the brownest place)’ 중 하나이다. 중국의 유전 도시이자 가장 갈색 도시인 다칭(大庆)의 가구당 연간 탄소 배출량은 미국에서 가장 녹색 도시인 샌디에이고의 탄소 배출량의 5분의 1에 불과하다.

국가 경제가 발전하면서 에어컨이 등장하기 훨씬 전부터 난방이 등장한다. 미국에서 가장 탄소 배출량이 많은 곳들은 덥고 습하지만 오늘날 중국에서 가장 탄소배출량이 많은 곳들은 추운 곳들이다. 중국은 난방은 하지만 아직까지 냉방은 하지 않기 때문이다. 미국 가정에서 나오는 탄소 배출량의 절반이 개인 교통수단의 사용에서 나오지만 중국에서는 현재 이 양의 10분의 1 정도만 자동차에서 나온다. 중국에서 차량과 에어컨 사용이 비교적 적어 현재 탄소 배출량이 낮은 수준을 유지하고 있으나 점점 더 부유해지는 중국인들이 미국인들이 당연하게 여기는 사치품 구입을 포기하리라 기대하기는 어려울 수 있다. 더군다나 인도에서는 에어컨을 써야 할 명분이 더욱 강한 것 같다.

중국과 인도가 전통적인 농업에 종사하기를 바라고 싶을지도 모르지만 24억에 달하는 사람들을 영원히 피폐한 가난 속에 살게 만드는 것이 기후 변화의 해법은 아니다. 과거 중국과 인도가 농업 사회였을 때 전염병에 걸려 많은 아이들이 숨졌고 굶주렸다. 영원한 가난이란 인간이 최첨단 의학 기술의 도움 없이 다스릴 수 있는 온갖 전염병에 수십억명이 노출된다는 것을 의미한다. 가난은 독재 정권을 길러내는 온상이기 때문에 인도와 중국이 가난한 상태를 유지한다면 전 세계 나머지 나라 사람들은 이웃의 강력한 독재 국가들로 인한 군사적 위험에 직면할 것이다. 그러나 환경적 위험을 줄이면서 번영과 성장을 이끌어낼 수 있는 길이 있다. 무엇보다 이 길을 걷기 위해서는 미국 준교외 지역의 자동차가 아니라 고밀도 도시 생활이 요구된다.

미래 중국이 더 나은 대중교통과 고층 주거 공간을 갖춘 초고밀도 사회가 된다면 우리가 사는 세상은 더 안전해질 것이다.

그러나 경고 신호들도 나오고 있다. 각각 2,000만 명과 1,700만 명이 거주하고 있는 상하이와 베이징의 혼잡도는 뉴욕 시와 비교하면 10분의 1 정도이고 로스앤젤레스와 비교하면 절반 미만인 광대한 도시들이다. 최근 인도와 중국에서 자동차 사용이 급증하고 있다. 이처럼 매년 30퍼센트씩 자동차 등록 대수가 늘어나는 현상이 몇 년간만 지속되더라도 2020년이 되면 중국 내 자동차 등록 대수는 5억 대에 이를 수 있다.

나도 같은 부류에 속하지만, 오늘날 아시아인들에게 에너지 절약을 설득하고 있는 에너지에 미친 미국인들은 매우 위선적이라고 말할 수밖에 없다. 한 저명한 경제학자는 이런 모습을 보고 “SUV 운전자들의 나라가 자전거 운전자들의 나라에게 모페드(모터 달린 자전거)를 몰지 말라고 설득하는 것과 같다”라고 꼬집었다. 서양이 지구온난화에 대해서 어떤 식으로든 도덕적 권위를 얻을 수 있는 유일한 방법은 자신부터 솔선수범하는 것이다.

고밀도 도시는 운전을 줄이고 냉난방을 적게 해도 되는 집에서 살 수 있는 방법을 제공한다. 아마도 미래 언젠가 우리는 탄소를 사실상 전혀 배출하지 않고도 운전하고 냉난방을 할 수 있겠지만 그때까지는 아스팔트만큼 푸른 것은 없다. 인류와 지구를 위해서, 도시는 우리를 ‘미래로 인도할 물결(wave of future)’이며 또 반드시 그렇게 되어야 한다.

Redux 공부 필기

  1. Redux의 혁신은 상태를 한곳에 몰아넣은 것, 상태와 ‘상태 변경자’들을 분리한 것이다. 맞다, WAS들이 이미 하고 있는 그것 맞다. (AWS Lambda가 왜 ‘람다’인지 생각해보라.)
  2. 상기 혁신을 통해 핫 리로딩(hot-reloading)을 지원한 것이 키 피처중 하나였다. 역시 WAS들이 이미 하고 있는 그것 맞다.
  3. 모듈화는 상태를 찢어놓음으로 달성한게 아니라 함수를 찢어놓음으로 달성한다. 찢어진 함수들은 ‘함수 합성’을 통해 다시 합쳐질 수 있다.
  4. 키 피처중 다른 하나는 시간 여행 디버깅(Time Travel Debugging)이다. (Redux라는 네이밍의 중의적 의미중 하나. 후술.) Visual Studio나 WinDbg에서 지원하는 그거 맞다. 다만 Redux가 먼저 나왔고 따라해도 VS와 WinDbg가 따라했을 것 같다.
  5. 시간여행의 비결이 뭐냐? 애플리케이션 상태를 1개의 불변(immutable) 객체에 저장하는 것이다. 상태가 바뀔 때 어떠카냐고? 불변형 객체를 하나 새로 만들면 된다.
  6. 그렇게 하게되면 메모리 사용량이 무식하게 늘어나지 않냐? 아니다. 최적화되어 필요한 부분만 증분으로 늘어난다. 즉 상태변경을 하는 일반 애플리케이션과 큰 차이가 없다. (특히 웹앱의 생명주기상 더욱 문제 안된다.)
  7. 메모리 사용량이 폭증하지 않는 마법의 비결이 뭐냐? 답은 의외로 간단했다. 얕은 복사(Shallow Copy)다. 진짜 천재다.
  8. 물론 이상 모두 Redux의 핵심을 짚었다고 할 수 없다. Flux – Redux 진화 라인의 핵심은 액션의 단방향 흐름이다. 즉 이벤트 소싱이다.
  9. 이벤트 소싱과 상태의 예측성 모두 게임 쪽에서 훨씬 일찍부터 태동하고있던 사상이었고, DB쪽에서는 옛날부터 이미 구현된 현실이었다.
  10. 물론 수렴 진화(Convergent evolution)에서 그 어떤 가지도 모두 동등하게 중요하고 대체불가하다.
  11. 함수형 프로그래밍 신도들은 immutable 의 승리가 보일 것이고, 데이터베이스 힙 가이들은 “THE LOG IS THE DATABASE”가 보일 것이고, 이벤트 소싱파들은 이벤트 소싱이 보일 것이고, CRDT연구자들은 CRDT가 보일 것이고, Redis 애호가들은 Redis가 보일 것이고, 블록체인 신도들은 블록체인이 보일 것이다.
  12. “Redux”는 “Reduce”(“맵리듀스”의 그 “리듀스” 맞다)와 같은 라틴어 어원을 갖는다. 위에서 언급한 것처럼 “(과거의 것을) 되찾음”이란 뜻이 있다. 그리고 reduce는 함수형 프로그래밍에서 잘 알려진 패턴인데 억지번역을 해보자면 ‘귀납 합병’ 같은거다. 필자도 지금 알게 된건데 “fold”가 더 표준적인 용어더라.
  13. 정말 블록체인으로 Redux를 구현한 사람이 있다.
  14. Redux는 놀랍도록 짧다. 핵심 코드 99줄 구현을 갖고있는 것으로 유명하다. 그도 그럴것이 React Europe이란 컨퍼런스에 ‘핫 리로딩’ 관련 기술공유를 하기 위해 PoC 목적으로 급조해 만들어졌다고 한다. (거봐 그냥 WAS를 본딴거라니까)
  15. Redux개발자들은 이미 페이스북에서 채갔다.

코인충 개발자의 자백서

by coolspeed

2011: 비트코인 첫 만남

나는 2011년에 비트코인 비평 블로그를 연재한 프로그래머다. 총 4탄까지 연재했다. 해당 시리즈 블로그글들은 아직도 인터넷에 올라와있고 열람이 가능하지만, 굳이 링크를 첨부하지는 않겠다. 당시의 1탄이 비평에 찬 목소리였는가 하면 4탄에 와서는 가능성을 열어두기도 했다. 어쨌든 2011년의 비트코인 관심은 그렇게 끝났다.

2013: SF작가

다시금 비트코인이 시야에 들어온건 2013년 나의 타임라인에서다.

내가 좋아하는 SF작가가 말하기를 비트코인은 굉장히 위대한 화폐가 될 수 있다고 한다. 그것으로 다중 서명 지갑을 만들 수 있는가 하면 이건 그냥 아주 작은 예시일 뿐이고 다양한 스마트 컨트랙을 만들 수 있다는 것이다. 돈에 프로그래밍이 가능하다는 것이다. 현재 중앙화 문제를 겪고있는 인터넷 도메인 네임 시스템(DNS)도 탈중앙화시켜 보다 공정하고 안전하게 만들어줄 수 있다고 한다. (당시에 이미 Namecoin이란 프로젝트가 존재했다.)

머리뚜껑이 날아갔다.

아니, 인류 최초로 은행 없이 돈이 저렴하게 전 지구적으로 유동될 수 있게 된건 그렇다 치자. WikiLeaks같은 프로젝트가 정부들의 눈에 벗어나도 후원 받을 수 있는 방법이 생겼다는게 <V for Vendetta>가 인생영화인 아나키스트 젊은이의 마음을 훔친 것도 그렇다 치자. 프리즘 폭로 사건을 젊은 나이에 겪은 개발자의 마음을 훔쳤다는 것도 그렇다 치자. 비트코인 얘기는 너무나도 상식에 벗어나고 전 지구적인 사기처럼 들리지 않는가.

하지만 이번에는 달랐다. 어려서부터 장자크 루소의 <사회계약론> 영향을 다분하게 받아온 사람이 커서 프로그래머가 되었을 뿐만 아니라, 동물사회에 엄청난 학문적 관심을 갖고있으며, 최근에는 고전 자유주의 경제학파의 뽕을 맞아 애덤 스미스 만능론에 들떠있었다. 이러다가 전 지구적으로 자유로운, 스마트 컨트랙을 통해 프로그래밍 가능한 화폐를 만나면 어떻게 될까? 상식을 버리기로 한다. 인생영화가 <V for Vendetta>뿐이 아니라 <매트릭스>도 있다고? 보나마나 빨간 약을 선택한 것이라고 스스로 생각하겠지.

2013: 기계의 반란

“아니 소제목이 그게 뭐냐, 무슨 B급 SF소설도 아니고” 라고 말할지도 모른다. 충분히 그런 말이 나올 만하다. 하지만 소제목은 진지하게 달았다. 나는 블록체인 역사를 회고하는 미래의 역사학자들이 2013년 이하 사건을 획기적인 사건으로 다룰 것이라고 생각한다.

지금 2018년에야 댄 라리머란 개발자가 유명한 블록체인 개발자와 유명한 블록체인 사상가로 잘 알려졌지만 2013년에는 그렇지 않았다. 댄 라리머가 2013년에 그의 아버지 스탠 라리머(Stan Larimer)와 토론한 내용을 바탕으로 스탠은 <비트코인과 로봇 3원칙>이란 글을 발표했다.

이 글이 최초로 DAC라는 개념을 제시했다. 이 글은 암호화폐/블록체인 업계에 센세이션을 일으켰다(하지만 아는 사람은 많지 않다). 그 센세이션의 예로 훗날 이더리움 창시자로 잘 알려졌으나 그 당시는 그리 유명하지 않던 비탈릭 부테린이 Bitcoin Magazine 에 <DAC 창립하기> 시리즈 글을 발빠르게 연재하는 것으로 열렬히 응답했다는 점이다. 다른 예로 이때 탄생한 DAC 개념이 나중에 발생한 블록체인 최대 해킹사건인 The DAO 해킹 사건의 불씨로 된다.

그럼에도 불구하고 이 개념은 글을 쓰는 2018년에도 여전히 잘 알려지지 않았다. 도대체 DAC가 뭔데?

DAC를 이해하기 위해서는 우선 기업을 이해해야 한다. 기업이란 무엇인가? 많은 사람들이 기업이 무엇인지 이해한다고 생각한다. 하지만 정말 그럴까?

Continue reading

이더리움 커뮤니티와 EOS 커뮤니티 사이의 논쟁- 3탄

회고

이더리움 커뮤니티와 EOS 커뮤니티 사이의 논쟁

이더리움 커뮤니티와 EOS 커뮤니티 사이의 논쟁- 2탄

배경

이더리움 창시자 비탈릭 부테린이 최근에 《거버넌스 제2장: 금권정치 – 여진히 나쁜》이란 제목으로 EOS블록체인의 DPoS 합의 매커니즘을 폭격하는 글을 올렸다.

이에 EOS블록체인의 창시자 댄 라리머 또한 《암호경제학 거버넌스의 한계》란 제목으로 반박글을 올렸다.

필자는 비탈릭 부테린과 댄 라리머의 브로맨스와 키보드 배틀을 지켜본 지 몇년은 된다. 한때 BitShares 도 마켓캡 4위 암호화폐였고 라이트코인 잡기 바로직전이었던 리즈시절이 있었으며, 이더리움도 화이트 페이퍼 한장일 뿐일 때도 있었다. 댄과 댄의 아버지가 《비토크인과 로봇 3원칙》이란 암호화폐 역사의 획기적인 글을 발표해 DAC(“DAO”의 오리지널 이름) 개념을 제출한 얼마 뒤, 비탈릭 부테린은 당시 여전히 주필을 맡고 있던 Bitcoin Magazine 에서 《DAC 부트스트래핑하기》 란 시리즈 글로 사이좋게  받아쳤었다. 그리고 이 모든 것은 DAO (“The DAO” 따위가 아닌), DAC, DApp 이론들의 시조가 된다.

dan_vitalik.jpg

두사람은 컨퍼런스 같은데서도 자주 마주쳐 의견교환을 자주 하는 그런 사이였다.

비탈릭 또한 DPoS를 비평해온지 오래 됐고, 댄도 비탈릭의 이더리움 스케일링 솔루션을 비평해온지 오래다.

두사람 모두 자산 1조원 이상의 부자가 이미 됐는데 여전히 스타트업 창업자처럼 열심히 일한다. 댄은 맨날 열심히 코딩하고 기술 팀 관리하느라 바쁘다 (키보드배틀도 틈틈히 하고) (연관 있는지는 잘 모르겠지만 살도 많이 쪘다). 비탈릭은 젊은 나이에 부자가 됐는데 여전히 한국에 강연하러 올 때도 이코노미 클래스 타고 온다고 하더라. 둘 모두 부자가 되었지만, 이 세상에 하고 싶은 말은 이제 금방 시작한 것만 같다.

암호경제학에 대해서만큼은 둘의 의견이 좀처럼 좁아질 수 없을 것 같다. 비탈릭은 케인즈경제학파 신도이고 댄은 오스트리아 경제학파의 신도이다. 케인즈학파도 많이 봤고 오스트리아 학파도 많이 봤는데, 이 두 세상의 사람들은 마치 평행우주에 사는 것처럼 의견차를 좁힐 수 없는 것 같더라.

필자는 비탁릭도 좋아하는 편이지만, 댄의 팬이다. 그리고 연관관계가 있는지는 모르겠지만 오스트리아 경제학파의 신도다. 필자는 이더리움 프로젝트라는 실험도 후원하고 있지만 EOS란 프로젝트에 더욱 많은 지분을 할애하고 있다. 두 프로젝트 모두 문샷(Moonshot) 프로젝트이고 실패해야 정상이다(우리 스스로도 종종 하이프에 취해버리지만, 정신을 똑바로 차리자). 성공하면 기적인거다.

Continue reading