有人说,写书就像跑马拉松。本书的编写工作确实考验了我耐力的极限,如果没有亲朋好友和家人的支持和鼓励,这项工作就不可能完成。
首先,感谢我的妻子Hema,在我写作本书的两年时间里,她始终对我充满了爱、鼓励和耐心。感谢我的朋友Raviprakash Jayaraman,每当我面临困境时,他都与我共进退,并对本书进行审阅,我们一起吃过午餐、看过电影,还一起逛过动物园。感谢Seby Kallarakkal,他敦促我完成本书的写作,并同我做过有趣的讨论。万分感激Santosh Hemachandra博士,他同我讨论快速傅里叶变换,给我提供了极大的帮助。感谢Karthikeyan Chellappa帮助我测试Python模块的安装情况,还多次与我一起绕着Kaikondrahalli湖跑步。还要感谢Matthew Denham,他让我明白了万花尺的数学原理。
感谢No Starch出版社的Tyler Ortman和Bill Pollock接受我编写本书的提案,感谢Serena Yang对本书第1版所做的专业编辑工作,还要感谢Nicholas Kramer对本书第1版进行技术审稿。
感谢Nathan Heidelberger对本书第2版所做的细致认真的编辑工作。正是因为他的严谨,第1版的很多地方才能得到极大的改进。感谢Eric Mortenson和Xander Soldaat,他们分别对本书的软件部分和硬件部分做了技术审稿。再次感谢Raviprakash Jayaraman,他在多个操作系统中对第2版的代码进行了测试,提供了极大的帮助。还要感谢我的儿子兼办公室同事Aryan Mahesh,感谢他在我写作本书期间给我讲傻傻的笑话、向我推荐音乐,并同我深入探讨科幻题材的图书和电影。
感谢我的父母A.V. Venkitachalam和N. Saraswathy,他们为我提供了超出其经济能力的教育。最后,感谢所有激励过我的老师,真希望一生都能做一名学生。