镜头从来不爱电脑程序。好吧,不止不爱:一碰到任何疑似程序代码的东西,镜头总是尖叫着恐惧地躲开。编程可能是人类发明的诸多事业中最不上镜的一个。跟它比起来,再无聊的事情都变得像《星球大战》一样有趣。

好莱坞对此事已有成规:不可,绝对不可,让计算机程序的出镜时间多过几秒,尤其是大段的实际程序代码。镜头一定要远离键盘。必须赶紧切换到更“性感”的事情上面去。

那么,为何数千名软件开发者会在一个叫Livecoding.tv的新网站上一连逗留几个小时,在线直播他们在案头编写程序的戏码呢?绝大多数情况下,他们不是为了娱乐观众。(幸亏如此,否则想象一下它成功的可能性有多低吧。)这项服务的创始人说,网站的首要目的是教育——的确,在这里有很大的机会学到干货,不过,对那些在网上直播自己编程的程序员们来说,目的就更简单了:将编程从孤单的、令人苦恼的行为转变成一件欢乐的事情,让编程变得不那么孤独。

现在,Livecoding网站上至少有两个流派的直播风格。一类是内向派,他们坐在一间黑屋子里,一边操作键盘和鼠标,一边对着麦克风说一些含糊不清的话,或者干脆一言不发。(可以看墨尔本的游戏开发者 “slateytv” 来体会一下)。外向派的表现则相反,他们常常在喧闹的房间里直播,嘴上咕噜个不停,还会把别人甚至不期而至的小宠物拉进他们的镜头。例如这里的一段热闹的深夜档直播,主角是美国波特兰市的开源开发者 “dogweather”(真名Robb Schecter),直播的地点是他家里的Santa Cruz牌厨房间。在他的直播里,倾泻而出的不只是代码,还有啤酒。

前几天上午,我在浏览网站时,碰到了网友“famed”。他的真名叫Dmitry Pavlov,是乌克兰的哈尔科夫的一位设计师。当时他正致力于将一个静态的图片式的网上商店改造成及时响应的HTML/CSS网站。我感觉Pavlov不想被过分打扰:他没开网络视频,没有聊天窗口,也不太说话,只是打开了电子音乐伴奏。他开启直播的目的似乎仅是为了宣布“我在这里”。

在那里,还有一位来自墨西哥韦拉克鲁斯市的学生,网名叫“codehamster”,他正在写家庭作业。同样,对于无意间进入的访客来说,他这里也没有什么可看的——做家庭作业有什么好看的啦!不过,对codehamster来说,这里相当于 2015 年版的大学图书馆自习室,可以找到跟大家一起学习的感觉。

还有,像这个直播就精彩了:马里兰州一位网站开发者Elijah Offutt正在制作一个个人网站。他给自己倒了一杯咖啡,如果有人进入他的聊天室,他会跟一些常客打个招呼。 他宣布:“我要集中精神了,这段音乐不合适”,然后就将流行音乐伴奏换成了福音音乐,并开始解释他制作的一款技能矩阵的工作原理:它能帮助客户和招聘方迅速判断他是否适合某个开发项目。

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】

