今天看到 豆瓣 上很多人觉得 Fluent Python 是一本很好的书,因为深度够
我大致看了下这本书,好家伙 1000 多页呢,而且所谓的深入其实就是每种语法讲到位,但我非常讨厌这种大而全的书
很多人学习 Python, 是 Introducing Python 入门,然后 Fluent Python 深入,但我是 Python Basics 入门,Python Tricks 和 CPython Internals 深入 (即 RealPython 三件套), 不过说是深入其实是对于我来说的,因为这两本书都不超过 400 页
相反,我喜欢那种 learning by doing, 原理有讲到就行,重点是要学习思维过程,以及知道原理后就知道什么场景适合这样用
就好比学习统计学,你就是知道了所有的统计学知识 (国内很多书是这样,纯粹的知识灌输), 但是对原理和适用场景以及比如遇到概率问题要怎么思考不清楚,这样遇到问题还是懵逼,不知道怎么去思考,知道了所有的知识又有什么意义
之所以不那么深入 Python, 是因为我学得是数据科学,数据科学最重要的是统计学思维和预测性分析原理,其他都只是工具,如果我每个都去抠细节 (Python, 统计学,操作系统,网络等等), 那我肯定就掉到细节的陷阱里去了,很难跳出来,就算是统计学,我是不会去拿比如 MIT 那种纯理论的书看的,那些数学证明对我来说没什么价值,我肯定要看那种有带 Python 的,边看边做,Essential Math for Data Science 就是很好的书
再比如机器学习,很多人喜欢看国内的周志华那本机器学习,这本书我看了下 PDF 版本,里面没几句 Python, 全都是理论,我可不想去研究理论,我不是 reasearcher, 我不知道那些人是怎么有精力看完这种书的,眼过千遍不如手过一遍,Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow 很明显是更好的书
而且很多看起来大而全的书并不全,学习 Git, 如果去啃官网的那本 Pro Git, 那我肯定是受不了,我喜欢 Git Apprentice 和 Advanced Git 这两本书,这两本书非常薄,里面从头到尾手把手教你如何使用 Git, GitHub, 关于 internals 也有提,但是讲得不多,不过可以另外再去看 (https://github.blog/2022-08-29-gits-database-internals-i-packed-object-store/) 这个文章,很多人喜欢看 Head First Git, 这本很厚,900 多页,但是里面没有提 internals, 信不信这本看完和看完那两本书的效果是一样的,还有一本是 Version Control with Git, 也很厚,里面很早就提 inernals, 不过奇怪的是关键的 Git 用到的 hash tree 算法没说,而且内容晦涩难懂,写这么多又有什么意义?
不是说细节不重要,但是我认为战略最重要,决定最终成败的是战略而不是细节,过于重细节,就会掉入细节的陷阱,跳都跳不出来,也就是 learn 和 study, 典型的如日本人,日本人最喜欢抠细节,把 study 当作 learn
而且还有一种很好玩的现象,我发现很多程序员居然是去买实体书,但我是一分钱没花,我直接用磁力下载这些书,然后用 Deepl 翻译,而且实体书怎么翻译?难道等国内翻译然后买中文版?