user-0 提问: 原理真有编程天赋测试这种东西

回复:
user: user-0
content: 引用 10 楼 zhao4zhong1 的回复:[quote=引用 7 楼 zjq9931 的回复:] [quote=引用 6 楼 zhao4zhong1 的回复:] 关于自己是否适合编程的很简单的测试： 在报纸或杂志上随便找一段约1000字的文章，在Word中输入一遍。输完后再参考下面答案：  A里面有10处以上文字或标点错误 B里面没有文字或标点错误并敢为此跟人打赌 C里面没有文字或标点错误并且字体和排版完全与原稿一致 D打印在半透明的纸上和原稿重叠在一起检查一模一样，且自我感觉很有成就感  A不适合编程（理由：打字准确度偏低、粗心大意） B初级程序员（理由：打字准确度很高、认真细致、自信、理解全角半角概念） C高级程序员（理由：在B的基础上理解字体和排版也是电脑打印的重要因素、但相比D还不够偏执、精益求精、结果可验证） D软件项目经理（理由：能针对项目给出令人信服的细致到极点的需求说明和典型测试用例。用户几乎挑不出毛病。专业！）  如果想从A变成B的话，到我的资源http://download.csdn.net/detail/zhao4zhong1/4084259里面下载“适合程序员的键盘练习” 感觉这个很有效，但是知道答案了，就没效果了。。。 或者说只要做到了就是？ 唉，我可能是那种，会做，能做，不想做的懒人。。。[/quote] 这个世界上最大的差别和最远的距离都存在于“说”和“做”之间。 [/quote] 确实。

user: user-1
content: 我是D，真的干过这样的事儿。我把学校的一份表格，连表格带内容，还有边距、字体都弄得一样，保证打印下来可以对上，弄完超有成就感。

user: user-2
content: 这个世界只有 1% 的是知识提供者，信息制造者，他们是地球人的精英；99% 是信息接受者，注定是平庸的！

user: user-3
content: 引用 7 楼 zjq9931 的回复:[quote=引用 6 楼 zhao4zhong1 的回复:] 关于自己是否适合编程的很简单的测试： 在报纸或杂志上随便找一段约1000字的文章，在Word中输入一遍。输完后再参考下面答案：  A里面有10处以上文字或标点错误 B里面没有文字或标点错误并敢为此跟人打赌 C里面没有文字或标点错误并且字体和排版完全与原稿一致 D打印在半透明的纸上和原稿重叠在一起检查一模一样，且自我感觉很有成就感  A不适合编程（理由：打字准确度偏低、粗心大意） B初级程序员（理由：打字准确度很高、认真细致、自信、理解全角半角概念） C高级程序员（理由：在B的基础上理解字体和排版也是电脑打印的重要因素、但相比D还不够偏执、精益求精、结果可验证） D软件项目经理（理由：能针对项目给出令人信服的细致到极点的需求说明和典型测试用例。用户几乎挑不出毛病。专业！）  如果想从A变成B的话，到我的资源http://download.csdn.net/detail/zhao4zhong1/4084259里面下载“适合程序员的键盘练习” 感觉这个很有效，但是知道答案了，就没效果了。。。 或者说只要做到了就是？ 唉，我可能是那种，会做，能做，不想做的懒人。。。[/quote] 这个世界上最大的差别和最远的距离都存在于“说”和“做”之间。

user: user-4
content: 天赋肯定有人是有的，架构，算法，协议之类的 绝大部分还是需要码农来搬砖的

user: user-0
content: 引用 5 楼 user-5 的回复:最后要提一下这里的测试有比较大的paradigm prejudice。要知道并不是所有语言都需要有赋值。对于纯FP语言来说完全回避赋值同样能够完成日常的任务（虽然我不觉得没有限制的pure FP是普遍良好的设计应该支持的东西）。所以即便能筛出程序员，也只是其中的一部分。相对地，对于普通程序员来说，传统FP可能见惯了的那套（比如说lambda啊first class continuation啊beta-eta-equivalence啊monad啊什么的）对他们可能很难理解，怎么学都学不清楚直至有意拒绝理解的恐怕大有人在——显然也没法就凭这点否认他们可以是程序员。 那个文章里面题只是一个例子，后面还有一大堆测试。但我英文水平不行，没有找到全文，不知是否能找到全文。。。

