Archive for Recommend

介绍两篇文章

1. 梁文道老师写了一篇文章, 我认为很值得推荐.

西方媒体的偏见源于价值观

 2.  今天CNN上一个华裔教授也写了一篇文章,提到了 self-rightness 和 hypocrisy, 即自认为正确和自认为道德优越. 以我看,很多西方媒体,以及中国愤青,都是一样的手段. 利用自认为宽容的政治正确(或者自认为完美的民主自由,或者自认为正确的爱国主义)和道德制高点的大棒杀人,并不能以理服人。

Bashing China is not the answer

 真心希望多出现这样的理性思考者. 左派愤青请停止网络暴力,右派也请用理性思考,而不是屁股决定脑袋。大家一起合力解决这个国家对内对外的问题.没有什么能比上这件事情激起大家观点的激荡了,倘若中国的启蒙进程因此加快,言论和媒体因此放开,则不得不说是各派人士都乐于见到的. 

Comments (5)

计算机科学必读经典

前天看到 pongba 说好书太多 以致于没时间写博客, 深有同感. 架子上目前放着 Dreaming in CodeTAoCP 第四卷第三册, 手不释卷, 以至于三上时间都不放过. 细想自己读过的好书不少(至于烂书, 只能用无数这个词来衡量了), 勉强回忆了一些让自己印象深刻的, 写一两句话的点评, 算是我眼中的必读经典吧.

A类. 基础

Structure and Interpretation of Computer Programs (SICP)


SICP 计算机程序的构造和解释 (SICP) 堪称是MIT计算机系的镇山之宝之一, 书中通过展示 LISP 语言和程序设计两条主线, 向读者展示了程序设计的几乎所有重要概念. 数十年来各种语言层出不穷, MIT 依然故我给入学本科生教 LISP. LISP 这种函数式的语言, 和过程语言相比, 理论更加优美(lambda 演算), 描述更加简洁. 现代的动态语言如 Javascript, Python 和 Ruby 都或多或少被 LISP 影响. 任何想写具有清晰结构, 或者正确思路的程序的人, 都应当阅读这本书. 好消息是, 这本书是可以在线免费看的.

The Art of Computer Programming (TAOCP)


计算机程序设计艺术 (TAOCP) 是计算机领域的一部未完成的里程碑. 如果之前没有听过它的大名, 那就不算学过计算机科学. Knuth (中文名高德纳) 阅读文献无数, 博古通今, 文风幽默. 书中讲解细致深入, 大开大阖. 如果说 SICP 是练童子功的话, 这本书就是属于名门正派的顶极内功. c0031186_46dce4fb1637c.gifTAoCP上往往一个普通的习题, 就是一个很经典的结论; 往往不经意的一句话, 就是一个巧妙的算法. Knuth 常常把貌似不相关的结论深刻的联系在一起, 比如我现在读的第四卷第二册上九连环问题和Gray码是深刻联系的, 易经和生物遗传密码子也是有对应关系的(当然不是民科说的那种).

如此的打通任督二脉的例子和习题俯拾皆是, 真的是穷人进了皇宫的感觉. 即使对于面试工作, 这套书也是值得一翻的: 在Google面试的时候, 面试官问一道题目, 我很快给了一个答案, 其中用到了一个不太显然的结论. 面试官问, 这个结论怎么来的? 我说, TAOCP 第二卷讲了这道题目的一个推广情形. 面试官说, 这道题目就是看面试的有没有看过 TAOCP. 我看很多人面试之前都在网上疯狂做题, 尚不能穷其一隅. 其实读过 TAoCP 的人极少会害怕面试的时候那些技巧性的问题. 万变都极少超出TAOCP划出的框架.

Introduction to Algorithm (CLRS)

0262032937-f30.jpg算法导论 (Introduction to Algorithm), 在圈子里常常按四个作者的首字母写成 CLRS, 算是对不愿意看或者看不懂 TAOCP 的人送上了半个梯子(还有半个当属具体数学 Concrete Mathematics). 这本书在美国大部分大学中被列为算法类教材, 在国内也是 ACM 竞赛集训必看的教材之一. 虽然名字里面带一个导论, 内容却一点不含糊. 在我个人看来, 其内容基本覆盖绝大多数常用的算法, 在 NP 复杂性理论以及近似算法方面也有所涉及. 这本书最好的地方是习题详细且全部没有答案, 非常适合作为大学课本和ACM讨论班阅读材料, 最坏的地方也在于没有答案, 对于自学者来说, 可能会觉得枯燥无味且困难重重.

另: 如果有淘老书的习惯, 不妨选择 The Design and Analysis of Computer Algorithms (计算机算法设计与分析) 这本书在 CLRS 出现之前绝对是算法教材一哥. 可惜这本书一直没有更新, CLRS 才以算法多而全取胜.

Compilers: Principles, Techniques, and Tools

