镜头从来不爱电脑程序。好吧,不止不爱:一碰到任何疑似程序代码的东西,镜头总是尖叫着恐惧地躲开。编程可能是人类发明的诸多事业中最不上镜的一个。跟它比起来,再无聊的事情都变得像《星球大战》一样有趣。
好莱坞对此事已有成规:不可,绝对不可,让计算机程序的出镜时间多过几秒,尤其是大段的实际程序代码。镜头一定要远离键盘。必须赶紧切换到更“性感”的事情上面去。
那么,为何数千名软件开发者会在一个叫Livecoding.tv的新网站上一连逗留几个小时,在线直播他们在案头编写程序的戏码呢?绝大多数情况下,他们不是为了娱乐观众。(幸亏如此,否则想象一下它成功的可能性有多低吧。)这项服务的创始人说,网站的首要目的是教育——的确,在这里有很大的机会学到干货,不过,对那些在网上直播自己编程的程序员们来说,目的就更简单了:将编程从孤单的、令人苦恼的行为转变成一件欢乐的事情,让编程变得不那么孤独。
现在,Livecoding网站上至少有两个流派的直播风格。一类是内向派,他们坐在一间黑屋子里,一边操作键盘和鼠标,一边对着麦克风说一些含糊不清的话,或者干脆一言不发。(可以看墨尔本的游戏开发者 “slateytv” 来体会一下)。外向派的表现则相反,他们常常在喧闹的房间里直播,嘴上咕噜个不停,还会把别人甚至不期而至的小宠物拉进他们的镜头。例如这里的一段热闹的深夜档直播,主角是美国波特兰市的开源开发者 “dogweather”(真名Robb Schecter),直播的地点是他家里的Santa Cruz牌厨房间。在他的直播里,倾泻而出的不只是代码,还有啤酒。
前几天上午,我在浏览网站时,碰到了网友“famed”。他的真名叫Dmitry Pavlov,是乌克兰的哈尔科夫的一位设计师。当时他正致力于将一个静态的图片式的网上商店改造成及时响应的HTML/CSS网站。我感觉Pavlov不想被过分打扰:他没开网络视频,没有聊天窗口,也不太说话,只是打开了电子音乐伴奏。他开启直播的目的似乎仅是为了宣布“我在这里”。
在那里,还有一位来自墨西哥韦拉克鲁斯市的学生,网名叫“codehamster”,他正在写家庭作业。同样,对于无意间进入的访客来说,他这里也没有什么可看的——做家庭作业有什么好看的啦!不过,对codehamster来说,这里相当于 2015 年版的大学图书馆自习室,可以找到跟大家一起学习的感觉。
还有,像这个直播就精彩了:马里兰州一位网站开发者Elijah Offutt正在制作一个个人网站。他给自己倒了一杯咖啡,如果有人进入他的聊天室,他会跟一些常客打个招呼。 他宣布:“我要集中精神了,这段音乐不合适”,然后就将流行音乐伴奏换成了福音音乐,并开始解释他制作的一款技能矩阵的工作原理:它能帮助客户和招聘方迅速判断他是否适合某个开发项目。
Livecoding.tv 的创始人 Garbade 和 Green;Steven Levy摄于 YC 展演日( YC Demo Day)演讲之后。
Livecoding.tv 从去年冬天上线。结识于柏林的两位企业家 Jamie Green 和 Michael Garbade 一开始把它当作一个副业项目在做。去年 12 月份,在得到欧盟一项种子基金的资助之后,他们才认真起来。今年 2 月份, Livecoding.tv 的 beta 版(即公开测试版)上线,然后他们获得了进入 Y Combinator 创业加速器暑期班的机会。今天,他们拥有 6 万名注册用户,平均每天有 400 路直播,即 700 个小时的视频内容。当然,以 YouTube 的标准来看,这不算惊人。但是对于一家创业公司来说,这样的成绩已经相当不错。
“我们开始做这个项目的时候,” Green 说,“我们接触的每个人都说,要让程序员用我们的平台会非常困难,因为他们的薪酬优厚,而且失业率低,他们都很忙。每个人都说,这将是一个问题:他们没有时间玩这个,或者他们会索取很高的报酬。然而结果是,程序员真的有很多时间,他们也愿意花时间来分享他们的工作。”
准确来说,Green 和 Garbade 并非编程录影这一节目的发明人。当他们在酝酿 Livecoding 网站的时候,广受欢迎的游戏直播分享网站 Twitch.tv 就已经开通了一个游戏开发分享区,供程序员分享他们开发游戏的工作;很多游戏玩家在此直播他们的操作,给广大观众带去娱乐。Livecoding 上一些很受欢迎的直播者,如 “whilke”等,就也是 Twitch 的常用用户。他们从 Twitch 社区带来了一些人,也带来了 Twitch 上的一些旧习惯;另外一些人,如网站上现在排名第一的网友 “jegas” (真名 Jason Sage),则把 Livecoding 视作他们的首要平台,抓住机会在这个相对简单的社会环境中打响名气。跟网站上其他明星一样,对 Sage 来说,如果有三十个人进入他的直播,或者一份存档视频获得成百或成千的点击,那么他就算成功了。
口若悬河的Sage是一位具有三十年程序开发经验的老程序员,还是重金属乐队的主唱。我问他,为何更愿意用Livecoding而不是Twitch。他说:“在Twitch,你最终会跟一帮游戏玩家混在一起,不过老实说,他们是一帮拖后腿的蠢货。而在Livecoding,你遇到的是喜欢编程的人,不是说必须得是天才,但确实是很热爱代码的人。在这里,交流和开玩笑都很容易。每个人都很投入,因为他们确实爱好这个,他们来这里不是说只是为了看你水平怎么样,过来评头论足,惹人讨厌。”
与Twitch不同的是,Livecoding 会自动存档每一个直播节目,这意味着它正在迅速地积累一个很大的影像库,尽管至今它们还没有被很好地编排起来。(那些直播剪辑的名称里甚至连日期的信息都没有。)这个策略也体现了博客写手Jason Kottke十年前发现的一个现象,即很多网站获得成功的秘诀:与Blogger,Flickr,YouTube,Twitter和诸多其他最终登上成功的顶点的服务网站以及最近的案例Twitch一样,Livecoding同样“做的是每个人都会与朋友一起做的事情,然后将它公开化并永久保存。”
从这个角度来说,Livecoding算不上具有开创性,它的命运取决于一些常见的因素:它能否让用户开心并且持续贡献内容?它能否持续引入一些令人瞩目的用户,如Stephen Wolfram(他最近在网站上花了两个小时的时间向观众展示了他自创的Wolfram氏语言)?它的创始人能否赢得投资人的青睐?(这也是今天他们在Y Combinator的展演日上试图要做到的。)他们能否找到盈利模式?(他们最近发布了一个计划,人们可以花钱请直播者开展一对一或小组式的讨论班,讲解一些高级的课题,提供程序审阅,bug修复,平台搭建,家庭作业及大学课程作业指导,或者产品开发支持等服务。)
然而,在另一个方面,Livecoding 确有其独特而值得注意的影响:它是编程领域本身一个出人意料的基因变异,很可能改变编程的玩法。
在大众的印象里,软件开发这个职业最难以摆脱的形象就是“反社会”了。程序员都是独行侠,他们总是避免与他人接触。正像人类的大多数根深蒂固的观点一样,大众的这个印象也是有其事实基础的。但是,在程序开发的历史中,也曾有很长的一段可以被称为“亲社会”的:即程序员之间一种坚决的、愈加急迫的希望与人分享的举动。其中的逻辑是,如果想要增强我们编写软件的能力,我们必须将编程的过程更好地捕捉下来并与别人分享。我们必须学会将编程从纯粹的抽象思维的领域中拉出来,让它变得更加清晰、更加具体,无论这有多难,或者看起来有多枯燥。
这就是 Donald Knuth 在提出 “literate programming” 的概念时的一些内在想法。这个概念鼓励程序员在编程时首先应考虑为其他程序员而写,其次考虑为机器而写。这个概念推动了二十世纪初软件开发论坛和博客的爆发性增长,给这个一直在默默无闻中辛勤劳作的领域赋予了发言的机会。它也促使了结对编程的流行,将软件开发从一桩孤独的事务转变成一项齐心协力的事业。以此观之,Livecoding 不再像是某种有关软件开发的自我沉迷的真人秀,更像编程工作向优化和人性化发展的自然而然的下一步。
但是,等一下:所谓“看我编程”这个形式是不是会带来,呃,干扰?或许。有一天,Sage 对着视频镜头坦陈道:“如果不是在直播的话,我做这些东西要快得多。但是,我喜欢跟你们呆在一起。我爱和你们聊聊天,侃侃大山。如果能帮到一些人,我就很开心。这样才够赞。”
Sage 经常穿着一件印着 “shred neck”(一种电吉他)字样的文化衫,直播的时候,他喜欢抓起一把吉他,来一段独奏(有时是表演重金属主奏吉他,有时是经典曲调),或五分钟,或十分钟,有时一气也玩个二十来分钟。这些音乐插曲似乎没有影响他在 Livecoding 上的人气。他说:“有的人就是想看这个。然后,聊天室里一半的人就跑了。他们会说,去你丫的。剩下的那一半人就高喊,耶!耶!耶!最后,他们就又想回头来继续编程了。”
Livecoding 的创始人Green承认不是所有人都适合玩直播,但是他说,有一类用户——与Sage相反——发现,实际上直播让他们的工作更有效率。“它帮助他们保持注意力集中。他们知道有人在看着,所以他们不会乱逛Facebook,浪费时间。而且,观众里面甚至有人能帮到你。比方说,他们看到你在一段程序里犯了一个错误,可能会提醒你说,‘哥们儿,这里再看看’。”
不管你看的直播是来自一位沉默寡言的独行侠,还是一个派对狂人,你都会欣赏到很多哈欠、很多清嗓子的动作,还有很多的零食消耗。Livecoding 展示的内容中很大一部分都是枯燥乏味的日常工作,如下载更新,安装补丁,和环境调试。例如,去看看 “donmildreone” 网友(他是英国的一位网页设计师,真名 Ben Mildren)是怎么挣扎着起床,怎么试着运行一个新的 Mac 电脑。一方面,你会觉得“你就给我看这个?”;另一方面,你会想:不说好坏,大多数程序员正是把大把时间花在这些事上。
谁也不敢保证 Livecoding 不会只是一个短暂的热潮,像只读 CD 或 “All your base” 这句网络流行语一样,成为数字时代稍纵即逝的昙花。到时,你可能会听到有人戏谑地发出怀旧之叹:“还记不记得 2015 年的时候,他们竟然觉得直播编程很有意思。”
更有可能的是,Livecoding网站的成功显示了互联网欲将一切暴露于公众视线之下的态势,互联网正持续侵入新的社会空间,而伴随着它带来的亲近和友情,还有监控,真是既令人激动又叫人担心。无论 Livecoding 的未来如何,不要忘记它正在不断地积累数量惊人的数据。专门研究编程历史的人类学家这下有的看了。
【本文转自好奇心日报,翻译 Skyearning,转载请注明来自微客安全】
网友评论