user: user-0
content: 引用 6 楼 zhao4zhong1 的回复:关于自己是否适合编程的很简单的测试： 在报纸或杂志上随便找一段约1000字的文章，在Word中输入一遍。输完后再参考下面答案：  A里面有10处以上文字或标点错误 B里面没有文字或标点错误并敢为此跟人打赌 C里面没有文字或标点错误并且字体和排版完全与原稿一致 D打印在半透明的纸上和原稿重叠在一起检查一模一样，且自我感觉很有成就感  A不适合编程（理由：打字准确度偏低、粗心大意） B初级程序员（理由：打字准确度很高、认真细致、自信、理解全角半角概念） C高级程序员（理由：在B的基础上理解字体和排版也是电脑打印的重要因素、但相比D还不够偏执、精益求精、结果可验证） D软件项目经理（理由：能针对项目给出令人信服的细致到极点的需求说明和典型测试用例。用户几乎挑不出毛病。专业！）  如果想从A变成B的话，到我的资源http://download.csdn.net/detail/zhao4zhong1/4084259里面下载“适合程序员的键盘练习” 感觉这个很有效，但是知道答案了，就没效果了。。。 或者说只要做到了就是？ 唉，我可能是那种，会做，能做，不想做的懒人。。。

user: user-0
content: 引用 1 楼 Symfund 的回复:码农摆弄的是一个代码结构，数学家摆弄的是一个数学结构，农民工摆弄的是一个砖块结构。 关键是理解问题，有些代码的组织方式非常让人费解。。。

user: user-2
content: 码农摆弄的是一个代码结构，数学家摆弄的是一个数学结构，农民工摆弄的是一个砖块结构。

user: user-3
content: 关于自己是否适合编程的很简单的测试： 在报纸或杂志上随便找一段约1000字的文章，在Word中输入一遍。输完后再参考下面答案：  A里面有10处以上文字或标点错误 B里面没有文字或标点错误并敢为此跟人打赌 C里面没有文字或标点错误并且字体和排版完全与原稿一致 D打印在半透明的纸上和原稿重叠在一起检查一模一样，且自我感觉很有成就感  A不适合编程（理由：打字准确度偏低、粗心大意） B初级程序员（理由：打字准确度很高、认真细致、自信、理解全角半角概念） C高级程序员（理由：在B的基础上理解字体和排版也是电脑打印的重要因素、但相比D还不够偏执、精益求精、结果可验证） D软件项目经理（理由：能针对项目给出令人信服的细致到极点的需求说明和典型测试用例。用户几乎挑不出毛病。专业！）  如果想从A变成B的话，到我的资源http://download.csdn.net/detail/zhao4zhong1/4084259里面下载“适合程序员的键盘练习”

user: user-5
content: 最后要提一下这里的测试有比较大的paradigm prejudice。要知道并不是所有语言都需要有赋值。对于纯FP语言来说完全回避赋值同样能够完成日常的任务（虽然我不觉得没有限制的pure FP是普遍良好的设计应该支持的东西）。所以即便能筛出程序员，也只是其中的一部分。相对地，对于普通程序员来说，传统FP可能见惯了的那套（比如说lambda啊first class continuation啊beta-eta-equivalence啊monad啊什么的）对他们可能很难理解，怎么学都学不清楚直至有意拒绝理解的恐怕大有人在——显然也没法就凭这点否认他们可以是程序员。

user: user-5
content: 还是不是程序员测试。不明目的地折腾代码，只是撸码不是编程。 合格的程序员应该能弄清楚指派语义是谁的工作。对于让形式系统从无意义到有意义这一点，单靠直觉是起不到多少作用的，更重要的是经验以及其它更加难以言喻的天赋。所以无法指望一个以“使用”代码表达“意义”的程序员就一定在这项能力上表现良好，也不能指望具有这方面良好（或者良好+稳定）直觉的人就一定能完成程序员的工作——更没法指望他们能设计出具有好的taste的语言。当然，在编程以外的领域有其它的直觉可以参考。

user: user-5
content: 引用 2 楼 zjq9931 的回复:[quote=引用 1 楼 Symfund 的回复:] 码农摆弄的是一个代码结构，数学家摆弄的是一个数学结构，农民工摆弄的是一个砖块结构。 关键是理解问题，有些代码的组织方式非常让人费解。。。[/quote] 有可能是读者水平不够，也有可能是写的烂，不能一概而论。