据说现在程序猿们大部分的时间已经不是在写代码,而是在搜索代码上了。光是Google上关于代码的搜索请求就达到了每月两亿次。但是一方面Google(甚至百度)来的代码往往不完全适合你的需求,另一方面许多小公司们也很难花钱去买代码库。难道就没有比Github或者搜索更聪明的方式了吗?
最新出现的Runnable也许会是不错的选择。这个网站上,你可以通过关键词搜索、或者通过标签分类浏览代码,更重要的是,在找到相应的代码后,你可以按照自己的需要进行编辑、然后直接点击“运行”(Run),来查看它最终的运行效果,而无需冒着“挂掉”的风险把它复制到自己的网站中。

我曾经问Runnable的创始人Yash Kumar,到底怎么形容自己的网站。一站式代码库?代码测试平台?他想了一会,然后用了一个很抽象的说法——“YouTube for Code”。 “YouTube利用技术让Web端的视频都变得可播放和可浏览,并且把世界上几乎所有的视频都集合到了一个中心,成为了一个内容平台。”Yas说,“我们想做的正是这样:通过让来自不同网站的代码集中到我们这,并让这些代码变得可运行(runnable),让我们成为一个代码的中心。”
或许“高质量的代码中心”才更准确。因为看到一个无聊的视频,用户顶多马上关闭并抱怨几句,但是如果用上了一段糟糕的代码,带来的后果是很严重的。Runnable也需要一定的机制和措施来保证呈现出的代码是安全、高效的。
“就像Facebook一样,我们的代码也有‘赞’(Like)的按钮,如果这段代码获得很多‘赞’,它的排名就会提高。这样高质量的代码和低质量的代码就会自动区分开。长远来看,我们还会提供更丰富的评价按钮和系统。” Yash说。现在他们还会采取人工审核的机制,但是长远来看,他们将会打造一个高质量的程序员社区,让每个人自发的贡献代码并对已有代码进行审核。
尽管上线不久,但是Runnable的增长非常可观,已经有了一些早期用户主动来贡献内容。Yash说他们甚至会去查询这些人在网上的资料,来决定开放的权限。而随着时间的推移,会形成一套完善的机制——谁贡献了好的内容,谁就有会有更高的权限。
“开发者们都是按社区聚集的线上动物(online creature)。他们喜欢聚集到这样的平台上。我们会帮助很多积极的、优秀的开发者积累名声。”Yash说。
不过,无论是社区还是代码收录,Runnable都不是第一个尝鲜者。Github已经在开发者中拥有自己的名声,开源搜索引擎 Ohloh甚至可以提供20,6亿行公开代码。作为后来者,Runnable的竞争优势在哪里?
“我们的优势就是Runnable。”Yash毫不犹豫地说。“我们的代码全部都可以直接在我们的网站上运行(codes can be runnable in Runnable),不是针对某个特定的项目,而是跨平台多环境。”

Runnable测试的环境是非常接近真实的开发环境的,而且能够很轻松对代码进行修改。Yash给我展示了一下。他找到了一段代码,是关于调用YouTube视频的。当他想改变视频来源的频道时,只要修改几处细节,点击“运行”,代码就更新了,并可以根据效果实时查看是否有问题。开发者甚至可以通过拖拽上传文件的方法进行测试。
Runnable上线还不到一个月,但是Yash他们团队已经花了九个月的时间在网站的开发和完善上。让他下定决心做这么个产品的正是他在亚马逊工作的“惨痛经历”。 在2003年的时候,贝佐斯下了个要求,让公司内部的每个团队都分享自己项目的代码,这么做的结果就是几年后整个库都“爆炸”了。因为不同服务都在使用不同组件的代码,所以当Yash加入亚马逊的时候,他花了很长时间才搞明白每个部分怎么实现,这让他很沮丧,也激发了他创建Runnable的灵感。
他们团队中还有来自苹果和微软的成员,但几乎每个人都有相同的痛点,都活在同样“糟糕”的代码环境里。(据他们内部来自苹果的员工说,苹果的问题比其他家还要更严重一点,庞大的硬件、软件还有其他服务让内部代码更加碎片化。)
因为上线还不到一个月,Runnable现在还只有一千多段代码,但是“增长速度非常快”, 更让人惊讶的是,他们已经有一半流量来自美国以外的地区,特别是中国——Runnable 20%的流量来自中国,上海和北京用户的贡献尤其明显。
“除了代码碎片,我们还会在接下来的几个月里进行API范例的分享。我们将会和很多大公司达成合作,让很多提供API的公司上传。”Yash说,“现在是做这件事的时候了。我们希望Runnable能成为每一个程序员都会访问的网站。”
0 条评论
请「登录」后评论