计算机科学家都是数学家吗?那程序员呢?

有人说数学家学计算机了都会是计算机科学家,计算机科学家本身都是数学家。听起来好像比较靠谱,但是又不确定,有没有什么方法能证明呢?另外,还有程序员和开发人员,他们和数学家和计算机科学家的关系呢?

推荐  (0) | 12人关注关注
12个答案
26 0

作为程序员,我肯定不是数学家。
我不是来说理论的,是来说事实的。事实就是,当今中国众多的程序员(源于十数年来一直很火的计算机专业的学生)大部分都是不合格的程序员。
不要说数学和算法这么高深的东西,连最最基础的逻辑学和计算机语言都学不好的比比皆是,拽着几个术语就认为自己牛逼哄哄也大有人在,看不到自己的不足,盲目崇拜浅薄的广度忽视专注的深度,缺乏钻研的精神,浮躁、功利。我都不好意思自称是程序员,耻于承认自己跟他们是一类职业。幸亏外行们都不知道这个行业不给力的低级程序员是如此之多……
这也就是
为什么计算机专业毕业生的钱途和风光不再;
为什么每年都有众多的计算机专业学生埋怨找不到“好”工作同时所有it公司都在嚷嚷技术严重人手不足;
为什么各种网站、各种系统各种难用(当然难用还有产品同学、用户体验工程师同学、工作流程的责任)还老是出故障……

21 0

饭呢通信工程、计算机硕士

2012-07-05 18:20

程序员的数学水平究竟需要达到什么程度,主要和他编写的程序是用来做什么的有关。
一般来说,面向数据处理的程序需要更强的算法知识,也就是通常所说的数学能力。
面向通讯的程序则需要程序员对通讯协议和标准有比较好的掌握,基本不需求数学知识。
比如我现在正在编写的网页和数据库之间的内容传递,只需要小学三年级以内的数学知识。

计算机科学家和程序员之间还是有很大的区别。程序员编程一般是为了直接的应用,编程的目标是满足用户的需求。为了保证程序运行的稳定性和开发的便捷,一般会采用成熟的框架进行开发。相当于拿着图纸然后添砖加瓦。计算机科学家则主要负责研究更好的程序语言、代码标准。同其他科学一样,实际运用的总是远小于提出的设想。
当然,由于计算机硬件和软件的发展都非常快,编程语言和行业标准也更新的非常迅速。很多标准是在实际商用中推动出来的。这时候计算机科学家和程序员的界限也比较模糊了。

许多公司愿意招收数学专业出身的人做程序员,一定的算法基础以及有耐心、认真仔细的品质,也算是程序员必备的素质吧。
介于我认识的数学系的同学们都上博士了还没毕业,所以就不知道他们将来会不会和我抢饭碗了。

9 0

ZehnLi计算机科学在读博士

2012-07-06 22:16

程序员的定义太宽泛。从code monkey到algorithm guru都是程序员。印度软件外包公司里的实习生叫做程序员,dijkstra也叫程序员。但是dijkstra是计算机科学家,而那些实习生就不是。

计算机科学家都是数学家没错,但是计算机科学家通常熟悉的领域是数论、集合论、图论、可计算性理论这些离散的内容。如果你让10个计算机科学家解偏微分方程,非常有可能一半的人不会。

数学家掌握计算机知识后可以认为是计算机科学家,前提条件是思维方式成功转化为计算机思维。一个数学算法,纸上的推演和基于图灵机能力下的实现是不同的。有很多问题存在数学上的解,但是不存在计算机上的解。将抽象问题具化到一种机器能力上的实现,是很多学数学的人比较难接受的。

9 1

gashero前果壳网工程师

2012-08-06 23:52

我在一直以来工作的过程,与几位博士合作过。隐去姓名,他们分别来自上海交大和中科院自动化所。

他们的数学功底都很强,可以玩的算法也都很神奇。解决了很多之前不可想象的问题。尤其是近些年来,人工智能快速进入工程领域,概率相关的算法被大量应用于真实世界的系统。比如bayes来做的各种过滤,HMM做的分词之类的。拥有强悍的数学基础,对应用这些原理很重要。

