欢迎光临散文网 会员登陆 & 注册

3900+人次观看,直播之后我发现了程序员一个致命的问题

2020-06-04 11:15 作者:图灵社区  | 我要投稿

哈喽,大家好,

我是你们的小可爱——图灵君。

上周我们做了一场直播,

内容是关于《程序员的数学》这本书。

老实讲,图灵君被大家震惊到了!


在直播开始的10分钟内,

观看就达到了1200+人次,

而后观看人次蹭蹭地往上涨,

当直播进行到原定结束时间

观看人次已经达到了3260+人次。

(截至发文时,观看人次已达3978次)


末尾提问环节小伙伴们踊跃发言,评论区被问题刷屏,以至于老师还没念完问题,就被下一条问题挤了下去。最后老师针对一些核心问题进行了解答。


从“如何学好数学”

到“如何去微软”等职业规划问题,

从“深度学习的数学前置知识要什么?”

到“BSV是不是真的比特币”等前沿问题

李烨老师都耐心地进行了回复。


看到如此之多的互动与观看,

图灵君由衷地露出了微笑:这个月的KPI有望了!


但下一秒,图灵君就产生了深深地担忧:

伙伴们热情的背后,

体现的是大部分程序员数学都不好的事实


而数学对于程序员来说又是异乎重要的,毕竟编程的基础是计算机科学,计算机科学的基础是数学,数学不好不会影响你入行编程,但毋庸置疑它会影响你程序员生涯的上限

否则,像前沿的算法、机器学习、深度学习等内容,甭说研发了,连入门都入不了。这,毫无疑问是致命的!


所以,今天图灵君又整理了一遍李烨老师直播的重点内容,帮助伙伴们再梳理一下直播的内容,重新认识数学的重要性。“亡羊补牢,犹未晚也”!无论观看了直播还是错过直播的小伙伴们,大家都一起来看一下吧!


01
数学是编程的基础

01李烨老师:

编程的核心是算法,因为编程本身就是数据+算法,就是一个程序。任何一个程序背后都是算法,只不过有的算法比较精妙,有的比较差劲,但它们背后都是算法驱动的,只有接触数据它们才能跑动起来。

而算法又有两个维度:一个是它的逻辑,一个是它的度量。逻辑是实现了算法的功能,度量则是说明了算法的性能。我们现在所学习的经典算法都非常的巧妙,用很简单的几行代码来表示出非常复杂的逻辑,而且在性能上也是追求一种时间和空间之中的平衡。

而所有算法背后的一切,实际上都是数学原理,是数学在背后支撑,所以算法才会达到这样或那样的时空复杂度。算法能够有效、度量能够精密、功能能够实现等一系列动作的背后都是数学基础在起作用。这里的数学包括计算、逻辑、推理、思维过程等一切数学内容。

我们在用代码搭建一个东西的过程中,是需要先区分开一共有几个模块和部分,大模块下又能再拆解成几个小模块,这种分而治之的思想、在拆解下的可行性等所有的一切都是以数学思维为基础的。可以说计算思维就是数学思维+工程思维。


02
数学是人工智能的壁垒


02李烨老师:

人工智能的进展对程序员的数学要求明显提高了很多。人工智能现在主要的支持技术是机器学习和深度学习,而编程、数据处理、数学是机器/深度学习的三块“敲门砖”。其中,编程是操作层面的工作,数据处理可以用现成的、套路性的内容实现,只要会用第三方工具就可以。

而数学则是三块敲门砖里面最“硬核”的一块。算法是每天工作的基础,数学是算法的基础。计算思维的基础也是数学思维。以往大家知道数学很重要但并没有重视,直到人工智能的发展,程序员数学能力强薪资高几乎可以划等号,大家才明白数学的重要性。因此想转行或者想从事人工智能的伙伴们,必须好好学数学,从现在开始培养数学思维。


03
回顾已经学过的数学知识



03思考题:

不过在这里有几个问题需要大家思考一下:

解释一个名词:互质

回答一个问题:存在一进制吗?为什么?

读懂一个算法:RSA加密算法



