Status: 草稿; ZoomQuiet ;完成度95%;
参考:

概述

Title:原创Python技术图书出版在中国
Duration:预计时长 30min
Level:难度 初级
Categories:内容类别 Python in Education
Summary:以中国软件市场为背景, 分享如何通过活跃的技术社区以分布式协同的形式出版Python 入门技术图书的经验; 分析应该怎样在中国这一计算机技术普及度相对落后的国家,如何推广一个前沿技术;

Lovely Python ~ 原创Python技术图书出版在中国

中国背景 Background on Chinese

  • 地球1/5的人在中国
  • 中国长期稳定的经济成长,在国际上各个方面已经越来越具有话语权
  • 唯独软件方面,中国一直没有出现任何一种全球人民都知道的软件;e.g:
  • Photoshop
  • Office
  • Oracle
  • Firefox
  • ...
  • 根本原因可能源自中国的教育体系,有关计算机的教学方法和数学/物理等等其它学科一样:
  • 了解历史
  • 记忆全部语法
  • 作练习
  • 理解特例
  • 考证加固以上记忆

...总之,从来不讨论,怎么发现自个儿的渴望,从无到有的完成心目中的软件!

  • 但是,中国每年产生1千万大学生,其中至少一成是计算机相关专业的!
  • 在这样一种环境中推广Python 对于PSF 来说意义深远!

需要解决的问题 Problems to solve

  • Python 自2001 年中国技术人员发现,即使后来有 Google/Yutubo/DouBan 等等以Python 为开发语言的成功案例作榜样;但是依然没有得到足够的重视;
  • 表现在相关图书方面,以 amazon.com 为例:
  • 日本Python 图书有 36 种近一半是原创图书
  • 中国只有 16 种,原创仅仅两种
  • 在中国,某技术,是否有出版图书,以及种类的多寡,是学生和技术人员们判别该技术是否靠谱的最基本指标
  • 所以,非常有必要为广大初学者,写一部入门级的Python 图书,来引导大家快速转换习惯,不在问怎么可以学好Python
  • 而是加入社区共同讨论如何用Python来解决/分析问题;

项目介绍 What's OBP?

针对以上背景,由我发起,创立了 OBP_工程(OpenBookProject):

  • CPyUG 社区为背景
  • 啄木鸟 维基为展示
  • 以 code.google 服务为平台开辟项目管理环境: OBP
  • 可爱的Python 成为其中一个最成功的原创图书项目

动机 Why OBP?

  • 在多年的 CPyUG邮件列表 维护过程中,发现有关Python 的应用,多数是独自一人在进行学习和尝试;因而带入很多旧思路,以及偏见,导致失败;
  • 虽然有了一些技术社区,但是在其中的成员,并没有形成良好的协同以及知识分享习惯,几乎 80% 的维基是不到1% 的列表订阅者贡献的...
  • 所以,不仅仅本书的内容,是设计为体验技术协同,就是本书自身的形成也应该是协同下的产物!
  • 幸好,当时已经有足够的社区资源可以开展这一尝试:
  • 有关Python 的专门社区并不多,一般都是在己有的大型技术社区中开辟的Python 讨论板块;
  • 啄木鸟_社区 是最早以项目为导向的Python 技术专门社区
  • CPyUG邮件列表 是全球最活跃的Python 技术讨论列表,订阅 >8000 ; 日平均邮件>95;

简单的演示 Basic recurrence

  • O.B.P 是 Open Book Project 的缩写,从一开始就是以社区式分布团队的形式进行探索的:
  • 原创或是翻译图书的项目,都是在列表中公开倡议,有人附议后,自发形成团队
  • 然后由我或是其它积极成员,主持,居中协调,组织相关资源管理,推动项目
  • 最后形成比较固定的工程流程是:
  • 在CPyUG 列表中提出图书设想
  • 形成一定共识后,在啄木鸟维基中注册图书工程条目
  • 聚集足够的核心作者后,在 OBP 环境中开辟SVN 目录
  • 并公开图书时间计划
  • 定期在 IRC 中进行进展沟通
  • 在SVN中提交纯文本图书内容,及时同步到维基
  • 最终向编辑交付维基格式的结构化文本,以及相关附件/代码
  • 专职编辑 1人 (傅文出版社)
  • 核心作者 3人
  • 技术校对 >5人
  • 试阅建议 >500人
  • 经过三年撰写,一年编辑,在 2009-09 发售

进一步的演示 More sophisticated recurrence

  • 图书本身以网站形式进行设计:
  • 通过两个有先后关联的可运行的简单软件演变过程为实例故事
  • 在每个知识点出现之处,通过边注的形式,索引到后部 PCS~Python Cheat Sheet 相应条目
  • PCS 条目,本身是类似 Cook Book 的一个小而微,但是具体完备的知识片段的阐述
  • 用连续的故事讲述一个软件从设想到试作,通过不断重构快速迭代完成当初设想;
  • 用这一过程,友好的传达了如何进行思考,如何进行Pythonic式的解决问题
  • 而格式规范,结束一致的PCS,就可以通过分布式团队各自认领并行完成
  • 读者也可以通过有实例背景的代码,更好的理解什么模块在什么情景中使用最合适

其它方面 Other capabilities of OBP

  • 出版商是在图书主体内容讨论成型后,还没有完成时,就加入了
  • 签订出版合作,是在全部内容完成 90% 时;而且是通过 哲思社区,以社区法人的形式进行商务洽谈的
  • 这带来很多便利:
  • 通过社区以法人的角色进行出版合同洽谈,节省作者的精力,而且可以获得更好的分成
  • 作为社区进行组织,参与者数量不受限制,而且利益分配成为内部事务,容易協商
  • 事实上几乎所有作者都将稿酬捐给社区了
  • 另外可以将电子版本发行权拿在社区手中,为以后持续的修订获得了主动

结论 Conclusion

Guido老爹也非常赞同这一形式和内容的图书,特意写了推荐Blog: Lovely Python!

  • 销售方面连续2个月在进入各种网络书店的技术发售排行榜
  • 3个月售磬,追加二次印刷
  • 已知北京城市学院,今年已经决定使用 可爱的Python 作为选择修课的教材

综上,要说是经验的话: - 只要对愿望有信念,坚持下去,资源/困难/时间等等总能解决 - 基于现有免费服务,完全可以运行一个复杂的图书写作工程 - 通过社区讨论/发起/组织/发行技术图书可行,只是要注意良好的沟通

  • 而且整个图书的形成过程是透明和可以加入的,导致图书一直处在预发售的测试状态
  • 所有技术问题,基本都可以在社区式协作中发现和修订
  • 也确保了图书的发行,从相关读者的认知度上得到保障!
  • 当然,前题得确保社区是足够大和有影响的
  • 通过注册社区进行法务沟通,更加简便和专业
[1]If that relative link doesn't work, try the master document: http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html.
[2]有标签的脚注可以多次使用 在不同场合 是也乎
[this]here.

<<-- ZoomQuiet[2010-01-20 09:10:40]>>

LovPyOpenBookProject (last edited 2010-01-22 06:50:22 by ZoomQuiet)