这是今年的第91篇博文,又到岁末年初,总结一下过去一年,赶在所谓"末日"之前发出去.这一年,仿佛又只是隔了几篇随笔.
技术
Erlang相关的笔记今年写到了编号0096,出现了一个井喷,这主要是由于2011年积压了太多的内容.(盘点2011的时候[链接],有园友关注我是否能坚持写这个系列,哈哈,今年我没停下哦) 2011年工作节奏快,项目紧张,能够分配给自己的时间少之又少,一些问题遇到了找到了解决方案就赶紧往后赶;内心还是想一探究竟,苦于条件不允许,最开始把这些问题记在脑子里面,后来发现问题实在太多,就开始在Evernote里面维护一个常常的问题列表.
今年业余时间终于可以自己支配了,仿佛久在牢狱重获新生的犯人,特别珍惜现在的每点时间,晚上可以非常尽兴的消灭问题列表了;之所以安排在晚上,是因为白天在公司要搞的东西也不轻松,也需要足够的精力投入;有时候一篇文章会拖一周甚至两周的时间,倒不是什么拖延症,而是有时候晚上实在累了,就只写一小段或完成一个小话题;
在整理的过程中还是充满乐趣的,首先知识互相联系,问题A搞清楚了,后面几个问题也就顺带搞清了,或者一个问题牵出一个自己知识结构上的缺陷,赶紧弥补一下;其次,一个问题解决方案有很多种,这些方案的比较权衡,适用场景分析是很锻炼对技术的掌控能力的;"把合适的技术用在合适的场景,不引入大而无当的技术方案"是一个技术人的能力要求也是职业道德要求.这种思维训练的出发点也是源自于这样一个价值判断.
在博文中,我会非常留意在解决一个问题过程中自己思考的过程,然后一定会问一个问题:这个问题解决过程中是否走了弯路?这个弯路是知识架构缺陷还是思维模式有问题?这个过程的记录对我个人来讲意义重大,算是了解,提升自己的一个途径.
后来养成了一个小习惯,在每篇文章后面附上一张美图,美女居多,好几个朋友揶揄我:"我就看最后那张图",哈哈
就这样,今年的Erlang系列就一直写一直写,写到了编号0096,Erlang这个系列还会继续下去;中间夹杂了几篇读书笔记,今年读书很开心,下面说读书:
读书
今年读书,技术类10本,非技术类的10+;技术类的书,大多数都整理了笔记,大家有兴趣可以翻翻,不再一一罗列;今年读过的书印象比较深的是"黑客与画家","别闹了,费曼先生",需要思考的量不小. 每一年都会关注"如何阅读"的问题,这主要是针对专业书籍的阅读方法和效果,今年尝试了几种方法,感觉比较好的是思维导图和读书笔记.思维导图往往是在阅读一本书开始的时候,通过目录和阅读导引构建起来整本书的组织结构,阅读过程中不断细化调整,加入自己的理解.读书笔记是思维导图的一个补充.
非技术类的书,我倒是想多说几句,这些书真得让我充满幸福感,比如下面几本:
台湾流行音乐200最佳专辑(1975~2005)马世芳的这本书真的很让人惊喜,一遍听歌一遍看书,其中一些唱片真的很难找了.初中的时候帮一个女同学考试作弊,借了十几盘滚石的磁带,然后用英语磁带翻录,然后就听了好多年,充满幸福感.记得还有一盘带子翻录的时候缠带子了,只好动手剪断然后用透明胶带粘起来,没敢告诉这同学,怕以后借不出来了.......后来大学的时候跟这个同学聊天起这个事情,人家的反应是"有吗?我听着好好的啊,没有关系了,后来搬家磁带都潮了长毛了"
光影传奇 第十放映室 这本书和我自己打印的一本IMDB Top 250手册一起,加上魏君子的两本讲香港电影的书,基本上构成了我的观影指南.
天下无不可为之事:胡适笔下的人生恳谈 胡适之前有一篇文章"赠与今年的大学毕业生"对我影响很大,胡适写得东西比较中肯,没有摆出"听我的就能成功,我不要脸就能成功了你要不要复制,我已经做最好的自己了你要不要做最好的自己,成功人士的几个臭毛病"的架子.
电影
在青岛玩的时候想到"听风者"上映,跑去看,没有太失望,我对香港电影还是有信心的.大片比较震撼的是"暗夜骑士崛起",克里斯托弗·诺兰确实牛,挽救了蝙蝠侠这个经典系列.内地电影只有一部"杀生"着实不错,管虎和黄渤好像喜欢用非常荒诞胡闹的包装一个严肃的主题,"斗牛"是这样,"杀生"也是.
看得几欲落泪的电影是徐克的"棋王",这部电影不可能在电视看到,网上还可以找到,看看吧;罗大佑音乐贯穿整部电影,说说今年听得音乐.
音乐
陆陆续续在听台湾百佳唱片,反反复复听李宗盛理性感性演唱会,不厌其烦听久石让;Beyonce Rihanna 更是少不了,在几万首歌里面随机播放,留下印象的真不多.一个比较偶然的事情是:播放列表改成专辑列表播放,听了一天的维也纳新年音乐会,竟然慢慢听出好来了,大家可以找来听听,有一种渐入佳境的感觉,大家很容易找到历年的音乐会下载.
我的乐评的最高评价是:"好听,听得心里比较舒服",这些音乐都让我很舒服.
时间
时间,也是每年怀疑人生必然要思考的话题.
今年是彻底告别电视第二年,晚上的时间过得比较充实.下半年的时候,彻底告别了微博,让朋友帮我把密码修改掉了,我是再也登录不了了.告别微博的原因很简单,信息碎片化,思考不连续,注意力分散;开始的时候迟迟下不了决心,是因为的确可以接收到很多有用的信息,观点,后来发现只要是重要的信息,总可以在Google Reader里面看到,漏不掉什么.
我笃信1万小时理论,我们都是和自己赛跑的人.
按照惯例,小图一张:电影柔道龙虎榜
末日若为谎言,明年继续更新
2012 Q.E.D
PS 我在豆瓣的签到地址 http://www.douban.com/group/topic/23688164/
附录 我的2012年博文目录:
The Ideal Programmer (2012-12-18 13:36)
[Erlang 0096] RabbitMQ Boot Step (2012-12-14 18:00)
Storm-Like Projects (2012-12-13 16:14)
[Erlang 0095] 善用 Erlang module_info (2012-12-12 20:33)
[Erlang 0094] Erlang 杂记 VI (2012-12-11 21:31)
Twitter Storm Real-Life App 排错记 (2012-12-06 17:37)
[Erlang 0093] RabbitMQ 3.0的一些变化 (2012-12-04 14:44)
论快乐 钱钟书 (2012-11-29 12:41)
Install Storm on CentOS (2012-11-29 11:10)
[Erlang 0092] Erlang 命令行监控工具 (2012-11-22 20:39)
[Erlang 0091] 另辟蹊径构建RabbitMQ集群 (2012-11-19 12:55)
[Erlang 0090] RabbitMQ 集群: Mirrored Queue (2012-11-15 20:01)
[Erlang 0089] RabbitMQ Exchange (2012-11-15 09:05)
[Erlang 0088] RabbitMQ 集群 Disc Node 一点实现细节 (2012-11-13 12:41)
[Erlang 0087] RabbitMQ 集群: RAM or Disk node (2012-11-12 21:19)
[Erlang 0086] RabbitMQ 集群: 从零开始 (2012-11-12 17:29)
[Erlang 0085] RabbitMQ 集群: data and metadata (2012-11-11 22:29)
[Erlang 0084] RabbitMQ: fire-and-forget and RPC (2012-11-10 19:47)
[Erlang 0083] All about Erlang Shell (2012-11-01 21:34)
MySpace Mapreduce Framework:Qizmt (2012-10-30 21:35)
Mahout:DataModel doesn't have preference values (2012-10-29 20:37)
[Erlang 0082] Erlang Web Servers & Frameworks (2012-10-27 22:52)
[Erlang 0081] RabbitMQ Topic Exchanges Routing Rules (2012-10-24 21:11)
[Erlang 0080] RabbitMQ :VHost,Exchanges, Queues,Bindings and Channels (2012-10-20 23:44)
[Erlang 0079] RabbitMQ 初探 (2012-10-17 22:22)
[Erlang 0078] Erlang HiPE 二三事 (2012-10-09 21:44)
放假杂记 (2012-10-07 22:53)
[Erlang 0077] Erlang 杂记 V (2012-09-25 20:05)
[Erlang 0076] Erlang Shell一个怪问题 (2012-09-25 15:47)
实用主义的思考与学习 读书笔记 (2012-09-04 22:38)
[Erlang 0075] Bad value on output port 'tcp_inet' (2012-08-23 17:23)
[Erlang 0074] Erlang 杂记 IV (2012-08-22 22:57)
电影中的计算机 过去与未来 (2012-08-16 23:13)
[Erlang 0073] Erlang Event Tracer 图形化展示 (2012-08-01 22:26)
《黑客与画家》读书笔记 (2012-07-23 23:04)
[Erlang 0072] Erlang XML处理解决方案 (2012-07-20 07:28)
Erlang 开源项目 (2012-07-18 22:13)
[Erlang 0071] Erlang STDLIB 中文注释版 (2012-07-10 17:01)
[Erlang 0070] Erlang Queue (2012-07-10 11:08)
[Erlang 0069] Erlang ordsets (2012-07-06 23:06)
《标签:标记系统设计实践》读书笔记 (2012-07-01 17:49)
端午拼图记:我钟爱的香港电影 (2012-06-24 22:44)
[Erlang 0068] Erlang dict (2012-06-24 22:30)
[Erlang 0067] Erlang gb_trees (2012-06-23 00:37)
[Erlang 0066] Erlang orddict (2012-06-17 21:50)
[Erlang 0065] Erlang proplists (2012-06-15 12:46)
[Erlang 0064] Erlang Array (2012-06-14 09:56)
[Erlang 0063] Joe Armstrong 《A Few Improvements to Erlang》EUC 2012 (2012-06-06 22:54)
[Erlang 0062] Erlang Unicode 两三事 (2012-05-31 22:55)
The Matrix Revolutions (2012-05-24 23:36)
[Erlang 0061] Erlang Code Snippet Ⅱ (2012-05-22 22:05)
[Erlang 0060] Joe Armstrong 论文《面向软件错误构建可靠的分布式系统》笔记 (2012-05-20 15:14)
[Erlang 0059] Erlang日期与时间处理 (2012-05-17 22:49)
Linux/Unix设计思想 读书笔记 (2012-05-09 00:04)
[Erlang 0058] Erlang Function调用效率 (2012-05-06 08:51)
[Erlang 0057] Erlang 排错利器: Erlang Crash Dump Viewer (2012-04-28 18:02)
[Erlang 0056] 用fun在Erlang Shell中编写尾递归 Ⅱ (2012-04-28 12:08)
Disk is Tape, Flash is Disk (2012-04-28 00:04)
[Think] 解决问题 Ⅱ (2012-04-22 13:33)
[Erlang 0055] Erlang Shared Data using mochiglobal (2012-04-19 18:19)
[Erlang 0054] Erlang Web 监控工具 (2012-04-17 11:06)
回头再说 .net framework从1.0说到4.0 (2012-04-09 12:15)
[Erlang 0053] fun & Code replacement (2012-04-05 17:58)
《Big Data Glossary》笔记 (2012-04-05 15:10)
[Erlang 0052] Erlang otp_src_R15B01 Released (2012-04-04 21:55)
[Erlang 0051] Using ETS in Erlang Shell (2012-04-01 16:11)
[Erlang 0050]用fun在Erlang Shell中编写尾递归 (2012-03-24 22:08)
[Erlang 0049] 哈哈,一起来打印三角形 (2012-03-22 23:00)
[Erlang 0048] Erlang Guard (2012-03-22 00:08)
[Erlang 0047] Erlang 进制转换 (2012-03-20 21:30)
[Erlang 0046] Erlang Timer (2012-03-16 15:17)
Redis 实践笔记 (2012-03-13 15:40)
[Erlang 0045] Erlang 杂记 Ⅲ (2012-03-11 13:11)
[Erlang 0044] Erlang Shell History (2012-03-06 14:22)
[Erlang 0043] Erlang Code Snippet (2012-03-04 23:24)
[Erlang 0042] Erlang 动态执行 (2012-02-29 23:31)
[Erlang 0041] 详解io:format (2012-02-26 21:29)
[Erlang 0040] Hidden Features of Erlang (2012-02-17 16:23)
[Erlang 0039] Erlang Inheritance (2012-02-17 13:15)
[Erlang 0038] Node.js & Erlang (2012-02-16 22:01)
[Erlang 0037] Erlang Parameterized Module (2012-02-16 16:31)
[Erlang 0036] "HOW TO"不创建崩溃报告主动销毁gen_server进程 (2012-02-16 11:32)
[Erlang 0035] Erlang SMP (2012-02-01 12:36)
[Erlang 0034] Erlang iolist (2012-01-31 17:58)
[Erlang 0033] 接入Erlang控制台的几种方法 (2012-01-18 15:03)
[Erlang 0032] Erlang Binary的内部实现 (2012-01-12 00:13)
[Erlang 0031] Erlang Shell中的输出完整数据 (2012-01-10 22:28)
[Erlang 0030] 理解Erlang/OTP Supervisor (2012-01-10 14:17)
[Erlang 0029] Erlang Inline编译 (2012-01-09 13:40)
[Erlang 0028] Erlang atom (2012-01-04 15:57)