不过反过来说,一个人的时间和精力是有限的。与我合作过的这两位博士,可以写出实现某个功能的数学公式,但是程序却很少写,就算写的出来,往往也完全不在乎能否实现。在时间复杂度和空间复杂度方面变得很恐怖。

所以,我不下结论。

1 0
支持者: None

找到一篇达人日志,写的是计算机如何影响数学:
http://www.guokr.com/blog/70100/

顺便@ 作者 和一些达人来求教~

@彭翕成 @Mountain @非理性派 @gashero @饭呢

1 0

wonder4life数学专业IT男

2013-09-01 08:49
支持者: 非乌龟

作为数学专业的转行者,对于算法和逻辑部分有天然的优势。比如隐马尔可夫型,这个数学系的学生理解起来很容易。
=======
作为转行者,个人的性格、兴趣、努力程度,比“数学功底”更重要。重要的多啊。

========
人生际遇有时候有会完爆“个人的性格、兴趣、努力程度”。这个无话可说。

======
具体到要转的行业,数学能力的需求要看你所在的行业和公司。比如做物流的软件,数学要求会计算体积,这已经是最复杂的计算之一了。如果做自然语言处理,那你要懂的算法就太多了。如果做金融,你需要统计学的更多知识。
====
不过整体上看,进入任何一个行业都需要经过该行业的职业发展历程,比如软件:程序员--》技术经理--》项目经理--》领域总监。在一开始的时候哪个行业都会有苦逼的一段时间。

0 0

世外竹园胡搞瞎搞胡搞瞎搞

2012-07-05 17:02

计算机应用专业的 我们一大半课程是数学

0 0

计算机科学家,果断是数学家啊!
不过程序员就要看他所在的项目了,应该说几乎不是数学家!

1 1
支持者: 一只扬

作为一个数学系出身的程序员表示很惭愧
数学留给我的仅剩下还算比较清晰的逻辑思维
至于算法什么的如果没认真学过的话跟其他理工科没两样

其实程序员的门槛真的很低

0 0

数学不超过30从来不超过30分的路过。。。

0 0

为什么都觉得计算机系都应该是码农呢?

没有真正进行努力学习计算机专业的才成为码农,所有真正学好计算机的都会成为学者、或者哲学家。

所有计算机的基础知识都是数学,少数数学书只要初浅的学一下,比如复变,因为那个是用来设法把复杂模型进行简化的,码农不在乎这个,再复杂解的我们不会自己动手去,而是用想个主意让电脑去干。

但是以下数学课绝对是码农的经典:概率和统计、线性代数、微分方程、数值方法,最好能学好泛函分析……真正学通泛函的,就像是修炼成功了九阳神功,饶是最简单的武当长拳,也能打出掌门人的档次。再进一步,就是要修炼数学分析,此功修成,即可有码农的人界越入大师的仙界。但此神功太难修成,一般的说,练此功的计算机系学人,都“必须自宫”,忘记自己是计算机系的学子,下决心今生不再做普通IT人。

至于神马操作系统、数据结构、微机原理之类的,与数学大法皆无关,有点微积分底子(现在只要高中就可)和背绕口令的水平,可以当小说看过去。唯一稍难一点的编译原理,也只是一个提高版本罢了。

码农要学的神马C--、大蛇、UML、framework之类,修炼的再好,也只是“匠”,所谓画匠和画家的区别,在于一个是靠画画谋生,另一个是把画画当成艺术。

查看更多

添加回答

登录 后回答问题,你也可以用以下帐号直接登录

相关问答

关于我们 加入果壳 媒体报道 帮助中心 果壳活动 家长监控 免责声明 联系我们 移动版 移动应用

©果壳网    京ICP证100430号    京网文[2018] 6282-492号    新出发京零字第朝200003号     京公网安备11010502007133号

违法和不良信息举报邮箱:jubao@guokr.com    举报电话:18612934101    网上有害信息举报专区    儿童色情信息举报专区