오늘의 식사: 아침에 콘푸레이크, 점심에는 밑반찬이랑 잡채랑 먹었다. 저녁에는 보은이네 커플이랑 Crisp 에서 치킨이랑 비빔밥 먹고, Molly's 에서 컵케잌. 시카고 와서 처음 먹은 맛있는 컵케잌이었다. 물론 세입째부턴 너무 달았다. 히히
오늘의 운동: 수영하러 갔는데 national Equinox triathlon tourney 예선한다고 풀 막아놨다. 아..... 젠장...
파이컨에서 각종 부스들을 돌아다니며 freebie 들을 쓸어왔는데 그 중에 woti 에서 준 roomerang 이란 걸.. 참 열심히 갖고 놀고 있다. 이거 진짜 돌아와... 나도 중딩같은거 인정하지만 이거 재밌는걸... 흑흑..
그래도 온도가 영상이니 밖에 돌아다녀도 죽을거 같지 않다. 너무 좋다. 시카고에도 봄은 온다.
SRM500 말리고, 문제 다시 풀어보고, 로그 쓰고, 다시 푸느라고 8세션이 지나갔다.. 아흑... 모든 실패를 타산지석의 계기로 삼는 훌륭한 어린이가 되고 싶은데 어떻게 하면 좋을까.
낼부턴 꼬박꼬박 연습하기로 맘먹었다. 그래도 하루에 4세션 이상 쓰진 말아야지.
덕분에 원고는 gcd 연습문제만 간신히 풀이 쓰고 체 연습 문제는 건드리지도 못했다. gcd 연습 문제는 옛날 SRM 에 나왔을 때 손도 발도 못대고 삽질했다가, 얼마 전에 보고서는 '아 이렇게 풀면 되네' 바로 보여서 뿌듯했는데, 지금 다시 보니까 '이렇게 하면 직관적인 알고리즘으로도 풀 수 있군' 생각이 들었다. 새삼 신기했다.
오늘의 운동: 온몸이 결려서 못했다.. 잠깐 수열이랑 룹 나가서 쇼핑 겸 돌아다니는데 종아리가 아파와.. ㅜㅜ 낼은 수영이라도 가야지
오늘의 원고: 14챕터 쭉쭉 나가고 있다. extended euclid 도 그냥 더 읽기 란에 집어넣고 나니까, 사실 에라토스테네스의 체랑 유클리드 호제법으로 한챕터 때운셈. 양심의 가책이 조금 느껴지는 듯도.. 하지만 뭐 이것밖에 모르고도 나도 지금까지 잘살아왔다구... 낼 연습 문제 두개 하면 드래프트 아웃! 그래 이런부분은 대충대충 빨리쓰고 넘어가버려야지. 연습 문제 뭐 낼까 고민하고 있다.
늦잠자고 일어나서 (매일 세시 넘어 자니 뭐 별수있나) 점심으로 삼겹살 구워먹었다. 다래정에서 사온 마늘 장아찌 대박 맛있다.. 일년 묵은 거라던데.. 지금도 침이 넘어감. -_- 저녁에는 해물순두부찌개를 먹기로 했는데, 수열이가 잡채 먹고 싶다고 해서 나는 찌개를 하고 수열이는 잡채를 하기로 함. 돼지 목살을 꺼내서 잡채에 넣었는데, 너무 많이 얼려놨던지라 나머지도 구워먹음. 정신을 차려보니 잔칫상. -_-;;
새 헬스장에서 PT 를 한번 샘플로 해준다고 해서 오늘 했다. 워밍업 좀 하고 그 후에는 거의 웨이트였는데, 할 때는 그럭저럭 할만하더니 끝나고 나니까 손가락 하나 들 힘도 없고 구역질나고 어질어질.... 락커룸에서 10분간 뻗어있다가 간신히 샤워하고, 로션도 안바르고 집에 와서 쓰러져 쉬었다. 아... 나 안해.. 못해... 이걸 어떻게 일주일에 두번씩 하나여... 이 정성으로 탑코더를 하면 타겟도 되겠다...
그 외에는.. 진짜 산더미같이 쌓여있던 빨래를 했다. -_- 파이컨에서 티셔츠를 너무 많이 받아와서 (파이컨 티셔츠, 구글 티셔츠, threadless 티셔츠, 또 한장 있었는데 뭐였더라..).. 수열이가 뭐라고 했다. 밖에서는 입고 다니지 말란다. 흑흑. 스폰서 부스 돌아다니면서 열심히 모은거란 말야.
에 또 그리고.. 13장 릴리즈 함. 오늘 릴리즈하고 자고 싶은 맘에 또 세시 넘어서 잔다. 미래가 없다. ㅜㅜ
내가 간 건 작년에 이어 두 번째 파이컨이었다. 위치는 작년과 같은 아틀란타 하얏트 리젠시. 작년 1023명에 비해 400명이 늘은 14xx 명이었다고 한다. 현장 등록도 100명 넘게 받았다는 듯.
컨퍼런스에 혼자 간 건 이번이 처음이라, 모르는 사람들이랑 좀 놀기도 하고 얘기도 하고 이것저것 해보려고 맘먹고 갔는데 좋았던 거 같다. 스프린트 하려고 남았으면 사람들이랑 친해질 수 있을 만한 환경. 하지만 어떻게 남나여? orz
작년에는 거의 대부분의 토크를 재미있게 들었는데 올해는 사실 그렇게 재밌지는 않았다. 작년에 비해서 세션들의 퀄리티가 내려갔냐 하면 그건 잘 모르겠고.. 작년에는 내가 좋아하는 스케일링, 최적화, 파이썬 내부 동작 등등의 주제들이 많았는데 이번에는 좀 제한되었던 것 같다. 올해 관심가는 발표 꼽아보면서 뽑았던 발표들도 다시 찬찬히 읽어보면 관심가지 않는 것도 있었고..
그래도 재밌는 것들은 꽤 있었는데.. 레드햇 엔지니어의 gdb+python 토크는 유용했고, virtualenv 토크도 재미있었다. Alex Martelli 옹의 API Design Antipatterns 가 유용성과 관련없이 제일 재미있었던 토크 같다.
특히 학계에서 파이썬을 쓰는 아카데믹의 발표들 -- 몇 개 갔었는데 -- 거의 다 실망스러웠다. 슈퍼컴퓨터 퍼포먼스 재는 거 발표는 완전.. 그냥 엑셀 스프레드시트를 MySQL 이랑 Win95 스러운 wxPython GUI 프론트엔드로 대체한거잖아. 대체 이런거 왜 억셉된거야... 트위터의 언어학 토크와 NLTK, scikit-learn 을 이용한 통계분류도 우울했다. HPC 쪽은 그나마 좀 들을만했다.
커미티가 SE 위주로 구성되다 보니까, SE 랑 관련 없는 외부 발표를 100% 이해하지 못하다 보니 엄격하지 못하다는 느낌이 들었달까.. 흠. 원래 이러면 내가 컨트리뷰트하는게 오픈소스월드지만 난 일단 원고를 해야할 뿐이고! (...)
일단.. 분위기는.. Django 가 여전히 파이컨의 큰 부분을 지배하고 있고.. PyPy 가 인터프리터의 미래라는 걸로 컨센서스가 모아지고 있는 듯. 그런데 아직 py3k 호환성이 없어서, PSF 가 호환성을 높이라는 쪽으로 계속 푸시하고 있다고 한다. 하긴 각종 라이브러리는 다 푸시하면서 PyPy 를 그냥 둘 순 없으니까. PyPy 팀은 이번에 PSF 에서 $10K 그랜트도 받았다.
룸 쉐어링을 처음으로 해봤는데 뭐... 사실 아침에 샤워하고 나가면 저녁에 세션 다듣고, 사람들이랑 밥먹고 술마시고 (...) 보드게임하고.... 하다가 들어와서 자는 패턴이었어서 불편한 건 없었다. 하하
작년과 다르게 BoF (birds of a feather) 모임들을 좀더 참여해 봤다. Django 나 testing 같은 큰 BoF 들은 나름 전통적이고, 스폰서도 있더라. 장고 BoF 는 오픈바 + 공짜밥이어서 사람들이 드글드글... 너드들의 파티랄까.. 한참 맥주마시면서 제네틱 프로그래밍 얘기하다 나왔다...
보드게임 소셜도 재밌었는데.. 팬데믹, 도미니언, 아그리콜라를 해봤다. 팬데믹은 열턴 못가고 몰살을 두번 반복하고 지지치고.. 도미니언 하다가, 아그리콜라가 워낙 재밌다는 얘기를 많이 들어서 해보겠다고 했는데 두시간 넘게 걸렸다 -_ -;; 글고 왤케 어렵냐 ㅋㅋㅋ 도미니언 정도는 캐주얼하게 해볼만 한거 같기도 한데..
Testing in Python BOF 는 사람들이 얘기하던대로 파이컨의 백미였다; 서로 열심히 디스하고 재밌게 놀더라. ㅋㅋㅋ 컨퍼런스 체어도 오고 PSF 체어도 와서 재밌게 놀더라.
convore.com 을 포럼 시스템으로 썼는데 아주 괜찮더라. irc 같은 느낌으로 쓸 수 있다. 저녁 먹으러 갈 사람들도 여기서 찾고. 종종 쓸 일이 있겠구나 생각했다.
하여간 서로 놀고, 얘기하고, 맥주 마시고, geek out 하는 이런것이 파이컨을 하는 의미구나 하는 생각이 좀 든다는....
마지막날에는 CPython 크루랑 앉아서 fractions 모듈 테스트 커버리지 올리는거 했다... 97% 에서 98% 로 올렸어.... orz 이 패치 나중에 꼭 섭밋할테다. -_-ㅋㅋ
마지막날에 스프린트 하다가 저녁 먹으러 가기로 했는데, 너무 멀리 가서, 비행기 시간 늦어질 뻔해서 뛰어와서 간신히 왔다.
몇개 토크 한줄요약
hmason 키노트: 파이썬 짱이에요. (orz)
gdb+python talk: gdb 7 이상에는 파이썬이 내장되어 있음. 나름 인터랙션도 잘할수 있어요. 경우에 따라 아주 유용.
Python VM Panel: PyPy 빨라요, IronPython 이랑 Jython 은 외부 시스템이랑 통합할때 좋아요. Unladen Swallow 가 죽었슴다.. --;
Linguistics of Twitter: 좆망
mrjob: Amazon Elastic MapReduce 를 깔끔하게 랩핑한 라이브러리
virtualenv and pip: most of Ian Bicking's ugliest hack works well
text classification: use nltk and scikits-learn.
PyPy: tracing jit rules.
DropBox: 우리 다 MIT 졸업한 졸라 똑똑한 애들이에여. 우리 짱. 우리 이러고 놀아요. 아 파이썬 써요.
GvR: Py3k 같은 브레이킹 체인지는 이제 없음. 파이썬 3 은 잘 도입되고 있음. 2년전에 비하면 큰 발전. 커뮤니티 짱!
HPC: 블루진은 계산에 필요한 최소 유닛인 컴퓨팅 카드를 여러개 모아서 계산해요. MPI 짱.
SOLVCON: latex 로 슬라이드 만들거면 폰트 굵기를 굵게 하고 색을 진하게 합시다.
API Design Anti-patterns: API 를 만듭시다. 만들거면 구현 세부사항을 노출하지 말고 합시다. 저수준 API 를 결합하는 고수준 API 를 다시 제공하면 구현 세부사항 변화에 좀더 유연하게 대처할 수 있습니다. 두 종류 넘게 많이 제공하면 망합니다.
Coroutine: gevent 멍키패칭 만세. 그린스레드 쓰면 소켓풀링이 필수적. 자발적으로 CPU 내줘야 하니 오래 걸리는 건 외부로 빼자.
python memory talk: use gdb-heap
probabilistic data structures talk: A set of strings can represent debruijn graph if the set of alphabets are small.
threadless; unicorns with obama freakin rule.
disqus: largest django app out there. some best practices they have.
fun with python's newer tools: collections.Counter, namedtuple, lru_cache, string formatting