近年来,GitHub 的个人页面已经逐渐成为程序员的求职名片,它充分展示了程序员在笔试面试中很难展示的真正编程能力。甚至有企业在招聘广告中说,GitHub 项目的星数只要达到一定数量,就免试录取。这也在一定程度上说明了问题——GitHub 上的项目必须要有人用,才说明你做的软件是有价值的。那么去创建一个“有人用”的项目?来自纽约的 Web 开发者 Barry Clark 根据自己的经验给出了建议。
Barry Clark 开发了 Jekyll Now,很多人使用它在 GitHub Pages 上写博客。这个项目在 GitHub 上已经收到了 1200 多次 fork。Barry Clark 在自己的一篇博客总结了这个项目受欢迎的原因。
Clark 认为首先要做用户需要的软件。Jekyll 是 GitHub Pages 的后台博客引擎,但是它部署起来很复杂,使很多人望而却步。Clark 抓住了用户的这个痛点,写了 Jekyll Now。它大大地降低了使用 Jekyll 的门槛,用户不再需要使用晦涩的命令行工具来操作,也不再需要安装 Ruby,Windows 用户会感觉使用起来方便很多。
解决痛点“不需要打造一个完整的产品”,只要打造一个原型,足以让用户决定是否使用就可以了。然后尽快在同事、朋友中找一些长期受困于这个痛点的人试用,接受他们的反馈。当然,你是否能成功还是取决于用户是否会使用你的软件。
Clark 谈到的第二点是,让用户能快速获得你的软件。把代码托管在 GitHub 上当然是一个很好的选择。要给代码库配上简要的说明,用一句话概括这个软件解决的核心问题,以便人们发现和共享它。此外,项目的 Readme 页面要写得尽量详细。
第三点也同样重要,要使软件的安装尽量简单。Clark 认为:
安装越简单,使用你的项目并为它做贡献的人也会越多。
安装步骤要尽量简化,必要的步骤要在 Readme 中列出详细的条目。同时,请身边的朋友试用并给出反馈。
最后一步就是宣传了。Clark 说道:
如果人们根本找不到你的项目,就不用谈从中受益了。
他介绍了三种宣传项目的方法:
Clark 还比较了 Hacker News 和 reddit 两个网站,他认为 Hakers News 受众甚广,潜在用户比例小,而 reddit 可以针对特定的用户群,挖掘潜力更大。他宣传 Jekyll 用过的手段还是有:写一篇博客介绍它,以及给 Smashing Magazine 写了一篇教程,这篇教程后来在 twitter 上得到了转发,起到了很好的效果。
做开源项目最有成就感的地方就是,看到用户从你的项目中获益。每个人都能给他人贡献有用的软件,希望 Clark 的建议能对大家有所帮助。