写点什么

程序员访谈录(9 位优秀程序员的 Q&A)

  • 2012-12-27
  • 本文字数:1751 字

    阅读完需:约 6 分钟

这篇访谈是 2006 年一位波兰程序员 Jaroslaw “sztywny” Rzeszótko (AKA “Stiff”) 发布的,原文已经下线,2008 年澳大利亚一位开发者(twitter 是 @dodgy_coder)在经过原作者授权的情况下,将这篇访谈再次发布了。

原作者提出了 10 个问题,问题有关于他认为读者会感兴趣的或尊敬各位优秀程序员所创造的各种事物,最后两个问题则是出于原作者的兴趣。原作者介绍,并不是所有人都回复了他的问题,不过他在这个过程中学到了很多有趣的事情,也是很有价值的经验。

首先我们看看这 9 位优秀程序员是哪些人:

Linus Torvalds Linux 内核的作者。(编辑注:他的 LinkedIn 主页在这里

Dave Thomas :“ Pragmatic Programmer ”, " Programming Ruby "还有其他一些关于编程的优秀书籍的作者,可以从这里学习一下他的编程思想。

David Heinemeier Hansson :一个新热门的 web 开发框架 Rails Framework 的作者(注:“新热门的”指的是 2006 年,即采访原文发布的那段时期),他的博客在这里。(编辑注:David Heinemeier Hansson 被称为DHH,这里提到的热门框架即“Ruby on Rails”,他是 37signals 的合伙人之一,也是《重来》一书的联合作者)

Steve Yegge :也许是这些人当中名气最小的,但是他给出了一些有趣的回复,他有一个非常受欢迎的关于编程的博客,同时,他也是一款名为“Wyvern”的游戏的作者。

Peter Norvig :Google 搜索总监,有名的 Lisper,关于 AI 的著名书籍的作者,他的主页在这里。(编辑注:他的LinkedIn 主页在这里

Guido Van Rossum Python 语言的创造者。

Bjarne Stroustrup :C++ 语言的创造者,他的主页在这里

James Gosling Java 语言的创造者。

Tim Bray :XML 和 Atom 规范的作者之一,他的博客在这里

以下是原作者提出的10 个问题,我对感兴趣的几个问题的回复做了一些概括:

Q1:你是怎么学习编程的?学校有什么帮助吗?还是你没有在任何学校毕业?

回复:多位程序员提到,主要是自学编程,但是在学校提供的课程还是很有用的帮助,在一些基础概念(如复杂性分析)方面,建议如果有条件的话,最好还是能够取得学位证书。

Dave Thomas 回复中提到:“我仍然在学习编程”,好的程序员不是学习一个新的语言和类库,而是年复一年的完善技术实力与实践。 Tim Bray 则提到曾经是想当一名数学老师,在大学里的数学课程需要一些计算机课程。

Q2:你认为每个程序员需要掌握的最重要的技能是什么?

回复:书写和语言表达能力、品味、强烈的价值感知、专注、热情、理解问题与解决问题的能力、直觉。

Q3:你认为数学或物理能力对于程序员来说重要吗?为什么?

回复:有些人认为很重要,离散数学。有些人认为完全不重要。

Q4:你认为计算机编程领域的下一个大事件是什么?X-oriented 编程、Y 语言、并行计算还是什么?

回复:可能是 web 应用、大规模分布式进程、CG,大部分人认为不会有特别巨大的变化,可能随着硬件的提高编程能够变得更简单。

Q5:如果你有三个月的时间去学习一个相对较新的技术,你会选择什么?

回复:Dojo、FPGA、Cocoa、Javascript、flash、3D 渲染、安全、加密、数字签名等。

Q6:你认为让某些程序员的效率 10 倍甚至 100 倍于其他人的原因是什么?

Q7:你最喜欢的工具(操作系统,编程 / 脚本语言,文本编辑器,版本控制系统,shell,数据库引擎,其他你无法离开的工具)是什么?为什么更喜欢这个工具?

Q8:你最喜欢的计算机编程相关的书是什么?

Q9:你最喜欢的与计算机编程无关的书是什么?

Q10:你最喜欢的乐队或表演者或作曲家是谁?

转发的这篇文章有很多评论,讨论 David Heinemeier Hansson 具有很商业化的思维、Guido Van Rossum 的简练回复、Linus Torvalds 的回复“好品味”等等。

大家有兴趣可以看一下原文,这里也有翻译的中文版,陈皓( @左耳朵耗子)对这篇采访进行了简单的翻译。中文版也受到了很多人的关注,有读者评论到:“从以上访谈可以看出,最牛的程序员并没有那么死追 编程技巧,更重要的是编程的思想和理念,用最简洁的方式实现复杂的功能。 一个优秀的程序员是善于遇到问题解决问题的,而不是记忆大量的本来就不存在的标准答案。”欢迎大家参与讨论。

如果你也有问题,抑或是有想提问的大牛,不妨在这里留下评论,或在新浪微博私信给 @InfoQ 或本文作者 @Hellena ,我们也可以整理一些有价值与有趣的问题,跟我们身边的大牛们聊一聊。

2012-12-27 03:035459

评论

发布
暂无评论
发现更多内容

oeasy教您玩转linux010201持续输出yes

o

听说,阿里云给它的 OpenAPI 开发了一套编程语言

郭旭东

阿里云 OpenAPI

3种 Springboot 全局时间格式化方式,别再写重复代码了

程序员小富

Java springboot

架构师训练营第十二周总结

Hanson

42图揭秘,「后端技术学些啥」

我是程序员小贱

2020-08-29-第十二周学习总结

路易斯李李李

Flink SQL FileSystem Connector 分区提交与自定义小文件合并策略

Apache Flink

flink

Docker 私有镜像仓库的搭建及认证

哈喽沃德先生

Docker 容器 微服务 镜像

计算机网络基础(二十二)---传输层-套接字与套接字编程

书旅

TCP 计算机网络 TCP/IP

架构师训练营第十二周作业

Hanson

kubernetes node affinity 写法

Geek_f24c45

Kubernetes

Week 12 学习总结

Jeremy

互联网人必备知识cookie和session认证

架构师修行之路

分布式 身份认证 session Cookie

我所在公司和大数据

2流程序员

你真的知道什么是线程安全吗?

老胡爱分享

并发编程 线程 java 并发

微服务架构下的系统集成

码猿外

架构 微服务 系统集成

大数据解答(一)

dony.zhang

大数据 mapreduce

大数据应用场景

dongge

架构师训练营 -- 第 12 周作业

stardust20

甲方日常 5

句子

工作 随笔杂谈 日常

cookie和session的关系看这一篇就够了

架构师修行之路

session Cookie

AtlassianTeam Playbook | 用户体验中的移情地图

Atlassian

团队管理 敏捷开发 Atlassian

所按非所得——聊一聊StandHogg漏洞

OPPO安全

安全攻防 安全 安全开发 漏洞

架构设计开学第一天

escray

学习 从零开始学架构 架构师预科班

Week 12 命题作业

Jeremy

Atlassian Team Playbook | 用户体验画布挖掘业务价值

Atlassian

团队管理 敏捷开发 Atlassian

第九周

Acker飏

云计算、人工智能、大数据技术三者之间的关系

cristal

人工智能 云计算 大数据

FlinkX 如何读取和写入 Clickhouse?

Apache Flink

flink

【Spring Boot系列】之多种依赖集成方式

语霖

2020-08-29-第十二周作业

路易斯李李李

程序员访谈录(9位优秀程序员的Q&A)_语言 & 开发_sayhelen_InfoQ精选文章