如果TechCrunch没有到北京Disrupt这么一下,要见到这么多传说中的Hacker还挺难。
程显峰是从这次TechCrunch Disrupt的北京合作伙伴Andy Mok那里知道 Hackathon比赛信息的。所谓Hackathon,即Hacker+Marathon(黑客马拉松),TechCrunch Disrupt北京官网上又把它称为“开发者冲刺”,参赛者需要在24个小时内把自己的想法变成可操作的软件,然后在60秒之内向评委解释清楚这是什么,而他们所有的配备不过是一台笔记本而已。
要解释程显峰和Andy Mok的关系就更复杂一些。作为一个资深程序员,程显峰翻译过《MongoDB权威指南》并建立了MongoDB(一种分布式文档存储数据库,用C++语言写成)中文社区。这个微胖,戴眼镜,说话慢条斯理的人是个极客宅,偶尔参加Andy Mok发起的startup weekend(创业周末)活动,这次Hackathon的报名就因此而来。10月29日,他在北京的大雾天里从石景山跑到国家会议中心,一下子看到几百个和自己差不多的年轻人,说起英语来还操着各种各样的口音。他觉得很吃惊:平时躲在家里半个生人不见的程序员,怎么一下子全跑到这里来了?
“这里”具体来说是位于鸟巢附近的国家会议中心里的一个会议室,Hackathon从下午1:30开始,提供一荤一素的晚餐以及免费夜宵啤酒和咖啡,除此以外就剩下TechCrunch的工作人员和将近300个参赛的Hacker。他们分成了44个小组,算是合作伙伴,齐心协力共同编程开发一个自定义程序。
按照TechCrunch寻常Hackathon的规矩,这44个小组应该都是单枪匹马的Hacker们随机组合起来的。但事情到了北京就有点不同,许多小组都是事先商量好的编程组合。他们有的来自创新工场投资的一个团队(其特色是一桌足足围上十几个人),有的是上海某技术公司的同事,有的是豆瓣公司程序员和创业公司Gulu程序员的组合。
当然,也有临时组队的,比如某个组的成分是两个微软工程师(分别是瑞士人和韩国人)、两个清华的留学生(分别是荷兰人和也门人)和三个北京邮电大学的在校学生(都是中国人)。有的干脆单枪匹马,比如一个来自荷兰的工程师一个人包揽全部工作,今年是他在中国的第二年。
程显峰和他的同事一组。他们分工明确:程负责算法,其他的另一个人全包。主持人宣布开始之后,程显峰和队友在会场转了一圈随便找了个位置坐下,他手里玩的一小盒拼图积木是他的灵感。这是他一开始就有的主意:让玩家通过翻转移动积木组成规定图形。这就像一道数学题,它有很多种解法。程显峰试图把手里的玩具搬到了网页上,而这个软件的目的就是算出这个拼图积木到底有几种组合方式。
TechCrunch 并不会给参加比赛的Hacker们布置题目。不少人像程显峰一样,在报名之初就在琢磨应该做些什么,但他们到了会场上可能依然举棋不定。比如和程显峰相隔一桌之外的那个团队,他们拉起支架铺上白纸,七八个人站在角落写写画画“头脑风暴”。也有人满场兜兜转转,甚至打听别人的项目是什么─有意思的是,被打听的人通常会热情地讨论几句,而不是捂着自己的主意不告诉别人。
对这300多个衣着简单,几乎人手一个苹果电脑的Hacker们来说,“Hacker”不是他们在这24个小时里的标签,而是自己生活的全部。他们本就不可能衣着光鲜的去参加奖项名目繁多的比赛,也没耐心听别人对他们写的程序品头论足,除非点评的人比他自己更厉害。放弃一个周末跑来参加黑客马拉松不过是把工作地点搬到一个更大的空间里,他们兴奋的是当然不是那些奖品(一台iPad2和与腾讯CTO一起吃早饭的机会),而是能在这里遇到一群跟自己差不多的人。
他们脑子里的那些想法─也是当晚他们要编出来的程序─多半都是一些听起来很古怪的念头,比如怎么用手势让手机发出各种声音、如何在微博上送给朋友一只狗并让他她一直养下去、怎么把自己的微博变成一个日记本、如何最直观地看到自己浪费了多少时间、如何跟暗恋对象表白还不用担心被拒绝、什么是简单到“让外婆都会用”交友工具……他们不在乎别人的眼光,甚至听不到别人的声音, 所谓的24个小时只是再普通不过的一天。他们只是盯着屏幕,喝一口自己也品不出来是什么味道的咖啡。
Hackathon在美国并不少见,像谷歌、Mozilla这样的大公司都会定期举办编程竞赛。甚至还拿它做为招聘方式,电影《社交网络》里马克·扎克伯格招聘程序员时要求大家做完规定题目的场景就是个迷你Hackathon。
“Hackathon 在硅谷已经是个普遍的现象,也有些公司会一起办些小型的编程比赛,让开发者在短时间里实现一些疯狂的想法。你知道人们通常都只为自己的公司做事,很少会和别的公司的人交流,他们把太多时间浪费在计划上,Hackathon不一样,我们就给他们24个小时,忘记你的工作、忘记你和公司的关系,只是做点事情出来。”TechCrunch资深编辑Sarah Lacy说,作为主办方,“我们不是坐在台下的评委,和所有开发者一起,都是Hackathon的一部分。”
这是Hackathon第一次来到美国以外的国家。此前已经分别在纽约和旧金山举办过,在北京之前的旧金山Disrupt大会上,Hackathon吸引了近800名开发者。TechCrunch CEO Heather A. Harde说他们对开发者没有任何限制,随便你想做什么。“第一次在纽约的Hackathon上,有个团队带了一个机器人帮他们做演示。”
24 个小时完成一个项目对一般人来说简直不可思议,但对这些Hacker而言似乎绰绰有余。晚上9点,程显峰负责的部分已经做的差不多了。他不抽烟,不需要像旁边的几个外国人时不时出去抽根烟提神,他觉得还不太累,看到别人拎两袋红牛进来心里想着不至于吧,他也没去餐桌上拿瓶啤酒打发时间。他把自己做好的模型截图发在微博上,@了Andy Mok。他的队友则缩在紫色帽衫里,只露出脸,对已经在键盘上敲了半天的手吹口哈气,“晚上真冷”。
但他们不觉得自己是个真正的Hacker,Stallman和Matz才是(Stallman:Richard Matthew Stallman 理查·马修·斯托曼,美国著名黑客,GUN计划和自由软件基金会发起人;Matz:松本行弘,Ruby程序设计语言的主要设计者和实现者)。程显峰最难忘的经历是在美国和Stallman一起吃午餐。在他眼里,披着一头长发的Stallman简直就是最完美的Hacker形象。他们有着像宗教一样的信仰,执着,且决不妥协。
程显峰正对面的桌子坐着一个男生,他观察了这个人很久,觉得符合他心里衡量Hacker的标准:电脑屏幕配色;使用的配件;敲击键盘的速度,并且有一台很好的电脑。除此之外,这个离他不远的年轻人盯着自己电脑屏幕一晚上没离开半步。
Hacker 这个词来自于1960年代初美国麻省理工学院一个叫做“铁路模型技术俱乐部”的学生团体,Hack作为解决问题的方法有两种意思,一种是漂亮的,另一种是丑陋的。解决问题的人叫做Hacker,解决问题的过程是Hacking,它本身没有任何贬义,甚至有尊敬的意味。盗窃信息和高技术犯罪只不过是后来的引申意义和被刻意放大的反面。
硅谷投资人保罗·格雷厄姆(Paul Graham)在自己的文集《黑客与画家》中这样解释这个词:“黑客也是创造者,他们和画家、建筑师、作家一样”。他们对美的追求体现在普通人根本看不懂的编程语言上。“beautiful”也是程显峰在Hackathon上听到的最高频词汇(顺便说一下,这个词也是乔布斯最喜欢说的)。有个人咬着手指得意的对同伴说“Look at my be-au-ti-ful code”(你看我的代码写的多好)。“be-au-ti-ful”,每个音都拉的很长。
“过去Hacker被认定是去别人电脑里偷东西的人,这是不对的。Hacker只是程序员,他们享受通过编程来解决人的问题。”从谷歌在硅谷Mountain View总部飞来北京的高级开发工程师Mano Marks说,来Hackathon跟开发者演示谷歌开放平台是他此次中国之行的一部分。
面对开发者提出的一些连谷歌自己也还在寻找解决方法的问题让Mano Marks觉得很兴奋,“这个比赛最有意思的是你和一群天才一起做一件感兴趣的事情,人生也是这样。”
作为赞助商,谷歌可以获得在Hackathon和TechCrunch Disrupt上讲解开放平台和展示的机会。当然,他们也要为Hackathon提供一笔不小的赞助金。
和Mano Marks讲自己公司的产品相比,穿着红色愤怒小鸟帽衫的Peter Vesterbacka在Hackathon几乎走到每一桌都要伸着脖子看看电脑上写着什么,偶尔坐下听这些年轻人的想法,提一点自己的意见,就好像他也是大老远跑来参加Hackathon的一个。
Hacker们好像并不介意被打扰,反而乐得跟想来问问自己有什么好点子的人分享自己的创意。让他们最头疼的是网络,因为主办方没有提前和会场交涉清楚网络的问题,他们只能凑合着用不稳定的 Wi-Fi,有时候用U盘来互相传文档,甚至有一个团队专门安排两个人处理网络问题。
不同于做单机游戏对网络没什么需求的程显峰,一个由十来个人组成的团队要做一个社交日历地图,也就是用地图定位自己的位置,设定时间,让地图告诉你周围有什么活动。他们在赞助商deCarta讲API时提了几个精彩的问题赢了两个U盘,没想到竟然成了最后处理网络的救命稻草。他们临时组队,相当于一个小创业公司。如果不是网络问题可能不会把三分之一的时间花在处理网络上,也不会拖到第二天早上才提交。
另一个没被糟糕的网络问题影响到的是那个单枪匹马的荷兰工程师Mucot,一头金色卷发,穿着帽衫,他从背影看上去像是瘦版马克·扎克伯格。Mucot在中国做了一年交换学生后留在北京工作,跟老板请假参加Hackathon。他想把学英语变得轻松点,做了一个可以在线容纳十个人一起玩的英文填词游戏,在网页和手机上都能用,并且提供翻译。从下午两点到凌晨三点,一个人搞定前端和后台的全部工作,直接回家睡觉去了。
严格来说,Hackathon并不是24个小时,从下午1点半开始到第二天早上9点半提交,真正留给Hacker的时间其实只有20个小时。
“一个产品从开始想主意到完工,你必须让别人知道你是怎么想的,24小时不是个准确的数字,但我们只是想给大家一个感觉,你要一天一夜全部投入进来。”TechCrunch活动执行Greg Barto说,他负责管理Hackathon和TechCrunch Disrupt活动现场。如果他不告诉你,你也会以为这个四处走动的人是在寻找队友。他戴着棒球帽,灰色的帽衫正面印着“HACKER”,反面是他过去的老板Michael Arrington的姓氏。Greg参加过旧金山的Hackathon,他很了解Hacker们大多数都喜欢自己待在家里,在让他们讲清楚自己的想法之前,通常要给他们留一点害羞和紧张的时间。
不过中国Hacker的自信还是让Greg 吃了一惊。尽管大多数团队循规蹈矩的在60秒内做完演示,还是会有年轻人在快轮到他时突然跳上台大喊:“我做了一个狂酷巨酷的产品!”尴尬的是网络暂停……好在大家勉强讲明白他的产品是用一面墙来展示自动生成的幻灯片后,他还是收获了一片掌声和尖叫。
程显峰最后是这么用掉他的60秒的,他演示了那个叫Block 13的项目,然后说:“基本上我写了少于300行的Java代码,可以在任何一个浏览器里来进行。我的合作伙伴做了解法的数据库。如果大家知道其他的解法,可以告诉我们,我们会请客的。这个算法也很简单,你可以在任何地方运行。”
他没有获奖。获奖的是一个叫做We Diary的项目,这个创意在于把微博做成个人日记,用更漂亮的方式帮你浏览和回忆生活点滴。
Hacker 的价值观就是永远追求更好的东西。这就像画家都希望自己的名字出现在卢浮宫,赛车手都希望跟比自己更快的人较量一样。Hacker不仅想解决问题,也总希望并相信能在Hackathon上见到更厉害的人,并知道他们在想些什么。尽管这些人可能都不好意思承认自己就是Hacker。
看起来他们在这里可以如愿了。
看看他们24小时做出了什么
01 Block 13
翻转积木来组成固定的图形.
02 61minutes
基于事件的SNS,互相分享自己的信息
03 英英语语
每个房间可以有十个人来玩游戏,互相提问或填词
04 So map
这个应用可以看到你周围正在发生的事情。一个社交日历地图
05 we diary
把微博做成一个个人日记的方式,浏览和回忆生活的点滴
06 Tianji Connector
让用户无论在哪个网站都可以查询某个人在天际上的个人信息
07 Tianji HangOut
以天际API为基础的Web端3D交流界面
08 City fight
在新浪微博做一个城市PK,一个轻量级的社交游戏
09 缘来有你
基于互联网的开放平台你可以对心仪的人说出你心里想说的话
10 礼物说
让社交网站上用户之间赠送礼物,这些礼物都需要花时间照顾
11 Meetro
基于位置的应用,同区域内的用户可以聊天或者玩游戏
12 Pomo时间管理
用数据分析和图形化展示哪些时间浪费、哪些时间有用
13 Knock Knock
基于新浪微博的应用,根据共同兴趣找朋友
14 Oak
他们做了两个东西:videocube,一个web 3D解决方案;mmo car game,多人在线互动游戏
15 Herestory
基于云端的实时照片框架,简单到即便是你的外婆都可以用