一群人在网上直播自己怎么写代码,而且还有人爱看相关推荐

  1. 拯救IT人的报表神器来了,不用写代码,还免费

    "老K,公司马上要做年中复盘了,老板要看上半年的业务数据,你这两天赶紧跟业务拉通下数据,过两天我就要见到数据报告?" "我们公司不是有SAP吗,让业务人员自己从系统里取数 ...

  2. 牛逼的人,都已经开始用文言文写代码了!

    往期热门文章: 1.<往期精选优秀博文都在这里了!> 2.如何让自己少写点bug? 3.如何优雅地根治null值引起的Bug! 4.答应我,别再if/else走天下了可以吗? 5.Stac ...

  3. 我想看的是美胸和大长腿,你却给我直播写代码?

    除了美胸大长腿,程序员也开直播了! 国外有一个专门直播写代码的网站:https://www.livecoding.tv,打开网页,你会看到很多窗口,点进去就可以围观别人写代码了. 网站的介绍写道:这是 ...

  4. Wirecast Pro for Mac 9.0.0 网上直播软件 中文破解版下载

    Wirecast Pro for Mac 可以让您方便地采集和制作用于网上直播的多机位现场视频.新闻.体育赛事.音乐会.教学研讨会及公司会议都是使用这个解决方案作网上直播的理想场合.您还可以将以前录制 ...

  5. 金山庆祝成立30周年 雷军:一个人走得快 但一群人走得远

    雷帝网 乐天 12月23日报道 金山集团日前在珠海庆祝成立30周年,金山软件董事长雷军.创始人张旋龙.求伯君及众多金山系众多知名创业者,如B站CEO陈睿.暴风CEO冯鑫.蓝港创始人王峰均出席. 雷军日 ...

  6. 移动互联网现状:手机人的网上生活

    移动互联生活:手机生活之"变" 手机提供给人们一种全新的生活方式. 手机给人们带来的变化不仅仅停留在具体生活形态的变化,更体现在"路径依赖"之变.路径依赖(Pa ...

  7. 经验之谈:京东撸货入坑的那群人!

    2021又即将过去一半,突然发现时间真的过的很快,也有很多人心里是真的很慌,感觉自己一年又没什么收获,可能就像曾经信誓旦旦的同学说的又收获了年龄.用近两年的网络流行语来表达就是本打算2021咸鱼翻身, ...

  8. 我一直想你,一个人时,一群人时

    睡觉,醒来,上班, 吃饭,读书,写字, 一个人时,一群人时, 我一直在想你. 我不知道我这是怎么了,看不到你,我心恐慌极了. 疯狂着无所事事的日子持续了两个月.这两个月来我少做了很多事.计划要七月完工 ...

  9. 对话Severe Tire Damage:世界上第一支在互联网上直播表演的乐队

    策划.翻译:Alex 技术审校:赵军 Severe Tire Damage 人物对话 #006# 互联网历史上充满了改变世界的闪耀时刻,而其中直播技术的发明绝对令人印象深刻.今天的你肯定不会惊讶于这项 ...

  10. 一群人花费了四年的时间以NASA的数据巨制“月球”

    月亮是我们人类探测到的第一颗星球 有一群人却把它做成了是一个真正准确的1 / 2000万的月亮模型.一圈LED围绕这它,不断照亮月球的表面. 这个模型月亮是一个长达4年的项目,由奥斯卡莱和捻角羚在无数 ...

最新文章

  1. Android中的Handler
  2. ABAP入门程序,你会了嘛?
  3. (五)深入浅出TCPIP之TCP流量控制
  4. 文件传输服务器的默认端口,服务器上传文件端口
  5. Python+Selenium学习--异常截图
  6. JavaWeb学习之路
  7. node 修改文件自启动
  8. 360网神防火系统 配置端口映射_IIS配置证书端口443无法访问
  9. 软件观念革命:交互设计精髓_“被催债”的设计推荐书单
  10. error:control reaches end of non-void function [-Werror=return-type]
  11. 解读国内外园艺机器人的应用现状
  12. Mysql分区表概述、分区类型、分区管理
  13. python 环境配置
  14. 程序员来聊一聊信用卡(一)——年轻人该不该办理一张信用卡
  15. insert into
  16. 在Android系统中使用系统自带的emoji表情
  17. libc、glibc与gcc
  18. ERPS环网络端口角色
  19. linux FTP本地登录
  20. space sniffer

热门文章

  1. 视频图片音乐音效工具等素材网汇总
  2. Springboot+网上投资借贷中介服务 毕业设计-附源码221506
  3. 【全网世界区划最全整理输出之第一部分】全世界所有国家的行政区划整理,省市信息,已按照国家,省,市排好序,可直接复制使用,第一部分4006条,总条数:21088
  4. ECharts图表组件与FusionCharts图表组件对比
  5. mo管理器python_GitHub - mowujilun/pyecharts: Python Echarts Plotting Library
  6. UE4蓝图数组Array、Map的使用
  7. 电子设计教程33:RC桥式正弦波振荡电路
  8. C语言课程设计报告-菜单设计
  9. 流体力学专业常用网站集合
  10. 必须了解的EXCEL常用函数都有哪些?【附动图详解】数据分析