编程者工作流
专业性,体现在知识和技能两个方面。随着知识和积累和技能的发展,专业人员会在长期工作中形成一定的“专业行为模式”。在前信息时代,这些模式封闭在专业外壳的层层包裹下,成为常人难见难解的“秘技”,掌握这些秘技的人则成为深深的大教堂里让人敬畏的神职人员。
在信息时代,信息领域的先行者们推崇新的信仰:共享。编程是一项专业性很强的活动,但是这个领域的活动者们乐于分享他们的专业知识,乐于改善彼此的工作,个中原因可能非常值得探讨,但是一个明显的事实是:程序与生俱来易于传播,编程活动需要密切协作。
历史发展的结果,就是编程世界有大量的共享资源和协作工具。特别具有代表性的,是开源软件运动。它既催生了以Linux为代表的开源操作系统,也催生了为大规模协作而生的版本控制系统,Git。共享使志同道合者聚集,协作使技术社群应运而生,以git技术为基础的github网站汇集了海量开源项目,人们可以自由的跟踪和参与开源项目,是程序员的天堂。github支持markdown书写格式,是一种简易的格式化文本编写方式,可以以非常简单的方式产生优雅的文本格式。
工具不仅仅是工具,是专业领域的精英长期大量实践中汇集的经验与智慧的结晶。编程活动的开放性,改变了专业领域长期的封闭与神秘,把最核心的经验和良好实践无所保留地展示给每个人。
学习专业的工具,就是学习精英的思维和经验,让我们利用这个难得的机遇,开始像专业程序员一样使用这些工具吧。