顶级程序员的心得 Coders at Work (IV)

 

(第一第二第三部分)

Coders at Work”,对15 位顶级程序员的采访, 总共600页。 看似冗长的问答中有不少精辟的言论。 我摘录了一些关于挑选,面试程序员,优秀程序员的特点,和程序设计的句子。下面是 最后 3 个程序员的心得,和我的几句解释:

 

Coder

What they say about good
 programmer, interview, and design

My interpretation

Fran Allen

first woman winner of Turing
 Award

Software process:

did software-development process save the IBM/360 project?

it's was absolutely necessary,  but
it was painful for the software
people to [adjust to] design
reviews, design specs, all of this
stuff.

good programmer:

basic threshold: find out what
they're excited about.

if they can't get enthusiastic about something,  they're not going to get charged up in a group.

软件流程:

因为IBM/360 项目的软件部分遇到了很大的困难,那时候还没有什么成文的 "软件工程", Fred Brooks 把管硬件的经理们调来,让他们来管软件部门, 因为硬件是一个相对成熟的产业 - 芯片设计,测试,等等。 这些“不懂软件”的同志们参考硬件产业, 建立了软件工程的基本流程。

 从一个成熟的产业中学习,是很有效的办法。 现在我们还可以从软件工程的一些术语中看到硬件的影子 - 例如 smoke test 冒烟测试。

 好的程序员:

热情 (前面 Ken 同学也谈到了这一点)

Bernie Cosell

czar of PDP-1

pioneer of APPANET,  the core of
the later internet

 

advice to programmer:

write a lot of programs.

there is very few inherently hard
programs. if the code looks very
hard, that's almost always an
 indication that it was poorly
 thought thruough.   if you have
 complicated code, put it in an
 encapulated place.

programs are meant to be read. 

avoid premature optimization

find talented programmers:

whether they have the kind of
inquiring, curious, precise
kind of mind.  quickness of
learning, interested in lots of
different things, and kind of
broadly based.

[carefully chosen] puzzle can
gives you a glimmer as to
how they organized something
to approach it.

给程序员的建议:

写很多程序。

世界上难的问题/程序很少, 如果一个人的代码看起来很难,这通常意味着程序员没有想清楚。 如果你必须用很复杂的代码,把它包装起来。

程序是用来给人读的。

避免过早优化。

优秀程序员:

 应聘者有没有刨根问底,好奇心, 准确的思维?  能快速地学习么? 是否对很多东西都有兴趣? 是否有很广泛的基础?

[仔细挑选的] 智力题能让你看到应聘者是如何组织材料,解决问题的。 

Donald Knuth

TAOCP, TeX and METAFONT,
literate programming

 

... Awards | 1998 Recipient Donald Knuth

 

Knuth 在学术界的影响

How I learn programming –
basically taking one program that
i made up myself and sitting at a
machine over a period of some
weeks, and kept getting it to work
a little better and a little better.

Q: Should every programmer be
able to read TAOCP?

A: I sometimes wonder if I can
read them.

but even an algorithm like a
balanced tree ot AVL tree, i don't
use it in my own programs
unless i know that it's going to
be a really big tree.

what do you use?

i use an ordinary binary search
tree with a little trick for
randomizing it that i just put it. 

...

 

                                                                                                                                                                                                  
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

邹欣

原贴地址:http://yishan.cc/blogs/xin/archive/2009/12/26/coders-at-work-iv.aspx

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值