《Python-Web 开发实战》 上市一个月, 有很多感想。最近一直在花费大量时间和精力在推销。我还转战知乎一个月,写了不少的专栏文章,也写了一些答案,最后用一篇 The End 结束。

整个过程有很多感悟。

你不登上山顶,永远不知道山那边的风景

初次写书让我走了不少弯路。比如没有控制好篇幅多写了 1 百多页,比如没有更早的让出版社开始设计封面造成延期。

写书也有很多的遗憾。比如无法让每个读者满意,我自己也对书一些表达是不满意的。我一直对书里面需要勘误的量很有信心,但是到现在为止已经出现了十多处的错误,虽然其中有一半并不是我造成,但是也是因为没有那么精细的去校对。

写书也让我发现了很多不足。首先是不能太自信,比如勘误中的 文件权限 ,写的时候没有去验证,写完之后的多次回看中都完全忽略了这一部分内容,现在看起来这像个笑话;其次是在国内写书的人太少,没有对于「如何写书,写好书」的系统的培训,也没有人分享过不错的经验,完全靠领悟,这是我的欠缺。还有一点是学的不够好,离我心中的榜样的书还是有距离的。

我最担心的是书中包含了我对 XX 的理解是错误的,所以邀请了很多老师来给我 review。但是我最不愿意的事情还是发生了,也就是勘误中的 本书最大的错误 。虽然在书中的例子的用法并没有问题,但是解题思路是错误的。

当然也发生了很多有意思但是不能公开的故事,比如我对封面的坚持、为什么京东自营一直无货。一句话,套路太深。

最近读胡阳的公众号文章 「Python 基础看完了?来两本进阶书」 ,其中有几段话我简直不能同意更多:

自从我进入 Python 编程领域之后,或者说靠 Python 吃饭之后,每次逛书店也必定看看 Python 的书,遗憾的是从一开始到现在看来看去还是那几本,并且没有正确的分类,而看看隔壁家的 ruby 方便的书不但有正确的分类,而且还很多(内个,至少比 Python 多)。

我以前常去中关村图书大厦逛,体验那种气氛,也会实体的看看心仪的书,给自己物色点不错的书。郁闷的是 Python 的书永远被乱放,Ruby 比 Python 的书多了不止 2 倍。

随着我靠 Python 吃饭的时间越来越长,有时候我想,要不要攒点劲儿,弄它一本书出来,让其他喜欢逛书店的 Python 程序员,看到 Python 的书是在变多的这样的趋势。但是看看现在市面是已经有的书,那些个作者,各领域的大牛都有。那些书的内容可能在某些领域算是比较先进的经验,但是在 Python 上却差点意思,怎么说呢,就是感觉不那么的 Pythonic。我自己能搞出一个对别人有价值的书吗,我也不好说。

这就是我写这本书,在情怀层面的原因。如我的序言中的描述:

写这本书的意义在于,将我这几年使用 Python 进行 Web 开发,对各方面知识的理解和积累的经验进行梳理和总结,让更多人受益,同时对自己也是一种成长,也算是对国内的 Python 环境做出个人的贡献了。

Python 这些年被越来越多的人接受和使用,但是在中国它终归还是一门「小众」的语言。靠它吃饭的不多,虽然一直再涨,但是离我对它的期望差的实在太远,而且看起来还被 golang 抢走了一些(心塞)。不止一个公司的创始人在选择初期的技术栈的时候会舍弃 Python,原因是它在国内的环境一般,招聘一个适合的人才实在太难。这在豆瓣面试过程中我也深有感触。在中国 Ruby 有 Ruby China,还有 RubyConf。语言只是工具,它的社区和生态很重要,设想对于新入行的你,看到一个发展的有些病态(抱歉我用了这么个不咋舒适的词)的语言会不会却步,转而选择一个更有生机和希望的、挣钱更多、工作机会更多的语言呢?很多人会骂,我也是恨铁不成钢,但是我还是爱 Python 的,不然不会坚持这么多年。

我不喜欢用嘴去喷,希望让环境更好一点,所以我行动了。这本书无非是给新人铺铺路,就像大学老师给划重点,让你少走弯路,告诉你这个是啥,为啥要用,还有怎么用。

这本书有人说写得好,有人说写的一般,有人把我喷成狗。说我好的,相信这本书有用,我很高兴;说写的一般的,我也虚心接受,没有符合预期我得先说声抱歉,我肯定无法让每个人满意,能力有限,在努力做好。但是目前我还没有看到一个比较有说服力的评价,比如「我觉得这本书写的不好,原因是 1,2,3,4...,如果让我来写可以 balabla...」这种句式;说写的很烂的也不少,在豆瓣都不用花钱买书就可以去评价了。有时候看着一些对我的无脑黑我是又气又觉得可笑。一旦做了事就会有人嫉恨,开启上帝视角来指点江山,但是又放不出一个有味道的屁。

我的书类似于大学里面的老师划重点,带方向。哪怕真的是借鉴了官方文档中的用法也是基于我的经验认为的「最佳实践」,我总不能避嫌一定不用吧。 其次我不懂有些人竟然感觉看了我的书的目录自己 Google 就可以了,好像知识已经学到了手了,该用什么怎么用何时用已经完全掌握了,嗯 这种人活的也挺幸福的,反正我现在好多还不懂不熟还在踩坑。且不说英语好你完全看懂了,但是真的用过么,啥是关键,怎么避坑?不如把自己琢磨、实验花的时间的用来买本书看,剩下那 80% 的时间去做其他的:这才是对自己负责。

欣慰的是,还没看到一个我觉得是「Python 圈子」里面的人来吐槽我,老师们还是愿意给我写序和各种其他方式的推荐,绝大部分的人都觉得本书有用,甚至不少人表达过非常喜欢这本书,这让我觉得我做这件事是值得的。

我在努力地让事情变好,以后也会是。

这本书算是抛砖引玉,希望未来越来越是有实力的人出来写书,把我拍死。

BTW,大家可以先来 python-cn.org 聊聊技术的。