这就是著名的龙书 (Dragon Book) 啦. 和上面的 The Design 一样, 都是 Stanford 教授 Jeffrey D. Ullman 的巨著. 计算机的历史很大程度上是编译器发展的历史. 当年 Knuth 就是因为写了Alogo 60 编译器后, Addison-Wesley 过来找高爷爷约稿, 1962年的时候就让他写本编译器的书. Knuth 写啊写啊, 发现写了很久还没写到主题. 那边编辑急了, 说你都写了3000页手稿了, 你还不交稿. 高爷爷说, 这个, 我还没写到正题呢. 书商说, 算了, 你出多卷本吧. 于是才51xtgj64tzl.jpg有了 TAoCP. 这个小故事也就说明计算机编程的发展史和编译器的发展史是平行的. 龙书基本上框出了一个编译器的架子, 从词法句法分析到类型分析 代码生成. 新版加入了JIT, 垃圾收集等现代特性. 这部巨作的作者阵容也是强大的: Alfred Vaino Aho 是 grep 和 awk 的作者. Ravi Sethi 以前在 Bell 实验室, 现在好像是朗讯的首席技术官. Avaya 实验室的头. 至于 Jeffrey Ullman 这个老头, 好玩的趣事就更加多了, 比如他是 Sergey Brin的导师, 他有两大不回信原则: 陶瓷信不回, 问书后习题信不回.

[under construction, more later…]

Modern OS