04
程序员需要学习的数学知识



04 李烨老师:

首先先给大家看一张思维导图,这个图片里面的每一个点都是数学的一个大领域。

其中,圈起来的是学过的内容或接触过的内容。深灰色是大家都学过的内容。浅灰色是物理或者数学专业领域的内容。可以发现在数学这个大的领域内,需要掌握的知识还是很多的。

对于一般的、不研究人工智能的普通程序员来说,中小学数学基础+部分扩展就已经足够了


而AI算法工程师的数学能力则要求得更高



05
学习的方案、误区和最佳路径



05李烨老师:对于大部分人来说,养成中级的习惯就已经足够了,重点在于自己会学,立足于实践,在实践中才能得到检验和感受到新的认知。“好记性不如烂笔头”,记得多刷题! 

正如直播过程中,李烨老师说的那样:程序员重点要做的是培养计算机思维,而计算机思维=数学思维+工程思维。

图灵君也知道,一场1.5小时的直播明显无法锻炼和培养大家的数学思维,而大部分人又没有很好的自制力,日常处于“间接性踌躇满志,持续性混吃等死”的状态,所以我们和李烨老师又合作策划了一场“图灵社区共读计划”,5天带你读完一本书,助力重塑你的数学思维!




仅需1元钱!限招200人,用5天的时间带你读完《程序员的数学(第2版)》!不相信5天能读完一本书?你这个想法太out了!敢不敢来挑战一下?


领读者——你们直播间喜欢的李烨老师

李烨,微软资深算法工程师。曾在易安信(EMC)和太阳微系统(Sun Microsystems)任软件工程师,先后参与聊天机器人、大数据分析平台等项目的开发。共读计划课程表:

  • Day1 全书概览,开营仪式

  • Day2 数论基础与数理逻辑:0的故事、活用余数,逻辑

  • Day3 递归策略:数学归纳法、递归结构

  • Day4 其他问题:排列组合、巧用爆炸、写不出的程序

  • Day5 迈向机器学习第一步

上课形式:

  • 领读老师视频讲解与延伸,快速掌握每日学习内容

  • 班级社群答疑交流,助教全程学习监督

  • 打卡+作业,双重检验学习效果

  • 全勤同学领取神秘助学奖励

适应人群:

  • 数学/编程基础薄弱的入门级程序员

  • 数学与编程基础都有,但建立不起深层联系的开发者

  • 非理工科背景的程序员

  • 想从事程序开发的学生

  • 对数字和逻辑感兴趣的所有人

跟完课程你将:

  • 建立数学与编程的联系,有效训练数学思维

  • 面对复杂问题,会使用抽象化方法拆分问题,总结规律

  • 把现实事物转化成模型,能用概念、语法、规则表达出来

  • 查漏补缺,订正自己在开发中的不足

更多详细内容,伙伴们扫描海报二维码自行查看哈,给自己一个选择,给成长一次机会,一切尽在图灵社区·共读计划!

对了,共读计划理论上是需要配套图书的,趁着天猫优惠活动,这些书你们记得加购一下啊!

掌握程序员编程所需的数学思维



作者:结城浩   译者:管杰,卢晓南

作者:平岡和幸,堀玄 译者:陈筱烟

作者:平岡和幸,堀玄 译者:卢晓南


《程序员的数学(第2版)》:第一版原版累计销售 18 万册。通过向程序员介绍了编程中常用的数学知识,借以培养初级程序员的数学思维。第 2 版还新增了机器学习等内容,解决了程序员编程过程中出现的数学痛点。

《程序员的数学2:概率统计》:涉及随机变量、贝叶斯公式、离散值和连续值的概率分布、协方差矩阵、多元正态分布、估计与检验理论、伪随机数以及概率论的各类应用。

《程序员的数学3:线性代数》:内容包括向量、矩阵、行列式、矩阵求逆、线性方程、特征值、对角化、Jordan 标准型、特征值算法、LU 分解等。



3900+人次观看,直播之后我发现了程序员一个致命的问题的评论 (共 条)

分享到微博请遵守国家法律