<audio id="audio" title="结束语 | 从数学到编程，本身就是一个很长的链条" controls="" preload="none"><source id="mp3" src="https://static001.geekbang.org/resource/audio/0d/3e/0d98ff25e07ba40aabe1ad1f18f17f3e.mp3"></audio>

你好，我是黄申。不知不觉，4个多月就过去了，终于到了说再见的时候。

上周编辑对我说：“黄老师，专栏正文写完啦，要写结束语啦！”我当时第一反应是，“啥？已经写完啦？这么快！”。别看我现在“依依不舍”，回想写专栏之初，真的是一波三折。

我曾经出版过两本大数据相关的书籍，而且销量和口碑都还不错，所以刚开始的时候，我感觉写专栏应该是“得心应手”的事情。可是，试写了几篇之后，在和专栏编辑的沟通中，我逐渐意识到，写专栏和写书完全是两回事。

写书的时候，往往是作者主导，想把这本书写成什么样，给谁看，这些完全由自己说了算。但是，写专栏文章是不同的，它要有明确的受众，因此就要明确每一篇的知识点深度和密度，并把一个知识点深入浅出地说清楚，确保每个人看完之后能有所收获。

很快，我就进入了状态。可是，我又遇到了第二个“波折”。

虽然大家都知道数学和编程是紧密相关的，但是到具体的知识点的时候，就没有那么直观了。对于数学和编程之间的关系，每个人都有自己的理解。我很明白，如果无法厘清这两者的关系，很难写出一个对于程序员来说，非常实用的数学专栏。所以，在写作的同时，我反复地问自己：“数学和编程究竟是什么关系？如何把这种关系的本质通过文字和代码讲解出来？”。

我不断地去思考、和编辑讨论，慢慢发现，多数人对这两者关系不清楚的主要原因是，从数学的知识体系出发，一直到具体的编程应用，整个过程本身是一个很长的链条。

要把编程领域中的数学讲清楚，我们至少要经历“**数学概念-数学模型-数据结构-基础算法/机器学习算法-编码实现**”这几个关键步骤。

具体来说，首先你要充分理解一个数学的概念，然后是数学的模型。在这些基础之上，我们才能把它们转换成编程领域中对应的数据结构和算法，最终才能付诸于编码实现。

经历过这些深度思考，搞明白了专栏的交付目标。每天写稿、录音到深夜，对我来说，都不是什么事情了。因为写这个专栏的过程中，我也收获了很多。总的来说，这几个月的创作充满了艰辛，但是也充满了成就感。希望这个专栏能够帮到你收获知识，以及知识之外的一些对数学的认知，那就是这个专栏最大的意义和价值。

最后，感谢极客时间这个平台给了我一个机会，能够重新梳理自己这么多年的学习心得和工作经验，更要感谢订阅专栏的你，不断给我反馈和意见。专栏虽然结束了，但是学习应该是持续进行的。非常感谢你的支持，你可以继续在留言区留下的你的疑问，我也会持续不断地进行解答。

每一次结束都是另一段新旅途的开始，祝福你在工作、生活中都能取得不断的进步！

[<img src="https://static001.geekbang.org/resource/image/02/e2/02b2209b1e30a4268e38c68a0cdf61e2.jpg" alt="">](http://bbn7rz69sba2z1ns.mikecrm.com/40Q6Dxa)


