1998年互联网崛起,程序人奋勇前行;If,程序基本逻辑,开启程序人生[if98];谨以此站献给奋斗中的你

发表文章 上传软件
当前位置: 主页 > 程序人生 > 生涯 >

一个正在华盛顿大学攻读应用数学的学生------超载的程序员收藏挑错

2018-06-22 17:30 采编:程序人生 阅读 投稿赚币
本文中几回提到了Donald Knuth高德纳(Donald Ervin Knuth,1938年1月10日-),出生于密尔沃基,美国闻名核算机科学家,斯坦福大学核算机系荣誉退休教授。高德纳教授被誉为现代核算机科学

本文中几回提到了Donald Knuth——高德纳(Donald Ervin Knuth,1938年1月10日-),出生于密尔沃基,美国闻名核算机科学家,斯坦福大学核算机系荣誉退休教授。高德纳教授被誉为现代核算机科学的开山祖师,在核算机科学及数学范畴发表了多部具广泛影响的论文和著作。

高德纳最为人知的业绩是,他是《核算机程序规划艺术》(The Art of Computer Programming)的作者。此书是核算机科学界最受高度敬重的参阅书本之一。他创造了算法剖析的范畴,在数个理论核算机科学的分支做出开端贡献,此外仍是排版软件TeX和字型规划体系Metafont的发明人。

高德纳 Donald Ervin Knuth

高德纳 Donald Ervin Knuth

“留意上面这段代码;我仅仅感觉它没问题,但没有试过。” – Donald Knuth

今天早上,在Google上查找的时分,我偶尔看到了一个帖子,作者宣称:一切人都不应运用C++规范库里的 make_heap 函数,由于,简直没有人是在正确的运用它。我当即在心里大骂这是多么荒诞的断言,由于任何人只要上过根本的算法课程,都会知道怎么正确的运用make_heap。但是,这让我开端考虑,怎么看待那些不知道堆(heap)为何物的程序员,更甚者,那些并不需求知道它为何物的程序员。

终究,我确定,这两种人,咱们依然应把他们称作程序员。

当我仍是个毛头小伙的时分,许多我听到的关于怎么正确的编程的主张其实都是十分错误的。通过这些年,我发现,大多数这样的这主张,其自身并没有问题,仅仅短少相应的上下文环境。当今的这波创业浪潮给人们造成了一个风趣的形象,导致许多的程序员都开端相信“功能不是问题”,这个就是一种充溢危险和牵涉奇妙的上下文环境的主张,尤其是当面临会呈现意想不到的相互影响的杂乱架构时更是要警觉。这种缺少上下文的耳耳相传的只言片语的盛行是一个很普遍的问题,而事实上,它是一个更深层问题的简略表象。

程序员这个词包括了一个反常广泛的技能谱系和层次。从纵坐标上讲,一个程序员,从能仅仅会用vbscript,到能为因特尔CPU写编译器、为航空公司开发体系运算软件。从横坐标上讲,他可能是专善于数据库,或能从CPU指令等级调整功能,或能开发并行处理库,或制作物理过程引擎,或做图片处理,或创造3D模型,或写打印机驱动,或运用coffeescript,HTML5,和AJAX来开发网站运用,或运用nginx和PHP开发LAMP架构web运用,或他能编写网络运用库或能做人工智能科研。他们都是程序员。

这太荒诞了。

咱们的国际正在被软件吞噬。在将来,编程将会和数学和语文相同成为根底课程。咱们将会有四个R——Reading(阅览), ‘Riting, ‘Rithematic(数学), 和 Recursion(递归算法)。届时,假如再说某某人是一个程序员将会是一句废话,由于超越10%的人口将会具有必定水平的编程才能。“程序员”这个词包括了如此多的内容,假如你称自己为程序员,就好象称自己为“科学家”而不是“物理科学家”。咱们能有其他称呼吗?有人企图做了这方面的测验,指出一个程序员和一个核算机科学家直接的不同之处,但说的毫无价值,根本无法差异我和一个从大学毕业的人工智能博士生之间的差异。他懂得多维数学剖析,用函数式言语核算,这些是我不通过数年的研讨是无法了解的。而我可以写出速度超快的,灵巧的C++或HLSL汇编程序,能变戏法似的处理和改换矩阵,在屏幕上绘出美丽的图画。我说的这两种状况都是出于彻底不同的原因下的极端杂乱的工作,他不能完结我的,我不能完结他的。一种操刁难一个人很娴熟,对别的一个人却是困难的。但咱们都是程序员。仅仅在咱们各自的范畴里的程序员,咱们是图画核算程序员或人工智能程序员或[xxx]程序员。