(Artificial Intelligence: A Modern Approach(AIMA)

Structured Compter Architecture

Computer Architecture: A Quantitative Approach

Computer Networks

B类, 编程

K&R C

Programming Pearls and More Programming Pearls
The Practice of Programming
Code Complete or The Elements of Programming Style
MMM(Mythical Man Month)
GoF’s Design Pattern
The Art of Unix Programming

C类, Geek

H2G2
GEB
How to Solve It
Elements of Style
The Cathedral and the Bazaar

Comments (7)

博客推荐之三

今天推荐三个博客, 两个师兄, 一个学弟, 都是技术和生活类博客.

1. Pongba 刘未鹏

比我大一岁已经出了好几本书的正牌师兄. 对C++和其他编程语言都有深刻研究. 文笔我, 说理清楚, 适合喜欢计算机科学的以及同龄人. 博客在 CSDN.

随机文章:

康托尔、哥德尔、图灵——永恒的金色对角线

关于谭浩强老先生的《C++程序设计教程》

学习密度与专注力


2. cn.zhangzheng 张振

比我大一岁的混迹数家知名企业的自称 IT民工的正牌师兄. 当年我在西门子实习的时候就是靠此师兄罩着. 博客叫做 Z^{2}, 其实可以当成中国调侃版 Joel on Software.博客在 MSN Spaces

随机文章:

一个程序员的自我修养

有什么样的人民就有什么样的程序员

两会报告之IT民工理解


3. chen yufei

比我小两岁的南京大学软件学院的师弟. (好像) 在 SUN 实习. 文章内容涵盖开源技术 Ruby等语言,以及大学生活. 独立博客.

随机文章:

求斐波那契 (Fibonacci) 数列第 n 项的算法

我来自浦口大学

看 Concrete Mathematics 时对教科书的一点感想

Comments (2)

Live free, and die with significance

If you were on Digg or Slashdot yesterday, you might notice an article titled “Last Lecture“. Yes, it’s an eyeball-catching title, but it’s true. Prof. Randy Pausch from CMU gets incurable pancreatic cancer and is dying soon. He gave this lecture and talked about his childhood dreams several days ago at CMU, which was his “last lecture”.

Here are my understandings towards his lecture.

1. Don’t panic, there are lots of brick walls in our life — all kinds of difficulties. Break them!

2. How many dreams did you hold in your childhood? Can you write/have you written them down? How many items on that list are checked?

3. Leave something for the world. All of us are dying anyway, but we can choose to leave a legacy or just die like an insect.

4. Let our bodies to the dust, but let the souls be everlasting. Live free, and die with your own significance.

I strongly recommend this video for everyone, the “last lecture” from Prof. Randy Pausch.

And of course, the perfect Time Management talk.

Comments (3)

推荐几篇关于密码学的文章

最近一段时间, 争取经常推荐优秀的技术文章.

统统告…告诉我密码——DES

统统告…告诉我密码——RSA

统统告…告诉我密码——MD5

虽然网上这种入门文章非常多, 但往往缺少技术细节, 看完依然不知道实践中要掌握什么. 这几篇文章在入门和技术细节中达到了比较好的折衷(当然具体写程序的时候还是有很多技术细节要注意的).

对了, 作者是高中生.

Comments (3)

博客推荐之二

今天推荐两个Blog:

1. 盎可 (http://weblog.ankhchen.com/), 副标题叫”艾丝侯”, 听上去很诗意, 真实含义懂得英语的自己揣摩吧.

其实我的Blogroll中间也有, 不过订阅RSS的人未必能看得到.
盎可刚从美国学习了一年人类学. 他对互联网, 对中国的一些观察, 观点独特, 发人深思. 这个 Blog 内容广泛, 视野开阔, 推荐订阅.
随机选择几篇优秀的文章:
站在这里
所谓辩证的看问题
iPod 和 911

2. Solrex 杨文博 (http://blog.solrex.cn/)

我的师弟, 现就读中科院, 混迹北京. 嵌入式开发高手. 这个Blog主要写他的北京生活和Linux开发技术. 他的技术文章深入浅出, 生活文章平实淡雅, 推荐订阅.
随机选择几篇优秀的文章:
如何手工写x86 Bootloader
圣经的故事
关于龙芯

—–
客座 Blog 好久没有搞了, 哪位读者想让其他人了解自己, 想来发表一篇文章, 或者想要自荐自己Blog的, 给我发信. 我的邮箱是 youxu A@T wustl.edu (把 A@T 改成 @, 前后没有空格).

Comments (8)

“我不会”与“我要去学” [zz]

作 者: baosheng
标 题: “我不会”与“我要去学”
时 间: Fri Jun 15 11:52:31 2007
原文地址

遇到一个新的东西(比如一个新的算法,或者一个新的软件),一种人说“我不会”,然后就跑开了,另外一种人说“我要去学”

于是大学四年这样的过程周而复始,repeat了多少次之后,这两种人的差距就拉大了。后一种人往往实现了自己满意的人生目标(想加入的公司,想就读的大学, etc.) ,而前一种人则开始抱怨诸如“出国形势不好是因为xx系烂”或者“自己被学校耍了”。

比如很多人号称要学linux,当你真的把一个运行linux的计算机放到她面前的时候,她说什么不会用。而另外一种人听说”Linux has many exciting features”,于是自己就去学。四年后,这两种人已经没有共同的语言了。

不过中国的大学里面说“我不会”的人是远多于说“我要去学”的人,所以大部分的大学生是除了老师上课讲的那些东西,就其他什么都不知道了。所以我们的大学只是分为白天的宿舍和晚上的宿舍罢了。

无数的人坐在教室里面听临毕业的学长介绍经验,但是他们的心还是停留在“我不会”的阶段,空想如何成为学长那样的牛人,却又没有“我要去学”的实际行动。

于是不会TeX的人,终究还是不会TeX,虽然他和数模的队友一起知道TeX这个东东;不会Linux的人终究还是不会Linux,虽然他和舍友一起听学长介绍Linux;没做过project的人终究还是两手空空,虽然他和同学一起去找老师号称要进实验室;没发过paper的人还是不知道简历上写什么,虽然他总想着要看多少书;没玩过ARM的同学终究还是没有看到Qtopia如何在开发板上跑起来,虽然他和师兄一起去买ARM开发板。

四年,人的差距就是这样拉开。后面的岁月,差距会继续拉大。Palo Alto的天才在改变着世界,而你也许只有在别人提到新的奇迹的时候说,“我和xx是同学”,但是你却记不得和他的往事,也许当你在追mm的时候,他正在图书馆看书。

Comments (8)

推荐阅读: 砍柴不误磨刀功

李笑来老师是新东方的一个老师,我不认识。昨天从霍炬的Blog中连过去,一下子就喜欢上了他的一篇文章: 砍柴不误磨刀功。

他提到, 虽然说磨刀不误砍柴功,我们常常能看到的却是很多人天天“磨刀”却从不“砍柴”。 这样,怎么能保证自己磨出一把好刀,而不是把可塑之降魔杵磨成了一无是处绣花针呢?

他提到了两个例子, 一个是一本书中的一句话:经过多年观察,我们发现,最悲惨的事情莫过于大量的人正是由于没有目标所以才一直处于学习阶段之中。 是啊,学习变成了社会的正确价值选择, 好像只要你在磨刀,就是对的, 就是准备砍柴的, 可是有没有人好好想想,我这把刀,到底是不是要去砍柴呢, 将来是要去砍什么样的柴呢? 如果前面没多少荆棘的话,先揣一把钝刀,使用时候越来越快,可能也是一个方法。 另一个例子是丁磊。大家都知道,丁磊没有搜狐张朝阳那样显赫的海龟背景,也没有新浪那么好的政府关系,可是三大门户中,作为企业最成功的是网易。 他想做营销,但是他不懂,他不是报个MBA 躲到学校躲几年,而是通过关系先找到段永平这样的能人帮助,然后一边实践,一边学习。 从这件小事情也可以看出,丁磊是个真正的商人,是个做大事情的人。

结合我自己,我大学四年的经历让我明白两个道理,第一是有机会一定要尝试一下,不要错过机会;第二是先做出东西,让他能跑起来,再想着怎么把这个东西做完美,而不是空想了一个月结果没时间做了。 现在想想,其实第二点就是砍柴不误磨刀功。我们从小接受的教育就是要完全准备,不打无准备之仗,强调知识积累,不讲挑战和实践。有句话叫没有金刚钻,别揽 瓷器活,其实回来想想,或许你本来就是金刚钻,只是环境和机遇暂时没有眷顾你,使得你认识不到自己。既然有了瓷器活,上去揽一揽,就知道自己是不是金刚钻 了,再说年轻人,就算有点失败,回头一看,路还和天一样宽呢。

我推荐大家去读这篇“砍柴不误磨刀功”。李笑来老师在新东方想必阅学生无数,说的很有道理,很符合很多人的实际。

Comments (3)