你知道咱们为什么会有这样毫无目标的言语论战和毫无意义的关于哪一种言语更好用的争辩吗?你知道为什么人们——除非在自己的小圈子里当“XX办法”对一切人表明同一个意思的时分——永久不能在这些问题是达成一致的原因吗?由于咱们赋予了自己过多的内容。咱们把自己看成了由数个程序员组成——每个都专善于某项东西,咱们错误的以为咱们的观念可以适用于咱们的专长之外的范畴。咱们是工业工程师却企图想告诉化学家怎么进行他们的试验。咱们是建筑师却企图想告诉英语专业的学生怎么创造一篇论文——仅仅由于咱们都用了大量的纸张。

这种情绪深深的根植于核算机科技界的中心深处。核算机科学的主要意图是用一些根本数据结构来帮人们完结曾经需求人做的一切事情。假如你以为这彻底是编程的事,那你就错了,这是不可能的。咱们忘了,这些数据结构仅仅咱们在奇特的数据核算范畴需求的,咱们忽略了,关于不同的完成,需求对彻底不同范畴的编程,针对的是彻底不同的用户。Donald Knuth 深知理论和完成之间的不同之处——咱们需求仔细的了解这些关于理论特定完成的劝告之间的差异。

现在,你现已不能由于一个人是程序员,你就可以随意让他开发任何东西。说一个程序员在开发软件,就好像是说一个科学家在做科学研讨。不同之处是,植物学科学家是不会去规划核反应堆的。

相关标签:
程序人生if98.com,专注IT人成长、所需、职场,欢迎参与撰稿、分享资源!

扫一扫关注程序人生公众号

免责声明:本文内容由[程序人生]用户自行发布或编辑转载,本站不拥有所有权、不承担相关法律责任。 如发现有涉嫌抄袭的内容,可邮件 web@if98.com 举报,并提供证据,一经查实,本站将立刻删除涉嫌侵权内容。

发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片

站长推荐dedecms模板

站长推荐资源下载

站长推荐文章

  • 我是如何自学成为程序员的

    目前为止在安卓方面的已经工作了三年左右的时间了,从一个只会写BUG的菜鸟,到现在慢慢发展成了一名程序员。其实说实在的,我学的也一塌糊涂,当然在学习过程也积累了一些知识

    if98comhcw 2018-06-13 12:04:02发布 生涯 177阅读 0 评论

  • 进入2016 -- 回顾我走过的编程之路

    前几天收到网友的邀请参加这个活动,想想好像今年的惯例回顾博客文章没有写,于是干脆就写一遍。本文的前半部分基本截取自4年前的一篇博客文章:进入2012 -- 回顾我走过的编程之

    if98comzyq 2018-06-19 17:41:00发布 生涯 151阅读 0 评论

  • 漫画:当程序员成立了Hello World共和国…

    公元 xxxx 年的某一天,苦逼的程序员们终于摆脱了产品经理的统治,宣布成立 Hello World 共和国,定都 Github,码农们终于迎来逆袭的一天 然而好景不长 短暂的狂欢过后,这个国家居然开

    if98comzyq 2018-06-19 17:42:25发布 生涯 114阅读 0 评论

  • 如何成为优秀的程序员?

    作为一个从业快10年的程序员,我想给新入行的程序员们一些建议。这些建议是我希望自己可以在毕业时就读到的,也希望它们可以帮助你成为一个更好的程序员。 简单归纳一下,总共

    if98comqxc 2018-06-20 14:26:07发布 生涯 100阅读 0 评论

  • 一个高中生的编程之路

    光阴荏苒,岁月蹉跎; 前些日子看电视剧翻到了刘烨的《血色浪漫》,其实我是一个很感性的人,电视剧中的人物:钟跃民,张海洋,周晓白,一幕一幕的从脑中闪过,很钦佩钟跃民对

    if98comzyq 2018-06-19 17:43:52发布 生涯 79阅读 0 评论

论坛推荐

关于我们

微信公众号

扫码关注官方微信

返回顶部